diff --git a/addons/account/controllers/terms.py b/addons/account/controllers/terms.py index b7e3b73cba8..f57296c0260 100644 --- a/addons/account/controllers/terms.py +++ b/addons/account/controllers/terms.py @@ -5,9 +5,17 @@ from odoo import http, _ from odoo.http import request +def sitemap_terms(env, rule, qs): + if qs and qs.lower() not in '/terms': + return + use_invoice_terms = env['ir.config_parameter'].sudo().get_param('account.use_invoice_terms') + if use_invoice_terms and env.company.terms_type == 'html': + yield {'loc': '/terms'} + + class TermsController(http.Controller): - @http.route('/terms', type='http', auth='public', website=True, sitemap=True) + @http.route('/terms', type='http', auth='public', website=True, sitemap=sitemap_terms) def terms_conditions(self, **kwargs): use_invoice_terms = request.env['ir.config_parameter'].sudo().get_param('account.use_invoice_terms') if not (use_invoice_terms and request.env.company.terms_type == 'html'):