from odoo import http, tools, _ from odoo.addons.auth_signup.controllers.main import AuthSignupHome class SolagroAuthSignupHome(AuthSignupHome): @http.route('/web/signup', type='http', auth='public', website=True, sitemap=False) def web_auth_signup(self, **post): # email validation if post and http.request.httprequest.method == 'POST': email = post.get('email') if email and not tools.single_email_re.match(email): post.update({'error': _('Invalid Email! Please enter a valid email address.'), 'error_email': True}) else: post["login"] = email # name from firstname / lastname if post and http.request.httprequest.method == 'POST': firstname = post.get('firstname') lastname = post.get('lastname') post["name"] = firstname + " " + lastname # update request params because super() uses this instead of kwargs http.request.params.update(post) return super().web_auth_signup(**post)