diff options
Diffstat (limited to 'addons/website_event/models')
| -rw-r--r-- | addons/website_event/models/event_event.py | 10 | ||||
| -rw-r--r-- | addons/website_event/models/event_type.py | 8 |
2 files changed, 16 insertions, 2 deletions
diff --git a/addons/website_event/models/event_event.py b/addons/website_event/models/event_event.py index 162cdf8cd55..72f8096b5a1 100644 --- a/addons/website_event/models/event_event.py +++ b/addons/website_event/models/event_event.py @@ -123,10 +123,16 @@ class Event(models.Model): elif not event.website_menu: event.community_menu = False - @api.depends('website_menu') + @api.depends("event_type_id", "website_menu") def _compute_menu_register_cta(self): + """ At type onchange: synchronize. At website_menu update: synchronize. """ for event in self: - event.menu_register_cta = event.website_menu + if event.event_type_id and event.event_type_id != event._origin.event_type_id: + event.menu_register_cta = event.event_type_id.menu_register_cta + elif event.website_menu and event.website_menu != event._origin.website_menu or not event.menu_register_cta: + event.menu_register_cta = True + elif not event.website_menu: + event.menu_register_cta = False @api.depends('date_begin', 'date_end') def _compute_time_data(self): diff --git a/addons/website_event/models/event_type.py b/addons/website_event/models/event_type.py index b89d3af9518..43acf03360b 100644 --- a/addons/website_event/models/event_type.py +++ b/addons/website_event/models/event_type.py @@ -13,8 +13,16 @@ class EventType(models.Model): "Community Menu", compute="_compute_community_menu", readonly=False, store=True, help="Display community tab on website") + menu_register_cta = fields.Boolean( + 'Add Register Button', compute='_compute_menu_register_cta', + readonly=False, store=True) @api.depends('website_menu') def _compute_community_menu(self): for event_type in self: event_type.community_menu = event_type.website_menu + + @api.depends('website_menu') + def _compute_menu_register_cta(self): + for event_type in self: + event_type.menu_register_cta = event_type.website_menu |
