fix(auth): set csrf=False on /web/login to prevent session expired errors after restart

This commit is contained in:
Alaguraj0361 2026-10-12 12:51:12 +05:30
parent 42abb214ac
commit bf58ac9667
2 changed files with 8 additions and 4 deletions

View File

@ -31,11 +31,13 @@ class SafeStats(dict):
return self.__missing__(key) if default is None else default return self.__missing__(key) if default is None else default
class CustomHome(Home): class CustomHome(Home):
@http.route('/web/login', type='http', auth="public") @http.route('/web/login', type='http', auth="public", csrf=False, sitemap=False)
def web_login(self, *args, **kw): def web_login(self, *args, **kw):
response = super(CustomHome, self).web_login(*args, **kw) response = super(CustomHome, self).web_login(*args, **kw)
if request.params.get('login_success') and request.session.uid: if request.params.get('login_success') and request.session.uid:
return request.redirect('/') redirect = kw.get('redirect') or request.params.get('redirect')
if not redirect:
return request.redirect('/')
return response return response
def get_dashboard_context(active_page='dashboard'): def get_dashboard_context(active_page='dashboard'):

View File

@ -6,11 +6,13 @@ from odoo.addons.website.controllers.main import Website
from odoo.addons.dine360_dashboard.controllers.main import render_dashboard from odoo.addons.dine360_dashboard.controllers.main import render_dashboard
class CustomHomeWebsite(Home): class CustomHomeWebsite(Home):
@http.route('/web/login', type='http', auth="public", website=True) @http.route('/web/login', type='http', auth="public", website=True, csrf=False, sitemap=False)
def web_login(self, *args, **kw): def web_login(self, *args, **kw):
response = super(CustomHomeWebsite, self).web_login(*args, **kw) response = super(CustomHomeWebsite, self).web_login(*args, **kw)
if request.params.get('login_success') and request.session.uid: if request.params.get('login_success') and request.session.uid:
return request.redirect('/') redirect = kw.get('redirect') or request.params.get('redirect')
if not redirect:
return request.redirect('/')
return response return response
class ImageHomeWebsite(Website): class ImageHomeWebsite(Website):