diff app/controllers/account_controller.rb @ 84:432bb11e0390 cannam

Merge from branch "luisf"
author Chris Cannam
date Thu, 16 Dec 2010 10:03:20 +0000
parents 39db1b84d09f
children d1713ab10813 eeebe205a056
line wrap: on
line diff
--- a/app/controllers/account_controller.rb	Tue Dec 14 14:05:06 2010 +0000
+++ b/app/controllers/account_controller.rb	Thu Dec 16 10:03:20 2010 +0000
@@ -77,13 +77,19 @@
   # User self-registration
   def register
     redirect_to(home_url) && return unless Setting.self_registration? || session[:auth_source_registration]
+
     if request.get?
       session[:auth_source_registration] = nil
       @user = User.new(:language => Setting.default_language)
+
+      @ssamr_user_details = SsamrUserDetail.new
+
     else
       @user = User.new(params[:user])
       @user.admin = false
+                  
       @user.register
+      
       if session[:auth_source_registration]
         @user.activate
         @user.login = session[:auth_source_registration][:login]
@@ -98,6 +104,11 @@
         @user.login = params[:user][:login]
         @user.password, @user.password_confirmation = params[:password], params[:password_confirmation]
 
+        @ssamr_user_details = SsamrUserDetail.new(params[:ssamr_user_details])
+
+        # associates the 2 objects
+        @user.ssamr_user_detail = @ssamr_user_details
+
         case Setting.self_registration
         when '1'
           register_by_email_activation(@user)
@@ -257,6 +268,9 @@
   # Pass a block for behavior when a user fails to save
   def register_manually_by_administrator(user, &block)
     if user.save
+
+       @ssamr_user_details.save!
+
       # Sends an email to the administrators
       Mailer.deliver_account_activation_request(user)
       account_pending