]> git.openstreetmap.org Git - rails.git/blobdiff - app/models/user.rb
Merge branch 'master' into next
[rails.git] / app / models / user.rb
index 9c99c36a6d7a4bb52391bd1c26772dfe58907d3e..aaa00169f5210f2ac5fda89f0e1b8bd5d839811e 100644 (file)
@@ -75,6 +75,11 @@ class User < ActiveRecord::Base
 
   has_many :roles, :class_name => "UserRole"
 
+  has_many :issues, :class_name => "Issue", :foreign_key => :reported_user_id
+  has_many :issue_comments
+
+  has_many :reports
+
   scope :visible, -> { where(:status => %w[pending active confirmed]) }
   scope :active, -> { where(:status => %w[active confirmed]) }
   scope :identifiable, -> { where(:data_public => true) }
@@ -112,6 +117,11 @@ class User < ActiveRecord::Base
   before_save :encrypt_password
   before_save :update_tile
   after_save :spam_check
+  after_save :reset_preferred_languages
+
+  def to_param
+    display_name
+  end
 
   def self.authenticate(options)
     if options[:username] && options[:password]
@@ -185,7 +195,11 @@ class User < ActiveRecord::Base
   end
 
   def preferred_languages
-    @locales ||= Locale.list(languages)
+    @preferred_languages ||= Locale.list(languages)
+  end
+
+  def reset_preferred_languages
+    @preferred_languages = nil
   end
 
   def nearby(radius = NEARBY_RADIUS, num = NEARBY_USERS)