From: Tom Hughes Date: Fri, 24 Sep 2010 08:35:36 +0000 (+0100) Subject: Merge branch 'master' into openid X-Git-Tag: live~6315 X-Git-Url: https://git.openstreetmap.org/rails.git/commitdiff_plain/f70feedc6517b824c4201584d6298fd5790d85ba Merge branch 'master' into openid --- f70feedc6517b824c4201584d6298fd5790d85ba diff --cc app/controllers/user_controller.rb index cc4ae4cd8,21561736c..17f52fd40 --- a/app/controllers/user_controller.rb +++ b/app/controllers/user_controller.rb @@@ -222,16 -191,36 +222,16 @@@ class UserController < ApplicationContr end def login - @title = t 'user.login.title' - - if params[:user] - email_or_display_name = params[:user][:email] - pass = params[:user][:password] - user = User.authenticate(:username => email_or_display_name, :password => pass) + if params[:username] or using_open_id? + session[:remember_me] ||= params[:remember_me] + session[:referer] ||= params[:referer] - if user - session[:user] = user.id - session_expires_after 1.month if params[:remember_me] - - # The user is logged in, if the referer param exists, redirect - # them to that unless they've also got a block on them, in - # which case redirect them to the block so they can clear it. - if user.blocked_on_view - redirect_to user.blocked_on_view, :referer => params[:referer] - elsif params[:referer] - redirect_to params[:referer] - else - redirect_to :controller => 'site', :action => 'index' - end - elsif User.authenticate(:username => email_or_display_name, :password => pass, :pending => true) - flash.now[:error] = t 'user.login.account not active' - elsif User.authenticate(:username => email_or_display_name, :password => pass, :suspended => true) - webmaster = link_to t('user.login.webmaster'), "mailto:webmaster@openstreetmap.org" - flash.now[:error] = t 'user.login.account suspended', :webmaster => webmaster + if using_open_id? + openid_authentication(params[:openid_url]) else - flash.now[:error] = t 'user.login.auth failure' + password_authentication(params[:username], params[:password]) end - else + elsif flash[:notice].nil? flash.now[:notice] = t 'user.login.notice' end end