From f56eae11db939018bb662ed7c5ebc1ed41451ca9 Mon Sep 17 00:00:00 2001
From: Remi <remi@le-filament.com>
Date: Thu, 12 Sep 2019 06:57:08 +0200
Subject: [PATCH] Add fields for persons

---
 __manifest__.py       |  1 +
 models/res_partner.py |  2 +-
 views/res_partner.xml | 93 +++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 95 insertions(+), 1 deletion(-)
 create mode 100644 views/res_partner.xml

diff --git a/__manifest__.py b/__manifest__.py
index c5d1792..640f4d3 100644
--- a/__manifest__.py
+++ b/__manifest__.py
@@ -17,6 +17,7 @@
     "data": [
         "security/security_rules.xml",
         "security/ir.model.access.csv",
+        "views/res_partner.xml",
         "views/res_partner_cooperative.xml",
         "views/scop_config_views.xml",
         "views/scop_config_lists_views.xml",
diff --git a/models/res_partner.py b/models/res_partner.py
index 372a618..c65e3eb 100644
--- a/models/res_partner.py
+++ b/models/res_partner.py
@@ -308,7 +308,7 @@ class ScopPartner(models.Model):
     education_domain = fields.Selection([
         ('science', 'Science')],
         "Domaine d'étude")
-    subscriptions_ids = fields.One2many(
+    subscription_ids = fields.One2many(
         comodel_name='res.partner.newsletter.subscription',
         inverse_name='partner_id',
         string='Abonnements')
diff --git a/views/res_partner.xml b/views/res_partner.xml
new file mode 100644
index 0000000..07a2e3c
--- /dev/null
+++ b/views/res_partner.xml
@@ -0,0 +1,93 @@
+<?xml version="1.0"?>
+<!-- Copyright 2019 Le Filament
+     License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). -->
+
+<odoo>
+    <data>
+        <record id="scop_contact_view_form" model="ir.ui.view">
+            <field name="name">add scop fields in form view</field>
+            <field name="model">res.partner</field>
+            <field name="inherit_id" ref="base.view_partner_form"/>
+            <field name="arch" type="xml">
+                 <field name="title" position="replace"/>
+                 <xpath expr='//form/sheet/group' position="after">
+                    <group>
+                        <group>
+                            <field name="title"  options='{"no_open": True}' attrs="{'invisible': [('is_company','=', True)]}"/>
+                            <field name="birthyear" attrs="{'invisible': [('is_company','=', True)]}"/>
+                            <field name="education_level" attrs="{'invisible': [('is_company','=', True)]}"/>
+                            <field name="education_domain" attrs="{'invisible': [('is_company','=', True)]}"/>
+                            <field name="contact_origin_id" attrs="{'invisible': [('is_company','=', True)]}"/>
+                            <field name="contact_legality" readonly="True" attrs="{'invisible': [('is_company','=', True)]}"/>
+                        </group>
+                        <group>
+                            <field name="subscription_ids" attrs="{'invisible': [('is_company','=', True)]}">
+                                <tree string="Subscriptions" editable="bottom">
+                                    <field name="newsletter_id" domain="[]"/>
+                                    <field name="consent"/>
+                                </tree>
+                            </field>
+                        </group>
+                    </group>
+                </xpath>
+            </field>
+        </record>
+
+        <record id="scop_contact_view_simple_form" model="ir.ui.view">
+            <field name="name">add scop fields in simple form view</field>
+            <field name="model">res.partner</field>
+            <field name="inherit_id" ref="base.view_partner_simple_form"/>
+            <field name="arch" type="xml">
+                 <xpath expr='//form/group' position="after">
+                    <group>
+                        <group>
+                            <field name="title"  options='{"no_open": True}' attrs="{'invisible': [('is_company','=', True)]}"/>
+                            <field name="birthyear" attrs="{'invisible': [('is_company','=', True)]}"/>
+                            <field name="education_level" attrs="{'invisible': [('is_company','=', True)]}"/>
+                            <field name="education_domain" attrs="{'invisible': [('is_company','=', True)]}"/>
+                            <field name="contact_origin_id" attrs="{'invisible': [('is_company','=', True)]}"/>
+                            <field name="contact_legality" readonly="True" attrs="{'invisible': [('is_company','=', True)]}"/>
+                        </group>
+                        <group>
+                            <field name="subscription_ids" attrs="{'invisible': [('is_company','=', True)]}">
+                                <tree string="Subscriptions" editable="bottom">
+                                    <field name="newsletter_id" domain="[]"/>
+                                    <field name="consent"/>
+                                </tree>
+                            </field>
+                        </group>
+                    </group>
+                </xpath>
+            </field>
+        </record>
+
+
+        <record id="scop_contact_view_short_form" model="ir.ui.view">
+            <field name="name">add scop fields in short form view</field>
+            <field name="model">res.partner</field>
+            <field name="inherit_id" ref="base.view_partner_short_form"/>
+            <field name="arch" type="xml">
+                 <xpath expr='//form/sheet/group' position="after">
+                    <group>
+                        <group>
+                            <field name="title"  options='{"no_open": True}' attrs="{'invisible': [('is_company','=', True)]}"/>
+                            <field name="birthyear" attrs="{'invisible': [('is_company','=', True)]}"/>
+                            <field name="education_level" attrs="{'invisible': [('is_company','=', True)]}"/>
+                            <field name="education_domain" attrs="{'invisible': [('is_company','=', True)]}"/>
+                            <field name="contact_origin_id" attrs="{'invisible': [('is_company','=', True)]}"/>
+                            <field name="contact_legality" readonly="True" attrs="{'invisible': [('is_company','=', True)]}"/>
+                        </group>
+                        <group>
+                            <field name="subscription_ids" attrs="{'invisible': [('is_company','=', True)]}">
+                                <tree string="Subscriptions" editable="bottom">
+                                    <field name="newsletter_id" domain="[]"/>
+                                    <field name="consent"/>
+                                </tree>
+                            </field>
+                        </group>
+                    </group>
+                </xpath>
+            </field>
+        </record>
+    </data>
+</odoo>
\ No newline at end of file
-- 
GitLab