3296: check for prefs_changed instead of cycling through all changes.
authorradhika <radhika@curoverse.com>
Mon, 11 Aug 2014 20:36:18 +0000 (16:36 -0400)
committerradhika <radhika@curoverse.com>
Mon, 11 Aug 2014 20:36:18 +0000 (16:36 -0400)
services/api/app/models/user.rb

index 7cd6ac40e5afb7840121106ddd7cc99d6d13aa2f..072ad494b047ff4cff1c1b164f8e8016917b2ae0 100644 (file)
@@ -200,19 +200,6 @@ class User < ArvadosModel
     self.save!
   end
 
-  # update current user profile
-  def profile updated_profile
-    user_profile = self.prefs['profile']
-    user_profile ||= {}
-    updated_profile.each do |entry|
-      if entry[0].starts_with? 'profile_'
-        user_profile[entry[0].partition('_').last] = entry[1]
-      end
-    end
-    self.prefs['profile'] = user_profile
-    self.save!
-  end
-
   protected
 
   def ensure_ownership_path_leads_to_user
@@ -447,8 +434,8 @@ class User < ArvadosModel
 
   # Send notification if the user saved profile for the first time
   def send_profile_created_notification
-    if self.changes.andand.include?(:prefs)
-      if !self.changes[:prefs][0].andand.keys.andand.any?
+    if self.prefs_changed?
+      if self.prefs_was.andand.empty?
         profile_notification_address = Rails.configuration.user_profile_notification_address
         ProfileNotifier.profile_created(self, profile_notification_address).deliver if profile_notification_address
       end