Commit a3d5af5f869a60e3e71d3f2e7a2c87a07d669569

Authored by Victor Costa
1 parent d14b3069

oauth_client: do not call close popup js when oauth_client wasn't called

plugins/oauth_client/controllers/public/oauth_client_plugin_public_controller.rb
... ... @@ -31,6 +31,7 @@ class OauthClientPluginPublicController < PublicController
31 31 else
32 32 session[:notice] = _("Can't login with #{provider.name}")
33 33 end
  34 + session[:oauth_client_login] = true
34 35  
35 36 redirect_to :controller => :account, :action => :login
36 37 end
... ...
plugins/oauth_client/lib/oauth_client_plugin.rb
... ... @@ -30,7 +30,7 @@ class OauthClientPlugin < Noosfero::Plugin
30 30 end
31 31  
32 32 def body_ending
33   - "<script>oauthPluginCloseLoginPopup(#{logged_in?});</script>"
  33 + session.delete(:oauth_client_login) ? "<script>oauthPluginCloseLoginPopup(#{logged_in?}, '#{current_user.private_token}');</script>" : ''
34 34 end
35 35  
36 36 def js_files
... ...
plugins/oauth_client/public/main.js
1   -function oauthPluginCloseLoginPopup(loggedIn) {
  1 +function oauthPluginCloseLoginPopup(loggedIn, privateToken) {
2 2 if (window.opener && typeof window.opener.handleLoginResult == 'function') {
3 3 try {
4   - window.opener.handleLoginResult(loggedIn);
  4 + window.opener.handleLoginResult(loggedIn, privateToken);
5 5 } catch (err) {}
6 6 window.close();
7 7 }
... ...