summaryrefslogtreecommitdiff
path: root/addons/project/controllers
diff options
context:
space:
mode:
authorChristophe Simonis <chs@odoo.com>2018-09-05 18:52:27 +0200
committerChristophe Simonis <chs@odoo.com>2018-09-05 18:52:27 +0200
commitf19e6ce561b80d291cc97bf928c4b84b48ec0f59 (patch)
tree7c5419b940876244f95d055682bbe19429ff4747 /addons/project/controllers
parent7700bd172f790858fb4cb9e64b90c9c77d9e5b0a (diff)
parent213759b03e5466f119f52a557d7feefb9d477267 (diff)
[MERGE] forward port branch 11.0 up to 213759b03e5
Diffstat (limited to 'addons/project/controllers')
-rw-r--r--addons/project/controllers/portal.py11
1 files changed, 10 insertions, 1 deletions
diff --git a/addons/project/controllers/portal.py b/addons/project/controllers/portal.py
index 2e0f8528076..1ea74c36da4 100644
--- a/addons/project/controllers/portal.py
+++ b/addons/project/controllers/portal.py
@@ -104,7 +104,16 @@ class CustomerPortal(CustomerPortal):
}
# extends filterby criteria with project (criteria name is the project id)
# Note: portal users can't view projects they don't follow
- projects = request.env['project.project'].sudo().search([('privacy_visibility', '=', 'portal')])
+ partner = request.env.user.partner_id
+ domain_projects = [
+ '&',
+ ('privacy_visibility', '=', 'portal'),
+ '|',
+ ('message_partner_ids', 'child_of', [partner.commercial_partner_id.id]),
+ ('task_ids.message_partner_ids', 'child_of', [partner.commercial_partner_id.id])
+ ]
+
+ projects = request.env['project.project'].sudo().search(domain_projects)
domain = [('project_id', 'in', projects.ids)]
for proj in projects:
searchbar_filters.update({