From cebbede4c68c6e41520397a39fb38a337f5d0bc4 Mon Sep 17 00:00:00 2001 From: Christophe Simonis Date: Tue, 11 Feb 2014 14:29:01 +0100 Subject: [PATCH] [FIX] auth_signup: do not shadow errors bzr revid: chs@openerp.com-20140211132901-o7e8cup1hlc6mxzf --- addons/auth_signup/controllers/main.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/addons/auth_signup/controllers/main.py b/addons/auth_signup/controllers/main.py index 3f53b28b075..ca3ee9e4300 100644 --- a/addons/auth_signup/controllers/main.py +++ b/addons/auth_signup/controllers/main.py @@ -85,15 +85,20 @@ class AuthSignup(openerp.addons.web.controllers.main.Home): values = dict((key, qcontext.get(key)) for key in ('login', 'name', 'password')) try: self._signup_with_values(token, values) - request.cr.commit() + redirect = request.params.get('redirect') + if not redirect: + redirect = '/web?' + request.httprequest.query_string + return http.redirect_with_hash(redirect) except SignupError, e: qcontext['error'] = exception_to_unicode(e) - return super(AuthSignup, self).web_login(*args, **kw) return response def _signup_with_values(self, token, values): - request.registry['res.users'].signup(request.cr, openerp.SUPERUSER_ID, values, token) + db, login, password = request.registry['res.users'].signup(request.cr, openerp.SUPERUSER_ID, values, token) + uid = request.session.authenticate(db, login, password) + if uid is not False: + raise SignupError(_('Authentification Failed.')) # vim:expandtab:tabstop=4:softtabstop=4:shiftwidth=4: