diff options
| author | Lucas Perais (lpe) <lpe@odoo.com> | 2018-06-25 10:55:32 +0200 |
|---|---|---|
| committer | Lucas Perais (lpe) <lpe@odoo.com> | 2018-06-26 15:07:42 +0200 |
| commit | cda2ac9b71ef3ad6dc07e1c0418e560261503d33 (patch) | |
| tree | 147e5969662a24c95512a78c2de55724e0e258c9 | |
| parent | f6b3247c31ee176944a060afb911021d071d8a32 (diff) | |
[FIX] event, event_sale, website_event: allow portal access to own registrations
OPW 1859364
| -rw-r--r-- | addons/event/security/event_security.xml | 7 | ||||
| -rw-r--r-- | addons/event/security/ir.model.access.csv | 3 | ||||
| -rw-r--r-- | addons/event_sale/__manifest__.py | 1 | ||||
| -rw-r--r-- | addons/event_sale/security/event_security.xml | 8 | ||||
| -rw-r--r-- | addons/website_event/controllers/main.py | 2 | ||||
| -rw-r--r-- | addons/website_event/views/event_templates.xml | 2 |
6 files changed, 20 insertions, 3 deletions
diff --git a/addons/event/security/event_security.xml b/addons/event/security/event_security.xml index 110262928b6..7664085fc0e 100644 --- a/addons/event/security/event_security.xml +++ b/addons/event/security/event_security.xml @@ -41,5 +41,12 @@ ] </field> </record> + <record model="ir.rule" id="event_registration_portal"> + <field name="name">Event/Registration: Portal</field> + <field name="model_id" ref="model_event_registration"/> + <field name="groups" eval="[(4, ref('base.group_portal'))]"/> + <field name="domain_force">['|', ('email', '=', user.partner_id.email), ('partner_id', '=', user.partner_id.id)] + </field> + </record> </data> </odoo> diff --git a/addons/event/security/ir.model.access.csv b/addons/event/security/ir.model.access.csv index ed7ec0e0cc6..8a49f01f191 100644 --- a/addons/event/security/ir.model.access.csv +++ b/addons/event/security/ir.model.access.csv @@ -5,7 +5,8 @@ access_event_event_portal,event.event.portal,model_event_event,,1,0,0,0 access_event_event_user,event.event.user,model_event_event,event.group_event_user,1,0,0,0
access_event_event_manager,event.event.manager,model_event_event,event.group_event_manager,1,1,1,1
access_event_registration,event.registration,model_event_registration,event.group_event_user,1,1,1,1
-access_event_registration_portal,event.registration,model_event_registration,,0,0,0,0
+access_event_registration_employee,event.registration,model_event_registration,base.group_user,1,0,0,0
+access_event_registration_portal,event.registration,model_event_registration,base.group_portal,1,0,0,0
access_event_mail,event.mail,model_event_mail,event.group_event_user,1,0,0,0
access_event_mail_manager,event.mail manager,model_event_mail,event.group_event_manager,1,1,1,1
access_event_mail_registration,event.mail.registration,model_event_mail_registration,event.group_event_user,1,0,0,0
diff --git a/addons/event_sale/__manifest__.py b/addons/event_sale/__manifest__.py index 97140bd471f..2293b52dfb5 100644 --- a/addons/event_sale/__manifest__.py +++ b/addons/event_sale/__manifest__.py @@ -26,6 +26,7 @@ this event. 'data/event_sale_data.xml', 'report/event_event_templates.xml', 'security/ir.model.access.csv', + 'security/event_security.xml', 'wizard/event_edit_registration.xml', ], 'demo': ['data/event_demo.xml'], diff --git a/addons/event_sale/security/event_security.xml b/addons/event_sale/security/event_security.xml new file mode 100644 index 00000000000..a5bc0885b9b --- /dev/null +++ b/addons/event_sale/security/event_security.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="utf-8"?> +<odoo> + <data noupdate="0"> + <record id="sales_team.group_sale_salesman" model="res.groups"> + <field name="implied_ids" eval="[(4, ref('event.group_event_user'))]"/> + </record> + </data> +</odoo> diff --git a/addons/website_event/controllers/main.py b/addons/website_event/controllers/main.py index 7e4a9c227a6..a056829683b 100644 --- a/addons/website_event/controllers/main.py +++ b/addons/website_event/controllers/main.py @@ -173,7 +173,7 @@ class WebsiteEventController(http.Controller): 'event': event, 'main_object': event, 'range': range, - 'registrable': event._is_event_registrable() + 'registrable': event.sudo()._is_event_registrable() } return request.render("website_event.event_description_full", values) diff --git a/addons/website_event/views/event_templates.xml b/addons/website_event/views/event_templates.xml index 9a04d4e7e57..0a64a7430ca 100644 --- a/addons/website_event/views/event_templates.xml +++ b/addons/website_event/views/event_templates.xml @@ -480,7 +480,7 @@ <t t-if="event.state != 'draft'" itemprop="availability" content="http://schema.org/Discontinued"> Event registration is closed. </t> - <t t-if="uid"> + <t t-if="request.env.user.has_group('event.group_event_manager')"> <a t-attf-href="/web#id=#{event.id}&view_type=form&model=event.event"> <i class="fa fa-plus-circle"></i> <em>Configure and Launch Event Registration</em> |
