diff --git a/addons/event/models/event.py b/addons/event/models/event.py index b25f41b783a..6ae4b4c3ee3 100644 --- a/addons/event/models/event.py +++ b/addons/event/models/event.py @@ -303,11 +303,10 @@ class EventEvent(models.Model): def button_draft(self): self.state = 'draft' - @api.one + @api.multi def button_cancel(self): - for event_reg in self.registration_ids: - if event_reg.state == 'done': - raise UserError(_("You have already set a registration for this event as 'Attended'. Please reset it to draft if you want to cancel this event.")) + if any('done' in event.mapped('registration_ids.state') for event in self): + raise UserError(_("There are already attendees who attended this event. Please reset it to draft if you want to cancel this event.")) self.registration_ids.write({'state': 'cancel'}) self.state = 'cancel' diff --git a/addons/event/views/event_views.xml b/addons/event/views/event_views.xml index 66208b3da65..29a749fd9e1 100644 --- a/addons/event/views/event_views.xml +++ b/addons/event/views/event_views.xml @@ -191,7 +191,8 @@