diff --git a/addons/event/models/event_event.py b/addons/event/models/event_event.py index 40f29276f66..4219c4bd4de 100644 --- a/addons/event/models/event_event.py +++ b/addons/event/models/event_event.py @@ -140,6 +140,8 @@ class EventEvent(models.Model): tag_ids = fields.Many2many( 'event.tag', string="Tags", readonly=False, store=True, compute="_compute_tag_ids") + # properties + registration_properties_definition = fields.PropertiesDefinition('Registration Properties') # Kanban fields kanban_state = fields.Selection([('normal', 'In Progress'), ('done', 'Done'), ('blocked', 'Blocked')], default='normal', copy=False) kanban_state_label = fields.Char( @@ -197,7 +199,6 @@ class EventEvent(models.Model): start_sale_datetime = fields.Datetime( 'Start sale date', compute='_compute_start_sale_date', help='If ticketing is used, contains the earliest starting sale date of tickets.') - # Date fields date_tz = fields.Selection( _tz_get, string='Timezone', required=True, diff --git a/addons/event/models/event_registration.py b/addons/event/models/event_registration.py index fc3f002497d..f319038088f 100644 --- a/addons/event/models/event_registration.py +++ b/addons/event/models/event_registration.py @@ -37,7 +37,6 @@ class EventRegistration(models.Model): 'event.event.ticket', string='Event Ticket', ondelete='restrict') active = fields.Boolean(default=True) barcode = fields.Char(string='Barcode', default=lambda self: self._get_random_barcode(), readonly=True, copy=False) - # utm informations utm_campaign_id = fields.Many2one('utm.campaign', 'Campaign', index=True, ondelete='set null') utm_source_id = fields.Many2one('utm.source', 'Source', index=True, ondelete='set null') @@ -66,9 +65,14 @@ class EventRegistration(models.Model): ('draft', 'Unconfirmed'), ('cancel', 'Cancelled'), ('open', 'Confirmed'), ('done', 'Attended')], string='Status', default='draft', readonly=True, copy=False, tracking=6) + # properties + registration_properties = fields.Properties( + 'Properties', definition='event_id.registration_properties_definition', copy=True) + _sql_constraints = [ ('barcode_event_uniq', 'unique(barcode)', "Barcode should be unique") ] + @api.depends('partner_id') def _compute_name(self): for registration in self: diff --git a/addons/event/views/event_registration_views.xml b/addons/event/views/event_registration_views.xml index 470c8acc5df..8ee5bce1001 100644 --- a/addons/event/views/event_registration_views.xml +++ b/addons/event/views/event_registration_views.xml @@ -83,6 +83,7 @@ +