From 4821fad601dd60ad1b7eb8a9a37bbe253c7141f4 Mon Sep 17 00:00:00 2001 From: Denis Ledoux Date: Wed, 19 Feb 2014 12:03:35 +0100 Subject: [PATCH] [FIX] auth_signup: fix route when mode signup or reset Do not call super web_login when in mode reset or signup mode, as this is non-sense. bzr revid: odo@openerp.com-20140219110335-lz7ti2r1dxst36ty --- addons/auth_signup/controllers/main.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/addons/auth_signup/controllers/main.py b/addons/auth_signup/controllers/main.py index 16baa97d018..08b67108c3f 100644 --- a/addons/auth_signup/controllers/main.py +++ b/addons/auth_signup/controllers/main.py @@ -36,7 +36,10 @@ class AuthSignup(openerp.addons.web.controllers.main.Home): def web_login(self, *args, **kw): mode = request.params.get('mode') qcontext = request.params.copy() - super_response = super(AuthSignup, self).web_login(*args, **kw) + super_response = None + if request.httprequest.method != 'POST' or mode not in ('reset', 'signup'): + # Default behavior is to try to login, which in reset or signup mode in a non-sense. + super_response = super(AuthSignup, self).web_login(*args, **kw) response = webmain.render_bootstrap_template(request.session.db, 'auth_signup.signup', qcontext, lazy=True) if isinstance(super_response, LazyResponse): response.params['values'].update(super_response.params['values']) @@ -78,8 +81,8 @@ class AuthSignup(openerp.addons.web.controllers.main.Home): res_users.reset_password(request.cr, openerp.SUPERUSER_ID, login) qcontext['message'] = _("An email has been sent with credentials to reset your password") response.params['template'] = 'web.login' - except Exception: - qcontext['error'] = _("Could not reset your password") + except Exception, e: + qcontext['error'] = exception_to_unicode(e) or _("Could not reset your password") _logger.exception('error when resetting password') else: values = dict((key, qcontext.get(key)) for key in ('login', 'name', 'password'))