@@ -83,9 +83,9 class AccountController < ApplicationController | |||||
83 | else |
|
83 | else | |
84 | @user = User.new(params[:user]) |
|
84 | @user = User.new(params[:user]) | |
85 | @user.admin = false |
|
85 | @user.admin = false | |
86 | @user.status = User::STATUS_REGISTERED |
|
86 | @user.register | |
87 | if session[:auth_source_registration] |
|
87 | if session[:auth_source_registration] | |
88 | @user.status = User::STATUS_ACTIVE |
|
88 | @user.activate | |
89 | @user.login = session[:auth_source_registration][:login] |
|
89 | @user.login = session[:auth_source_registration][:login] | |
90 | @user.auth_source_id = session[:auth_source_registration][:auth_source_id] |
|
90 | @user.auth_source_id = session[:auth_source_registration][:auth_source_id] | |
91 | if @user.save |
|
91 | if @user.save | |
@@ -116,8 +116,8 class AccountController < ApplicationController | |||||
116 | token = Token.find_by_action_and_value('register', params[:token]) |
|
116 | token = Token.find_by_action_and_value('register', params[:token]) | |
117 | redirect_to(home_url) && return unless token and !token.expired? |
|
117 | redirect_to(home_url) && return unless token and !token.expired? | |
118 | user = token.user |
|
118 | user = token.user | |
119 |
redirect_to(home_url) && return unless user. |
|
119 | redirect_to(home_url) && return unless user.registered? | |
120 | user.status = User::STATUS_ACTIVE |
|
120 | user.activate | |
121 | if user.save |
|
121 | if user.save | |
122 | token.destroy |
|
122 | token.destroy | |
123 | flash[:notice] = l(:notice_account_activated) |
|
123 | flash[:notice] = l(:notice_account_activated) | |
@@ -170,7 +170,7 class AccountController < ApplicationController | |||||
170 | user.mail = registration['email'] unless registration['email'].nil? |
|
170 | user.mail = registration['email'] unless registration['email'].nil? | |
171 | user.firstname, user.lastname = registration['fullname'].split(' ') unless registration['fullname'].nil? |
|
171 | user.firstname, user.lastname = registration['fullname'].split(' ') unless registration['fullname'].nil? | |
172 | user.random_password |
|
172 | user.random_password | |
173 | user.status = User::STATUS_REGISTERED |
|
173 | user.register | |
174 |
|
174 | |||
175 | case Setting.self_registration |
|
175 | case Setting.self_registration | |
176 | when '1' |
|
176 | when '1' | |
@@ -241,7 +241,7 class AccountController < ApplicationController | |||||
241 | # Pass a block for behavior when a user fails to save |
|
241 | # Pass a block for behavior when a user fails to save | |
242 | def register_automatically(user, &block) |
|
242 | def register_automatically(user, &block) | |
243 | # Automatic activation |
|
243 | # Automatic activation | |
244 | user.status = User::STATUS_ACTIVE |
|
244 | user.activate | |
245 | user.last_login_on = Time.now |
|
245 | user.last_login_on = Time.now | |
246 | if user.save |
|
246 | if user.save | |
247 | self.logged_user = user |
|
247 | self.logged_user = user |
@@ -164,6 +164,30 class User < Principal | |||||
164 | self.status == STATUS_LOCKED |
|
164 | self.status == STATUS_LOCKED | |
165 | end |
|
165 | end | |
166 |
|
166 | |||
|
167 | def activate | |||
|
168 | self.status = STATUS_ACTIVE | |||
|
169 | end | |||
|
170 | ||||
|
171 | def register | |||
|
172 | self.status = STATUS_REGISTERED | |||
|
173 | end | |||
|
174 | ||||
|
175 | def lock | |||
|
176 | self.status = STATUS_LOCKED | |||
|
177 | end | |||
|
178 | ||||
|
179 | def activate! | |||
|
180 | update_attribute(:status, STATUS_ACTIVE) | |||
|
181 | end | |||
|
182 | ||||
|
183 | def register! | |||
|
184 | update_attribute(:status, STATUS_REGISTERED) | |||
|
185 | end | |||
|
186 | ||||
|
187 | def lock! | |||
|
188 | update_attribute(:status, STATUS_LOCKED) | |||
|
189 | end | |||
|
190 | ||||
167 | def check_password?(clear_password) |
|
191 | def check_password?(clear_password) | |
168 | if auth_source_id.present? |
|
192 | if auth_source_id.present? | |
169 | auth_source.authenticate(self.login, clear_password) |
|
193 | auth_source.authenticate(self.login, clear_password) |
General Comments 0
You need to be logged in to leave comments.
Login now