X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/ce7b651eb25473b74765ccb349f37ebd4ea6edfe..347c12b5ead21bdb3b127b603b9d8f3c6f8f0d16:/app/controllers/user_controller.rb?ds=sidebyside diff --git a/app/controllers/user_controller.rb b/app/controllers/user_controller.rb index 9e2961df2..b337dc04c 100644 --- a/app/controllers/user_controller.rb +++ b/app/controllers/user_controller.rb @@ -67,7 +67,7 @@ class UserController < ApplicationController elsif @user.terms_agreed? # Already agreed to terms, so just show settings redirect_to :action => :account, :display_name => @user.display_name - elsif params[:user] and params[:user][:openid_url] + elsif params[:user] and params[:user][:openid_url] and not params[:user][:openid_url].empty? # Verify OpenID before moving on session[:new_user] = @user openid_verify(params[:user][:openid_url], @user) @@ -125,6 +125,7 @@ class UserController < ApplicationController @user.languages = request.user_preferred_languages @user.terms_agreed = Time.now.getutc @user.terms_seen = true + @user.openid_url = nil if @user.openid_url and @user.openid_url.empty? if @user.save flash[:notice] = t 'user.new.flash create success message', :email => @user.email @@ -538,6 +539,10 @@ private failed_login t('user.login.auth failure') end else + # Guard against not getting any extension data + sreg = Hash.new if sreg.nil? + ax = Hash.new if ax.nil? + # We don't have a user registered to this OpenID, so redirect # to the create account page with username and email filled # in if they have been given by the OpenID provider through