diff --git a/addons/website/controllers/main.py b/addons/website/controllers/main.py index a1424a72a18..1e5e5a09dd7 100644 --- a/addons/website/controllers/main.py +++ b/addons/website/controllers/main.py @@ -168,7 +168,7 @@ class Website(Home): sitemaps.unlink() pages = 0 - locs = request.website.sudo(user=request.website.user_id.id).enumerate_pages() + locs = request.website.with_context(use_public_user=True).enumerate_pages() while True: values = { 'locs': islice(locs, 0, LOC_PER_SITEMAP), diff --git a/addons/website/models/ir_http.py b/addons/website/models/ir_http.py index be90d31c341..b69f9417ac2 100644 --- a/addons/website/models/ir_http.py +++ b/addons/website/models/ir_http.py @@ -363,6 +363,8 @@ class ModelConverter(ir.ir_http.ModelConverter): def generate(self, query=None, args=None): Model = request.env[self.model] + if request.context.get('use_public_user'): + Model = Model.sudo(request.website.user_id.id) domain = safe_eval(self.domain, (args or {}).copy()) if query: domain.append((Model._rec_name, 'ilike', '%' + query + '%'))