summaryrefslogtreecommitdiff
path: root/addons/mail/security
diff options
context:
space:
mode:
authorSébastien Theys <seb@odoo.com>2018-07-20 12:02:16 +0000
committerThibault Delavallée <tde@odoo.com>2018-12-12 12:44:03 +0000
commitb9c8ba83e6b367275eca28255dd7df9b8ac84aa1 (patch)
tree388eb2d542849b73e1980b0483cf5ca426576192 /addons/mail/security
parent13eb9b9c5b77cb42616f91dc4db48e0a6aab014e (diff)
[IMP] mail: clean activities access rights
This commit improves code of access rights checks when creating or updating activities. Several points triggers this commit * we would like to use _filter_access_rules and override it on activities model in order to be more standard; * we would like to get rid of sudo used in various CRUD overrides as using standard ORM method allows to correctly use current user; * we would like to get rid of create_user_id field once we can keep the current user as create_uid; Access rights are a bit updated. They are now the following * you can create activities for documents like posting messages (using _mail_post_access attribute; if not defined, write access on document is required); * you can read activities for documents you can read; * you can write and unlink activities either following the defined access rule (created OR assigned), and otherwise like posting messages ( using _mail_post_access attribute; if not defined, write access on document is required); In this commit we also hide edit / mark as done / cancel buttons for activities the current user cannot modify. This commit is linked to task ID 1856417 and PR #27619. Co-Authored-By: Sébastien Theys <seb@odoo.com> Co-Authored-By: Thibault Delavallée <tde@odoo.com>
Diffstat (limited to 'addons/mail/security')
-rw-r--r--addons/mail/security/mail_security.xml4
1 files changed, 2 insertions, 2 deletions
diff --git a/addons/mail/security/mail_security.xml b/addons/mail/security/mail_security.xml
index 7a97925b42b..79f6f44bae1 100644
--- a/addons/mail/security/mail_security.xml
+++ b/addons/mail/security/mail_security.xml
@@ -41,9 +41,9 @@
</record>
<record id="mail_activity_rule_user" model="ir.rule">
- <field name="name">mail.activity: user: own only</field>
+ <field name="name">mail.activity: user: write/unlink only (created or assigned)</field>
<field name="model_id" ref="model_mail_activity"/>
- <field name="domain_force">[('user_id', '=', user.id)]</field>
+ <field name="domain_force">['|', ('user_id', '=', user.id), ('create_user_id', '=', user.id)]</field>
<field name="groups" eval="[(4, ref('base.group_user'))]"/>
<field name="perm_create" eval="False"/>
<field name="perm_read" eval="False"/>