from odoo import http from odoo.http import request from odoo.addons.website.controllers.main import Website import logging _logger = logging.getLogger(__name__) class IntentoryForm(http.Controller): @http.route(['/inventory/search'], type='http', auth="user", website=True) def inventory_form(self, **post): if not request.env['res.users'].browse(request.uid).has_group('base.group_portal')\ and not request.env['res.users'].browse(request.uid).has_group('base.group_user'): redirect = b'/web?' return http.redirect_with_hash(redirect) products = request.env["product.template"].search([('active', '=', 'True'), ('available_in_pos', '=', 'True')]) vals = {'products': products} return request.render("website_search_products.web_list_products", vals) class Website(Website): @http.route(website=True, auth="public") def web_login(self, redirect=None, *args, **kw): response = super(Website, self).web_login(redirect=redirect, *args, **kw) if not redirect and request.params['login_success']: if request.env['res.users'].browse(request.uid).has_group('base.group_user'): redirect = b'/web?' + request.httprequest.query_string else: redirect = '/inventory/search' return http.redirect_with_hash(redirect) return response