From 4e9c85c9f5f92433c0aa8d606765fdbdda10407d Mon Sep 17 00:00:00 2001
From: Remi <remi@le-filament.com>
Date: Fri, 20 Dec 2019 12:31:55 +0100
Subject: [PATCH] Add ur_id on calendar events (cgscop#35 cgscop#9)

---
 models/calendar.py |  9 +++++++++
 views/calendar.xml | 11 ++++++++---
 2 files changed, 17 insertions(+), 3 deletions(-)

diff --git a/models/calendar.py b/models/calendar.py
index 6e40e71..7c827da 100644
--- a/models/calendar.py
+++ b/models/calendar.py
@@ -15,6 +15,9 @@ class CGScopCalendar(models.Model):
                 return self.env['res.partner'].browse(self.env.context.get('default_res_id'))
         return False
 
+    def _default_ur(self):
+        return self.env['res.company']._ur_default_get()
+
     type = fields.Selection([
         ('outside', 'Extérieur'),
         ('ur', 'UR'),
@@ -40,6 +43,12 @@ class CGScopCalendar(models.Model):
     is_transfered = fields.Boolean(
         string="Transféré en feuille de temps",
         default=False)
+    ur_id = fields.Many2one(
+        'union.regionale',
+        string='Union Régionale',
+        index=True,
+        on_delete='restrict',
+        default=_default_ur)
 
     # ------------------------------------------------------
     # onchange
diff --git a/views/calendar.xml b/views/calendar.xml
index 89763e6..079cfcb 100644
--- a/views/calendar.xml
+++ b/views/calendar.xml
@@ -69,12 +69,13 @@
                         <group>
                             <field name="coop_id" options="{'no_open': True, 'no_create': True}"/>
                             <field name="project_id" options="{'no_open': True, 'no_create': True}"/>
+                            <field name="ur_id" invisible="1"/>
                             <field 
                                 name="partner_ids"
                                 options="{'no_open': True, 'no_create': True}"
                                 widget="many2manyattendee"
                                 context="{'force_email':True}"
-                                domain="[('user_ids', '!=', False)]"
+                                domain="[('user_ids', '!=', False), ('ur_id', '=', ur_id)]"
                                 />
                         </group>
                         <group>
@@ -164,10 +165,14 @@
                 <!-- Masque étiquettes -->
                 <calendar position="attributes">
                     <attribute name="quick_add">False</attribute>
-                </calendar>
-                <calendar position="attributes">
                     <attribute name="readonly_form_view_id">cgscop_calendar.view_calendar_cooperative_form_inherited</attribute>
                 </calendar>
+                <field name="partner_ids" position="before">
+                    <field name="ur_id" invisible="1"/>
+                </field>
+                <field name="partner_ids" position="attributes">
+                    <attribute name="domain">[('user_ids', '!=', False), ('ur_id', '=', ur_id)]</attribute>
+                </field>
             </field>
         </record>
 
-- 
GitLab