if current_user&.terms_agreed?
# Already agreed to terms, so just show settings
- redirect_to :action => :account, :display_name => current_user.display_name
+ redirect_to user_account_path(current_user)
elsif current_user.nil? && session[:new_user].nil?
- redirect_to :action => :login, :referer => request.fullpath
+ redirect_to login_path(:referer => request.fullpath)
end
end
end
if params[:referer]
redirect_to safe_referer(params[:referer])
else
- redirect_to :action => :account, :display_name => current_user.display_name
+ redirect_to user_account_path(current_user)
end
elsif params[:decline]
redirect_to t("users.terms.declined")
if params[:referer]
redirect_to safe_referer(params[:referer])
else
- redirect_to :action => :account, :display_name => current_user.display_name
+ redirect_to user_account_path(current_user)
end
else
self.current_user = session.delete(:new_user)
current_user.data_public = true
current_user.save
flash[:notice] = t "users.go_public.flash success"
- redirect_to :action => "account", :display_name => current_user.display_name
+ redirect_to user_account_path(current_user)
end
def new
name = auth_info[:info][:name]
email = auth_info[:info][:email]
- case provider
- when "openid"
- email_verified = uid.match(%r{https://www.google.com/accounts/o8/id?(.*)}) ||
+ email_verified = case provider
+ when "openid"
+ uid.match(%r{https://www.google.com/accounts/o8/id?(.*)}) ||
uid.match(%r{https://me.yahoo.com/(.*)})
- when "google", "facebook"
- email_verified = true
- else
- email_verified = false
- end
+ when "google", "facebook"
+ true
+ else
+ false
+ end
if settings = session.delete(:new_user_settings)
current_user.auth_provider = provider
session[:user_errors] = current_user.errors.as_json
- redirect_to :action => "account", :display_name => current_user.display_name
+ redirect_to user_account_path(current_user)
elsif session[:new_user]
session[:new_user].auth_provider = provider
session[:new_user].auth_uid = uid
private
- ##
- #
- def unconfirmed_login(user)
- session[:token] = user.tokens.create.token
-
- redirect_to :action => "confirm", :display_name => user.display_name
-
- session.delete(:remember_me)
- session.delete(:referer)
- end
-
##
# update a user's details
def update_user(user, params)
user.pass_crypt_confirmation = params[:user][:pass_crypt_confirmation]
end
- if params[:user][:description] != user.description
- user.description = params[:user][:description]
- user.description_format = "markdown"
- end
-
- user.languages = params[:user][:languages].split(",")
-
- case params[:avatar_action]
- when "new"
- user.avatar.attach(params[:user][:avatar])
- user.image_use_gravatar = false
- when "delete"
- user.avatar.purge_later
- user.image_use_gravatar = false
- when "gravatar"
- user.avatar.purge_later
- user.image_use_gravatar = true
- end
-
- user.home_lat = params[:user][:home_lat]
- user.home_lon = params[:user][:home_lon]
-
- user.preferred_editor = if params[:user][:preferred_editor] == "default"
- nil
- else
- params[:user][:preferred_editor]
- end
-
if params[:user][:auth_provider].nil? || params[:user][:auth_provider].blank?
user.auth_provider = nil
user.auth_uid = nil
if user.save
session[:fingerprint] = user.fingerprint
- set_locale(:reset => true)
-
if user.new_email.blank? || user.new_email == user.email
flash[:notice] = t "users.account.flash update success"
else