from odoo import http from odoo.http import request class BenefitsController(http.Controller): @http.route(['/benefits'], type='http', auth='public', website=True, sitemap=True) def benefits_directory(self, **kwargs): centres = request.env['community.benefit.partner'].sudo().search([('active', '=', True)]) return request.render('community_benefits.benefits_directory_page', {'centres': centres}) @http.route(['/my/benefits'], type='http', auth='user', website=True) def my_benefits(self, **kwargs): partner = request.env.user.partner_id benefits = request.env['community.benefit'].sudo().search( request.env['community.benefit']._entitled_domain_for_partner(partner) ) benefits = benefits.filtered(lambda benefit: benefit.is_entitled(partner)) return request.render('community_benefits.portal_my_benefits', {'benefits': benefits})