diff --git a/plugins/oauth_client/controllers/public/oauth_client_plugin_public_controller.rb b/plugins/oauth_client/controllers/public/oauth_client_plugin_public_controller.rb index 8a75ba0..a88d005 100644 --- a/plugins/oauth_client/controllers/public/oauth_client_plugin_public_controller.rb +++ b/plugins/oauth_client/controllers/public/oauth_client_plugin_public_controller.rb @@ -32,6 +32,7 @@ class OauthClientPluginPublicController < PublicController session[:notice] = _("Can't login with #{provider.name}") end session[:oauth_client_login] = true + session[:return_to] = '/' redirect_to :controller => :account, :action => :login end @@ -39,6 +40,8 @@ class OauthClientPluginPublicController < PublicController def signup(auth) login = auth.info.email.split('@').first session[:oauth_data] = auth + session[:oauth_client_login] = true + session[:return_to] = '/' name = auth.info.name name ||= auth.extra && auth.extra.raw_info ? auth.extra.raw_info.name : '' redirect_to :controller => :account, :action => :signup, :user => {:login => login, :email => auth.info.email}, :profile_data => {:name => name} diff --git a/plugins/oauth_client/lib/oauth_client_plugin.rb b/plugins/oauth_client/lib/oauth_client_plugin.rb index 97ac407..6e1ae3b 100644 --- a/plugins/oauth_client/lib/oauth_client_plugin.rb +++ b/plugins/oauth_client/lib/oauth_client_plugin.rb @@ -30,7 +30,7 @@ class OauthClientPlugin < Noosfero::Plugin end def body_ending - if session.delete(:oauth_client_login) + if logged_in? && session.delete(:oauth_client_login) current_user.private_token_expired? if current_user.present? private_token = current_user.present? ? current_user.private_token : '' "" -- libgit2 0.21.2