diff app/controllers/my_controller.rb @ 108:d70a0b926135 luisf

Feature #52: All users can now view and edit their description and university
author luisf
date Fri, 17 Dec 2010 13:02:30 +0000
parents 94944d00e43c
children bb9724ba3d60
line wrap: on
line diff
--- a/app/controllers/my_controller.rb	Fri Dec 17 11:18:51 2010 +0000
+++ b/app/controllers/my_controller.rb	Fri Dec 17 13:02:30 2010 +0000
@@ -52,11 +52,29 @@
   def account
     @user = User.current
     @pref = @user.pref
+    @ssamr_user_details = @user.ssamr_user_detail
     if request.post?
       @user.attributes = params[:user]
       @user.mail_notification = params[:notification_option] || 'only_my_events'
       @user.pref.attributes = params[:pref]
       @user.pref[:no_self_notified] = (params[:no_self_notified] == '1')
+
+      if @user.ssamr_user_detail == nil
+        @ssamr_user_details = SsamrUserDetail.new()
+        @user.ssamr_user_detail = @ssamr_user_details
+      else
+        @ssamr_user_details = @user.ssamr_user_detail
+      end
+
+      if params[:ssamr_user_details].nil? or params[:ssamr_user_details].empty?
+        @ssamr_user_details.description = @user.ssamr_user_detail.description
+        @ssamr_user_details.institution_id = @user.ssamr_user_detail.institution_id
+      else
+        @ssamr_user_details.description = params[:ssamr_user_details][:description]
+        @ssamr_user_details.institution_id = params[:ssamr_user_details][:institution_id]
+        @ssamr_user_details.save!
+      end
+
       if @user.save
         @user.pref.save
         @user.notified_project_ids = (params[:notification_option] == 'selected' ? params[:notified_project_ids] : [])