summaryrefslogtreecommitdiff
path: root/addons/website_event_meet
diff options
context:
space:
mode:
Diffstat (limited to 'addons/website_event_meet')
-rw-r--r--addons/website_event_meet/models/event_event.py14
-rw-r--r--addons/website_event_meet/views/event_event_views.xml6
-rw-r--r--addons/website_event_meet/views/event_type_views.xml4
3 files changed, 20 insertions, 4 deletions
diff --git a/addons/website_event_meet/models/event_event.py b/addons/website_event_meet/models/event_event.py
index 4b254e91dbb..af44e8e6664 100644
--- a/addons/website_event_meet/models/event_event.py
+++ b/addons/website_event_meet/models/event_event.py
@@ -1,8 +1,7 @@
# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
-from odoo import api, fields, models, _
-from odoo.addons.http_routing.models.ir_http import slug
+from odoo import api, fields, models
class Event(models.Model):
@@ -15,6 +14,17 @@ class Event(models.Model):
readonly=False, store=True,
help="Let Visitors Create Rooms")
+ @api.depends("event_type_id", "website_menu", "community_menu")
+ def _compute_community_menu(self):
+ """ At type onchange: synchronize. At website_menu update: synchronize. """
+ for event in self:
+ if event.event_type_id and event.event_type_id != event._origin.event_type_id:
+ event.community_menu = event.event_type_id.community_menu
+ elif event.website_menu and (event.website_menu != event._origin.website_menu or not event.community_menu):
+ event.community_menu = True
+ elif not event.website_menu:
+ event.community_menu = False
+
@api.depends("meeting_room_ids")
def _compute_meeting_room_count(self):
meeting_room_count = self.env["event.meeting.room"].sudo().read_group(
diff --git a/addons/website_event_meet/views/event_event_views.xml b/addons/website_event_meet/views/event_event_views.xml
index 798be072310..498f64ace2b 100644
--- a/addons/website_event_meet/views/event_event_views.xml
+++ b/addons/website_event_meet/views/event_event_views.xml
@@ -11,6 +11,12 @@
<field name="meeting_room_count" string="Rooms" widget="statinfo"/>
</button>
</xpath>
+ <xpath expr="//label[@for='community_menu']" position="attributes">
+ <attribute name="invisible">0</attribute>
+ </xpath>
+ <xpath expr="//field[@name='community_menu']" position="attributes">
+ <attribute name="invisible">0</attribute>
+ </xpath>
<xpath expr="//field[@name='community_menu']" position="after">
<field name="meeting_room_allow_creation" invisible="1"/>
</xpath>
diff --git a/addons/website_event_meet/views/event_type_views.xml b/addons/website_event_meet/views/event_type_views.xml
index 616206d9418..0aa7478fa4c 100644
--- a/addons/website_event_meet/views/event_type_views.xml
+++ b/addons/website_event_meet/views/event_type_views.xml
@@ -5,13 +5,13 @@
<field name="model">event.type</field>
<field name="inherit_id" ref="website_event.event_type_view_form"/>
<field name="arch" type="xml">
- <xpath expr="//div[@name='website_menu']" position='after'>
+ <xpath expr="//div[@id='community-menu']" position='after'>
<div class="row mt16" attrs="{'invisible': [('website_menu', '=', False)]}">
<label class="col-lg-4" for="meeting_room_allow_creation"/> <field name="meeting_room_allow_creation"/>
</div>
</xpath>
<xpath expr="//div[@id='community-menu']" position="attributes">
- <attribute name="groups"></attribute>
+ <attribute name="attrs">{'invisible': [('website_menu', '=', False)]}</attribute>
</xpath>
</field>
</record>