diff --git a/coworking_coworker/models/res_partner.py b/coworking_coworker/models/res_partner.py index 81aedfb..62ca82d 100644 --- a/coworking_coworker/models/res_partner.py +++ b/coworking_coworker/models/res_partner.py @@ -34,9 +34,29 @@ class ResPartner(models.Model): coworker.full_contact_adress = u'{} {} {}'.format \ (coworker.street or u'', coworker.zip or u'', coworker.city or u'').strip() - @api.constrains('contact_date') def _check_contact_date(self): """Test si la modification de la date n'est pas superieur à la date du jour""" if self.contact_date > fields.Date.context_today(self): raise ValidationError(_('Date most be equal of inferior to to day')) + + @staticmethod + def _manage_coworker_type(vals): + """ Ensures that coworker_type is not defined when is_coworker is False """ + if 'is_coworker' in vals: + if not vals['is_coworker']: + vals.update({'coworker_type': False}) + return vals + + @api.model + def create(self, vals): + """ Ensures that coworker_type is not defined when is_coworker is False """ + vals = ResPartner._manage_coworker_type(vals) + return super(ResPartner, self).create(vals) + + @api.multi + def write(self, vals): + """ Ensures that coworker_type is not defined when is_coworker is False """ + vals = ResPartner._manage_coworker_type(vals) + super(ResPartner, self).write(vals) + return True diff --git a/coworking_coworker/views/res_partner_views.xml b/coworking_coworker/views/res_partner_views.xml index ac0b79c..9406b61 100644 --- a/coworking_coworker/views/res_partner_views.xml +++ b/coworking_coworker/views/res_partner_views.xml @@ -42,9 +42,14 @@ + + + - - res.partner.pivot + pivot res.partner - - - + + diff --git a/coworking_event/models/event.py b/coworking_event/models/event.py index 7264c29..fabb603 100644 --- a/coworking_event/models/event.py +++ b/coworking_event/models/event.py @@ -73,8 +73,9 @@ class Event(models.Model): @api.constrains('date_start', 'date_end') def _check_dates(self): """Test si la modification de la date de début est infnérieure à la date de fin""" - if self.date_start > self.date_end: - raise ValidationError(_('End date most be supperior to to start date')) + for event in self: + if event.date_start > event.date_end: + raise ValidationError(_('End date most be supperior to to start date')) @api.depends('date_start', 'date_end') def _compute_duration(self): diff --git a/coworking_event/wizard/coworking_event_weekly.py b/coworking_event/wizard/coworking_event_weekly.py index fdf782e..800215f 100644 --- a/coworking_event/wizard/coworking_event_weekly.py +++ b/coworking_event/wizard/coworking_event_weekly.py @@ -14,7 +14,7 @@ class CoworkingEventWeekly(models.TransientModel): _description = 'Weekly massive event creation' title = fields.Char(required=True) - manager_id = fields.Many2one('coworking.res_partner', string='Manager', + manager_id = fields.Many2one('res.partner', string='Manager', required=True) date_start_recurence = fields.Datetime('Date start', required=True) date_stop_recurence = fields.Datetime('Date stop', required=True) diff --git a/coworking_relation/__manifest__.py b/coworking_relation/__manifest__.py index 82daa2a..0cd6cf9 100644 --- a/coworking_relation/__manifest__.py +++ b/coworking_relation/__manifest__.py @@ -26,7 +26,7 @@ 'application': False, 'installable': True, 'data': ['security/ir.model.access.csv', - # 'views/relation_menu.xml', + 'views/relation_menu.xml', 'views/relation_views.xml', 'views/res_partner_views.xml'], 'depends': ['coworking_coworker'] diff --git a/coworking_relation/models/relation.py b/coworking_relation/models/relation.py index ef8d88b..41c4277 100644 --- a/coworking_relation/models/relation.py +++ b/coworking_relation/models/relation.py @@ -15,12 +15,12 @@ class CoworkerRelation(models.Model): name = fields.Char() coworker1 = fields.Many2one( - 'coworking.coworker', 'Coworker 1', index=True, required=True, - domain="[('coworker_type', 'in', ['staffer', 'member', 'worker', 'volunteer', 'visitor'])]" + 'res.partner', 'Coworker 1', index=True, required=True, + domain="[('is_coworker', '=', True)]" ) coworker2 = fields.Many2one( - 'coworking.coworker', 'Coworker 2', index=True, required=True, - domain="[('coworker_type', 'in', ['staffer', 'member', 'worker', 'volunteer', 'visitor'])]" + 'res.partner', 'Coworker 2', index=True, required=True, + domain="[('is_coworker', '=', True)]" ) relation = fields.Char(index=True, required=True) diff --git a/coworking_relation/views/relation_menu.xml b/coworking_relation/views/relation_menu.xml index 3426ae6..a234aff 100644 --- a/coworking_relation/views/relation_menu.xml +++ b/coworking_relation/views/relation_menu.xml @@ -7,6 +7,6 @@ res_model="coworking.relation" view_mode="tree" /> + parent="contacts.menu_contacts" sequence="2" /> diff --git a/coworking_relation/views/relation_views.xml b/coworking_relation/views/relation_views.xml index 3e5ac1b..26b4bd6 100644 --- a/coworking_relation/views/relation_views.xml +++ b/coworking_relation/views/relation_views.xml @@ -11,8 +11,8 @@ - - + +