diff options
| author | Antony Lesuisse <al@openerp.com> | 2015-08-14 13:19:31 +0200 |
|---|---|---|
| committer | Antony Lesuisse <al@openerp.com> | 2015-08-14 13:19:31 +0200 |
| commit | 3286dc2ec74e5be3e87e39114fad90068d2cb8fa (patch) | |
| tree | 48bda72c201e76db21a86f009b5a2e06af8b84e9 /addons/project/security/project_security.xml | |
| parent | f8357a1a605d1c74d09d7ea5d74ab53ce77aa085 (diff) | |
| parent | 60514d0d0d7254c17ecebad99423f26fd4138d8e (diff) | |
[MERGE] project_issue: website portal
- Remove portal_project move rules to project
- Add issues in the /my/home frontend portal
- Remove website_project, task access is backend only
Diffstat (limited to 'addons/project/security/project_security.xml')
| -rw-r--r-- | addons/project/security/project_security.xml | 44 |
1 files changed, 40 insertions, 4 deletions
diff --git a/addons/project/security/project_security.xml b/addons/project/security/project_security.xml index e1d8eb71b0a..b41208248ff 100644 --- a/addons/project/security/project_security.xml +++ b/addons/project/security/project_security.xml @@ -47,10 +47,10 @@ </record> <record model="ir.rule" id="project_public_members_rule"> - <field name="name">Project: employees: public, employees or followers</field> + <field name="name">Project: employees: portal, employees or followers</field> <field name="model_id" ref="model_project_project"/> <field name="domain_force">['|', - ('privacy_visibility', 'in', ['public', 'employees']), + ('privacy_visibility', 'in', ['portal', 'employees']), ('message_follower_ids', 'in', [user.partner_id.id]) ]</field> <field name="groups" eval="[(4, ref('base.group_user'))]"/> @@ -67,11 +67,11 @@ </record> <record model="ir.rule" id="task_visibility_rule"> - <field name="name">Project/Task: employees: public or employee or (followers and following)</field> + <field name="name">Project/Task: employees: portal or employee or (followers and following)</field> <field name="model_id" ref="model_project_task"/> <field name="domain_force">[ '|', - ('project_id.privacy_visibility', 'in', ['public', 'employees']), + ('project_id.privacy_visibility', 'in', ['portal', 'employees']), '|', '&', ('project_id.privacy_visibility', '=', 'followers'), @@ -91,5 +91,41 @@ <field name="groups" eval="[(4,ref('project.group_project_manager'))]"/> </record> + <!-- Portal --> + <record model="ir.rule" id="portal_project_rule"> + <field name="name">Project: portal users: portal or following</field> + <field name="model_id" ref="project.model_project_project"/> + <field name="domain_force">[ + '|', + '&', + ('privacy_visibility', '=', 'portal'), + ('message_follower_ids', 'child_of', [user.partner_id.commercial_partner_id.id]), + '&', + ('privacy_visibility', '=', 'followers'), + ('message_follower_ids', 'in', [user.partner_id.id]) + ]</field> + <field name="groups" eval="[(4, ref('base.group_portal'))]"/> + </record> + + <record model="ir.rule" id="portal_task_rule"> + <field name="name">Project/Task: portal users: (portal and colleagues following) or (followers and following)</field> + <field name="model_id" ref="project.model_project_task"/> + <field name="domain_force">[ + '|', + '|', + '&', + ('project_id.privacy_visibility', '=', 'portal'), + ('project_id.message_follower_ids', 'child_of', [user.partner_id.commercial_partner_id.id]), + '&', + ('project_id.privacy_visibility', '=', 'followers'), + ('project_id.message_follower_ids', 'in', [user.partner_id.id]), + '&', + # on employee project can receive messages but not access the object + ('project_id.privacy_visibility', '!=', 'employees'), + ('message_follower_ids', 'in', [user.partner_id.id]) + ]</field> + <field name="groups" eval="[(4, ref('base.group_portal'))]"/> + </record> + </data> </openerp> |
