elsif current_user
unless current_user.terms_agreed?
current_user.consider_pd = params[:user][:consider_pd]
- current_user.tou_agreed = Time.now.getutc
- current_user.terms_agreed = Time.now.getutc
+ current_user.tou_agreed = Time.now.utc
+ current_user.terms_agreed = Time.now.utc
current_user.terms_seen = true
flash[:notice] = t "users.new.terms accepted" if current_user.save
current_user.description = "" if current_user.description.nil?
current_user.creation_ip = request.remote_ip
current_user.languages = http_accept_language.user_preferred_languages
- current_user.terms_agreed = Time.now.getutc
- current_user.tou_agreed = Time.now.getutc
+ current_user.terms_agreed = Time.now.utc
+ current_user.tou_agreed = Time.now.utc
current_user.terms_seen = true
if current_user.auth_uid.blank?
end
if current_user.save
- flash[:piwik_goal] = PIWIK["goals"]["signup"] if defined?(PIWIK)
+ flash[:matomo_goal] = Settings.matomo["goals"]["signup"] if defined?(Settings.matomo)
referer = welcome_path
if current_user
# The user is logged in already, so don't show them the signup
# page, instead send them to the home page
- if @referer
- redirect_to @referer
- else
- redirect_to :controller => "site", :action => "index"
- end
+ redirect_to @referer || { :controller => "site", :action => "index" }
elsif params.key?(:auth_provider) && params.key?(:auth_uid)
self.current_user = User.new(:email => params[:email],
:email_confirmation => params[:email],
Rails.logger.info "create: #{session[:referer]}"
- current_user.status = "pending"
-
if current_user.auth_provider.present? && current_user.pass_crypt.empty?
# We are creating an account with external authentication and
# no password was specified so create a random one
##
# sets a user's status
def set_status
- @user.status = params[:status]
- @user.save
+ @user.activate! if params[:event] == "activate"
+ @user.confirm! if params[:event] == "confirm"
+ @user.unconfirm! if params[:event] == "unconfirm"
+ @user.hide! if params[:event] == "hide"
+ @user.unhide! if params[:event] == "unhide"
+ @user.unsuspend! if params[:event] == "unsuspend"
redirect_to user_path(:display_name => params[:display_name])
end
##
# destroy a user, marking them as deleted and removing personal data
def destroy
- @user.destroy
+ @user.soft_destroy!
redirect_to user_path(:display_name => params[:display_name])
end
session[:new_user].auth_provider = provider
session[:new_user].auth_uid = uid
- session[:new_user].status = "active" if email_verified && email == session[:new_user].email
+ session[:new_user].activate if email_verified && email == session[:new_user].email
redirect_to :action => "terms"
else