2014-12-03 17:28:19 +08:00
|
|
|
|
class UsersService
|
2014-12-04 15:53:47 +08:00
|
|
|
|
include AccountHelper
|
2014-12-03 17:28:19 +08:00
|
|
|
|
#将用户注册的功能函数写这里
|
|
|
|
|
#参数约定
|
|
|
|
|
#成功返回注册后的User实例,失败直接抛异常
|
2014-12-04 15:53:47 +08:00
|
|
|
|
|
2014-12-03 17:28:19 +08:00
|
|
|
|
def register(params)
|
|
|
|
|
@user = User.new
|
|
|
|
|
@user.admin = false
|
|
|
|
|
@user.register
|
|
|
|
|
@user.login = params[:login]
|
2014-12-04 15:53:47 +08:00
|
|
|
|
@user.mail = params[:mail]
|
|
|
|
|
password = params[:password]
|
|
|
|
|
password_confirmation = params[:password_confirmation]
|
|
|
|
|
should_confirmation_password = params[:should_confirmation_password]
|
2014-12-06 11:27:52 +08:00
|
|
|
|
if !password.blank? && !password_confirmation.blank? && should_confirmation_password
|
2014-12-04 15:53:47 +08:00
|
|
|
|
@user.password,@user.password_confirmation = password,password_confirmation
|
|
|
|
|
elsif !password.blank? && !should_confirmation_password
|
|
|
|
|
@user.password = password
|
|
|
|
|
else
|
|
|
|
|
@user.password = ""
|
2014-12-03 17:28:19 +08:00
|
|
|
|
end
|
|
|
|
|
case Setting.self_registration
|
|
|
|
|
when '1'
|
2014-12-04 15:53:47 +08:00
|
|
|
|
@user = email_activation_register(@user)
|
2014-12-03 17:28:19 +08:00
|
|
|
|
when '3'
|
2014-12-04 15:53:47 +08:00
|
|
|
|
@user = automatically_register(@user)
|
2014-12-03 17:28:19 +08:00
|
|
|
|
else
|
2014-12-04 15:53:47 +08:00
|
|
|
|
@user = administrator_manually__register(@user)
|
2014-12-03 17:28:19 +08:00
|
|
|
|
end
|
|
|
|
|
if @user.id != nil
|
|
|
|
|
ue = @user.user_extensions ||= UserExtensions.new
|
|
|
|
|
ue.user_id = @user.id
|
|
|
|
|
ue.save
|
|
|
|
|
end
|
|
|
|
|
@user
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
end
|