summaryrefslogtreecommitdiff
path: root/addons/auth_oauth/controllers/main.py
diff options
context:
space:
mode:
authorFabien Meghazi <fme@openerp.com>2014-02-27 16:49:55 +0100
committerFabien Meghazi <fme@openerp.com>2014-02-27 16:49:55 +0100
commit152e70e9fa5555b57f687d747570f3ff7d6ab769 (patch)
treed1fd3ca34bcf32990035ca58627922b98d71f176 /addons/auth_oauth/controllers/main.py
parent6aa24d08968f53d3d30816071c6bc43422ea31fa (diff)
parenta210c5f5341ccc26530da7f1ac8497d6b9947904 (diff)
[IMP] seperation of auth_signup's reset password and signup routes
bzr revid: fme@openerp.com-20140227154955-tnxyzw1ynuwlo5mj
Diffstat (limited to 'addons/auth_oauth/controllers/main.py')
-rw-r--r--addons/auth_oauth/controllers/main.py24
1 files changed, 23 insertions, 1 deletions
diff --git a/addons/auth_oauth/controllers/main.py b/addons/auth_oauth/controllers/main.py
index 5a22240abac..7db9479ad13 100644
--- a/addons/auth_oauth/controllers/main.py
+++ b/addons/auth_oauth/controllers/main.py
@@ -61,10 +61,14 @@ class OAuthLogin(openerp.addons.web.controllers.main.Home):
return providers
def get_state(self, provider):
- return dict(
+ state = dict(
d=request.session.db,
p=provider['id']
)
+ token = request.params.get('token')
+ if token:
+ state['t'] = token
+ return state
@http.route()
def web_login(self, *args, **kw):
@@ -88,6 +92,24 @@ class OAuthLogin(openerp.addons.web.controllers.main.Home):
return response
+ @http.route()
+ def web_auth_signup(self, *args, **kw):
+ providers = self.list_providers()
+ if len(providers) == 1:
+ werkzeug.exceptions.abort(werkzeug.utils.redirect(providers[0]['auth_link'], 303))
+ response = super(OAuthLogin, self).web_auth_signup(*args, **kw)
+ response.qcontext.update(providers=providers)
+ return response
+
+ @http.route()
+ def web_auth_reset_password(self, *args, **kw):
+ providers = self.list_providers()
+ if len(providers) == 1:
+ werkzeug.exceptions.abort(werkzeug.utils.redirect(providers[0]['auth_link'], 303))
+ response = super(OAuthLogin, self).web_auth_reset_password(*args, **kw)
+ response.qcontext.update(providers=providers)
+ return response
+
class OAuthController(http.Controller):
@http.route('/auth_oauth/signin', type='http', auth='none')