From ef573872e09d1a4043d9cc70958cde174fc1a23c Mon Sep 17 00:00:00 2001
From: Alexey Pelykh <alexey.pelykh@gmail.com>
Date: Thu, 25 Oct 2018 12:00:35 +0300
Subject: [PATCH 01/30] [12.0][ADD] hr_employee_relative: alternative to
 hr_family

---
 hr_employee_relative/README.rst               |  73 +++
 hr_employee_relative/__init__.py              |   3 +
 hr_employee_relative/__manifest__.py          |  30 ++
 .../data/data_relative_relation.xml           |  36 ++
 hr_employee_relative/i18n/fr.po               | 177 ++++++++
 .../i18n/hr_employee_relative.pot             | 175 ++++++++
 hr_employee_relative/models/__init__.py       |   5 +
 hr_employee_relative/models/hr_employee.py    |  14 +
 .../models/hr_employee_relative.py            |  61 +++
 .../models/hr_employee_relative_relation.py   |  15 +
 hr_employee_relative/readme/CONTRIBUTORS.rst  |   1 +
 hr_employee_relative/readme/DESCRIPTION.rst   |   1 +
 .../security/ir.model.access.csv              |   5 +
 .../static/description/icon.png               | Bin 0 -> 9455 bytes
 .../static/description/index.html             | 419 ++++++++++++++++++
 hr_employee_relative/tests/__init__.py        |   3 +
 .../tests/test_hr_employee_relatives.py       |  31 ++
 hr_employee_relative/views/hr_employee.xml    |  24 +
 .../views/hr_employee_relative.xml            |  24 +
 19 files changed, 1097 insertions(+)
 create mode 100644 hr_employee_relative/README.rst
 create mode 100644 hr_employee_relative/__init__.py
 create mode 100644 hr_employee_relative/__manifest__.py
 create mode 100644 hr_employee_relative/data/data_relative_relation.xml
 create mode 100644 hr_employee_relative/i18n/fr.po
 create mode 100644 hr_employee_relative/i18n/hr_employee_relative.pot
 create mode 100644 hr_employee_relative/models/__init__.py
 create mode 100644 hr_employee_relative/models/hr_employee.py
 create mode 100644 hr_employee_relative/models/hr_employee_relative.py
 create mode 100644 hr_employee_relative/models/hr_employee_relative_relation.py
 create mode 100644 hr_employee_relative/readme/CONTRIBUTORS.rst
 create mode 100644 hr_employee_relative/readme/DESCRIPTION.rst
 create mode 100644 hr_employee_relative/security/ir.model.access.csv
 create mode 100644 hr_employee_relative/static/description/icon.png
 create mode 100644 hr_employee_relative/static/description/index.html
 create mode 100644 hr_employee_relative/tests/__init__.py
 create mode 100644 hr_employee_relative/tests/test_hr_employee_relatives.py
 create mode 100644 hr_employee_relative/views/hr_employee.xml
 create mode 100644 hr_employee_relative/views/hr_employee_relative.xml

diff --git a/hr_employee_relative/README.rst b/hr_employee_relative/README.rst
new file mode 100644
index 00000000000..6e8743a716d
--- /dev/null
+++ b/hr_employee_relative/README.rst
@@ -0,0 +1,73 @@
+=====================
+HR Employee Relatives
+=====================
+
+.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+   !! This file is generated by oca-gen-addon-readme !!
+   !! changes will be overwritten.                   !!
+   !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+
+.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
+    :target: https://odoo-community.org/page/development-status
+    :alt: Beta
+.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png
+    :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
+    :alt: License: AGPL-3
+.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fhr-lightgray.png?logo=github
+    :target: https://github.com/OCA/hr/tree/12.0/hr_employee_relative
+    :alt: OCA/hr
+.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
+    :target: https://translation.odoo-community.org/projects/hr-12-0/hr-12-0-hr_employee_relative
+    :alt: Translate me on Weblate
+.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
+    :target: https://runbot.odoo-community.org/runbot/116/12.0
+    :alt: Try me on Runbot
+
+|badge1| |badge2| |badge3| |badge4| |badge5| 
+
+This module allows storing information about employee's family.
+
+**Table of contents**
+
+.. contents::
+   :local:
+
+Bug Tracker
+===========
+
+Bugs are tracked on `GitHub Issues <https://github.com/OCA/hr/issues>`_.
+In case of trouble, please check there if your issue has already been reported.
+If you spotted it first, help us smashing it by providing a detailed and welcomed
+`feedback <https://github.com/OCA/hr/issues/new?body=module:%20hr_employee_relative%0Aversion:%2012.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
+
+Do not contact contributors directly about support or help with technical issues.
+
+Credits
+=======
+
+Authors
+~~~~~~~
+
+* Brainbean Apps
+
+Contributors
+~~~~~~~~~~~~
+
+* Alexey Pelykh <alexey.pelykh@brainbeanapps.com>
+
+Maintainers
+~~~~~~~~~~~
+
+This module is maintained by the OCA.
+
+.. image:: https://odoo-community.org/logo.png
+   :alt: Odoo Community Association
+   :target: https://odoo-community.org
+
+OCA, or the Odoo Community Association, is a nonprofit organization whose
+mission is to support the collaborative development of Odoo features and
+promote its widespread use.
+
+This module is part of the `OCA/hr <https://github.com/OCA/hr/tree/12.0/hr_employee_relative>`_ project on GitHub.
+
+You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
diff --git a/hr_employee_relative/__init__.py b/hr_employee_relative/__init__.py
new file mode 100644
index 00000000000..4b76c7b2d5c
--- /dev/null
+++ b/hr_employee_relative/__init__.py
@@ -0,0 +1,3 @@
+# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html).
+
+from . import models
diff --git a/hr_employee_relative/__manifest__.py b/hr_employee_relative/__manifest__.py
new file mode 100644
index 00000000000..9984c3d1aaa
--- /dev/null
+++ b/hr_employee_relative/__manifest__.py
@@ -0,0 +1,30 @@
+# Copyright (C) 2018 Brainbean Apps (https://brainbeanapps.com)
+# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html).
+
+{
+    'name': 'HR Employee Relatives',
+    'version': '12.0.1.0.0',
+    'category': 'Human Resources',
+    'website': 'https://github.com/OCA/hr',
+    'author':
+        'Brainbean Apps, '
+        'Odoo Community Association (OCA)',
+    'license': 'AGPL-3',
+    'installable': True,
+    'application': False,
+    'summary': 'Allows storing information about employee\'s family',
+    'depends': [
+        'hr',
+    ],
+    'external_dependencies': {
+        'python': [
+            'dateutil',
+        ],
+    },
+    'data': [
+        'data/data_relative_relation.xml',
+        'security/ir.model.access.csv',
+        'views/hr_employee.xml',
+        'views/hr_employee_relative.xml',
+    ],
+}
diff --git a/hr_employee_relative/data/data_relative_relation.xml b/hr_employee_relative/data/data_relative_relation.xml
new file mode 100644
index 00000000000..c9329e664ba
--- /dev/null
+++ b/hr_employee_relative/data/data_relative_relation.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="utf-8"?>
+<odoo>
+    <data noupdate="1">
+        <!--
+          Copyright (C) 2018 Brainbean Apps (https://brainbeanapps.com)
+          License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
+        -->
+
+        <!-- hr.employee.relative.relation -->
+        <record model="hr.employee.relative.relation" id="relation_spouse">
+          <field name="name">Spouse</field>
+        </record>
+        <record model="hr.employee.relative.relation" id="relation_significant_other">
+          <field name="name">Significant Other</field>
+        </record>
+        <record model="hr.employee.relative.relation" id="relation_child">
+          <field name="name">Child</field>
+        </record>
+        <record model="hr.employee.relative.relation" id="relation_parent">
+          <field name="name">Parent</field>
+        </record>
+        <record model="hr.employee.relative.relation" id="relation_sibling">
+          <field name="name">Sibling</field>
+        </record>
+        <record model="hr.employee.relative.relation" id="relation_cousin">
+          <field name="name">Cousin</field>
+        </record>
+        <record model="hr.employee.relative.relation" id="relation_grandparent">
+          <field name="name">Grandparent</field>
+        </record>
+        <record model="hr.employee.relative.relation" id="relation_grandchild">
+          <field name="name">Grandchild</field>
+        </record>
+
+    </data>
+</odoo>
diff --git a/hr_employee_relative/i18n/fr.po b/hr_employee_relative/i18n/fr.po
new file mode 100644
index 00000000000..65bc11e6d7f
--- /dev/null
+++ b/hr_employee_relative/i18n/fr.po
@@ -0,0 +1,177 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+#	* hr_employee_relative
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 12.0\n"
+"Report-Msgid-Bugs-To: \n"
+"PO-Revision-Date: 2019-05-24 10:19+0000\n"
+"Last-Translator: Kévin Allard <kallard@efficom-lille.com>\n"
+"Language-Team: none\n"
+"Language: fr\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Plural-Forms: nplurals=2; plural=n > 1;\n"
+"X-Generator: Weblate 3.6.1\n"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age
+msgid "Age"
+msgstr "Âge"
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_child
+msgid "Child"
+msgstr "Enfant"
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_cousin
+msgid "Cousin"
+msgstr "Cousin(e)"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__create_uid
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__create_uid
+msgid "Created by"
+msgstr "Créé par"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__create_date
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__create_date
+msgid "Created on"
+msgstr "Créé le"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__date_of_birth
+msgid "Date of Birth"
+msgstr "Date de naissance"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__display_name
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__display_name
+msgid "Display Name"
+msgstr "Nom affiché"
+
+#. module: hr_employee_relative
+#: model:ir.model,name:hr_employee_relative.model_hr_employee
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__employee_id
+msgid "Employee"
+msgstr "Employé(e)"
+
+#. module: hr_employee_relative
+#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
+msgid "Employee Relatives"
+msgstr "Proches"
+
+#. module: hr_employee_relative
+#: selection:hr.employee.relative,gender:0
+msgid "Female"
+msgstr "Feminin"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__gender
+msgid "Gender"
+msgstr "Genre"
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_grandchild
+msgid "Grandchild"
+msgstr "Petit-enfant"
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_grandparent
+msgid "Grandparent"
+msgstr "Grand-parent"
+
+#. module: hr_employee_relative
+#: model:ir.model,name:hr_employee_relative.model_hr_employee_relative
+msgid "HR Employee Relative"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model,name:hr_employee_relative.model_hr_employee_relative_relation
+msgid "HR Employee Relative Relation"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__id
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__id
+msgid "ID"
+msgstr "ID"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative____last_update
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation____last_update
+msgid "Last Modified on"
+msgstr "Dernière modification le"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__write_uid
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__write_uid
+msgid "Last Updated by"
+msgstr "Dernière mise à jour par"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__write_date
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__write_date
+msgid "Last Updated on"
+msgstr "Dernière mise à jour le"
+
+#. module: hr_employee_relative
+#: selection:hr.employee.relative,gender:0
+msgid "Male"
+msgstr "Masculin"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__name
+msgid "Name"
+msgstr "Nom"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__notes
+msgid "Notes"
+msgstr "Notes"
+
+#. module: hr_employee_relative
+#: selection:hr.employee.relative,gender:0
+msgid "Other"
+msgstr "Autre"
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_parent
+msgid "Parent"
+msgstr "Parent"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__partner_id
+msgid "Partner"
+msgstr "Partenaire"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__relation_id
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__name
+msgid "Relation"
+msgstr "Relation"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee__relative_ids
+#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_view_form
+msgid "Relatives"
+msgstr "Proches"
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_sibling
+msgid "Sibling"
+msgstr "Frère/Soeur"
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_significant_other
+msgid "Significant Other"
+msgstr "Autre"
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_spouse
+msgid "Spouse"
+msgstr "Époux / Épouse"
diff --git a/hr_employee_relative/i18n/hr_employee_relative.pot b/hr_employee_relative/i18n/hr_employee_relative.pot
new file mode 100644
index 00000000000..c2d893c21ce
--- /dev/null
+++ b/hr_employee_relative/i18n/hr_employee_relative.pot
@@ -0,0 +1,175 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+#	* hr_employee_relative
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 12.0\n"
+"Report-Msgid-Bugs-To: \n"
+"Last-Translator: <>\n"
+"Language-Team: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Plural-Forms: \n"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age
+msgid "Age"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_child
+msgid "Child"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_cousin
+msgid "Cousin"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__create_uid
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__create_uid
+msgid "Created by"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__create_date
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__create_date
+msgid "Created on"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__date_of_birth
+msgid "Date of Birth"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__display_name
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__display_name
+msgid "Display Name"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model,name:hr_employee_relative.model_hr_employee
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__employee_id
+msgid "Employee"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
+msgid "Employee Relatives"
+msgstr ""
+
+#. module: hr_employee_relative
+#: selection:hr.employee.relative,gender:0
+msgid "Female"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__gender
+msgid "Gender"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_grandchild
+msgid "Grandchild"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_grandparent
+msgid "Grandparent"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model,name:hr_employee_relative.model_hr_employee_relative
+msgid "HR Employee Relative"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model,name:hr_employee_relative.model_hr_employee_relative_relation
+msgid "HR Employee Relative Relation"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__id
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__id
+msgid "ID"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative____last_update
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation____last_update
+msgid "Last Modified on"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__write_uid
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__write_uid
+msgid "Last Updated by"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__write_date
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__write_date
+msgid "Last Updated on"
+msgstr ""
+
+#. module: hr_employee_relative
+#: selection:hr.employee.relative,gender:0
+msgid "Male"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__name
+msgid "Name"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__notes
+msgid "Notes"
+msgstr ""
+
+#. module: hr_employee_relative
+#: selection:hr.employee.relative,gender:0
+msgid "Other"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_parent
+msgid "Parent"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__partner_id
+msgid "Partner"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__relation_id
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__name
+msgid "Relation"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee__relative_ids
+#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_view_form
+msgid "Relatives"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_sibling
+msgid "Sibling"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_significant_other
+msgid "Significant Other"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_spouse
+msgid "Spouse"
+msgstr ""
+
diff --git a/hr_employee_relative/models/__init__.py b/hr_employee_relative/models/__init__.py
new file mode 100644
index 00000000000..7cf9f205495
--- /dev/null
+++ b/hr_employee_relative/models/__init__.py
@@ -0,0 +1,5 @@
+# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html).
+
+from . import hr_employee
+from . import hr_employee_relative
+from . import hr_employee_relative_relation
diff --git a/hr_employee_relative/models/hr_employee.py b/hr_employee_relative/models/hr_employee.py
new file mode 100644
index 00000000000..0c529383ffd
--- /dev/null
+++ b/hr_employee_relative/models/hr_employee.py
@@ -0,0 +1,14 @@
+# Copyright (C) 2018 Brainbean Apps (https://brainbeanapps.com)
+# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
+
+from odoo import fields, models
+
+
+class HrEmployee(models.Model):
+    _inherit = 'hr.employee'
+
+    relative_ids = fields.One2many(
+        string='Relatives',
+        comodel_name='hr.employee.relative',
+        inverse_name='employee_id',
+    )
diff --git a/hr_employee_relative/models/hr_employee_relative.py b/hr_employee_relative/models/hr_employee_relative.py
new file mode 100644
index 00000000000..a365c580f5e
--- /dev/null
+++ b/hr_employee_relative/models/hr_employee_relative.py
@@ -0,0 +1,61 @@
+# Copyright (C) 2018 Brainbean Apps (https://brainbeanapps.com)
+# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
+
+from odoo import fields, models, api
+
+from datetime import datetime
+from dateutil.relativedelta import relativedelta
+
+
+class HrEmployeeRelative(models.Model):
+    _name = 'hr.employee.relative'
+    _description = 'HR Employee Relative'
+
+    employee_id = fields.Many2one(
+        string='Employee',
+        comodel_name='hr.employee',
+    )
+    relation_id = fields.Many2one(
+        'hr.employee.relative.relation',
+        string='Relation',
+        required=True,
+    )
+    name = fields.Char(
+        string='Name',
+        required=True,
+    )
+    partner_id = fields.Many2one(
+        'res.partner',
+        string='Partner',
+        domain=[
+            '&', ('is_company', '=', False), ('type', '=', 'contact')
+        ],
+    )
+    gender = fields.Selection(
+        string='Gender',
+        selection=[
+            ('male', 'Male'),
+            ('female', 'Female'),
+            ('other', 'Other'),
+        ],
+    )
+    date_of_birth = fields.Date(
+        string='Date of Birth',
+    )
+    age = fields.Float(
+        compute='_compute_age',
+    )
+    notes = fields.Text(
+        string='Notes',
+    )
+
+    @api.depends('date_of_birth')
+    def _compute_age(self):
+        for record in self:
+            age = relativedelta(datetime.now(), record.date_of_birth)
+            record.age = age.years + (age.months / 12)
+
+    @api.onchange('partner_id')
+    def _onchange_partner_id(self):
+        if self.partner_id:
+            self.name = self.partner_id.display_name
diff --git a/hr_employee_relative/models/hr_employee_relative_relation.py b/hr_employee_relative/models/hr_employee_relative_relation.py
new file mode 100644
index 00000000000..accb680ecd2
--- /dev/null
+++ b/hr_employee_relative/models/hr_employee_relative_relation.py
@@ -0,0 +1,15 @@
+# Copyright (C) 2018 Brainbean Apps (https://brainbeanapps.com)
+# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
+
+from odoo import fields, models
+
+
+class HrEmployeeRelativeRelation(models.Model):
+    _name = 'hr.employee.relative.relation'
+    _description = 'HR Employee Relative Relation'
+
+    name = fields.Char(
+        string='Relation',
+        required=True,
+        translate=True
+    )
diff --git a/hr_employee_relative/readme/CONTRIBUTORS.rst b/hr_employee_relative/readme/CONTRIBUTORS.rst
new file mode 100644
index 00000000000..1c6a35a1e35
--- /dev/null
+++ b/hr_employee_relative/readme/CONTRIBUTORS.rst
@@ -0,0 +1 @@
+* Alexey Pelykh <alexey.pelykh@brainbeanapps.com>
diff --git a/hr_employee_relative/readme/DESCRIPTION.rst b/hr_employee_relative/readme/DESCRIPTION.rst
new file mode 100644
index 00000000000..295727acd1a
--- /dev/null
+++ b/hr_employee_relative/readme/DESCRIPTION.rst
@@ -0,0 +1 @@
+This module allows storing information about employee's family.
diff --git a/hr_employee_relative/security/ir.model.access.csv b/hr_employee_relative/security/ir.model.access.csv
new file mode 100644
index 00000000000..95541868a5e
--- /dev/null
+++ b/hr_employee_relative/security/ir.model.access.csv
@@ -0,0 +1,5 @@
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
+access_hr_employee_relative_employee,hr.employee.relative,model_hr_employee_relative,base.group_user,1,0,0,0
+access_hr_employee_relative_user,hr.employee.relative,model_hr_employee_relative,hr.group_hr_manager,1,1,1,1
+access_hr_employee_relative_relation_employee,hr.employee.relative.relation,model_hr_employee_relative_relation,base.group_user,1,0,0,0
+access_hr_employee_relative_relation_user,hr.employee.relative.relation,model_hr_employee_relative_relation,hr.group_hr_manager,1,1,1,1
diff --git a/hr_employee_relative/static/description/icon.png b/hr_employee_relative/static/description/icon.png
new file mode 100644
index 0000000000000000000000000000000000000000..3a0328b516c4980e8e44cdb63fd945757ddd132d
GIT binary patch
literal 9455
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
Xviia!U7SGha1wx#SCgwmn*{w2TRX*I

literal 0
HcmV?d00001

diff --git a/hr_employee_relative/static/description/index.html b/hr_employee_relative/static/description/index.html
new file mode 100644
index 00000000000..d2cf12b655a
--- /dev/null
+++ b/hr_employee_relative/static/description/index.html
@@ -0,0 +1,419 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.15.1: http://docutils.sourceforge.net/" />
+<title>HR Employee Relatives</title>
+<style type="text/css">
+
+/*
+:Author: David Goodger (goodger@python.org)
+:Id: $Id: html4css1.css 7952 2016-07-26 18:15:59Z milde $
+:Copyright: This stylesheet has been placed in the public domain.
+
+Default cascading style sheet for the HTML output of Docutils.
+
+See http://docutils.sf.net/docs/howto/html-stylesheets.html for how to
+customize this style sheet.
+*/
+
+/* used to remove borders from tables and images */
+.borderless, table.borderless td, table.borderless th {
+  border: 0 }
+
+table.borderless td, table.borderless th {
+  /* Override padding for "table.docutils td" with "! important".
+     The right padding separates the table cells. */
+  padding: 0 0.5em 0 0 ! important }
+
+.first {
+  /* Override more specific margin styles with "! important". */
+  margin-top: 0 ! important }
+
+.last, .with-subtitle {
+  margin-bottom: 0 ! important }
+
+.hidden {
+  display: none }
+
+.subscript {
+  vertical-align: sub;
+  font-size: smaller }
+
+.superscript {
+  vertical-align: super;
+  font-size: smaller }
+
+a.toc-backref {
+  text-decoration: none ;
+  color: black }
+
+blockquote.epigraph {
+  margin: 2em 5em ; }
+
+dl.docutils dd {
+  margin-bottom: 0.5em }
+
+object[type="image/svg+xml"], object[type="application/x-shockwave-flash"] {
+  overflow: hidden;
+}
+
+/* Uncomment (and remove this text!) to get bold-faced definition list terms
+dl.docutils dt {
+  font-weight: bold }
+*/
+
+div.abstract {
+  margin: 2em 5em }
+
+div.abstract p.topic-title {
+  font-weight: bold ;
+  text-align: center }
+
+div.admonition, div.attention, div.caution, div.danger, div.error,
+div.hint, div.important, div.note, div.tip, div.warning {
+  margin: 2em ;
+  border: medium outset ;
+  padding: 1em }
+
+div.admonition p.admonition-title, div.hint p.admonition-title,
+div.important p.admonition-title, div.note p.admonition-title,
+div.tip p.admonition-title {
+  font-weight: bold ;
+  font-family: sans-serif }
+
+div.attention p.admonition-title, div.caution p.admonition-title,
+div.danger p.admonition-title, div.error p.admonition-title,
+div.warning p.admonition-title, .code .error {
+  color: red ;
+  font-weight: bold ;
+  font-family: sans-serif }
+
+/* Uncomment (and remove this text!) to get reduced vertical space in
+   compound paragraphs.
+div.compound .compound-first, div.compound .compound-middle {
+  margin-bottom: 0.5em }
+
+div.compound .compound-last, div.compound .compound-middle {
+  margin-top: 0.5em }
+*/
+
+div.dedication {
+  margin: 2em 5em ;
+  text-align: center ;
+  font-style: italic }
+
+div.dedication p.topic-title {
+  font-weight: bold ;
+  font-style: normal }
+
+div.figure {
+  margin-left: 2em ;
+  margin-right: 2em }
+
+div.footer, div.header {
+  clear: both;
+  font-size: smaller }
+
+div.line-block {
+  display: block ;
+  margin-top: 1em ;
+  margin-bottom: 1em }
+
+div.line-block div.line-block {
+  margin-top: 0 ;
+  margin-bottom: 0 ;
+  margin-left: 1.5em }
+
+div.sidebar {
+  margin: 0 0 0.5em 1em ;
+  border: medium outset ;
+  padding: 1em ;
+  background-color: #ffffee ;
+  width: 40% ;
+  float: right ;
+  clear: right }
+
+div.sidebar p.rubric {
+  font-family: sans-serif ;
+  font-size: medium }
+
+div.system-messages {
+  margin: 5em }
+
+div.system-messages h1 {
+  color: red }
+
+div.system-message {
+  border: medium outset ;
+  padding: 1em }
+
+div.system-message p.system-message-title {
+  color: red ;
+  font-weight: bold }
+
+div.topic {
+  margin: 2em }
+
+h1.section-subtitle, h2.section-subtitle, h3.section-subtitle,
+h4.section-subtitle, h5.section-subtitle, h6.section-subtitle {
+  margin-top: 0.4em }
+
+h1.title {
+  text-align: center }
+
+h2.subtitle {
+  text-align: center }
+
+hr.docutils {
+  width: 75% }
+
+img.align-left, .figure.align-left, object.align-left, table.align-left {
+  clear: left ;
+  float: left ;
+  margin-right: 1em }
+
+img.align-right, .figure.align-right, object.align-right, table.align-right {
+  clear: right ;
+  float: right ;
+  margin-left: 1em }
+
+img.align-center, .figure.align-center, object.align-center {
+  display: block;
+  margin-left: auto;
+  margin-right: auto;
+}
+
+table.align-center {
+  margin-left: auto;
+  margin-right: auto;
+}
+
+.align-left {
+  text-align: left }
+
+.align-center {
+  clear: both ;
+  text-align: center }
+
+.align-right {
+  text-align: right }
+
+/* reset inner alignment in figures */
+div.align-right {
+  text-align: inherit }
+
+/* div.align-center * { */
+/*   text-align: left } */
+
+.align-top    {
+  vertical-align: top }
+
+.align-middle {
+  vertical-align: middle }
+
+.align-bottom {
+  vertical-align: bottom }
+
+ol.simple, ul.simple {
+  margin-bottom: 1em }
+
+ol.arabic {
+  list-style: decimal }
+
+ol.loweralpha {
+  list-style: lower-alpha }
+
+ol.upperalpha {
+  list-style: upper-alpha }
+
+ol.lowerroman {
+  list-style: lower-roman }
+
+ol.upperroman {
+  list-style: upper-roman }
+
+p.attribution {
+  text-align: right ;
+  margin-left: 50% }
+
+p.caption {
+  font-style: italic }
+
+p.credits {
+  font-style: italic ;
+  font-size: smaller }
+
+p.label {
+  white-space: nowrap }
+
+p.rubric {
+  font-weight: bold ;
+  font-size: larger ;
+  color: maroon ;
+  text-align: center }
+
+p.sidebar-title {
+  font-family: sans-serif ;
+  font-weight: bold ;
+  font-size: larger }
+
+p.sidebar-subtitle {
+  font-family: sans-serif ;
+  font-weight: bold }
+
+p.topic-title {
+  font-weight: bold }
+
+pre.address {
+  margin-bottom: 0 ;
+  margin-top: 0 ;
+  font: inherit }
+
+pre.literal-block, pre.doctest-block, pre.math, pre.code {
+  margin-left: 2em ;
+  margin-right: 2em }
+
+pre.code .ln { color: grey; } /* line numbers */
+pre.code, code { background-color: #eeeeee }
+pre.code .comment, code .comment { color: #5C6576 }
+pre.code .keyword, code .keyword { color: #3B0D06; font-weight: bold }
+pre.code .literal.string, code .literal.string { color: #0C5404 }
+pre.code .name.builtin, code .name.builtin { color: #352B84 }
+pre.code .deleted, code .deleted { background-color: #DEB0A1}
+pre.code .inserted, code .inserted { background-color: #A3D289}
+
+span.classifier {
+  font-family: sans-serif ;
+  font-style: oblique }
+
+span.classifier-delimiter {
+  font-family: sans-serif ;
+  font-weight: bold }
+
+span.interpreted {
+  font-family: sans-serif }
+
+span.option {
+  white-space: nowrap }
+
+span.pre {
+  white-space: pre }
+
+span.problematic {
+  color: red }
+
+span.section-subtitle {
+  /* font-size relative to parent (h1..h6 element) */
+  font-size: 80% }
+
+table.citation {
+  border-left: solid 1px gray;
+  margin-left: 1px }
+
+table.docinfo {
+  margin: 2em 4em }
+
+table.docutils {
+  margin-top: 0.5em ;
+  margin-bottom: 0.5em }
+
+table.footnote {
+  border-left: solid 1px black;
+  margin-left: 1px }
+
+table.docutils td, table.docutils th,
+table.docinfo td, table.docinfo th {
+  padding-left: 0.5em ;
+  padding-right: 0.5em ;
+  vertical-align: top }
+
+table.docutils th.field-name, table.docinfo th.docinfo-name {
+  font-weight: bold ;
+  text-align: left ;
+  white-space: nowrap ;
+  padding-left: 0 }
+
+/* "booktabs" style (no vertical lines) */
+table.docutils.booktabs {
+  border: 0px;
+  border-top: 2px solid;
+  border-bottom: 2px solid;
+  border-collapse: collapse;
+}
+table.docutils.booktabs * {
+  border: 0px;
+}
+table.docutils.booktabs th {
+  border-bottom: thin solid;
+  text-align: left;
+}
+
+h1 tt.docutils, h2 tt.docutils, h3 tt.docutils,
+h4 tt.docutils, h5 tt.docutils, h6 tt.docutils {
+  font-size: 100% }
+
+ul.auto-toc {
+  list-style-type: none }
+
+</style>
+</head>
+<body>
+<div class="document" id="hr-employee-relatives">
+<h1 class="title">HR Employee Relatives</h1>
+
+<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+!! This file is generated by oca-gen-addon-readme !!
+!! changes will be overwritten.                   !!
+!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
+<p><a class="reference external" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external" href="https://github.com/OCA/hr/tree/12.0/hr_employee_relative"><img alt="OCA/hr" src="https://img.shields.io/badge/github-OCA%2Fhr-lightgray.png?logo=github" /></a> <a class="reference external" href="https://translation.odoo-community.org/projects/hr-12-0/hr-12-0-hr_employee_relative"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external" href="https://runbot.odoo-community.org/runbot/116/12.0"><img alt="Try me on Runbot" src="https://img.shields.io/badge/runbot-Try%20me-875A7B.png" /></a></p>
+<p>This module allows storing information about employee’s family.</p>
+<p><strong>Table of contents</strong></p>
+<div class="contents local topic" id="contents">
+<ul class="simple">
+<li><a class="reference internal" href="#bug-tracker" id="id1">Bug Tracker</a></li>
+<li><a class="reference internal" href="#credits" id="id2">Credits</a><ul>
+<li><a class="reference internal" href="#authors" id="id3">Authors</a></li>
+<li><a class="reference internal" href="#contributors" id="id4">Contributors</a></li>
+<li><a class="reference internal" href="#maintainers" id="id5">Maintainers</a></li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="section" id="bug-tracker">
+<h1><a class="toc-backref" href="#id1">Bug Tracker</a></h1>
+<p>Bugs are tracked on <a class="reference external" href="https://github.com/OCA/hr/issues">GitHub Issues</a>.
+In case of trouble, please check there if your issue has already been reported.
+If you spotted it first, help us smashing it by providing a detailed and welcomed
+<a class="reference external" href="https://github.com/OCA/hr/issues/new?body=module:%20hr_employee_relative%0Aversion:%2012.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p>
+<p>Do not contact contributors directly about support or help with technical issues.</p>
+</div>
+<div class="section" id="credits">
+<h1><a class="toc-backref" href="#id2">Credits</a></h1>
+<div class="section" id="authors">
+<h2><a class="toc-backref" href="#id3">Authors</a></h2>
+<ul class="simple">
+<li>Brainbean Apps</li>
+</ul>
+</div>
+<div class="section" id="contributors">
+<h2><a class="toc-backref" href="#id4">Contributors</a></h2>
+<ul class="simple">
+<li>Alexey Pelykh &lt;<a class="reference external" href="mailto:alexey.pelykh&#64;brainbeanapps.com">alexey.pelykh&#64;brainbeanapps.com</a>&gt;</li>
+</ul>
+</div>
+<div class="section" id="maintainers">
+<h2><a class="toc-backref" href="#id5">Maintainers</a></h2>
+<p>This module is maintained by the OCA.</p>
+<a class="reference external image-reference" href="https://odoo-community.org"><img alt="Odoo Community Association" src="https://odoo-community.org/logo.png" /></a>
+<p>OCA, or the Odoo Community Association, is a nonprofit organization whose
+mission is to support the collaborative development of Odoo features and
+promote its widespread use.</p>
+<p>This module is part of the <a class="reference external" href="https://github.com/OCA/hr/tree/12.0/hr_employee_relative">OCA/hr</a> project on GitHub.</p>
+<p>You are welcome to contribute. To learn how please visit <a class="reference external" href="https://odoo-community.org/page/Contribute">https://odoo-community.org/page/Contribute</a>.</p>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/hr_employee_relative/tests/__init__.py b/hr_employee_relative/tests/__init__.py
new file mode 100644
index 00000000000..5cda1739c90
--- /dev/null
+++ b/hr_employee_relative/tests/__init__.py
@@ -0,0 +1,3 @@
+# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html).
+
+from . import test_hr_employee_relatives
diff --git a/hr_employee_relative/tests/test_hr_employee_relatives.py b/hr_employee_relative/tests/test_hr_employee_relatives.py
new file mode 100644
index 00000000000..8e65c1ccb00
--- /dev/null
+++ b/hr_employee_relative/tests/test_hr_employee_relatives.py
@@ -0,0 +1,31 @@
+# Copyright (C) 2018 Brainbean Apps (https://brainbeanapps.com)
+# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html).
+
+from odoo.tests import common
+
+from datetime import datetime
+from dateutil.relativedelta import relativedelta
+
+_ns = 'hr_employee_relative'
+
+
+class TestHrEmployeeRelatives(common.TransactionCase):
+
+    def setUp(self):
+        super().setUp()
+        self.Employee = self.env['hr.employee']
+        self.EmployeeRelative = self.env['hr.employee.relative']
+
+    def test_age_calculation(self):
+        employee = self.Employee.create({
+            'name': 'Employee',
+            'relative_ids': [
+                (0, 0, {
+                    'relation_id': self.env.ref(_ns + '.relation_sibling').id,
+                    'name': 'Relative',
+                    'date_of_birth': datetime.now() + relativedelta(years=-42),
+                })
+            ],
+        })
+        relative = self.EmployeeRelative.browse(employee.relative_ids[0].id)
+        self.assertEqual(int(relative.age), 42)
diff --git a/hr_employee_relative/views/hr_employee.xml b/hr_employee_relative/views/hr_employee.xml
new file mode 100644
index 00000000000..462c2d01973
--- /dev/null
+++ b/hr_employee_relative/views/hr_employee.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<odoo>
+    <!--
+      Copyright (C) 2018 Brainbean Apps (https://brainbeanapps.com)
+      License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
+    -->
+
+    <record id="hr_employee_view_form" model="ir.ui.view">
+        <field name="name">hr.employee.view.form.inherit.relatives</field>
+        <field name="model">hr.employee</field>
+        <field name="inherit_id" ref="hr.view_employee_form"/>
+        <field name="arch" type="xml">
+            <field name="spouse_complete_name" position="replace"/>
+            <field name="spouse_birthdate" position="replace"/>
+            <field name="children" position="replace"/>
+            <xpath expr="//notebook" position="inside">
+                <page string="Relatives" groups="hr.group_hr_user">
+                    <field name="relative_ids" nolabel="1"/>
+                </page>
+            </xpath>
+        </field>
+    </record>
+
+</odoo>
diff --git a/hr_employee_relative/views/hr_employee_relative.xml b/hr_employee_relative/views/hr_employee_relative.xml
new file mode 100644
index 00000000000..ab26febb866
--- /dev/null
+++ b/hr_employee_relative/views/hr_employee_relative.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<odoo>
+    <!--
+      Copyright (C) 2018 Brainbean Apps (https://brainbeanapps.com)
+      License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
+    -->
+
+    <record id="hr_employee_relative_view_tree" model="ir.ui.view">
+        <field name="name">hr.employee.relative.view.tree</field>
+        <field name="model">hr.employee.relative</field>
+        <field name="arch" type="xml">
+            <tree string="Employee Relatives" editable="bottom">
+                <field name="relation_id"/>
+                <field name="name"/>
+                <field name="partner_id"/>
+                <field name="gender"/>
+                <field name="date_of_birth"/>
+                <field name="age" readonly="1"/>
+                <field name="notes"/>
+            </tree>
+        </field>
+    </record>
+
+</odoo>

From f4d7a8c9776400211812060cb984dba69ebb0382 Mon Sep 17 00:00:00 2001
From: Jaime Arroyo <jaime.arroyo@creublanca.es>
Date: Wed, 14 Aug 2019 10:27:54 +0200
Subject: [PATCH 02/30] [12.0][IMP] Add migration script hr_family ->
 hr_employee_relative

---
 .../migrations/12.0.1.0.0/post-migration.py   | 50 +++++++++++++++++++
 1 file changed, 50 insertions(+)
 create mode 100644 hr_employee_relative/migrations/12.0.1.0.0/post-migration.py

diff --git a/hr_employee_relative/migrations/12.0.1.0.0/post-migration.py b/hr_employee_relative/migrations/12.0.1.0.0/post-migration.py
new file mode 100644
index 00000000000..22c4a0ed851
--- /dev/null
+++ b/hr_employee_relative/migrations/12.0.1.0.0/post-migration.py
@@ -0,0 +1,50 @@
+# Copyright 2019 Creu Blanca
+# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
+
+from openupgradelib import openupgrade
+
+
+@openupgrade.migrate()
+def migrate(env, version):
+    cr = env.cr
+    columns = 'fam_spouse, fam_spouse_employer, fam_spouse_tel, fam_father,' \
+              ' fam_father_date_of_birth, fam_mother, fam_mother_date_of_birth'
+    cr.execute('SELECT id, %s FROM hr_employee' % columns)
+
+    relation_spouse = env.ref('hr_employee_relative.relation_spouse').id
+    relation_parent = env.ref('hr_employee_relative.relation_parent').id
+    relation_child = env.ref('hr_employee_relative.relation_child').id
+
+    for employee in cr.fetchall():
+        if employee[1] or employee[2] or employee[3]:
+            env['hr.employee.relative'].create({
+                'employee_id': employee[0],
+                'name': employee[1] or 'Spouse',
+                'relation_id': relation_spouse
+            })
+        if employee[4] or employee[5]:
+            env['hr.employee.relative'].create({
+                'employee_id': employee[0],
+                'name': employee[4] or 'Father',
+                'date_of_birth': employee[5] or False,
+                'relation_id': relation_parent
+            })
+        if employee[6] or employee[7]:
+            env['hr.employee.relative'].create({
+                'employee_id': employee[0],
+                'name': employee[6] or 'Mother',
+                'date_of_birth': employee[7] or False,
+                'relation_id': relation_parent
+            })
+    cr.execute(
+        'SELECT name, date_of_birth, employee_id, gender'
+        ' FROM hr_employee_children'
+    )
+    for children in cr.fetchall():
+        env['hr.employee.relative'].create({
+            'name': children[0] or 'Child',
+            'date_of_birth': children[1] or False,
+            'employee_id': children[2],
+            'gender': children[3] or False,
+            'relation_id': relation_child
+        })

From f1b6228bfa62f3464c560cef632086ece4fe4c7f Mon Sep 17 00:00:00 2001
From: Jaime Arroyo <jaime.arroyo@creublanca.es>
Date: Tue, 3 Sep 2019 12:01:30 +0200
Subject: [PATCH 03/30] [12.0][IMP] Add phone number and job to
 hr_employee_relative

---
 hr_employee_relative/__manifest__.py          |   2 +-
 hr_employee_relative/i18n/es.po               | 187 +++++++++++++++++
 hr_employee_relative/i18n/fr.po               |  12 +-
 hr_employee_relative/i18n/hr.po               | 188 ++++++++++++++++++
 .../i18n/hr_employee_relative.pot             |  10 +
 .../migrations/12.0.1.0.0/post-migration.py   |   2 +
 .../models/hr_employee_relative.py            |   4 +
 .../views/hr_employee_relative.xml            |   2 +
 8 files changed, 405 insertions(+), 2 deletions(-)
 create mode 100644 hr_employee_relative/i18n/es.po
 create mode 100644 hr_employee_relative/i18n/hr.po

diff --git a/hr_employee_relative/__manifest__.py b/hr_employee_relative/__manifest__.py
index 9984c3d1aaa..bc1c4ba9b19 100644
--- a/hr_employee_relative/__manifest__.py
+++ b/hr_employee_relative/__manifest__.py
@@ -3,7 +3,7 @@
 
 {
     'name': 'HR Employee Relatives',
-    'version': '12.0.1.0.0',
+    'version': '12.0.1.1.0',
     'category': 'Human Resources',
     'website': 'https://github.com/OCA/hr',
     'author':
diff --git a/hr_employee_relative/i18n/es.po b/hr_employee_relative/i18n/es.po
new file mode 100644
index 00000000000..0b9054ee0e8
--- /dev/null
+++ b/hr_employee_relative/i18n/es.po
@@ -0,0 +1,187 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+#	* hr_employee_relative
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 12.0\n"
+"Report-Msgid-Bugs-To: \n"
+"PO-Revision-Date: 2019-12-03 16:06+0000\n"
+"Last-Translator: Pedro S. Lopez <pedroslopez@me.com>\n"
+"Language-Team: none\n"
+"Language: es\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 3.9.1\n"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age
+msgid "Age"
+msgstr "Edad"
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_child
+msgid "Child"
+msgstr "Hijo(a)"
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_cousin
+msgid "Cousin"
+msgstr "Primo(a)"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__create_uid
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__create_uid
+msgid "Created by"
+msgstr "Creado por"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__create_date
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__create_date
+msgid "Created on"
+msgstr "Creado en"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__date_of_birth
+msgid "Date of Birth"
+msgstr "Fecha de nacimiento"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__display_name
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__display_name
+msgid "Display Name"
+msgstr "Nombre a mostrar"
+
+#. module: hr_employee_relative
+#: model:ir.model,name:hr_employee_relative.model_hr_employee
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__employee_id
+msgid "Employee"
+msgstr "Empleado"
+
+#. module: hr_employee_relative
+#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
+msgid "Employee Relatives"
+msgstr "Parientes de Empleados"
+
+#. module: hr_employee_relative
+#: selection:hr.employee.relative,gender:0
+msgid "Female"
+msgstr "Femenino"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__gender
+msgid "Gender"
+msgstr "Sexo"
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_grandchild
+msgid "Grandchild"
+msgstr "Nieto(a)"
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_grandparent
+msgid "Grandparent"
+msgstr "Abuelo(a)"
+
+#. module: hr_employee_relative
+#: model:ir.model,name:hr_employee_relative.model_hr_employee_relative
+msgid "HR Employee Relative"
+msgstr "RRHH Parientes de Empleados"
+
+#. module: hr_employee_relative
+#: model:ir.model,name:hr_employee_relative.model_hr_employee_relative_relation
+msgid "HR Employee Relative Relation"
+msgstr "RRHH Relación de Pariente de Empleado"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__id
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__id
+msgid "ID"
+msgstr "ID"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__job
+msgid "Job"
+msgstr "Profesión"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative____last_update
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation____last_update
+msgid "Last Modified on"
+msgstr "Última modificación el"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__write_uid
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__write_uid
+msgid "Last Updated by"
+msgstr "Última actualización por"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__write_date
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__write_date
+msgid "Last Updated on"
+msgstr "Última actualización el"
+
+#. module: hr_employee_relative
+#: selection:hr.employee.relative,gender:0
+msgid "Male"
+msgstr "Masculino"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__name
+msgid "Name"
+msgstr "Nombre"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__notes
+msgid "Notes"
+msgstr "Notas"
+
+#. module: hr_employee_relative
+#: selection:hr.employee.relative,gender:0
+msgid "Other"
+msgstr "Otro"
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_parent
+msgid "Parent"
+msgstr "Padre"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__partner_id
+msgid "Partner"
+msgstr "Contacto"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__phone_number
+msgid "Phone Number"
+msgstr "Teléfono"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__relation_id
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__name
+msgid "Relation"
+msgstr "Parentesco"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee__relative_ids
+#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_view_form
+msgid "Relatives"
+msgstr "Parientes"
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_sibling
+msgid "Sibling"
+msgstr "Hermano(a)"
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_significant_other
+msgid "Significant Other"
+msgstr "Pareja"
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_spouse
+msgid "Spouse"
+msgstr "Cónyugue"
diff --git a/hr_employee_relative/i18n/fr.po b/hr_employee_relative/i18n/fr.po
index 65bc11e6d7f..20990def83e 100644
--- a/hr_employee_relative/i18n/fr.po
+++ b/hr_employee_relative/i18n/fr.po
@@ -1,6 +1,6 @@
 # Translation of Odoo Server.
 # This file contains the translation of the following modules:
-#	* hr_employee_relative
+# 	* hr_employee_relative
 #
 msgid ""
 msgstr ""
@@ -101,6 +101,11 @@ msgstr ""
 msgid "ID"
 msgstr "ID"
 
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__job
+msgid "Job"
+msgstr ""
+
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative____last_update
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation____last_update
@@ -149,6 +154,11 @@ msgstr "Parent"
 msgid "Partner"
 msgstr "Partenaire"
 
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__phone_number
+msgid "Phone Number"
+msgstr ""
+
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__relation_id
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__name
diff --git a/hr_employee_relative/i18n/hr.po b/hr_employee_relative/i18n/hr.po
new file mode 100644
index 00000000000..652c9946dd2
--- /dev/null
+++ b/hr_employee_relative/i18n/hr.po
@@ -0,0 +1,188 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+#	* hr_employee_relative
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 12.0\n"
+"Report-Msgid-Bugs-To: \n"
+"PO-Revision-Date: 2019-11-18 14:34+0000\n"
+"Last-Translator: Bole <bole@dajmi5.com>\n"
+"Language-Team: none\n"
+"Language: hr\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<="
+"4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
+"X-Generator: Weblate 3.8\n"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age
+msgid "Age"
+msgstr "Dob"
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_child
+msgid "Child"
+msgstr "Djete"
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_cousin
+msgid "Cousin"
+msgstr "Rođak"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__create_uid
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__create_uid
+msgid "Created by"
+msgstr "Kreirao"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__create_date
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__create_date
+msgid "Created on"
+msgstr "Kreirano"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__date_of_birth
+msgid "Date of Birth"
+msgstr "Datum rođenja"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__display_name
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__display_name
+msgid "Display Name"
+msgstr "Naziv"
+
+#. module: hr_employee_relative
+#: model:ir.model,name:hr_employee_relative.model_hr_employee
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__employee_id
+msgid "Employee"
+msgstr "Djelatnik"
+
+#. module: hr_employee_relative
+#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
+msgid "Employee Relatives"
+msgstr "Rodbina djelatnika"
+
+#. module: hr_employee_relative
+#: selection:hr.employee.relative,gender:0
+msgid "Female"
+msgstr "Žensko"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__gender
+msgid "Gender"
+msgstr "Spol"
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_grandchild
+msgid "Grandchild"
+msgstr "Unuk"
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_grandparent
+msgid "Grandparent"
+msgstr "Pra roditelj"
+
+#. module: hr_employee_relative
+#: model:ir.model,name:hr_employee_relative.model_hr_employee_relative
+msgid "HR Employee Relative"
+msgstr "Rodbina djelatnika"
+
+#. module: hr_employee_relative
+#: model:ir.model,name:hr_employee_relative.model_hr_employee_relative_relation
+msgid "HR Employee Relative Relation"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__id
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__id
+msgid "ID"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__job
+msgid "Job"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative____last_update
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation____last_update
+msgid "Last Modified on"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__write_uid
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__write_uid
+msgid "Last Updated by"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__write_date
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__write_date
+msgid "Last Updated on"
+msgstr ""
+
+#. module: hr_employee_relative
+#: selection:hr.employee.relative,gender:0
+msgid "Male"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__name
+msgid "Name"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__notes
+msgid "Notes"
+msgstr ""
+
+#. module: hr_employee_relative
+#: selection:hr.employee.relative,gender:0
+msgid "Other"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_parent
+msgid "Parent"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__partner_id
+msgid "Partner"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__phone_number
+msgid "Phone Number"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__relation_id
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__name
+msgid "Relation"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee__relative_ids
+#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_view_form
+msgid "Relatives"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_sibling
+msgid "Sibling"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_significant_other
+msgid "Significant Other"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_spouse
+msgid "Spouse"
+msgstr ""
diff --git a/hr_employee_relative/i18n/hr_employee_relative.pot b/hr_employee_relative/i18n/hr_employee_relative.pot
index c2d893c21ce..9fadc9e8e71 100644
--- a/hr_employee_relative/i18n/hr_employee_relative.pot
+++ b/hr_employee_relative/i18n/hr_employee_relative.pot
@@ -98,6 +98,11 @@ msgstr ""
 msgid "ID"
 msgstr ""
 
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__job
+msgid "Job"
+msgstr ""
+
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative____last_update
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation____last_update
@@ -146,6 +151,11 @@ msgstr ""
 msgid "Partner"
 msgstr ""
 
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__phone_number
+msgid "Phone Number"
+msgstr ""
+
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__relation_id
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__name
diff --git a/hr_employee_relative/migrations/12.0.1.0.0/post-migration.py b/hr_employee_relative/migrations/12.0.1.0.0/post-migration.py
index 22c4a0ed851..b75cead9dae 100644
--- a/hr_employee_relative/migrations/12.0.1.0.0/post-migration.py
+++ b/hr_employee_relative/migrations/12.0.1.0.0/post-migration.py
@@ -19,6 +19,8 @@ def migrate(env, version):
         if employee[1] or employee[2] or employee[3]:
             env['hr.employee.relative'].create({
                 'employee_id': employee[0],
+                'job': employee[2],
+                'phone_number': employee[3],
                 'name': employee[1] or 'Spouse',
                 'relation_id': relation_spouse
             })
diff --git a/hr_employee_relative/models/hr_employee_relative.py b/hr_employee_relative/models/hr_employee_relative.py
index a365c580f5e..ab07dfe6332 100644
--- a/hr_employee_relative/models/hr_employee_relative.py
+++ b/hr_employee_relative/models/hr_employee_relative.py
@@ -45,6 +45,10 @@ class HrEmployeeRelative(models.Model):
     age = fields.Float(
         compute='_compute_age',
     )
+
+    job = fields.Char()
+    phone_number = fields.Char()
+
     notes = fields.Text(
         string='Notes',
     )
diff --git a/hr_employee_relative/views/hr_employee_relative.xml b/hr_employee_relative/views/hr_employee_relative.xml
index ab26febb866..eafb59e3f21 100644
--- a/hr_employee_relative/views/hr_employee_relative.xml
+++ b/hr_employee_relative/views/hr_employee_relative.xml
@@ -16,6 +16,8 @@
                 <field name="gender"/>
                 <field name="date_of_birth"/>
                 <field name="age" readonly="1"/>
+                <field name="phone_number"/>
+                <field name="job"/>
                 <field name="notes"/>
             </tree>
         </field>

From fc6ef7303d5047809f65c89fbc035c3df6d9a24b Mon Sep 17 00:00:00 2001
From: Saran440 <saranl@ecosoft.co.th>
Date: Mon, 30 Mar 2020 15:57:30 +0700
Subject: [PATCH 04/30] [IMP] hr_employee_relative: black, isort

---
 hr_employee_relative/__manifest__.py          | 40 ++++------
 .../data/data_relative_relation.xml           | 20 +++--
 .../migrations/12.0.1.0.0/post-migration.py   | 77 +++++++++++--------
 hr_employee_relative/models/hr_employee.py    |  8 +-
 .../models/hr_employee_relative.py            | 55 +++++--------
 .../models/hr_employee_relative_relation.py   | 12 +--
 .../tests/test_hr_employee_relatives.py       | 38 +++++----
 hr_employee_relative/views/hr_employee.xml    | 12 ++-
 .../views/hr_employee_relative.xml            | 20 +++--
 9 files changed, 130 insertions(+), 152 deletions(-)

diff --git a/hr_employee_relative/__manifest__.py b/hr_employee_relative/__manifest__.py
index bc1c4ba9b19..c1a983d37b4 100644
--- a/hr_employee_relative/__manifest__.py
+++ b/hr_employee_relative/__manifest__.py
@@ -2,29 +2,21 @@
 # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html).
 
 {
-    'name': 'HR Employee Relatives',
-    'version': '12.0.1.1.0',
-    'category': 'Human Resources',
-    'website': 'https://github.com/OCA/hr',
-    'author':
-        'Brainbean Apps, '
-        'Odoo Community Association (OCA)',
-    'license': 'AGPL-3',
-    'installable': True,
-    'application': False,
-    'summary': 'Allows storing information about employee\'s family',
-    'depends': [
-        'hr',
-    ],
-    'external_dependencies': {
-        'python': [
-            'dateutil',
-        ],
-    },
-    'data': [
-        'data/data_relative_relation.xml',
-        'security/ir.model.access.csv',
-        'views/hr_employee.xml',
-        'views/hr_employee_relative.xml',
+    "name": "HR Employee Relatives",
+    "version": "12.0.1.1.0",
+    "category": "Human Resources",
+    "website": "https://github.com/OCA/hr",
+    "author": "Brainbean Apps, " "Odoo Community Association (OCA)",
+    "license": "AGPL-3",
+    "installable": True,
+    "application": False,
+    "summary": "Allows storing information about employee's family",
+    "depends": ["hr"],
+    "external_dependencies": {"python": ["dateutil"]},
+    "data": [
+        "data/data_relative_relation.xml",
+        "security/ir.model.access.csv",
+        "views/hr_employee.xml",
+        "views/hr_employee_relative.xml",
     ],
 }
diff --git a/hr_employee_relative/data/data_relative_relation.xml b/hr_employee_relative/data/data_relative_relation.xml
index c9329e664ba..c1f805fb727 100644
--- a/hr_employee_relative/data/data_relative_relation.xml
+++ b/hr_employee_relative/data/data_relative_relation.xml
@@ -1,36 +1,34 @@
-<?xml version="1.0" encoding="utf-8"?>
+<?xml version="1.0" encoding="utf-8" ?>
 <odoo>
     <data noupdate="1">
         <!--
           Copyright (C) 2018 Brainbean Apps (https://brainbeanapps.com)
           License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
         -->
-
         <!-- hr.employee.relative.relation -->
         <record model="hr.employee.relative.relation" id="relation_spouse">
-          <field name="name">Spouse</field>
+            <field name="name">Spouse</field>
         </record>
         <record model="hr.employee.relative.relation" id="relation_significant_other">
-          <field name="name">Significant Other</field>
+            <field name="name">Significant Other</field>
         </record>
         <record model="hr.employee.relative.relation" id="relation_child">
-          <field name="name">Child</field>
+            <field name="name">Child</field>
         </record>
         <record model="hr.employee.relative.relation" id="relation_parent">
-          <field name="name">Parent</field>
+            <field name="name">Parent</field>
         </record>
         <record model="hr.employee.relative.relation" id="relation_sibling">
-          <field name="name">Sibling</field>
+            <field name="name">Sibling</field>
         </record>
         <record model="hr.employee.relative.relation" id="relation_cousin">
-          <field name="name">Cousin</field>
+            <field name="name">Cousin</field>
         </record>
         <record model="hr.employee.relative.relation" id="relation_grandparent">
-          <field name="name">Grandparent</field>
+            <field name="name">Grandparent</field>
         </record>
         <record model="hr.employee.relative.relation" id="relation_grandchild">
-          <field name="name">Grandchild</field>
+            <field name="name">Grandchild</field>
         </record>
-
     </data>
 </odoo>
diff --git a/hr_employee_relative/migrations/12.0.1.0.0/post-migration.py b/hr_employee_relative/migrations/12.0.1.0.0/post-migration.py
index b75cead9dae..9bebec5b642 100644
--- a/hr_employee_relative/migrations/12.0.1.0.0/post-migration.py
+++ b/hr_employee_relative/migrations/12.0.1.0.0/post-migration.py
@@ -7,46 +7,55 @@
 @openupgrade.migrate()
 def migrate(env, version):
     cr = env.cr
-    columns = 'fam_spouse, fam_spouse_employer, fam_spouse_tel, fam_father,' \
-              ' fam_father_date_of_birth, fam_mother, fam_mother_date_of_birth'
-    cr.execute('SELECT id, %s FROM hr_employee' % columns)
+    columns = (
+        "fam_spouse, fam_spouse_employer, fam_spouse_tel, fam_father,"
+        " fam_father_date_of_birth, fam_mother, fam_mother_date_of_birth"
+    )
+    cr.execute("SELECT id, %s FROM hr_employee" % columns)
 
-    relation_spouse = env.ref('hr_employee_relative.relation_spouse').id
-    relation_parent = env.ref('hr_employee_relative.relation_parent').id
-    relation_child = env.ref('hr_employee_relative.relation_child').id
+    relation_spouse = env.ref("hr_employee_relative.relation_spouse").id
+    relation_parent = env.ref("hr_employee_relative.relation_parent").id
+    relation_child = env.ref("hr_employee_relative.relation_child").id
 
     for employee in cr.fetchall():
         if employee[1] or employee[2] or employee[3]:
-            env['hr.employee.relative'].create({
-                'employee_id': employee[0],
-                'job': employee[2],
-                'phone_number': employee[3],
-                'name': employee[1] or 'Spouse',
-                'relation_id': relation_spouse
-            })
+            env["hr.employee.relative"].create(
+                {
+                    "employee_id": employee[0],
+                    "job": employee[2],
+                    "phone_number": employee[3],
+                    "name": employee[1] or "Spouse",
+                    "relation_id": relation_spouse,
+                }
+            )
         if employee[4] or employee[5]:
-            env['hr.employee.relative'].create({
-                'employee_id': employee[0],
-                'name': employee[4] or 'Father',
-                'date_of_birth': employee[5] or False,
-                'relation_id': relation_parent
-            })
+            env["hr.employee.relative"].create(
+                {
+                    "employee_id": employee[0],
+                    "name": employee[4] or "Father",
+                    "date_of_birth": employee[5] or False,
+                    "relation_id": relation_parent,
+                }
+            )
         if employee[6] or employee[7]:
-            env['hr.employee.relative'].create({
-                'employee_id': employee[0],
-                'name': employee[6] or 'Mother',
-                'date_of_birth': employee[7] or False,
-                'relation_id': relation_parent
-            })
+            env["hr.employee.relative"].create(
+                {
+                    "employee_id": employee[0],
+                    "name": employee[6] or "Mother",
+                    "date_of_birth": employee[7] or False,
+                    "relation_id": relation_parent,
+                }
+            )
     cr.execute(
-        'SELECT name, date_of_birth, employee_id, gender'
-        ' FROM hr_employee_children'
+        "SELECT name, date_of_birth, employee_id, gender" " FROM hr_employee_children"
     )
     for children in cr.fetchall():
-        env['hr.employee.relative'].create({
-            'name': children[0] or 'Child',
-            'date_of_birth': children[1] or False,
-            'employee_id': children[2],
-            'gender': children[3] or False,
-            'relation_id': relation_child
-        })
+        env["hr.employee.relative"].create(
+            {
+                "name": children[0] or "Child",
+                "date_of_birth": children[1] or False,
+                "employee_id": children[2],
+                "gender": children[3] or False,
+                "relation_id": relation_child,
+            }
+        )
diff --git a/hr_employee_relative/models/hr_employee.py b/hr_employee_relative/models/hr_employee.py
index 0c529383ffd..9d8707e6e3a 100644
--- a/hr_employee_relative/models/hr_employee.py
+++ b/hr_employee_relative/models/hr_employee.py
@@ -5,10 +5,10 @@
 
 
 class HrEmployee(models.Model):
-    _inherit = 'hr.employee'
+    _inherit = "hr.employee"
 
     relative_ids = fields.One2many(
-        string='Relatives',
-        comodel_name='hr.employee.relative',
-        inverse_name='employee_id',
+        string="Relatives",
+        comodel_name="hr.employee.relative",
+        inverse_name="employee_id",
     )
diff --git a/hr_employee_relative/models/hr_employee_relative.py b/hr_employee_relative/models/hr_employee_relative.py
index ab07dfe6332..6a3def6a3c5 100644
--- a/hr_employee_relative/models/hr_employee_relative.py
+++ b/hr_employee_relative/models/hr_employee_relative.py
@@ -1,65 +1,46 @@
 # Copyright (C) 2018 Brainbean Apps (https://brainbeanapps.com)
 # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
 
-from odoo import fields, models, api
-
 from datetime import datetime
+
 from dateutil.relativedelta import relativedelta
 
+from odoo import api, fields, models
+
 
 class HrEmployeeRelative(models.Model):
-    _name = 'hr.employee.relative'
-    _description = 'HR Employee Relative'
+    _name = "hr.employee.relative"
+    _description = "HR Employee Relative"
 
-    employee_id = fields.Many2one(
-        string='Employee',
-        comodel_name='hr.employee',
-    )
+    employee_id = fields.Many2one(string="Employee", comodel_name="hr.employee",)
     relation_id = fields.Many2one(
-        'hr.employee.relative.relation',
-        string='Relation',
-        required=True,
-    )
-    name = fields.Char(
-        string='Name',
-        required=True,
+        "hr.employee.relative.relation", string="Relation", required=True,
     )
+    name = fields.Char(string="Name", required=True,)
     partner_id = fields.Many2one(
-        'res.partner',
-        string='Partner',
-        domain=[
-            '&', ('is_company', '=', False), ('type', '=', 'contact')
-        ],
+        "res.partner",
+        string="Partner",
+        domain=["&", ("is_company", "=", False), ("type", "=", "contact")],
     )
     gender = fields.Selection(
-        string='Gender',
-        selection=[
-            ('male', 'Male'),
-            ('female', 'Female'),
-            ('other', 'Other'),
-        ],
-    )
-    date_of_birth = fields.Date(
-        string='Date of Birth',
-    )
-    age = fields.Float(
-        compute='_compute_age',
+        string="Gender",
+        selection=[("male", "Male"), ("female", "Female"), ("other", "Other")],
     )
+    date_of_birth = fields.Date(string="Date of Birth",)
+    age = fields.Float(compute="_compute_age",)
 
     job = fields.Char()
     phone_number = fields.Char()
 
-    notes = fields.Text(
-        string='Notes',
-    )
+    notes = fields.Text(string="Notes",)
 
-    @api.depends('date_of_birth')
+    @api.depends("date_of_birth")
     def _compute_age(self):
         for record in self:
             age = relativedelta(datetime.now(), record.date_of_birth)
             record.age = age.years + (age.months / 12)
 
-    @api.onchange('partner_id')
+    @api.onchange("partner_id")
     def _onchange_partner_id(self):
         if self.partner_id:
             self.name = self.partner_id.display_name
diff --git a/hr_employee_relative/models/hr_employee_relative_relation.py b/hr_employee_relative/models/hr_employee_relative_relation.py
index accb680ecd2..60137215549 100644
--- a/hr_employee_relative/models/hr_employee_relative_relation.py
+++ b/hr_employee_relative/models/hr_employee_relative_relation.py
@@ -5,11 +5,7 @@
 
 
 class HrEmployeeRelativeRelation(models.Model):
-    _name = 'hr.employee.relative.relation'
-    _description = 'HR Employee Relative Relation'
-
-    name = fields.Char(
-        string='Relation',
-        required=True,
-        translate=True
-    )
+    _name = "hr.employee.relative.relation"
+    _description = "HR Employee Relative Relation"
+
+    name = fields.Char(string="Relation", required=True, translate=True)
diff --git a/hr_employee_relative/tests/test_hr_employee_relatives.py b/hr_employee_relative/tests/test_hr_employee_relatives.py
index 8e65c1ccb00..8b61ae7e9df 100644
--- a/hr_employee_relative/tests/test_hr_employee_relatives.py
+++ b/hr_employee_relative/tests/test_hr_employee_relatives.py
@@ -1,31 +1,37 @@
 # Copyright (C) 2018 Brainbean Apps (https://brainbeanapps.com)
 # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html).
 
-from odoo.tests import common
-
 from datetime import datetime
+
 from dateutil.relativedelta import relativedelta
 
-_ns = 'hr_employee_relative'
+from odoo.tests import common
 
+_ns = "hr_employee_relative"
 
-class TestHrEmployeeRelatives(common.TransactionCase):
 
+class TestHrEmployeeRelatives(common.TransactionCase):
     def setUp(self):
         super().setUp()
-        self.Employee = self.env['hr.employee']
-        self.EmployeeRelative = self.env['hr.employee.relative']
+        self.Employee = self.env["hr.employee"]
+        self.EmployeeRelative = self.env["hr.employee.relative"]
 
     def test_age_calculation(self):
-        employee = self.Employee.create({
-            'name': 'Employee',
-            'relative_ids': [
-                (0, 0, {
-                    'relation_id': self.env.ref(_ns + '.relation_sibling').id,
-                    'name': 'Relative',
-                    'date_of_birth': datetime.now() + relativedelta(years=-42),
-                })
-            ],
-        })
+        employee = self.Employee.create(
+            {
+                "name": "Employee",
+                "relative_ids": [
+                    (
+                        0,
+                        0,
+                        {
+                            "relation_id": self.env.ref(_ns + ".relation_sibling").id,
+                            "name": "Relative",
+                            "date_of_birth": datetime.now() + relativedelta(years=-42),
+                        },
+                    )
+                ],
+            }
+        )
         relative = self.EmployeeRelative.browse(employee.relative_ids[0].id)
         self.assertEqual(int(relative.age), 42)
diff --git a/hr_employee_relative/views/hr_employee.xml b/hr_employee_relative/views/hr_employee.xml
index 462c2d01973..653f2aa260f 100644
--- a/hr_employee_relative/views/hr_employee.xml
+++ b/hr_employee_relative/views/hr_employee.xml
@@ -4,21 +4,19 @@
       Copyright (C) 2018 Brainbean Apps (https://brainbeanapps.com)
       License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
     -->
-
     <record id="hr_employee_view_form" model="ir.ui.view">
         <field name="name">hr.employee.view.form.inherit.relatives</field>
         <field name="model">hr.employee</field>
-        <field name="inherit_id" ref="hr.view_employee_form"/>
+        <field name="inherit_id" ref="hr.view_employee_form" />
         <field name="arch" type="xml">
-            <field name="spouse_complete_name" position="replace"/>
-            <field name="spouse_birthdate" position="replace"/>
-            <field name="children" position="replace"/>
+            <field name="spouse_complete_name" position="replace" />
+            <field name="spouse_birthdate" position="replace" />
+            <field name="children" position="replace" />
             <xpath expr="//notebook" position="inside">
                 <page string="Relatives" groups="hr.group_hr_user">
-                    <field name="relative_ids" nolabel="1"/>
+                    <field name="relative_ids" nolabel="1" />
                 </page>
             </xpath>
         </field>
     </record>
-
 </odoo>
diff --git a/hr_employee_relative/views/hr_employee_relative.xml b/hr_employee_relative/views/hr_employee_relative.xml
index eafb59e3f21..dfb73092f46 100644
--- a/hr_employee_relative/views/hr_employee_relative.xml
+++ b/hr_employee_relative/views/hr_employee_relative.xml
@@ -4,23 +4,21 @@
       Copyright (C) 2018 Brainbean Apps (https://brainbeanapps.com)
       License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
     -->
-
     <record id="hr_employee_relative_view_tree" model="ir.ui.view">
         <field name="name">hr.employee.relative.view.tree</field>
         <field name="model">hr.employee.relative</field>
         <field name="arch" type="xml">
             <tree string="Employee Relatives" editable="bottom">
-                <field name="relation_id"/>
-                <field name="name"/>
-                <field name="partner_id"/>
-                <field name="gender"/>
-                <field name="date_of_birth"/>
-                <field name="age" readonly="1"/>
-                <field name="phone_number"/>
-                <field name="job"/>
-                <field name="notes"/>
+                <field name="relation_id" />
+                <field name="name" />
+                <field name="partner_id" />
+                <field name="gender" />
+                <field name="date_of_birth" />
+                <field name="age" readonly="1" />
+                <field name="phone_number" />
+                <field name="job" />
+                <field name="notes" />
             </tree>
         </field>
     </record>
-
 </odoo>

From 3561313e56162e1106d7d12a3b09f45b863835d9 Mon Sep 17 00:00:00 2001
From: Saran440 <saranl@ecosoft.co.th>
Date: Mon, 30 Mar 2020 15:59:45 +0700
Subject: [PATCH 05/30] [13.0][MIG] hr_employee_relative

---
 hr_employee_relative/README.rst               | 11 ++--
 hr_employee_relative/__manifest__.py          |  4 +-
 hr_employee_relative/i18n/es.po               |  8 +--
 hr_employee_relative/i18n/fr.po               |  6 +-
 hr_employee_relative/i18n/hr.po               | 12 ++--
 .../i18n/hr_employee_relative.pot             | 13 ++--
 .../migrations/12.0.1.0.0/post-migration.py   | 61 -------------------
 .../models/hr_employee_relative.py            | 12 ++--
 hr_employee_relative/readme/CONTRIBUTORS.rst  |  1 +
 .../static/description/index.html             |  7 ++-
 .../tests/test_hr_employee_relatives.py       | 15 ++++-
 11 files changed, 52 insertions(+), 98 deletions(-)
 delete mode 100644 hr_employee_relative/migrations/12.0.1.0.0/post-migration.py

diff --git a/hr_employee_relative/README.rst b/hr_employee_relative/README.rst
index 6e8743a716d..6d213f2e57b 100644
--- a/hr_employee_relative/README.rst
+++ b/hr_employee_relative/README.rst
@@ -14,13 +14,13 @@ HR Employee Relatives
     :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
     :alt: License: AGPL-3
 .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fhr-lightgray.png?logo=github
-    :target: https://github.com/OCA/hr/tree/12.0/hr_employee_relative
+    :target: https://github.com/OCA/hr/tree/13.0/hr_employee_relative
     :alt: OCA/hr
 .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
-    :target: https://translation.odoo-community.org/projects/hr-12-0/hr-12-0-hr_employee_relative
+    :target: https://translation.odoo-community.org/projects/hr-13-0/hr-13-0-hr_employee_relative
     :alt: Translate me on Weblate
 .. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
-    :target: https://runbot.odoo-community.org/runbot/116/12.0
+    :target: https://runbot.odoo-community.org/runbot/116/13.0
     :alt: Try me on Runbot
 
 |badge1| |badge2| |badge3| |badge4| |badge5| 
@@ -38,7 +38,7 @@ Bug Tracker
 Bugs are tracked on `GitHub Issues <https://github.com/OCA/hr/issues>`_.
 In case of trouble, please check there if your issue has already been reported.
 If you spotted it first, help us smashing it by providing a detailed and welcomed
-`feedback <https://github.com/OCA/hr/issues/new?body=module:%20hr_employee_relative%0Aversion:%2012.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
+`feedback <https://github.com/OCA/hr/issues/new?body=module:%20hr_employee_relative%0Aversion:%2013.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
 
 Do not contact contributors directly about support or help with technical issues.
 
@@ -54,6 +54,7 @@ Contributors
 ~~~~~~~~~~~~
 
 * Alexey Pelykh <alexey.pelykh@brainbeanapps.com>
+* Saran Lim. <saranl@ecosoft.co.th>
 
 Maintainers
 ~~~~~~~~~~~
@@ -68,6 +69,6 @@ OCA, or the Odoo Community Association, is a nonprofit organization whose
 mission is to support the collaborative development of Odoo features and
 promote its widespread use.
 
-This module is part of the `OCA/hr <https://github.com/OCA/hr/tree/12.0/hr_employee_relative>`_ project on GitHub.
+This module is part of the `OCA/hr <https://github.com/OCA/hr/tree/13.0/hr_employee_relative>`_ project on GitHub.
 
 You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
diff --git a/hr_employee_relative/__manifest__.py b/hr_employee_relative/__manifest__.py
index c1a983d37b4..479cb879739 100644
--- a/hr_employee_relative/__manifest__.py
+++ b/hr_employee_relative/__manifest__.py
@@ -3,10 +3,10 @@
 
 {
     "name": "HR Employee Relatives",
-    "version": "12.0.1.1.0",
+    "version": "13.0.1.0.0",
     "category": "Human Resources",
     "website": "https://github.com/OCA/hr",
-    "author": "Brainbean Apps, " "Odoo Community Association (OCA)",
+    "author": "Brainbean Apps, Odoo Community Association (OCA)",
     "license": "AGPL-3",
     "installable": True,
     "application": False,
diff --git a/hr_employee_relative/i18n/es.po b/hr_employee_relative/i18n/es.po
index 0b9054ee0e8..3d425fb51e8 100644
--- a/hr_employee_relative/i18n/es.po
+++ b/hr_employee_relative/i18n/es.po
@@ -1,6 +1,6 @@
 # Translation of Odoo Server.
 # This file contains the translation of the following modules:
-#	* hr_employee_relative
+# 	* hr_employee_relative
 #
 msgid ""
 msgstr ""
@@ -66,7 +66,7 @@ msgid "Employee Relatives"
 msgstr "Parientes de Empleados"
 
 #. module: hr_employee_relative
-#: selection:hr.employee.relative,gender:0
+#: model:ir.model.fields.selection,name:hr_employee_relative.selection__hr_employee_relative__gender__female
 msgid "Female"
 msgstr "Femenino"
 
@@ -125,7 +125,7 @@ msgid "Last Updated on"
 msgstr "Última actualización el"
 
 #. module: hr_employee_relative
-#: selection:hr.employee.relative,gender:0
+#: model:ir.model.fields.selection,name:hr_employee_relative.selection__hr_employee_relative__gender__male
 msgid "Male"
 msgstr "Masculino"
 
@@ -140,7 +140,7 @@ msgid "Notes"
 msgstr "Notas"
 
 #. module: hr_employee_relative
-#: selection:hr.employee.relative,gender:0
+#: model:ir.model.fields.selection,name:hr_employee_relative.selection__hr_employee_relative__gender__other
 msgid "Other"
 msgstr "Otro"
 
diff --git a/hr_employee_relative/i18n/fr.po b/hr_employee_relative/i18n/fr.po
index 20990def83e..52490769987 100644
--- a/hr_employee_relative/i18n/fr.po
+++ b/hr_employee_relative/i18n/fr.po
@@ -66,7 +66,7 @@ msgid "Employee Relatives"
 msgstr "Proches"
 
 #. module: hr_employee_relative
-#: selection:hr.employee.relative,gender:0
+#: model:ir.model.fields.selection,name:hr_employee_relative.selection__hr_employee_relative__gender__female
 msgid "Female"
 msgstr "Feminin"
 
@@ -125,7 +125,7 @@ msgid "Last Updated on"
 msgstr "Dernière mise à jour le"
 
 #. module: hr_employee_relative
-#: selection:hr.employee.relative,gender:0
+#: model:ir.model.fields.selection,name:hr_employee_relative.selection__hr_employee_relative__gender__male
 msgid "Male"
 msgstr "Masculin"
 
@@ -140,7 +140,7 @@ msgid "Notes"
 msgstr "Notes"
 
 #. module: hr_employee_relative
-#: selection:hr.employee.relative,gender:0
+#: model:ir.model.fields.selection,name:hr_employee_relative.selection__hr_employee_relative__gender__other
 msgid "Other"
 msgstr "Autre"
 
diff --git a/hr_employee_relative/i18n/hr.po b/hr_employee_relative/i18n/hr.po
index 652c9946dd2..858f7e7cc42 100644
--- a/hr_employee_relative/i18n/hr.po
+++ b/hr_employee_relative/i18n/hr.po
@@ -1,6 +1,6 @@
 # Translation of Odoo Server.
 # This file contains the translation of the following modules:
-#	* hr_employee_relative
+# 	* hr_employee_relative
 #
 msgid ""
 msgstr ""
@@ -13,8 +13,8 @@ msgstr ""
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: \n"
-"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<="
-"4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
+"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
+"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
 "X-Generator: Weblate 3.8\n"
 
 #. module: hr_employee_relative
@@ -67,7 +67,7 @@ msgid "Employee Relatives"
 msgstr "Rodbina djelatnika"
 
 #. module: hr_employee_relative
-#: selection:hr.employee.relative,gender:0
+#: model:ir.model.fields.selection,name:hr_employee_relative.selection__hr_employee_relative__gender__female
 msgid "Female"
 msgstr "Žensko"
 
@@ -126,7 +126,7 @@ msgid "Last Updated on"
 msgstr ""
 
 #. module: hr_employee_relative
-#: selection:hr.employee.relative,gender:0
+#: model:ir.model.fields.selection,name:hr_employee_relative.selection__hr_employee_relative__gender__male
 msgid "Male"
 msgstr ""
 
@@ -141,7 +141,7 @@ msgid "Notes"
 msgstr ""
 
 #. module: hr_employee_relative
-#: selection:hr.employee.relative,gender:0
+#: model:ir.model.fields.selection,name:hr_employee_relative.selection__hr_employee_relative__gender__other
 msgid "Other"
 msgstr ""
 
diff --git a/hr_employee_relative/i18n/hr_employee_relative.pot b/hr_employee_relative/i18n/hr_employee_relative.pot
index 9fadc9e8e71..b1a655f5139 100644
--- a/hr_employee_relative/i18n/hr_employee_relative.pot
+++ b/hr_employee_relative/i18n/hr_employee_relative.pot
@@ -1,12 +1,12 @@
 # Translation of Odoo Server.
 # This file contains the translation of the following modules:
-#	* hr_employee_relative
+# 	* hr_employee_relative
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: Odoo Server 12.0\n"
+"Project-Id-Version: Odoo Server 13.0\n"
 "Report-Msgid-Bugs-To: \n"
-"Last-Translator: <>\n"
+"Last-Translator: \n"
 "Language-Team: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -63,7 +63,7 @@ msgid "Employee Relatives"
 msgstr ""
 
 #. module: hr_employee_relative
-#: selection:hr.employee.relative,gender:0
+#: model:ir.model.fields.selection,name:hr_employee_relative.selection__hr_employee_relative__gender__female
 msgid "Female"
 msgstr ""
 
@@ -122,7 +122,7 @@ msgid "Last Updated on"
 msgstr ""
 
 #. module: hr_employee_relative
-#: selection:hr.employee.relative,gender:0
+#: model:ir.model.fields.selection,name:hr_employee_relative.selection__hr_employee_relative__gender__male
 msgid "Male"
 msgstr ""
 
@@ -137,7 +137,7 @@ msgid "Notes"
 msgstr ""
 
 #. module: hr_employee_relative
-#: selection:hr.employee.relative,gender:0
+#: model:ir.model.fields.selection,name:hr_employee_relative.selection__hr_employee_relative__gender__other
 msgid "Other"
 msgstr ""
 
@@ -182,4 +182,3 @@ msgstr ""
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_spouse
 msgid "Spouse"
 msgstr ""
-
diff --git a/hr_employee_relative/migrations/12.0.1.0.0/post-migration.py b/hr_employee_relative/migrations/12.0.1.0.0/post-migration.py
deleted file mode 100644
index 9bebec5b642..00000000000
--- a/hr_employee_relative/migrations/12.0.1.0.0/post-migration.py
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 2019 Creu Blanca
-# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
-
-from openupgradelib import openupgrade
-
-
-@openupgrade.migrate()
-def migrate(env, version):
-    cr = env.cr
-    columns = (
-        "fam_spouse, fam_spouse_employer, fam_spouse_tel, fam_father,"
-        " fam_father_date_of_birth, fam_mother, fam_mother_date_of_birth"
-    )
-    cr.execute("SELECT id, %s FROM hr_employee" % columns)
-
-    relation_spouse = env.ref("hr_employee_relative.relation_spouse").id
-    relation_parent = env.ref("hr_employee_relative.relation_parent").id
-    relation_child = env.ref("hr_employee_relative.relation_child").id
-
-    for employee in cr.fetchall():
-        if employee[1] or employee[2] or employee[3]:
-            env["hr.employee.relative"].create(
-                {
-                    "employee_id": employee[0],
-                    "job": employee[2],
-                    "phone_number": employee[3],
-                    "name": employee[1] or "Spouse",
-                    "relation_id": relation_spouse,
-                }
-            )
-        if employee[4] or employee[5]:
-            env["hr.employee.relative"].create(
-                {
-                    "employee_id": employee[0],
-                    "name": employee[4] or "Father",
-                    "date_of_birth": employee[5] or False,
-                    "relation_id": relation_parent,
-                }
-            )
-        if employee[6] or employee[7]:
-            env["hr.employee.relative"].create(
-                {
-                    "employee_id": employee[0],
-                    "name": employee[6] or "Mother",
-                    "date_of_birth": employee[7] or False,
-                    "relation_id": relation_parent,
-                }
-            )
-    cr.execute(
-        "SELECT name, date_of_birth, employee_id, gender" " FROM hr_employee_children"
-    )
-    for children in cr.fetchall():
-        env["hr.employee.relative"].create(
-            {
-                "name": children[0] or "Child",
-                "date_of_birth": children[1] or False,
-                "employee_id": children[2],
-                "gender": children[3] or False,
-                "relation_id": relation_child,
-            }
-        )
diff --git a/hr_employee_relative/models/hr_employee_relative.py b/hr_employee_relative/models/hr_employee_relative.py
index 6a3def6a3c5..925f96bf48d 100644
--- a/hr_employee_relative/models/hr_employee_relative.py
+++ b/hr_employee_relative/models/hr_employee_relative.py
@@ -12,11 +12,11 @@ class HrEmployeeRelative(models.Model):
     _name = "hr.employee.relative"
     _description = "HR Employee Relative"
 
-    employee_id = fields.Many2one(string="Employee", comodel_name="hr.employee",)
+    employee_id = fields.Many2one(string="Employee", comodel_name="hr.employee")
     relation_id = fields.Many2one(
-        "hr.employee.relative.relation", string="Relation", required=True,
+        "hr.employee.relative.relation", string="Relation", required=True
     )
-    name = fields.Char(string="Name", required=True,)
+    name = fields.Char(string="Name", required=True)
     partner_id = fields.Many2one(
         "res.partner",
         string="Partner",
@@ -26,13 +26,13 @@ class HrEmployeeRelative(models.Model):
         string="Gender",
         selection=[("male", "Male"), ("female", "Female"), ("other", "Other")],
     )
-    date_of_birth = fields.Date(string="Date of Birth",)
-    age = fields.Float(compute="_compute_age",)
+    date_of_birth = fields.Date(string="Date of Birth")
+    age = fields.Float(compute="_compute_age")
 
     job = fields.Char()
     phone_number = fields.Char()
 
-    notes = fields.Text(string="Notes",)
+    notes = fields.Text(string="Notes")
 
     @api.depends("date_of_birth")
     def _compute_age(self):
diff --git a/hr_employee_relative/readme/CONTRIBUTORS.rst b/hr_employee_relative/readme/CONTRIBUTORS.rst
index 1c6a35a1e35..4ebc5c8b18b 100644
--- a/hr_employee_relative/readme/CONTRIBUTORS.rst
+++ b/hr_employee_relative/readme/CONTRIBUTORS.rst
@@ -1 +1,2 @@
 * Alexey Pelykh <alexey.pelykh@brainbeanapps.com>
+* Saran Lim. <saranl@ecosoft.co.th>
diff --git a/hr_employee_relative/static/description/index.html b/hr_employee_relative/static/description/index.html
index d2cf12b655a..12b6f844ac9 100644
--- a/hr_employee_relative/static/description/index.html
+++ b/hr_employee_relative/static/description/index.html
@@ -367,7 +367,7 @@ <h1 class="title">HR Employee Relatives</h1>
 !! This file is generated by oca-gen-addon-readme !!
 !! changes will be overwritten.                   !!
 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
-<p><a class="reference external" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external" href="https://github.com/OCA/hr/tree/12.0/hr_employee_relative"><img alt="OCA/hr" src="https://img.shields.io/badge/github-OCA%2Fhr-lightgray.png?logo=github" /></a> <a class="reference external" href="https://translation.odoo-community.org/projects/hr-12-0/hr-12-0-hr_employee_relative"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external" href="https://runbot.odoo-community.org/runbot/116/12.0"><img alt="Try me on Runbot" src="https://img.shields.io/badge/runbot-Try%20me-875A7B.png" /></a></p>
+<p><a class="reference external" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external" href="https://github.com/OCA/hr/tree/13.0/hr_employee_relative"><img alt="OCA/hr" src="https://img.shields.io/badge/github-OCA%2Fhr-lightgray.png?logo=github" /></a> <a class="reference external" href="https://translation.odoo-community.org/projects/hr-13-0/hr-13-0-hr_employee_relative"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external" href="https://runbot.odoo-community.org/runbot/116/13.0"><img alt="Try me on Runbot" src="https://img.shields.io/badge/runbot-Try%20me-875A7B.png" /></a></p>
 <p>This module allows storing information about employee’s family.</p>
 <p><strong>Table of contents</strong></p>
 <div class="contents local topic" id="contents">
@@ -386,7 +386,7 @@ <h1><a class="toc-backref" href="#id1">Bug Tracker</a></h1>
 <p>Bugs are tracked on <a class="reference external" href="https://github.com/OCA/hr/issues">GitHub Issues</a>.
 In case of trouble, please check there if your issue has already been reported.
 If you spotted it first, help us smashing it by providing a detailed and welcomed
-<a class="reference external" href="https://github.com/OCA/hr/issues/new?body=module:%20hr_employee_relative%0Aversion:%2012.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p>
+<a class="reference external" href="https://github.com/OCA/hr/issues/new?body=module:%20hr_employee_relative%0Aversion:%2013.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p>
 <p>Do not contact contributors directly about support or help with technical issues.</p>
 </div>
 <div class="section" id="credits">
@@ -401,6 +401,7 @@ <h2><a class="toc-backref" href="#id3">Authors</a></h2>
 <h2><a class="toc-backref" href="#id4">Contributors</a></h2>
 <ul class="simple">
 <li>Alexey Pelykh &lt;<a class="reference external" href="mailto:alexey.pelykh&#64;brainbeanapps.com">alexey.pelykh&#64;brainbeanapps.com</a>&gt;</li>
+<li>Saran Lim. &lt;<a class="reference external" href="mailto:saranl&#64;ecosoft.co.th">saranl&#64;ecosoft.co.th</a>&gt;</li>
 </ul>
 </div>
 <div class="section" id="maintainers">
@@ -410,7 +411,7 @@ <h2><a class="toc-backref" href="#id5">Maintainers</a></h2>
 <p>OCA, or the Odoo Community Association, is a nonprofit organization whose
 mission is to support the collaborative development of Odoo features and
 promote its widespread use.</p>
-<p>This module is part of the <a class="reference external" href="https://github.com/OCA/hr/tree/12.0/hr_employee_relative">OCA/hr</a> project on GitHub.</p>
+<p>This module is part of the <a class="reference external" href="https://github.com/OCA/hr/tree/13.0/hr_employee_relative">OCA/hr</a> project on GitHub.</p>
 <p>You are welcome to contribute. To learn how please visit <a class="reference external" href="https://odoo-community.org/page/Contribute">https://odoo-community.org/page/Contribute</a>.</p>
 </div>
 </div>
diff --git a/hr_employee_relative/tests/test_hr_employee_relatives.py b/hr_employee_relative/tests/test_hr_employee_relatives.py
index 8b61ae7e9df..a000f4296cb 100644
--- a/hr_employee_relative/tests/test_hr_employee_relatives.py
+++ b/hr_employee_relative/tests/test_hr_employee_relatives.py
@@ -5,7 +5,7 @@
 
 from dateutil.relativedelta import relativedelta
 
-from odoo.tests import common
+from odoo.tests import Form, common
 
 _ns = "hr_employee_relative"
 
@@ -26,6 +26,7 @@ def test_age_calculation(self):
                         0,
                         {
                             "relation_id": self.env.ref(_ns + ".relation_sibling").id,
+                            "partner_id": self.env.ref("base.res_partner_1").id,
                             "name": "Relative",
                             "date_of_birth": datetime.now() + relativedelta(years=-42),
                         },
@@ -35,3 +36,15 @@ def test_age_calculation(self):
         )
         relative = self.EmployeeRelative.browse(employee.relative_ids[0].id)
         self.assertEqual(int(relative.age), 42)
+        # onchange partner
+        ctx = {
+            "active_ids": [relative.id],
+            "active_id": relative.id,
+            "active_model": "hr.employee.relative",
+        }
+        self.assertEqual(relative.name, "Relative")
+        with Form(self.EmployeeRelative.with_context(ctx)) as f:
+            f.partner_id = self.env.ref("base.res_partner_2")
+            f.relation_id = self.env.ref(_ns + ".relation_sibling")
+        relative = f.save()
+        self.assertEqual(relative.name, relative.partner_id.display_name)

From dfca1b48bd1ae562f05147935ba49ec8e701eb7f Mon Sep 17 00:00:00 2001
From: Alexey Pelykh <alexey.pelykh@gmail.com>
Date: Sun, 8 Nov 2020 08:13:49 +0200
Subject: [PATCH 06/30] [UPD] Brainbean Apps => CorporateHub

---
 hr_employee_relative/README.rst                    | 7 +++++--
 hr_employee_relative/__manifest__.py               | 3 ++-
 hr_employee_relative/readme/CONTRIBUTORS.rst       | 5 ++++-
 hr_employee_relative/static/description/index.html | 7 +++++--
 4 files changed, 16 insertions(+), 6 deletions(-)

diff --git a/hr_employee_relative/README.rst b/hr_employee_relative/README.rst
index 6d213f2e57b..c66b69283db 100644
--- a/hr_employee_relative/README.rst
+++ b/hr_employee_relative/README.rst
@@ -48,12 +48,15 @@ Credits
 Authors
 ~~~~~~~
 
-* Brainbean Apps
+* CorporateHub
 
 Contributors
 ~~~~~~~~~~~~
 
-* Alexey Pelykh <alexey.pelykh@brainbeanapps.com>
+* `CorporateHub <https://corporatehub.eu/>`__
+
+  * Alexey Pelykh <alexey.pelykh@corphub.eu>
+
 * Saran Lim. <saranl@ecosoft.co.th>
 
 Maintainers
diff --git a/hr_employee_relative/__manifest__.py b/hr_employee_relative/__manifest__.py
index 479cb879739..6f3a906e7fc 100644
--- a/hr_employee_relative/__manifest__.py
+++ b/hr_employee_relative/__manifest__.py
@@ -1,4 +1,5 @@
 # Copyright (C) 2018 Brainbean Apps (https://brainbeanapps.com)
+# Copyright 2020 CorporateHub (https://corporatehub.eu)
 # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html).
 
 {
@@ -6,7 +7,7 @@
     "version": "13.0.1.0.0",
     "category": "Human Resources",
     "website": "https://github.com/OCA/hr",
-    "author": "Brainbean Apps, Odoo Community Association (OCA)",
+    "author": "CorporateHub, Odoo Community Association (OCA)",
     "license": "AGPL-3",
     "installable": True,
     "application": False,
diff --git a/hr_employee_relative/readme/CONTRIBUTORS.rst b/hr_employee_relative/readme/CONTRIBUTORS.rst
index 4ebc5c8b18b..1d4aab89524 100644
--- a/hr_employee_relative/readme/CONTRIBUTORS.rst
+++ b/hr_employee_relative/readme/CONTRIBUTORS.rst
@@ -1,2 +1,5 @@
-* Alexey Pelykh <alexey.pelykh@brainbeanapps.com>
+* `CorporateHub <https://corporatehub.eu/>`__
+
+  * Alexey Pelykh <alexey.pelykh@corphub.eu>
+
 * Saran Lim. <saranl@ecosoft.co.th>
diff --git a/hr_employee_relative/static/description/index.html b/hr_employee_relative/static/description/index.html
index 12b6f844ac9..9b26cfab7cf 100644
--- a/hr_employee_relative/static/description/index.html
+++ b/hr_employee_relative/static/description/index.html
@@ -394,13 +394,16 @@ <h1><a class="toc-backref" href="#id2">Credits</a></h1>
 <div class="section" id="authors">
 <h2><a class="toc-backref" href="#id3">Authors</a></h2>
 <ul class="simple">
-<li>Brainbean Apps</li>
+<li>CorporateHub</li>
 </ul>
 </div>
 <div class="section" id="contributors">
 <h2><a class="toc-backref" href="#id4">Contributors</a></h2>
 <ul class="simple">
-<li>Alexey Pelykh &lt;<a class="reference external" href="mailto:alexey.pelykh&#64;brainbeanapps.com">alexey.pelykh&#64;brainbeanapps.com</a>&gt;</li>
+<li><a class="reference external" href="https://corporatehub.eu/">CorporateHub</a><ul>
+<li>Alexey Pelykh &lt;<a class="reference external" href="mailto:alexey.pelykh&#64;corphub.eu">alexey.pelykh&#64;corphub.eu</a>&gt;</li>
+</ul>
+</li>
 <li>Saran Lim. &lt;<a class="reference external" href="mailto:saranl&#64;ecosoft.co.th">saranl&#64;ecosoft.co.th</a>&gt;</li>
 </ul>
 </div>

From 24eb5f3c90bac2ee5d3a8d46e7b1685ac2cb3876 Mon Sep 17 00:00:00 2001
From: aphon61bank <aphon61bank@gmail.com>
Date: Thu, 12 Nov 2020 16:18:30 +0700
Subject: [PATCH 07/30] [14.0][MIG] hr_employee_relative

---
 hr_employee_relative/README.rst               |  12 +-
 hr_employee_relative/__manifest__.py          |   2 +-
 .../i18n/hr_employee_relative.pot             |   5 +-
 hr_employee_relative/i18n/pt_BR.po            | 188 ++++++++++++++++++
 hr_employee_relative/readme/CONTRIBUTORS.rst  |   2 +
 .../static/description/index.html             |   7 +-
 6 files changed, 206 insertions(+), 10 deletions(-)
 create mode 100644 hr_employee_relative/i18n/pt_BR.po

diff --git a/hr_employee_relative/README.rst b/hr_employee_relative/README.rst
index c66b69283db..82f2528cfd6 100644
--- a/hr_employee_relative/README.rst
+++ b/hr_employee_relative/README.rst
@@ -14,13 +14,13 @@ HR Employee Relatives
     :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
     :alt: License: AGPL-3
 .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fhr-lightgray.png?logo=github
-    :target: https://github.com/OCA/hr/tree/13.0/hr_employee_relative
+    :target: https://github.com/OCA/hr/tree/14.0/hr_employee_relative
     :alt: OCA/hr
 .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
-    :target: https://translation.odoo-community.org/projects/hr-13-0/hr-13-0-hr_employee_relative
+    :target: https://translation.odoo-community.org/projects/hr-14-0/hr-14-0-hr_employee_relative
     :alt: Translate me on Weblate
 .. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
-    :target: https://runbot.odoo-community.org/runbot/116/13.0
+    :target: https://runbot.odoo-community.org/runbot/116/14.0
     :alt: Try me on Runbot
 
 |badge1| |badge2| |badge3| |badge4| |badge5| 
@@ -38,7 +38,7 @@ Bug Tracker
 Bugs are tracked on `GitHub Issues <https://github.com/OCA/hr/issues>`_.
 In case of trouble, please check there if your issue has already been reported.
 If you spotted it first, help us smashing it by providing a detailed and welcomed
-`feedback <https://github.com/OCA/hr/issues/new?body=module:%20hr_employee_relative%0Aversion:%2013.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
+`feedback <https://github.com/OCA/hr/issues/new?body=module:%20hr_employee_relative%0Aversion:%2014.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
 
 Do not contact contributors directly about support or help with technical issues.
 
@@ -59,6 +59,8 @@ Contributors
 
 * Saran Lim. <saranl@ecosoft.co.th>
 
+* Nattapong W. <aphon61bank@gmail.com>
+
 Maintainers
 ~~~~~~~~~~~
 
@@ -72,6 +74,6 @@ OCA, or the Odoo Community Association, is a nonprofit organization whose
 mission is to support the collaborative development of Odoo features and
 promote its widespread use.
 
-This module is part of the `OCA/hr <https://github.com/OCA/hr/tree/13.0/hr_employee_relative>`_ project on GitHub.
+This module is part of the `OCA/hr <https://github.com/OCA/hr/tree/14.0/hr_employee_relative>`_ project on GitHub.
 
 You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
diff --git a/hr_employee_relative/__manifest__.py b/hr_employee_relative/__manifest__.py
index 6f3a906e7fc..77c2925bf61 100644
--- a/hr_employee_relative/__manifest__.py
+++ b/hr_employee_relative/__manifest__.py
@@ -4,7 +4,7 @@
 
 {
     "name": "HR Employee Relatives",
-    "version": "13.0.1.0.0",
+    "version": "14.0.1.0.0",
     "category": "Human Resources",
     "website": "https://github.com/OCA/hr",
     "author": "CorporateHub, Odoo Community Association (OCA)",
diff --git a/hr_employee_relative/i18n/hr_employee_relative.pot b/hr_employee_relative/i18n/hr_employee_relative.pot
index b1a655f5139..72a2be11e24 100644
--- a/hr_employee_relative/i18n/hr_employee_relative.pot
+++ b/hr_employee_relative/i18n/hr_employee_relative.pot
@@ -4,7 +4,7 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: Odoo Server 13.0\n"
+"Project-Id-Version: Odoo Server 14.0\n"
 "Report-Msgid-Bugs-To: \n"
 "Last-Translator: \n"
 "Language-Team: \n"
@@ -46,6 +46,7 @@ msgid "Date of Birth"
 msgstr ""
 
 #. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee__display_name
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__display_name
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__display_name
 msgid "Display Name"
@@ -93,6 +94,7 @@ msgid "HR Employee Relative Relation"
 msgstr ""
 
 #. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee__id
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__id
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__id
 msgid "ID"
@@ -104,6 +106,7 @@ msgid "Job"
 msgstr ""
 
 #. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee____last_update
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative____last_update
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation____last_update
 msgid "Last Modified on"
diff --git a/hr_employee_relative/i18n/pt_BR.po b/hr_employee_relative/i18n/pt_BR.po
new file mode 100644
index 00000000000..d4712e99119
--- /dev/null
+++ b/hr_employee_relative/i18n/pt_BR.po
@@ -0,0 +1,188 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# 	* hr_employee_relative
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 14.0\n"
+"Report-Msgid-Bugs-To: \n"
+"Last-Translator: Automatically generated\n"
+"Language-Team: none\n"
+"Language: pt_BR\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Plural-Forms: nplurals=2; plural=n > 1;\n"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age
+msgid "Age"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_child
+msgid "Child"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_cousin
+msgid "Cousin"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__create_uid
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__create_uid
+msgid "Created by"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__create_date
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__create_date
+msgid "Created on"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__date_of_birth
+msgid "Date of Birth"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee__display_name
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__display_name
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__display_name
+msgid "Display Name"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model,name:hr_employee_relative.model_hr_employee
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__employee_id
+msgid "Employee"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
+msgid "Employee Relatives"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields.selection,name:hr_employee_relative.selection__hr_employee_relative__gender__female
+msgid "Female"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__gender
+msgid "Gender"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_grandchild
+msgid "Grandchild"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_grandparent
+msgid "Grandparent"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model,name:hr_employee_relative.model_hr_employee_relative
+msgid "HR Employee Relative"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model,name:hr_employee_relative.model_hr_employee_relative_relation
+msgid "HR Employee Relative Relation"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee__id
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__id
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__id
+msgid "ID"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__job
+msgid "Job"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee____last_update
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative____last_update
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation____last_update
+msgid "Last Modified on"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__write_uid
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__write_uid
+msgid "Last Updated by"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__write_date
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__write_date
+msgid "Last Updated on"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields.selection,name:hr_employee_relative.selection__hr_employee_relative__gender__male
+msgid "Male"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__name
+msgid "Name"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__notes
+msgid "Notes"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields.selection,name:hr_employee_relative.selection__hr_employee_relative__gender__other
+msgid "Other"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_parent
+msgid "Parent"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__partner_id
+msgid "Partner"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__phone_number
+msgid "Phone Number"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__relation_id
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__name
+msgid "Relation"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee__relative_ids
+#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_view_form
+msgid "Relatives"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_sibling
+msgid "Sibling"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_significant_other
+msgid "Significant Other"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_spouse
+msgid "Spouse"
+msgstr ""
diff --git a/hr_employee_relative/readme/CONTRIBUTORS.rst b/hr_employee_relative/readme/CONTRIBUTORS.rst
index 1d4aab89524..a1838cb4938 100644
--- a/hr_employee_relative/readme/CONTRIBUTORS.rst
+++ b/hr_employee_relative/readme/CONTRIBUTORS.rst
@@ -3,3 +3,5 @@
   * Alexey Pelykh <alexey.pelykh@corphub.eu>
 
 * Saran Lim. <saranl@ecosoft.co.th>
+
+* Nattapong W. <aphon61bank@gmail.com>
diff --git a/hr_employee_relative/static/description/index.html b/hr_employee_relative/static/description/index.html
index 9b26cfab7cf..88a2375a1a9 100644
--- a/hr_employee_relative/static/description/index.html
+++ b/hr_employee_relative/static/description/index.html
@@ -367,7 +367,7 @@ <h1 class="title">HR Employee Relatives</h1>
 !! This file is generated by oca-gen-addon-readme !!
 !! changes will be overwritten.                   !!
 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
-<p><a class="reference external" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external" href="https://github.com/OCA/hr/tree/13.0/hr_employee_relative"><img alt="OCA/hr" src="https://img.shields.io/badge/github-OCA%2Fhr-lightgray.png?logo=github" /></a> <a class="reference external" href="https://translation.odoo-community.org/projects/hr-13-0/hr-13-0-hr_employee_relative"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external" href="https://runbot.odoo-community.org/runbot/116/13.0"><img alt="Try me on Runbot" src="https://img.shields.io/badge/runbot-Try%20me-875A7B.png" /></a></p>
+<p><a class="reference external" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external" href="https://github.com/OCA/hr/tree/14.0/hr_employee_relative"><img alt="OCA/hr" src="https://img.shields.io/badge/github-OCA%2Fhr-lightgray.png?logo=github" /></a> <a class="reference external" href="https://translation.odoo-community.org/projects/hr-14-0/hr-14-0-hr_employee_relative"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external" href="https://runbot.odoo-community.org/runbot/116/14.0"><img alt="Try me on Runbot" src="https://img.shields.io/badge/runbot-Try%20me-875A7B.png" /></a></p>
 <p>This module allows storing information about employee’s family.</p>
 <p><strong>Table of contents</strong></p>
 <div class="contents local topic" id="contents">
@@ -386,7 +386,7 @@ <h1><a class="toc-backref" href="#id1">Bug Tracker</a></h1>
 <p>Bugs are tracked on <a class="reference external" href="https://github.com/OCA/hr/issues">GitHub Issues</a>.
 In case of trouble, please check there if your issue has already been reported.
 If you spotted it first, help us smashing it by providing a detailed and welcomed
-<a class="reference external" href="https://github.com/OCA/hr/issues/new?body=module:%20hr_employee_relative%0Aversion:%2013.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p>
+<a class="reference external" href="https://github.com/OCA/hr/issues/new?body=module:%20hr_employee_relative%0Aversion:%2014.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p>
 <p>Do not contact contributors directly about support or help with technical issues.</p>
 </div>
 <div class="section" id="credits">
@@ -405,6 +405,7 @@ <h2><a class="toc-backref" href="#id4">Contributors</a></h2>
 </ul>
 </li>
 <li>Saran Lim. &lt;<a class="reference external" href="mailto:saranl&#64;ecosoft.co.th">saranl&#64;ecosoft.co.th</a>&gt;</li>
+<li>Nattapong W. &lt;<a class="reference external" href="mailto:aphon61bank&#64;gmail.com">aphon61bank&#64;gmail.com</a>&gt;</li>
 </ul>
 </div>
 <div class="section" id="maintainers">
@@ -414,7 +415,7 @@ <h2><a class="toc-backref" href="#id5">Maintainers</a></h2>
 <p>OCA, or the Odoo Community Association, is a nonprofit organization whose
 mission is to support the collaborative development of Odoo features and
 promote its widespread use.</p>
-<p>This module is part of the <a class="reference external" href="https://github.com/OCA/hr/tree/13.0/hr_employee_relative">OCA/hr</a> project on GitHub.</p>
+<p>This module is part of the <a class="reference external" href="https://github.com/OCA/hr/tree/14.0/hr_employee_relative">OCA/hr</a> project on GitHub.</p>
 <p>You are welcome to contribute. To learn how please visit <a class="reference external" href="https://odoo-community.org/page/Contribute">https://odoo-community.org/page/Contribute</a>.</p>
 </div>
 </div>

From 302c44d0054b4657534e59382204f397f988e308 Mon Sep 17 00:00:00 2001
From: Eder Brito <britoederr@gmail.com>
Date: Sat, 13 Mar 2021 01:38:49 +0000
Subject: [PATCH 08/30] Translated using Weblate (Portuguese (Brazil))

Currently translated at 100.0% (32 of 32 strings)

Translation: hr-14.0/hr-14.0-hr_employee_relative
Translate-URL: https://translation.odoo-community.org/projects/hr-14-0/hr-14-0-hr_employee_relative/pt_BR/
---
 hr_employee_relative/i18n/pt_BR.po | 68 +++++++++++++++---------------
 1 file changed, 35 insertions(+), 33 deletions(-)

diff --git a/hr_employee_relative/i18n/pt_BR.po b/hr_employee_relative/i18n/pt_BR.po
index d4712e99119..380f0305b65 100644
--- a/hr_employee_relative/i18n/pt_BR.po
+++ b/hr_employee_relative/i18n/pt_BR.po
@@ -6,183 +6,185 @@ msgid ""
 msgstr ""
 "Project-Id-Version: Odoo Server 14.0\n"
 "Report-Msgid-Bugs-To: \n"
-"Last-Translator: Automatically generated\n"
+"PO-Revision-Date: 2021-03-13 03:46+0000\n"
+"Last-Translator: Eder Brito <britoederr@gmail.com>\n"
 "Language-Team: none\n"
 "Language: pt_BR\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: \n"
 "Plural-Forms: nplurals=2; plural=n > 1;\n"
+"X-Generator: Weblate 4.3.2\n"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age
 msgid "Age"
-msgstr ""
+msgstr "Idade"
 
 #. module: hr_employee_relative
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_child
 msgid "Child"
-msgstr ""
+msgstr "Criança"
 
 #. module: hr_employee_relative
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_cousin
 msgid "Cousin"
-msgstr ""
+msgstr "Primo"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__create_uid
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__create_uid
 msgid "Created by"
-msgstr ""
+msgstr "Criado por"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__create_date
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__create_date
 msgid "Created on"
-msgstr ""
+msgstr "Criado em"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__date_of_birth
 msgid "Date of Birth"
-msgstr ""
+msgstr "Data de Nascimento"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee__display_name
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__display_name
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__display_name
 msgid "Display Name"
-msgstr ""
+msgstr "Nome de Exibição"
 
 #. module: hr_employee_relative
 #: model:ir.model,name:hr_employee_relative.model_hr_employee
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__employee_id
 msgid "Employee"
-msgstr ""
+msgstr "Funcionário"
 
 #. module: hr_employee_relative
 #: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
 msgid "Employee Relatives"
-msgstr ""
+msgstr "Parentes do Funcionário"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields.selection,name:hr_employee_relative.selection__hr_employee_relative__gender__female
 msgid "Female"
-msgstr ""
+msgstr "Feminino"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__gender
 msgid "Gender"
-msgstr ""
+msgstr "Gênero"
 
 #. module: hr_employee_relative
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_grandchild
 msgid "Grandchild"
-msgstr ""
+msgstr "Neto(a)"
 
 #. module: hr_employee_relative
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_grandparent
 msgid "Grandparent"
-msgstr ""
+msgstr "Avô"
 
 #. module: hr_employee_relative
 #: model:ir.model,name:hr_employee_relative.model_hr_employee_relative
 msgid "HR Employee Relative"
-msgstr ""
+msgstr "Parentes de Funcionário"
 
 #. module: hr_employee_relative
 #: model:ir.model,name:hr_employee_relative.model_hr_employee_relative_relation
 msgid "HR Employee Relative Relation"
-msgstr ""
+msgstr "Relação de Parentesco de Funcionário"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee__id
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__id
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__id
 msgid "ID"
-msgstr ""
+msgstr "ID"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__job
 msgid "Job"
-msgstr ""
+msgstr "Trabalho"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee____last_update
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative____last_update
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation____last_update
 msgid "Last Modified on"
-msgstr ""
+msgstr "Última Modificação em"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__write_uid
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__write_uid
 msgid "Last Updated by"
-msgstr ""
+msgstr "Última Atualização por"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__write_date
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__write_date
 msgid "Last Updated on"
-msgstr ""
+msgstr "Última Atualização em"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields.selection,name:hr_employee_relative.selection__hr_employee_relative__gender__male
 msgid "Male"
-msgstr ""
+msgstr "Masculino"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__name
 msgid "Name"
-msgstr ""
+msgstr "Nome"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__notes
 msgid "Notes"
-msgstr ""
+msgstr "Observações"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields.selection,name:hr_employee_relative.selection__hr_employee_relative__gender__other
 msgid "Other"
-msgstr ""
+msgstr "Outro"
 
 #. module: hr_employee_relative
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_parent
 msgid "Parent"
-msgstr ""
+msgstr "Parente"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__partner_id
 msgid "Partner"
-msgstr ""
+msgstr "Parceiro"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__phone_number
 msgid "Phone Number"
-msgstr ""
+msgstr "Número de Telefone"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__relation_id
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__name
 msgid "Relation"
-msgstr ""
+msgstr "Relação"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee__relative_ids
 #: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_view_form
 msgid "Relatives"
-msgstr ""
+msgstr "Parentes"
 
 #. module: hr_employee_relative
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_sibling
 msgid "Sibling"
-msgstr ""
+msgstr "Irmão"
 
 #. module: hr_employee_relative
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_significant_other
 msgid "Significant Other"
-msgstr ""
+msgstr "Outro Significativo"
 
 #. module: hr_employee_relative
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_spouse
 msgid "Spouse"
-msgstr ""
+msgstr "Cônjuge"

From 6b50d349016139bb834c04cc498bcac1c2698a7f Mon Sep 17 00:00:00 2001
From: "Pedro M. Baeza" <pedro.baeza@tecnativa.com>
Date: Thu, 31 Mar 2022 01:40:32 +0200
Subject: [PATCH 09/30] [FIX] hr_employee_relative: Avoid W7940
 (dangerous-view-replace-wo-priority)

---
 hr_employee_relative/i18n/de.po            | 188 +++++++++++++++++++++
 hr_employee_relative/views/hr_employee.xml |  12 +-
 2 files changed, 197 insertions(+), 3 deletions(-)
 create mode 100644 hr_employee_relative/i18n/de.po

diff --git a/hr_employee_relative/i18n/de.po b/hr_employee_relative/i18n/de.po
new file mode 100644
index 00000000000..de083c32b85
--- /dev/null
+++ b/hr_employee_relative/i18n/de.po
@@ -0,0 +1,188 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# 	* hr_employee_relative
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 14.0\n"
+"Report-Msgid-Bugs-To: \n"
+"Last-Translator: Automatically generated\n"
+"Language-Team: none\n"
+"Language: de\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age
+msgid "Age"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_child
+msgid "Child"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_cousin
+msgid "Cousin"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__create_uid
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__create_uid
+msgid "Created by"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__create_date
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__create_date
+msgid "Created on"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__date_of_birth
+msgid "Date of Birth"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee__display_name
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__display_name
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__display_name
+msgid "Display Name"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model,name:hr_employee_relative.model_hr_employee
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__employee_id
+msgid "Employee"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
+msgid "Employee Relatives"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields.selection,name:hr_employee_relative.selection__hr_employee_relative__gender__female
+msgid "Female"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__gender
+msgid "Gender"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_grandchild
+msgid "Grandchild"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_grandparent
+msgid "Grandparent"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model,name:hr_employee_relative.model_hr_employee_relative
+msgid "HR Employee Relative"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model,name:hr_employee_relative.model_hr_employee_relative_relation
+msgid "HR Employee Relative Relation"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee__id
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__id
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__id
+msgid "ID"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__job
+msgid "Job"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee____last_update
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative____last_update
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation____last_update
+msgid "Last Modified on"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__write_uid
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__write_uid
+msgid "Last Updated by"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__write_date
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__write_date
+msgid "Last Updated on"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields.selection,name:hr_employee_relative.selection__hr_employee_relative__gender__male
+msgid "Male"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__name
+msgid "Name"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__notes
+msgid "Notes"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields.selection,name:hr_employee_relative.selection__hr_employee_relative__gender__other
+msgid "Other"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_parent
+msgid "Parent"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__partner_id
+msgid "Partner"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__phone_number
+msgid "Phone Number"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__relation_id
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__name
+msgid "Relation"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee__relative_ids
+#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_view_form
+msgid "Relatives"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_sibling
+msgid "Sibling"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_significant_other
+msgid "Significant Other"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_spouse
+msgid "Spouse"
+msgstr ""
diff --git a/hr_employee_relative/views/hr_employee.xml b/hr_employee_relative/views/hr_employee.xml
index 653f2aa260f..5c4be168d22 100644
--- a/hr_employee_relative/views/hr_employee.xml
+++ b/hr_employee_relative/views/hr_employee.xml
@@ -9,9 +9,15 @@
         <field name="model">hr.employee</field>
         <field name="inherit_id" ref="hr.view_employee_form" />
         <field name="arch" type="xml">
-            <field name="spouse_complete_name" position="replace" />
-            <field name="spouse_birthdate" position="replace" />
-            <field name="children" position="replace" />
+            <field name="spouse_complete_name" position="attributes">
+                <attribute name="invisible">1</attribute>
+            </field>
+            <field name="spouse_birthdate" position="attributes">
+                <attribute name="invisible">1</attribute>
+            </field>
+            <field name="children" position="attributes">
+                <attribute name="invisible">1</attribute>
+            </field>
             <xpath expr="//notebook" position="inside">
                 <page string="Relatives" groups="hr.group_hr_user">
                     <field name="relative_ids" nolabel="1" />

From 59c1c37335428cdc6582639447213f651030d347 Mon Sep 17 00:00:00 2001
From: Maria Sparenberg <maria.sparenberg@gmx.net>
Date: Wed, 11 May 2022 10:49:45 +0000
Subject: [PATCH 10/30] Translated using Weblate (German)

Currently translated at 93.7% (30 of 32 strings)

Translation: hr-14.0/hr-14.0-hr_employee_relative
Translate-URL: https://translation.odoo-community.org/projects/hr-14-0/hr-14-0-hr_employee_relative/de/
---
 hr_employee_relative/i18n/de.po | 64 +++++++++++++++++----------------
 1 file changed, 33 insertions(+), 31 deletions(-)

diff --git a/hr_employee_relative/i18n/de.po b/hr_employee_relative/i18n/de.po
index de083c32b85..8ad2f4bf779 100644
--- a/hr_employee_relative/i18n/de.po
+++ b/hr_employee_relative/i18n/de.po
@@ -6,159 +6,161 @@ msgid ""
 msgstr ""
 "Project-Id-Version: Odoo Server 14.0\n"
 "Report-Msgid-Bugs-To: \n"
-"Last-Translator: Automatically generated\n"
+"PO-Revision-Date: 2022-05-11 13:05+0000\n"
+"Last-Translator: Maria Sparenberg <maria.sparenberg@gmx.net>\n"
 "Language-Team: none\n"
 "Language: de\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: \n"
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 4.3.2\n"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age
 msgid "Age"
-msgstr ""
+msgstr "Alter"
 
 #. module: hr_employee_relative
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_child
 msgid "Child"
-msgstr ""
+msgstr "Kind"
 
 #. module: hr_employee_relative
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_cousin
 msgid "Cousin"
-msgstr ""
+msgstr "Cousin(e)"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__create_uid
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__create_uid
 msgid "Created by"
-msgstr ""
+msgstr "Erstellt von"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__create_date
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__create_date
 msgid "Created on"
-msgstr ""
+msgstr "Erstellt am"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__date_of_birth
 msgid "Date of Birth"
-msgstr ""
+msgstr "Geburtsdatum"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee__display_name
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__display_name
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__display_name
 msgid "Display Name"
-msgstr ""
+msgstr "Anzeigename"
 
 #. module: hr_employee_relative
 #: model:ir.model,name:hr_employee_relative.model_hr_employee
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__employee_id
 msgid "Employee"
-msgstr ""
+msgstr "Mitarbeiter"
 
 #. module: hr_employee_relative
 #: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
 msgid "Employee Relatives"
-msgstr ""
+msgstr "Mitarbeiter-Verwandschaft"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields.selection,name:hr_employee_relative.selection__hr_employee_relative__gender__female
 msgid "Female"
-msgstr ""
+msgstr "Weiblich"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__gender
 msgid "Gender"
-msgstr ""
+msgstr "Geschlecht"
 
 #. module: hr_employee_relative
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_grandchild
 msgid "Grandchild"
-msgstr ""
+msgstr "Enkel(in)"
 
 #. module: hr_employee_relative
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_grandparent
 msgid "Grandparent"
-msgstr ""
+msgstr "Großeltern"
 
 #. module: hr_employee_relative
 #: model:ir.model,name:hr_employee_relative.model_hr_employee_relative
 msgid "HR Employee Relative"
-msgstr ""
+msgstr "HR Mitarbeiter-Verwandschaft"
 
 #. module: hr_employee_relative
 #: model:ir.model,name:hr_employee_relative.model_hr_employee_relative_relation
 msgid "HR Employee Relative Relation"
-msgstr ""
+msgstr "HR Mitarbeiter-Verwandschaft-Relation"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee__id
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__id
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__id
 msgid "ID"
-msgstr ""
+msgstr "ID"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__job
 msgid "Job"
-msgstr ""
+msgstr "Job"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee____last_update
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative____last_update
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation____last_update
 msgid "Last Modified on"
-msgstr ""
+msgstr "Zuletzt geändert am"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__write_uid
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__write_uid
 msgid "Last Updated by"
-msgstr ""
+msgstr "Zuletzt aktualisiert von"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__write_date
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__write_date
 msgid "Last Updated on"
-msgstr ""
+msgstr "Zuletzt aktualisiert am"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields.selection,name:hr_employee_relative.selection__hr_employee_relative__gender__male
 msgid "Male"
-msgstr ""
+msgstr "Männlich"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__name
 msgid "Name"
-msgstr ""
+msgstr "Name"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__notes
 msgid "Notes"
-msgstr ""
+msgstr "Notizen"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields.selection,name:hr_employee_relative.selection__hr_employee_relative__gender__other
 msgid "Other"
-msgstr ""
+msgstr "Anderes"
 
 #. module: hr_employee_relative
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_parent
 msgid "Parent"
-msgstr ""
+msgstr "Eltern"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__partner_id
 msgid "Partner"
-msgstr ""
+msgstr "Partner"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__phone_number
 msgid "Phone Number"
-msgstr ""
+msgstr "Telefon"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__relation_id
@@ -170,12 +172,12 @@ msgstr ""
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee__relative_ids
 #: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_view_form
 msgid "Relatives"
-msgstr ""
+msgstr "Verwandschaft"
 
 #. module: hr_employee_relative
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_sibling
 msgid "Sibling"
-msgstr ""
+msgstr "Geschwister"
 
 #. module: hr_employee_relative
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_significant_other
@@ -185,4 +187,4 @@ msgstr ""
 #. module: hr_employee_relative
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_spouse
 msgid "Spouse"
-msgstr ""
+msgstr "Ehepartner"

From 38d9b5479215b489eec0aca804c4f11060011bec Mon Sep 17 00:00:00 2001
From: Olga Marco <olga.marco@creublanca.es>
Date: Thu, 12 May 2022 12:49:31 +0200
Subject: [PATCH 11/30] [MIG] hr_employee_relative: Migration to 15.0

---
 hr_employee_relative/README.rst                        | 10 +++++-----
 hr_employee_relative/__manifest__.py                   |  2 +-
 hr_employee_relative/data/data_relative_relation.xml   |  4 +---
 hr_employee_relative/i18n/hr_employee_relative.pot     | 10 +---------
 hr_employee_relative/models/hr_employee_relative.py    |  5 ++---
 hr_employee_relative/static/description/index.html     |  6 +++---
 .../tests/test_hr_employee_relatives.py                |  2 +-
 hr_employee_relative/views/hr_employee_relative.xml    |  2 +-
 8 files changed, 15 insertions(+), 26 deletions(-)

diff --git a/hr_employee_relative/README.rst b/hr_employee_relative/README.rst
index 82f2528cfd6..e41cb29c568 100644
--- a/hr_employee_relative/README.rst
+++ b/hr_employee_relative/README.rst
@@ -14,13 +14,13 @@ HR Employee Relatives
     :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
     :alt: License: AGPL-3
 .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fhr-lightgray.png?logo=github
-    :target: https://github.com/OCA/hr/tree/14.0/hr_employee_relative
+    :target: https://github.com/OCA/hr/tree/15.0/hr_employee_relative
     :alt: OCA/hr
 .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
-    :target: https://translation.odoo-community.org/projects/hr-14-0/hr-14-0-hr_employee_relative
+    :target: https://translation.odoo-community.org/projects/hr-15-0/hr-15-0-hr_employee_relative
     :alt: Translate me on Weblate
 .. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
-    :target: https://runbot.odoo-community.org/runbot/116/14.0
+    :target: https://runbot.odoo-community.org/runbot/116/15.0
     :alt: Try me on Runbot
 
 |badge1| |badge2| |badge3| |badge4| |badge5| 
@@ -38,7 +38,7 @@ Bug Tracker
 Bugs are tracked on `GitHub Issues <https://github.com/OCA/hr/issues>`_.
 In case of trouble, please check there if your issue has already been reported.
 If you spotted it first, help us smashing it by providing a detailed and welcomed
-`feedback <https://github.com/OCA/hr/issues/new?body=module:%20hr_employee_relative%0Aversion:%2014.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
+`feedback <https://github.com/OCA/hr/issues/new?body=module:%20hr_employee_relative%0Aversion:%2015.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
 
 Do not contact contributors directly about support or help with technical issues.
 
@@ -74,6 +74,6 @@ OCA, or the Odoo Community Association, is a nonprofit organization whose
 mission is to support the collaborative development of Odoo features and
 promote its widespread use.
 
-This module is part of the `OCA/hr <https://github.com/OCA/hr/tree/14.0/hr_employee_relative>`_ project on GitHub.
+This module is part of the `OCA/hr <https://github.com/OCA/hr/tree/15.0/hr_employee_relative>`_ project on GitHub.
 
 You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
diff --git a/hr_employee_relative/__manifest__.py b/hr_employee_relative/__manifest__.py
index 77c2925bf61..cde5adef77b 100644
--- a/hr_employee_relative/__manifest__.py
+++ b/hr_employee_relative/__manifest__.py
@@ -4,7 +4,7 @@
 
 {
     "name": "HR Employee Relatives",
-    "version": "14.0.1.0.0",
+    "version": "15.0.1.0.0",
     "category": "Human Resources",
     "website": "https://github.com/OCA/hr",
     "author": "CorporateHub, Odoo Community Association (OCA)",
diff --git a/hr_employee_relative/data/data_relative_relation.xml b/hr_employee_relative/data/data_relative_relation.xml
index c1f805fb727..ef84f60357c 100644
--- a/hr_employee_relative/data/data_relative_relation.xml
+++ b/hr_employee_relative/data/data_relative_relation.xml
@@ -1,6 +1,5 @@
 <?xml version="1.0" encoding="utf-8" ?>
-<odoo>
-    <data noupdate="1">
+<odoo noupdate="1">
         <!--
           Copyright (C) 2018 Brainbean Apps (https://brainbeanapps.com)
           License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
@@ -30,5 +29,4 @@
         <record model="hr.employee.relative.relation" id="relation_grandchild">
             <field name="name">Grandchild</field>
         </record>
-    </data>
 </odoo>
diff --git a/hr_employee_relative/i18n/hr_employee_relative.pot b/hr_employee_relative/i18n/hr_employee_relative.pot
index 72a2be11e24..8832ccc5381 100644
--- a/hr_employee_relative/i18n/hr_employee_relative.pot
+++ b/hr_employee_relative/i18n/hr_employee_relative.pot
@@ -4,7 +4,7 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: Odoo Server 14.0\n"
+"Project-Id-Version: Odoo Server 15.0\n"
 "Report-Msgid-Bugs-To: \n"
 "Last-Translator: \n"
 "Language-Team: \n"
@@ -46,7 +46,6 @@ msgid "Date of Birth"
 msgstr ""
 
 #. module: hr_employee_relative
-#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee__display_name
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__display_name
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__display_name
 msgid "Display Name"
@@ -58,11 +57,6 @@ msgstr ""
 msgid "Employee"
 msgstr ""
 
-#. module: hr_employee_relative
-#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
-msgid "Employee Relatives"
-msgstr ""
-
 #. module: hr_employee_relative
 #: model:ir.model.fields.selection,name:hr_employee_relative.selection__hr_employee_relative__gender__female
 msgid "Female"
@@ -94,7 +88,6 @@ msgid "HR Employee Relative Relation"
 msgstr ""
 
 #. module: hr_employee_relative
-#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee__id
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__id
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__id
 msgid "ID"
@@ -106,7 +99,6 @@ msgid "Job"
 msgstr ""
 
 #. module: hr_employee_relative
-#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee____last_update
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative____last_update
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation____last_update
 msgid "Last Modified on"
diff --git a/hr_employee_relative/models/hr_employee_relative.py b/hr_employee_relative/models/hr_employee_relative.py
index 925f96bf48d..d3ffca81e81 100644
--- a/hr_employee_relative/models/hr_employee_relative.py
+++ b/hr_employee_relative/models/hr_employee_relative.py
@@ -16,14 +16,13 @@ class HrEmployeeRelative(models.Model):
     relation_id = fields.Many2one(
         "hr.employee.relative.relation", string="Relation", required=True
     )
-    name = fields.Char(string="Name", required=True)
+    name = fields.Char(required=True)
     partner_id = fields.Many2one(
         "res.partner",
         string="Partner",
         domain=["&", ("is_company", "=", False), ("type", "=", "contact")],
     )
     gender = fields.Selection(
-        string="Gender",
         selection=[("male", "Male"), ("female", "Female"), ("other", "Other")],
     )
     date_of_birth = fields.Date(string="Date of Birth")
@@ -32,7 +31,7 @@ class HrEmployeeRelative(models.Model):
     job = fields.Char()
     phone_number = fields.Char()
 
-    notes = fields.Text(string="Notes")
+    notes = fields.Text()
 
     @api.depends("date_of_birth")
     def _compute_age(self):
diff --git a/hr_employee_relative/static/description/index.html b/hr_employee_relative/static/description/index.html
index 88a2375a1a9..ce29a85eff0 100644
--- a/hr_employee_relative/static/description/index.html
+++ b/hr_employee_relative/static/description/index.html
@@ -367,7 +367,7 @@ <h1 class="title">HR Employee Relatives</h1>
 !! This file is generated by oca-gen-addon-readme !!
 !! changes will be overwritten.                   !!
 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
-<p><a class="reference external" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external" href="https://github.com/OCA/hr/tree/14.0/hr_employee_relative"><img alt="OCA/hr" src="https://img.shields.io/badge/github-OCA%2Fhr-lightgray.png?logo=github" /></a> <a class="reference external" href="https://translation.odoo-community.org/projects/hr-14-0/hr-14-0-hr_employee_relative"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external" href="https://runbot.odoo-community.org/runbot/116/14.0"><img alt="Try me on Runbot" src="https://img.shields.io/badge/runbot-Try%20me-875A7B.png" /></a></p>
+<p><a class="reference external" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external" href="https://github.com/OCA/hr/tree/15.0/hr_employee_relative"><img alt="OCA/hr" src="https://img.shields.io/badge/github-OCA%2Fhr-lightgray.png?logo=github" /></a> <a class="reference external" href="https://translation.odoo-community.org/projects/hr-15-0/hr-15-0-hr_employee_relative"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external" href="https://runbot.odoo-community.org/runbot/116/15.0"><img alt="Try me on Runbot" src="https://img.shields.io/badge/runbot-Try%20me-875A7B.png" /></a></p>
 <p>This module allows storing information about employee’s family.</p>
 <p><strong>Table of contents</strong></p>
 <div class="contents local topic" id="contents">
@@ -386,7 +386,7 @@ <h1><a class="toc-backref" href="#id1">Bug Tracker</a></h1>
 <p>Bugs are tracked on <a class="reference external" href="https://github.com/OCA/hr/issues">GitHub Issues</a>.
 In case of trouble, please check there if your issue has already been reported.
 If you spotted it first, help us smashing it by providing a detailed and welcomed
-<a class="reference external" href="https://github.com/OCA/hr/issues/new?body=module:%20hr_employee_relative%0Aversion:%2014.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p>
+<a class="reference external" href="https://github.com/OCA/hr/issues/new?body=module:%20hr_employee_relative%0Aversion:%2015.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p>
 <p>Do not contact contributors directly about support or help with technical issues.</p>
 </div>
 <div class="section" id="credits">
@@ -415,7 +415,7 @@ <h2><a class="toc-backref" href="#id5">Maintainers</a></h2>
 <p>OCA, or the Odoo Community Association, is a nonprofit organization whose
 mission is to support the collaborative development of Odoo features and
 promote its widespread use.</p>
-<p>This module is part of the <a class="reference external" href="https://github.com/OCA/hr/tree/14.0/hr_employee_relative">OCA/hr</a> project on GitHub.</p>
+<p>This module is part of the <a class="reference external" href="https://github.com/OCA/hr/tree/15.0/hr_employee_relative">OCA/hr</a> project on GitHub.</p>
 <p>You are welcome to contribute. To learn how please visit <a class="reference external" href="https://odoo-community.org/page/Contribute">https://odoo-community.org/page/Contribute</a>.</p>
 </div>
 </div>
diff --git a/hr_employee_relative/tests/test_hr_employee_relatives.py b/hr_employee_relative/tests/test_hr_employee_relatives.py
index a000f4296cb..421dc53de6a 100644
--- a/hr_employee_relative/tests/test_hr_employee_relatives.py
+++ b/hr_employee_relative/tests/test_hr_employee_relatives.py
@@ -43,7 +43,7 @@ def test_age_calculation(self):
             "active_model": "hr.employee.relative",
         }
         self.assertEqual(relative.name, "Relative")
-        with Form(self.EmployeeRelative.with_context(ctx)) as f:
+        with Form(self.EmployeeRelative.with_context(**ctx)) as f:
             f.partner_id = self.env.ref("base.res_partner_2")
             f.relation_id = self.env.ref(_ns + ".relation_sibling")
         relative = f.save()
diff --git a/hr_employee_relative/views/hr_employee_relative.xml b/hr_employee_relative/views/hr_employee_relative.xml
index dfb73092f46..ca7fe36d425 100644
--- a/hr_employee_relative/views/hr_employee_relative.xml
+++ b/hr_employee_relative/views/hr_employee_relative.xml
@@ -8,7 +8,7 @@
         <field name="name">hr.employee.relative.view.tree</field>
         <field name="model">hr.employee.relative</field>
         <field name="arch" type="xml">
-            <tree string="Employee Relatives" editable="bottom">
+            <tree editable="bottom">
                 <field name="relation_id" />
                 <field name="name" />
                 <field name="partner_id" />

From 19fd779659fd8287ada6ec901c52ccc1966dd17d Mon Sep 17 00:00:00 2001
From: BT-anieto <alberto.nieto@braintec.com>
Date: Tue, 27 Dec 2022 10:30:02 +0100
Subject: [PATCH 12/30] [16.0][MIG] hr_employee_relative: Migration to 16.0.

---
 hr_employee_relative/__manifest__.py            |  2 +-
 hr_employee_relative/models/hr_employee.py      |  1 -
 .../models/hr_employee_relative.py              |  9 +++------
 hr_employee_relative/readme/CONTRIBUTORS.rst    |  2 ++
 .../tests/test_hr_employee_relatives.py         | 17 +++++------------
 .../views/hr_employee_relative.xml              |  2 +-
 6 files changed, 12 insertions(+), 21 deletions(-)

diff --git a/hr_employee_relative/__manifest__.py b/hr_employee_relative/__manifest__.py
index cde5adef77b..d6c1f3f27eb 100644
--- a/hr_employee_relative/__manifest__.py
+++ b/hr_employee_relative/__manifest__.py
@@ -4,7 +4,7 @@
 
 {
     "name": "HR Employee Relatives",
-    "version": "15.0.1.0.0",
+    "version": "16.0.1.0.0",
     "category": "Human Resources",
     "website": "https://github.com/OCA/hr",
     "author": "CorporateHub, Odoo Community Association (OCA)",
diff --git a/hr_employee_relative/models/hr_employee.py b/hr_employee_relative/models/hr_employee.py
index 9d8707e6e3a..479686a5b9b 100644
--- a/hr_employee_relative/models/hr_employee.py
+++ b/hr_employee_relative/models/hr_employee.py
@@ -8,7 +8,6 @@ class HrEmployee(models.Model):
     _inherit = "hr.employee"
 
     relative_ids = fields.One2many(
-        string="Relatives",
         comodel_name="hr.employee.relative",
         inverse_name="employee_id",
     )
diff --git a/hr_employee_relative/models/hr_employee_relative.py b/hr_employee_relative/models/hr_employee_relative.py
index d3ffca81e81..21ed4c63e73 100644
--- a/hr_employee_relative/models/hr_employee_relative.py
+++ b/hr_employee_relative/models/hr_employee_relative.py
@@ -12,20 +12,17 @@ class HrEmployeeRelative(models.Model):
     _name = "hr.employee.relative"
     _description = "HR Employee Relative"
 
-    employee_id = fields.Many2one(string="Employee", comodel_name="hr.employee")
-    relation_id = fields.Many2one(
-        "hr.employee.relative.relation", string="Relation", required=True
-    )
+    employee_id = fields.Many2one(comodel_name="hr.employee")
+    relation_id = fields.Many2one("hr.employee.relative.relation", required=True)
     name = fields.Char(required=True)
     partner_id = fields.Many2one(
         "res.partner",
-        string="Partner",
         domain=["&", ("is_company", "=", False), ("type", "=", "contact")],
     )
     gender = fields.Selection(
         selection=[("male", "Male"), ("female", "Female"), ("other", "Other")],
     )
-    date_of_birth = fields.Date(string="Date of Birth")
+    date_of_birth = fields.Date()
     age = fields.Float(compute="_compute_age")
 
     job = fields.Char()
diff --git a/hr_employee_relative/readme/CONTRIBUTORS.rst b/hr_employee_relative/readme/CONTRIBUTORS.rst
index a1838cb4938..79c3d4dc05a 100644
--- a/hr_employee_relative/readme/CONTRIBUTORS.rst
+++ b/hr_employee_relative/readme/CONTRIBUTORS.rst
@@ -5,3 +5,5 @@
 * Saran Lim. <saranl@ecosoft.co.th>
 
 * Nattapong W. <aphon61bank@gmail.com>
+
+* Alberto Nieto de Pablos <alberto.nieto@braintec.com> (https://braintec.com)
diff --git a/hr_employee_relative/tests/test_hr_employee_relatives.py b/hr_employee_relative/tests/test_hr_employee_relatives.py
index 421dc53de6a..3d5d02fc34f 100644
--- a/hr_employee_relative/tests/test_hr_employee_relatives.py
+++ b/hr_employee_relative/tests/test_hr_employee_relatives.py
@@ -7,14 +7,13 @@
 
 from odoo.tests import Form, common
 
-_ns = "hr_employee_relative"
-
 
 class TestHrEmployeeRelatives(common.TransactionCase):
     def setUp(self):
         super().setUp()
         self.Employee = self.env["hr.employee"]
         self.EmployeeRelative = self.env["hr.employee.relative"]
+        self.relation_sibling = self.env.ref("hr_employee_relative.relation_sibling")
 
     def test_age_calculation(self):
         employee = self.Employee.create(
@@ -25,7 +24,7 @@ def test_age_calculation(self):
                         0,
                         0,
                         {
-                            "relation_id": self.env.ref(_ns + ".relation_sibling").id,
+                            "relation_id": self.relation_sibling.id,
                             "partner_id": self.env.ref("base.res_partner_1").id,
                             "name": "Relative",
                             "date_of_birth": datetime.now() + relativedelta(years=-42),
@@ -36,15 +35,9 @@ def test_age_calculation(self):
         )
         relative = self.EmployeeRelative.browse(employee.relative_ids[0].id)
         self.assertEqual(int(relative.age), 42)
-        # onchange partner
-        ctx = {
-            "active_ids": [relative.id],
-            "active_id": relative.id,
-            "active_model": "hr.employee.relative",
-        }
         self.assertEqual(relative.name, "Relative")
-        with Form(self.EmployeeRelative.with_context(**ctx)) as f:
+        # onchange partner
+        with Form(relative) as f:
             f.partner_id = self.env.ref("base.res_partner_2")
-            f.relation_id = self.env.ref(_ns + ".relation_sibling")
-        relative = f.save()
+            f.relation_id = self.relation_sibling
         self.assertEqual(relative.name, relative.partner_id.display_name)
diff --git a/hr_employee_relative/views/hr_employee_relative.xml b/hr_employee_relative/views/hr_employee_relative.xml
index ca7fe36d425..b1ddd11673e 100644
--- a/hr_employee_relative/views/hr_employee_relative.xml
+++ b/hr_employee_relative/views/hr_employee_relative.xml
@@ -14,7 +14,7 @@
                 <field name="partner_id" />
                 <field name="gender" />
                 <field name="date_of_birth" />
-                <field name="age" readonly="1" />
+                <field name="age" />
                 <field name="phone_number" />
                 <field name="job" />
                 <field name="notes" />

From 9a2e53b68891c234a8ac01ce12578041072eb757 Mon Sep 17 00:00:00 2001
From: oca-ci <oca-ci@odoo-community.org>
Date: Mon, 20 Feb 2023 11:31:44 +0000
Subject: [PATCH 13/30] [UPD] Update hr_employee_relative.pot

---
 hr_employee_relative/i18n/hr_employee_relative.pot | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/hr_employee_relative/i18n/hr_employee_relative.pot b/hr_employee_relative/i18n/hr_employee_relative.pot
index 8832ccc5381..c9e54bb0f8a 100644
--- a/hr_employee_relative/i18n/hr_employee_relative.pot
+++ b/hr_employee_relative/i18n/hr_employee_relative.pot
@@ -4,7 +4,7 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: Odoo Server 15.0\n"
+"Project-Id-Version: Odoo Server 16.0\n"
 "Report-Msgid-Bugs-To: \n"
 "Last-Translator: \n"
 "Language-Team: \n"
@@ -42,7 +42,7 @@ msgstr ""
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__date_of_birth
-msgid "Date of Birth"
+msgid "Date Of Birth"
 msgstr ""
 
 #. module: hr_employee_relative
@@ -159,6 +159,10 @@ msgstr ""
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee__relative_ids
+msgid "Relative"
+msgstr ""
+
+#. module: hr_employee_relative
 #: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_view_form
 msgid "Relatives"
 msgstr ""

From af61bd02b1d5973f025cc0c693b48f8bfc4b2737 Mon Sep 17 00:00:00 2001
From: OCA-git-bot <oca-git-bot@odoo-community.org>
Date: Mon, 20 Feb 2023 11:33:53 +0000
Subject: [PATCH 14/30] [UPD] README.rst

---
 hr_employee_relative/README.rst                    | 12 +++++++-----
 hr_employee_relative/static/description/index.html |  7 ++++---
 2 files changed, 11 insertions(+), 8 deletions(-)

diff --git a/hr_employee_relative/README.rst b/hr_employee_relative/README.rst
index e41cb29c568..a46825207c0 100644
--- a/hr_employee_relative/README.rst
+++ b/hr_employee_relative/README.rst
@@ -14,13 +14,13 @@ HR Employee Relatives
     :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
     :alt: License: AGPL-3
 .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fhr-lightgray.png?logo=github
-    :target: https://github.com/OCA/hr/tree/15.0/hr_employee_relative
+    :target: https://github.com/OCA/hr/tree/16.0/hr_employee_relative
     :alt: OCA/hr
 .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
-    :target: https://translation.odoo-community.org/projects/hr-15-0/hr-15-0-hr_employee_relative
+    :target: https://translation.odoo-community.org/projects/hr-16-0/hr-16-0-hr_employee_relative
     :alt: Translate me on Weblate
 .. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
-    :target: https://runbot.odoo-community.org/runbot/116/15.0
+    :target: https://runbot.odoo-community.org/runbot/116/16.0
     :alt: Try me on Runbot
 
 |badge1| |badge2| |badge3| |badge4| |badge5| 
@@ -38,7 +38,7 @@ Bug Tracker
 Bugs are tracked on `GitHub Issues <https://github.com/OCA/hr/issues>`_.
 In case of trouble, please check there if your issue has already been reported.
 If you spotted it first, help us smashing it by providing a detailed and welcomed
-`feedback <https://github.com/OCA/hr/issues/new?body=module:%20hr_employee_relative%0Aversion:%2015.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
+`feedback <https://github.com/OCA/hr/issues/new?body=module:%20hr_employee_relative%0Aversion:%2016.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
 
 Do not contact contributors directly about support or help with technical issues.
 
@@ -61,6 +61,8 @@ Contributors
 
 * Nattapong W. <aphon61bank@gmail.com>
 
+* Alberto Nieto de Pablos <alberto.nieto@braintec.com> (https://braintec.com)
+
 Maintainers
 ~~~~~~~~~~~
 
@@ -74,6 +76,6 @@ OCA, or the Odoo Community Association, is a nonprofit organization whose
 mission is to support the collaborative development of Odoo features and
 promote its widespread use.
 
-This module is part of the `OCA/hr <https://github.com/OCA/hr/tree/15.0/hr_employee_relative>`_ project on GitHub.
+This module is part of the `OCA/hr <https://github.com/OCA/hr/tree/16.0/hr_employee_relative>`_ project on GitHub.
 
 You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
diff --git a/hr_employee_relative/static/description/index.html b/hr_employee_relative/static/description/index.html
index ce29a85eff0..4db6358287b 100644
--- a/hr_employee_relative/static/description/index.html
+++ b/hr_employee_relative/static/description/index.html
@@ -367,7 +367,7 @@ <h1 class="title">HR Employee Relatives</h1>
 !! This file is generated by oca-gen-addon-readme !!
 !! changes will be overwritten.                   !!
 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
-<p><a class="reference external" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external" href="https://github.com/OCA/hr/tree/15.0/hr_employee_relative"><img alt="OCA/hr" src="https://img.shields.io/badge/github-OCA%2Fhr-lightgray.png?logo=github" /></a> <a class="reference external" href="https://translation.odoo-community.org/projects/hr-15-0/hr-15-0-hr_employee_relative"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external" href="https://runbot.odoo-community.org/runbot/116/15.0"><img alt="Try me on Runbot" src="https://img.shields.io/badge/runbot-Try%20me-875A7B.png" /></a></p>
+<p><a class="reference external" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external" href="https://github.com/OCA/hr/tree/16.0/hr_employee_relative"><img alt="OCA/hr" src="https://img.shields.io/badge/github-OCA%2Fhr-lightgray.png?logo=github" /></a> <a class="reference external" href="https://translation.odoo-community.org/projects/hr-16-0/hr-16-0-hr_employee_relative"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external" href="https://runbot.odoo-community.org/runbot/116/16.0"><img alt="Try me on Runbot" src="https://img.shields.io/badge/runbot-Try%20me-875A7B.png" /></a></p>
 <p>This module allows storing information about employee’s family.</p>
 <p><strong>Table of contents</strong></p>
 <div class="contents local topic" id="contents">
@@ -386,7 +386,7 @@ <h1><a class="toc-backref" href="#id1">Bug Tracker</a></h1>
 <p>Bugs are tracked on <a class="reference external" href="https://github.com/OCA/hr/issues">GitHub Issues</a>.
 In case of trouble, please check there if your issue has already been reported.
 If you spotted it first, help us smashing it by providing a detailed and welcomed
-<a class="reference external" href="https://github.com/OCA/hr/issues/new?body=module:%20hr_employee_relative%0Aversion:%2015.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p>
+<a class="reference external" href="https://github.com/OCA/hr/issues/new?body=module:%20hr_employee_relative%0Aversion:%2016.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p>
 <p>Do not contact contributors directly about support or help with technical issues.</p>
 </div>
 <div class="section" id="credits">
@@ -406,6 +406,7 @@ <h2><a class="toc-backref" href="#id4">Contributors</a></h2>
 </li>
 <li>Saran Lim. &lt;<a class="reference external" href="mailto:saranl&#64;ecosoft.co.th">saranl&#64;ecosoft.co.th</a>&gt;</li>
 <li>Nattapong W. &lt;<a class="reference external" href="mailto:aphon61bank&#64;gmail.com">aphon61bank&#64;gmail.com</a>&gt;</li>
+<li>Alberto Nieto de Pablos &lt;<a class="reference external" href="mailto:alberto.nieto&#64;braintec.com">alberto.nieto&#64;braintec.com</a>&gt; (<a class="reference external" href="https://braintec.com">https://braintec.com</a>)</li>
 </ul>
 </div>
 <div class="section" id="maintainers">
@@ -415,7 +416,7 @@ <h2><a class="toc-backref" href="#id5">Maintainers</a></h2>
 <p>OCA, or the Odoo Community Association, is a nonprofit organization whose
 mission is to support the collaborative development of Odoo features and
 promote its widespread use.</p>
-<p>This module is part of the <a class="reference external" href="https://github.com/OCA/hr/tree/15.0/hr_employee_relative">OCA/hr</a> project on GitHub.</p>
+<p>This module is part of the <a class="reference external" href="https://github.com/OCA/hr/tree/16.0/hr_employee_relative">OCA/hr</a> project on GitHub.</p>
 <p>You are welcome to contribute. To learn how please visit <a class="reference external" href="https://odoo-community.org/page/Contribute">https://odoo-community.org/page/Contribute</a>.</p>
 </div>
 </div>

From 36ddde13875e263a18e85dc4c2f3d4b3670339ad Mon Sep 17 00:00:00 2001
From: Weblate <noreply@weblate.org>
Date: Mon, 20 Feb 2023 12:10:34 +0000
Subject: [PATCH 15/30] Update translation files

Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: hr-16.0/hr-16.0-hr_employee_relative
Translate-URL: https://translation.odoo-community.org/projects/hr-16-0/hr-16-0-hr_employee_relative/
---
 hr_employee_relative/i18n/de.po    | 22 ++++++++++++----------
 hr_employee_relative/i18n/es.po    | 19 ++++++++++++-------
 hr_employee_relative/i18n/fr.po    | 19 ++++++++++++-------
 hr_employee_relative/i18n/hr.po    | 19 ++++++++++++-------
 hr_employee_relative/i18n/pt_BR.po | 22 ++++++++++++----------
 5 files changed, 60 insertions(+), 41 deletions(-)

diff --git a/hr_employee_relative/i18n/de.po b/hr_employee_relative/i18n/de.po
index 8ad2f4bf779..f758b8e11af 100644
--- a/hr_employee_relative/i18n/de.po
+++ b/hr_employee_relative/i18n/de.po
@@ -45,11 +45,10 @@ msgstr "Erstellt am"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__date_of_birth
-msgid "Date of Birth"
-msgstr "Geburtsdatum"
+msgid "Date Of Birth"
+msgstr ""
 
 #. module: hr_employee_relative
-#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee__display_name
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__display_name
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__display_name
 msgid "Display Name"
@@ -61,11 +60,6 @@ msgstr "Anzeigename"
 msgid "Employee"
 msgstr "Mitarbeiter"
 
-#. module: hr_employee_relative
-#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
-msgid "Employee Relatives"
-msgstr "Mitarbeiter-Verwandschaft"
-
 #. module: hr_employee_relative
 #: model:ir.model.fields.selection,name:hr_employee_relative.selection__hr_employee_relative__gender__female
 msgid "Female"
@@ -97,7 +91,6 @@ msgid "HR Employee Relative Relation"
 msgstr "HR Mitarbeiter-Verwandschaft-Relation"
 
 #. module: hr_employee_relative
-#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee__id
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__id
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__id
 msgid "ID"
@@ -109,7 +102,6 @@ msgid "Job"
 msgstr "Job"
 
 #. module: hr_employee_relative
-#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee____last_update
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative____last_update
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation____last_update
 msgid "Last Modified on"
@@ -170,6 +162,10 @@ msgstr ""
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee__relative_ids
+msgid "Relative"
+msgstr ""
+
+#. module: hr_employee_relative
 #: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_view_form
 msgid "Relatives"
 msgstr "Verwandschaft"
@@ -188,3 +184,9 @@ msgstr ""
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_spouse
 msgid "Spouse"
 msgstr "Ehepartner"
+
+#~ msgid "Date of Birth"
+#~ msgstr "Geburtsdatum"
+
+#~ msgid "Employee Relatives"
+#~ msgstr "Mitarbeiter-Verwandschaft"
diff --git a/hr_employee_relative/i18n/es.po b/hr_employee_relative/i18n/es.po
index 3d425fb51e8..8bd3e0a10e2 100644
--- a/hr_employee_relative/i18n/es.po
+++ b/hr_employee_relative/i18n/es.po
@@ -45,8 +45,8 @@ msgstr "Creado en"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__date_of_birth
-msgid "Date of Birth"
-msgstr "Fecha de nacimiento"
+msgid "Date Of Birth"
+msgstr ""
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__display_name
@@ -60,11 +60,6 @@ msgstr "Nombre a mostrar"
 msgid "Employee"
 msgstr "Empleado"
 
-#. module: hr_employee_relative
-#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
-msgid "Employee Relatives"
-msgstr "Parientes de Empleados"
-
 #. module: hr_employee_relative
 #: model:ir.model.fields.selection,name:hr_employee_relative.selection__hr_employee_relative__gender__female
 msgid "Female"
@@ -167,6 +162,10 @@ msgstr "Parentesco"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee__relative_ids
+msgid "Relative"
+msgstr ""
+
+#. module: hr_employee_relative
 #: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_view_form
 msgid "Relatives"
 msgstr "Parientes"
@@ -185,3 +184,9 @@ msgstr "Pareja"
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_spouse
 msgid "Spouse"
 msgstr "Cónyugue"
+
+#~ msgid "Date of Birth"
+#~ msgstr "Fecha de nacimiento"
+
+#~ msgid "Employee Relatives"
+#~ msgstr "Parientes de Empleados"
diff --git a/hr_employee_relative/i18n/fr.po b/hr_employee_relative/i18n/fr.po
index 52490769987..4a424138abb 100644
--- a/hr_employee_relative/i18n/fr.po
+++ b/hr_employee_relative/i18n/fr.po
@@ -45,8 +45,8 @@ msgstr "Créé le"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__date_of_birth
-msgid "Date of Birth"
-msgstr "Date de naissance"
+msgid "Date Of Birth"
+msgstr ""
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__display_name
@@ -60,11 +60,6 @@ msgstr "Nom affiché"
 msgid "Employee"
 msgstr "Employé(e)"
 
-#. module: hr_employee_relative
-#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
-msgid "Employee Relatives"
-msgstr "Proches"
-
 #. module: hr_employee_relative
 #: model:ir.model.fields.selection,name:hr_employee_relative.selection__hr_employee_relative__gender__female
 msgid "Female"
@@ -167,6 +162,10 @@ msgstr "Relation"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee__relative_ids
+msgid "Relative"
+msgstr ""
+
+#. module: hr_employee_relative
 #: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_view_form
 msgid "Relatives"
 msgstr "Proches"
@@ -185,3 +184,9 @@ msgstr "Autre"
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_spouse
 msgid "Spouse"
 msgstr "Époux / Épouse"
+
+#~ msgid "Date of Birth"
+#~ msgstr "Date de naissance"
+
+#~ msgid "Employee Relatives"
+#~ msgstr "Proches"
diff --git a/hr_employee_relative/i18n/hr.po b/hr_employee_relative/i18n/hr.po
index 858f7e7cc42..6f272179d3e 100644
--- a/hr_employee_relative/i18n/hr.po
+++ b/hr_employee_relative/i18n/hr.po
@@ -46,8 +46,8 @@ msgstr "Kreirano"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__date_of_birth
-msgid "Date of Birth"
-msgstr "Datum rođenja"
+msgid "Date Of Birth"
+msgstr ""
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__display_name
@@ -61,11 +61,6 @@ msgstr "Naziv"
 msgid "Employee"
 msgstr "Djelatnik"
 
-#. module: hr_employee_relative
-#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
-msgid "Employee Relatives"
-msgstr "Rodbina djelatnika"
-
 #. module: hr_employee_relative
 #: model:ir.model.fields.selection,name:hr_employee_relative.selection__hr_employee_relative__gender__female
 msgid "Female"
@@ -168,6 +163,10 @@ msgstr ""
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee__relative_ids
+msgid "Relative"
+msgstr ""
+
+#. module: hr_employee_relative
 #: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_view_form
 msgid "Relatives"
 msgstr ""
@@ -186,3 +185,9 @@ msgstr ""
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_spouse
 msgid "Spouse"
 msgstr ""
+
+#~ msgid "Date of Birth"
+#~ msgstr "Datum rođenja"
+
+#~ msgid "Employee Relatives"
+#~ msgstr "Rodbina djelatnika"
diff --git a/hr_employee_relative/i18n/pt_BR.po b/hr_employee_relative/i18n/pt_BR.po
index 380f0305b65..fbc99b81108 100644
--- a/hr_employee_relative/i18n/pt_BR.po
+++ b/hr_employee_relative/i18n/pt_BR.po
@@ -45,11 +45,10 @@ msgstr "Criado em"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__date_of_birth
-msgid "Date of Birth"
-msgstr "Data de Nascimento"
+msgid "Date Of Birth"
+msgstr ""
 
 #. module: hr_employee_relative
-#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee__display_name
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__display_name
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__display_name
 msgid "Display Name"
@@ -61,11 +60,6 @@ msgstr "Nome de Exibição"
 msgid "Employee"
 msgstr "Funcionário"
 
-#. module: hr_employee_relative
-#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
-msgid "Employee Relatives"
-msgstr "Parentes do Funcionário"
-
 #. module: hr_employee_relative
 #: model:ir.model.fields.selection,name:hr_employee_relative.selection__hr_employee_relative__gender__female
 msgid "Female"
@@ -97,7 +91,6 @@ msgid "HR Employee Relative Relation"
 msgstr "Relação de Parentesco de Funcionário"
 
 #. module: hr_employee_relative
-#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee__id
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__id
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__id
 msgid "ID"
@@ -109,7 +102,6 @@ msgid "Job"
 msgstr "Trabalho"
 
 #. module: hr_employee_relative
-#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee____last_update
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative____last_update
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation____last_update
 msgid "Last Modified on"
@@ -170,6 +162,10 @@ msgstr "Relação"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee__relative_ids
+msgid "Relative"
+msgstr ""
+
+#. module: hr_employee_relative
 #: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_view_form
 msgid "Relatives"
 msgstr "Parentes"
@@ -188,3 +184,9 @@ msgstr "Outro Significativo"
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_spouse
 msgid "Spouse"
 msgstr "Cônjuge"
+
+#~ msgid "Date of Birth"
+#~ msgstr "Data de Nascimento"
+
+#~ msgid "Employee Relatives"
+#~ msgstr "Parentes do Funcionário"

From f6c40259cb4816e19c692c962b3accca10d20cc0 Mon Sep 17 00:00:00 2001
From: mymage <stefano.consolaro@mymage.it>
Date: Wed, 17 May 2023 13:29:37 +0000
Subject: [PATCH 16/30] Added translation using Weblate (Italian)

---
 hr_employee_relative/i18n/it.po | 184 ++++++++++++++++++++++++++++++++
 1 file changed, 184 insertions(+)
 create mode 100644 hr_employee_relative/i18n/it.po

diff --git a/hr_employee_relative/i18n/it.po b/hr_employee_relative/i18n/it.po
new file mode 100644
index 00000000000..fa63837451b
--- /dev/null
+++ b/hr_employee_relative/i18n/it.po
@@ -0,0 +1,184 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# 	* hr_employee_relative
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 16.0\n"
+"Report-Msgid-Bugs-To: \n"
+"Last-Translator: Automatically generated\n"
+"Language-Team: none\n"
+"Language: it\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: \n"
+"Plural-Forms: nplurals=2; plural=n != 1;\n"
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age
+msgid "Age"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_child
+msgid "Child"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_cousin
+msgid "Cousin"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__create_uid
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__create_uid
+msgid "Created by"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__create_date
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__create_date
+msgid "Created on"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__date_of_birth
+msgid "Date Of Birth"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__display_name
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__display_name
+msgid "Display Name"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model,name:hr_employee_relative.model_hr_employee
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__employee_id
+msgid "Employee"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields.selection,name:hr_employee_relative.selection__hr_employee_relative__gender__female
+msgid "Female"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__gender
+msgid "Gender"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_grandchild
+msgid "Grandchild"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_grandparent
+msgid "Grandparent"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model,name:hr_employee_relative.model_hr_employee_relative
+msgid "HR Employee Relative"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model,name:hr_employee_relative.model_hr_employee_relative_relation
+msgid "HR Employee Relative Relation"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__id
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__id
+msgid "ID"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__job
+msgid "Job"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative____last_update
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation____last_update
+msgid "Last Modified on"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__write_uid
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__write_uid
+msgid "Last Updated by"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__write_date
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__write_date
+msgid "Last Updated on"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields.selection,name:hr_employee_relative.selection__hr_employee_relative__gender__male
+msgid "Male"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__name
+msgid "Name"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__notes
+msgid "Notes"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields.selection,name:hr_employee_relative.selection__hr_employee_relative__gender__other
+msgid "Other"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_parent
+msgid "Parent"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__partner_id
+msgid "Partner"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__phone_number
+msgid "Phone Number"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__relation_id
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__name
+msgid "Relation"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee__relative_ids
+msgid "Relative"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_view_form
+msgid "Relatives"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_sibling
+msgid "Sibling"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_significant_other
+msgid "Significant Other"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:hr.employee.relative.relation,name:hr_employee_relative.relation_spouse
+msgid "Spouse"
+msgstr ""

From 91cb85ecdf5fb69831e582d81689487621d8142d Mon Sep 17 00:00:00 2001
From: mymage <stefano.consolaro@mymage.it>
Date: Thu, 18 May 2023 06:55:28 +0000
Subject: [PATCH 17/30] Translated using Weblate (Italian)

Currently translated at 15.6% (5 of 32 strings)

Translation: hr-16.0/hr-16.0-hr_employee_relative
Translate-URL: https://translation.odoo-community.org/projects/hr-16-0/hr-16-0-hr_employee_relative/it/
---
 hr_employee_relative/i18n/it.po | 68 +++++++++++++++++----------------
 1 file changed, 35 insertions(+), 33 deletions(-)

diff --git a/hr_employee_relative/i18n/it.po b/hr_employee_relative/i18n/it.po
index fa63837451b..a92cd178143 100644
--- a/hr_employee_relative/i18n/it.po
+++ b/hr_employee_relative/i18n/it.po
@@ -6,179 +6,181 @@ msgid ""
 msgstr ""
 "Project-Id-Version: Odoo Server 16.0\n"
 "Report-Msgid-Bugs-To: \n"
-"Last-Translator: Automatically generated\n"
+"PO-Revision-Date: 2023-05-30 09:10+0000\n"
+"Last-Translator: mymage <stefano.consolaro@mymage.it>\n"
 "Language-Team: none\n"
 "Language: it\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: \n"
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
+"X-Generator: Weblate 4.17\n"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age
 msgid "Age"
-msgstr ""
+msgstr "Età"
 
 #. module: hr_employee_relative
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_child
 msgid "Child"
-msgstr ""
+msgstr "Figlio"
 
 #. module: hr_employee_relative
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_cousin
 msgid "Cousin"
-msgstr ""
+msgstr "Cugino"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__create_uid
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__create_uid
 msgid "Created by"
-msgstr ""
+msgstr "Creato da"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__create_date
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__create_date
 msgid "Created on"
-msgstr ""
+msgstr "Creato il"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__date_of_birth
 msgid "Date Of Birth"
-msgstr ""
+msgstr "Data di nascita"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__display_name
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__display_name
 msgid "Display Name"
-msgstr ""
+msgstr "Nome visualizzato"
 
 #. module: hr_employee_relative
 #: model:ir.model,name:hr_employee_relative.model_hr_employee
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__employee_id
 msgid "Employee"
-msgstr ""
+msgstr "Dipendente"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields.selection,name:hr_employee_relative.selection__hr_employee_relative__gender__female
 msgid "Female"
-msgstr ""
+msgstr "Femmina"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__gender
 msgid "Gender"
-msgstr ""
+msgstr "Genere"
 
 #. module: hr_employee_relative
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_grandchild
 msgid "Grandchild"
-msgstr ""
+msgstr "Nipote"
 
 #. module: hr_employee_relative
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_grandparent
 msgid "Grandparent"
-msgstr ""
+msgstr "Nonno"
 
 #. module: hr_employee_relative
 #: model:ir.model,name:hr_employee_relative.model_hr_employee_relative
 msgid "HR Employee Relative"
-msgstr ""
+msgstr "Parente dipendente RU"
 
 #. module: hr_employee_relative
 #: model:ir.model,name:hr_employee_relative.model_hr_employee_relative_relation
 msgid "HR Employee Relative Relation"
-msgstr ""
+msgstr "Relazione parente dipendente RU"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__id
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__id
 msgid "ID"
-msgstr ""
+msgstr "ID"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__job
 msgid "Job"
-msgstr ""
+msgstr "Lavoro"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative____last_update
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation____last_update
 msgid "Last Modified on"
-msgstr ""
+msgstr "Ultima modifica il"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__write_uid
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__write_uid
 msgid "Last Updated by"
-msgstr ""
+msgstr "Ultimo aggiornamento di"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__write_date
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__write_date
 msgid "Last Updated on"
-msgstr ""
+msgstr "Ultimo aggiornamento il"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields.selection,name:hr_employee_relative.selection__hr_employee_relative__gender__male
 msgid "Male"
-msgstr ""
+msgstr "Maschio"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__name
 msgid "Name"
-msgstr ""
+msgstr "Nome"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__notes
 msgid "Notes"
-msgstr ""
+msgstr "Note"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields.selection,name:hr_employee_relative.selection__hr_employee_relative__gender__other
 msgid "Other"
-msgstr ""
+msgstr "Altro"
 
 #. module: hr_employee_relative
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_parent
 msgid "Parent"
-msgstr ""
+msgstr "Padre"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__partner_id
 msgid "Partner"
-msgstr ""
+msgstr "Partner"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__phone_number
 msgid "Phone Number"
-msgstr ""
+msgstr "Numero di telefono"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__relation_id
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__name
 msgid "Relation"
-msgstr ""
+msgstr "Relazione"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee__relative_ids
 msgid "Relative"
-msgstr ""
+msgstr "Parente"
 
 #. module: hr_employee_relative
 #: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_view_form
 msgid "Relatives"
-msgstr ""
+msgstr "Parenti"
 
 #. module: hr_employee_relative
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_sibling
 msgid "Sibling"
-msgstr ""
+msgstr "Fratello"
 
 #. module: hr_employee_relative
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_significant_other
 msgid "Significant Other"
-msgstr ""
+msgstr "Altri importanti"
 
 #. module: hr_employee_relative
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_spouse
 msgid "Spouse"
-msgstr ""
+msgstr "Moglie"

From f2cf67b0820954fd79f4c3629c4636763577a07d Mon Sep 17 00:00:00 2001
From: Ivorra78 <informatica@totmaterial.es>
Date: Thu, 3 Aug 2023 19:01:18 +0000
Subject: [PATCH 18/30] Translated using Weblate (Spanish)

Currently translated at 100.0% (32 of 32 strings)

Translation: hr-16.0/hr-16.0-hr_employee_relative
Translate-URL: https://translation.odoo-community.org/projects/hr-16-0/hr-16-0-hr_employee_relative/es/
---
 hr_employee_relative/i18n/es.po | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/hr_employee_relative/i18n/es.po b/hr_employee_relative/i18n/es.po
index 8bd3e0a10e2..eafc80c8b05 100644
--- a/hr_employee_relative/i18n/es.po
+++ b/hr_employee_relative/i18n/es.po
@@ -6,15 +6,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: Odoo Server 12.0\n"
 "Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2019-12-03 16:06+0000\n"
-"Last-Translator: Pedro S. Lopez <pedroslopez@me.com>\n"
+"PO-Revision-Date: 2023-08-03 21:10+0000\n"
+"Last-Translator: Ivorra78 <informatica@totmaterial.es>\n"
 "Language-Team: none\n"
 "Language: es\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: \n"
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 3.9.1\n"
+"X-Generator: Weblate 4.17\n"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age
@@ -46,7 +46,7 @@ msgstr "Creado en"
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__date_of_birth
 msgid "Date Of Birth"
-msgstr ""
+msgstr "Fecha de nacimiento"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__display_name
@@ -163,7 +163,7 @@ msgstr "Parentesco"
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee__relative_ids
 msgid "Relative"
-msgstr ""
+msgstr "Relativo"
 
 #. module: hr_employee_relative
 #: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_view_form

From 78f8d7b8f5a1e30a2145508dc1e932f7c71b0d8b Mon Sep 17 00:00:00 2001
From: OCA-git-bot <oca-git-bot@odoo-community.org>
Date: Sun, 3 Sep 2023 13:09:14 +0000
Subject: [PATCH 19/30] [UPD] README.rst

---
 hr_employee_relative/README.rst               | 15 ++++----
 .../static/description/index.html             | 34 ++++++++++---------
 2 files changed, 27 insertions(+), 22 deletions(-)

diff --git a/hr_employee_relative/README.rst b/hr_employee_relative/README.rst
index a46825207c0..b765bb3fbc3 100644
--- a/hr_employee_relative/README.rst
+++ b/hr_employee_relative/README.rst
@@ -2,10 +2,13 @@
 HR Employee Relatives
 =====================
 
-.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+.. 
+   !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    !! This file is generated by oca-gen-addon-readme !!
    !! changes will be overwritten.                   !!
    !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+   !! source digest: sha256:9978b31df0e194b808faaadf77e51a1ccdea14914c5164002db25d4a940c7b1a
+   !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 
 .. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
     :target: https://odoo-community.org/page/development-status
@@ -19,11 +22,11 @@ HR Employee Relatives
 .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
     :target: https://translation.odoo-community.org/projects/hr-16-0/hr-16-0-hr_employee_relative
     :alt: Translate me on Weblate
-.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
-    :target: https://runbot.odoo-community.org/runbot/116/16.0
-    :alt: Try me on Runbot
+.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
+    :target: https://runboat.odoo-community.org/builds?repo=OCA/hr&target_branch=16.0
+    :alt: Try me on Runboat
 
-|badge1| |badge2| |badge3| |badge4| |badge5| 
+|badge1| |badge2| |badge3| |badge4| |badge5|
 
 This module allows storing information about employee's family.
 
@@ -37,7 +40,7 @@ Bug Tracker
 
 Bugs are tracked on `GitHub Issues <https://github.com/OCA/hr/issues>`_.
 In case of trouble, please check there if your issue has already been reported.
-If you spotted it first, help us smashing it by providing a detailed and welcomed
+If you spotted it first, help us to smash it by providing a detailed and welcomed
 `feedback <https://github.com/OCA/hr/issues/new?body=module:%20hr_employee_relative%0Aversion:%2016.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
 
 Do not contact contributors directly about support or help with technical issues.
diff --git a/hr_employee_relative/static/description/index.html b/hr_employee_relative/static/description/index.html
index 4db6358287b..7775242fc4d 100644
--- a/hr_employee_relative/static/description/index.html
+++ b/hr_employee_relative/static/description/index.html
@@ -1,20 +1,20 @@
-<?xml version="1.0" encoding="utf-8" ?>
+<?xml version="1.0" encoding="utf-8"?>
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="generator" content="Docutils 0.15.1: http://docutils.sourceforge.net/" />
+<meta name="generator" content="Docutils: https://docutils.sourceforge.io/" />
 <title>HR Employee Relatives</title>
 <style type="text/css">
 
 /*
 :Author: David Goodger (goodger@python.org)
-:Id: $Id: html4css1.css 7952 2016-07-26 18:15:59Z milde $
+:Id: $Id: html4css1.css 8954 2022-01-20 10:10:25Z milde $
 :Copyright: This stylesheet has been placed in the public domain.
 
 Default cascading style sheet for the HTML output of Docutils.
 
-See http://docutils.sf.net/docs/howto/html-stylesheets.html for how to
+See https://docutils.sourceforge.io/docs/howto/html-stylesheets.html for how to
 customize this style sheet.
 */
 
@@ -366,39 +366,41 @@ <h1 class="title">HR Employee Relatives</h1>
 <!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 !! This file is generated by oca-gen-addon-readme !!
 !! changes will be overwritten.                   !!
+!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+!! source digest: sha256:9978b31df0e194b808faaadf77e51a1ccdea14914c5164002db25d4a940c7b1a
 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
-<p><a class="reference external" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external" href="https://github.com/OCA/hr/tree/16.0/hr_employee_relative"><img alt="OCA/hr" src="https://img.shields.io/badge/github-OCA%2Fhr-lightgray.png?logo=github" /></a> <a class="reference external" href="https://translation.odoo-community.org/projects/hr-16-0/hr-16-0-hr_employee_relative"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external" href="https://runbot.odoo-community.org/runbot/116/16.0"><img alt="Try me on Runbot" src="https://img.shields.io/badge/runbot-Try%20me-875A7B.png" /></a></p>
+<p><a class="reference external image-reference" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external image-reference" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external image-reference" href="https://github.com/OCA/hr/tree/16.0/hr_employee_relative"><img alt="OCA/hr" src="https://img.shields.io/badge/github-OCA%2Fhr-lightgray.png?logo=github" /></a> <a class="reference external image-reference" href="https://translation.odoo-community.org/projects/hr-16-0/hr-16-0-hr_employee_relative"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external image-reference" href="https://runboat.odoo-community.org/builds?repo=OCA/hr&amp;target_branch=16.0"><img alt="Try me on Runboat" src="https://img.shields.io/badge/runboat-Try%20me-875A7B.png" /></a></p>
 <p>This module allows storing information about employee’s family.</p>
 <p><strong>Table of contents</strong></p>
 <div class="contents local topic" id="contents">
 <ul class="simple">
-<li><a class="reference internal" href="#bug-tracker" id="id1">Bug Tracker</a></li>
-<li><a class="reference internal" href="#credits" id="id2">Credits</a><ul>
-<li><a class="reference internal" href="#authors" id="id3">Authors</a></li>
-<li><a class="reference internal" href="#contributors" id="id4">Contributors</a></li>
-<li><a class="reference internal" href="#maintainers" id="id5">Maintainers</a></li>
+<li><a class="reference internal" href="#bug-tracker" id="toc-entry-1">Bug Tracker</a></li>
+<li><a class="reference internal" href="#credits" id="toc-entry-2">Credits</a><ul>
+<li><a class="reference internal" href="#authors" id="toc-entry-3">Authors</a></li>
+<li><a class="reference internal" href="#contributors" id="toc-entry-4">Contributors</a></li>
+<li><a class="reference internal" href="#maintainers" id="toc-entry-5">Maintainers</a></li>
 </ul>
 </li>
 </ul>
 </div>
 <div class="section" id="bug-tracker">
-<h1><a class="toc-backref" href="#id1">Bug Tracker</a></h1>
+<h1><a class="toc-backref" href="#toc-entry-1">Bug Tracker</a></h1>
 <p>Bugs are tracked on <a class="reference external" href="https://github.com/OCA/hr/issues">GitHub Issues</a>.
 In case of trouble, please check there if your issue has already been reported.
-If you spotted it first, help us smashing it by providing a detailed and welcomed
+If you spotted it first, help us to smash it by providing a detailed and welcomed
 <a class="reference external" href="https://github.com/OCA/hr/issues/new?body=module:%20hr_employee_relative%0Aversion:%2016.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p>
 <p>Do not contact contributors directly about support or help with technical issues.</p>
 </div>
 <div class="section" id="credits">
-<h1><a class="toc-backref" href="#id2">Credits</a></h1>
+<h1><a class="toc-backref" href="#toc-entry-2">Credits</a></h1>
 <div class="section" id="authors">
-<h2><a class="toc-backref" href="#id3">Authors</a></h2>
+<h2><a class="toc-backref" href="#toc-entry-3">Authors</a></h2>
 <ul class="simple">
 <li>CorporateHub</li>
 </ul>
 </div>
 <div class="section" id="contributors">
-<h2><a class="toc-backref" href="#id4">Contributors</a></h2>
+<h2><a class="toc-backref" href="#toc-entry-4">Contributors</a></h2>
 <ul class="simple">
 <li><a class="reference external" href="https://corporatehub.eu/">CorporateHub</a><ul>
 <li>Alexey Pelykh &lt;<a class="reference external" href="mailto:alexey.pelykh&#64;corphub.eu">alexey.pelykh&#64;corphub.eu</a>&gt;</li>
@@ -410,7 +412,7 @@ <h2><a class="toc-backref" href="#id4">Contributors</a></h2>
 </ul>
 </div>
 <div class="section" id="maintainers">
-<h2><a class="toc-backref" href="#id5">Maintainers</a></h2>
+<h2><a class="toc-backref" href="#toc-entry-5">Maintainers</a></h2>
 <p>This module is maintained by the OCA.</p>
 <a class="reference external image-reference" href="https://odoo-community.org"><img alt="Odoo Community Association" src="https://odoo-community.org/logo.png" /></a>
 <p>OCA, or the Odoo Community Association, is a nonprofit organization whose

From cdfe96477f24122c160b6b1a59d728bf6ebd41bc Mon Sep 17 00:00:00 2001
From: Vincent Hatakeyama <vincent+github@hatakeyama.fr>
Date: Fri, 23 Feb 2024 10:01:04 +0000
Subject: [PATCH 20/30] Translated using Weblate (French)

Currently translated at 100.0% (32 of 32 strings)

Translation: hr-16.0/hr-16.0-hr_employee_relative
Translate-URL: https://translation.odoo-community.org/projects/hr-16-0/hr-16-0-hr_employee_relative/fr/
---
 hr_employee_relative/i18n/fr.po | 22 +++++++++++-----------
 1 file changed, 11 insertions(+), 11 deletions(-)

diff --git a/hr_employee_relative/i18n/fr.po b/hr_employee_relative/i18n/fr.po
index 4a424138abb..463dcb435af 100644
--- a/hr_employee_relative/i18n/fr.po
+++ b/hr_employee_relative/i18n/fr.po
@@ -6,15 +6,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: Odoo Server 12.0\n"
 "Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2019-05-24 10:19+0000\n"
-"Last-Translator: Kévin Allard <kallard@efficom-lille.com>\n"
+"PO-Revision-Date: 2024-02-23 10:46+0000\n"
+"Last-Translator: Vincent Hatakeyama <vincent+github@hatakeyama.fr>\n"
 "Language-Team: none\n"
 "Language: fr\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: \n"
 "Plural-Forms: nplurals=2; plural=n > 1;\n"
-"X-Generator: Weblate 3.6.1\n"
+"X-Generator: Weblate 4.17\n"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age
@@ -46,7 +46,7 @@ msgstr "Créé le"
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__date_of_birth
 msgid "Date Of Birth"
-msgstr ""
+msgstr "Date de naissance"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__display_name
@@ -58,12 +58,12 @@ msgstr "Nom affiché"
 #: model:ir.model,name:hr_employee_relative.model_hr_employee
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__employee_id
 msgid "Employee"
-msgstr "Employé(e)"
+msgstr "Employé"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields.selection,name:hr_employee_relative.selection__hr_employee_relative__gender__female
 msgid "Female"
-msgstr "Feminin"
+msgstr "Féminin"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__gender
@@ -83,12 +83,12 @@ msgstr "Grand-parent"
 #. module: hr_employee_relative
 #: model:ir.model,name:hr_employee_relative.model_hr_employee_relative
 msgid "HR Employee Relative"
-msgstr ""
+msgstr "Proche d’un employé"
 
 #. module: hr_employee_relative
 #: model:ir.model,name:hr_employee_relative.model_hr_employee_relative_relation
 msgid "HR Employee Relative Relation"
-msgstr ""
+msgstr "Relation d’un proche d’employé"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__id
@@ -99,7 +99,7 @@ msgstr "ID"
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__job
 msgid "Job"
-msgstr ""
+msgstr "Métier"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative____last_update
@@ -152,7 +152,7 @@ msgstr "Partenaire"
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__phone_number
 msgid "Phone Number"
-msgstr ""
+msgstr "Numéro de téléphone"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__relation_id
@@ -163,7 +163,7 @@ msgstr "Relation"
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee__relative_ids
 msgid "Relative"
-msgstr ""
+msgstr "Proche"
 
 #. module: hr_employee_relative
 #: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_view_form

From 8c1a4653d3484e753a28d212b92847707451ad6e Mon Sep 17 00:00:00 2001
From: Rodrigo Macedo
 <sottomaiormacedotec@users.noreply.translation.odoo-community.org>
Date: Tue, 21 May 2024 00:58:48 +0000
Subject: [PATCH 21/30] Translated using Weblate (Portuguese (Brazil))

Currently translated at 100.0% (32 of 32 strings)

Translation: hr-16.0/hr-16.0-hr_employee_relative
Translate-URL: https://translation.odoo-community.org/projects/hr-16-0/hr-16-0-hr_employee_relative/pt_BR/
---
 hr_employee_relative/i18n/pt_BR.po | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/hr_employee_relative/i18n/pt_BR.po b/hr_employee_relative/i18n/pt_BR.po
index fbc99b81108..5b99c7c39b1 100644
--- a/hr_employee_relative/i18n/pt_BR.po
+++ b/hr_employee_relative/i18n/pt_BR.po
@@ -6,15 +6,16 @@ msgid ""
 msgstr ""
 "Project-Id-Version: Odoo Server 14.0\n"
 "Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2021-03-13 03:46+0000\n"
-"Last-Translator: Eder Brito <britoederr@gmail.com>\n"
+"PO-Revision-Date: 2024-05-21 06:16+0000\n"
+"Last-Translator: Rodrigo Macedo <sottomaiormacedotec@users.noreply."
+"translation.odoo-community.org>\n"
 "Language-Team: none\n"
 "Language: pt_BR\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: \n"
 "Plural-Forms: nplurals=2; plural=n > 1;\n"
-"X-Generator: Weblate 4.3.2\n"
+"X-Generator: Weblate 4.17\n"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age
@@ -46,7 +47,7 @@ msgstr "Criado em"
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__date_of_birth
 msgid "Date Of Birth"
-msgstr ""
+msgstr "Data de nascimento"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__display_name
@@ -163,7 +164,7 @@ msgstr "Relação"
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee__relative_ids
 msgid "Relative"
-msgstr ""
+msgstr "Relativo"
 
 #. module: hr_employee_relative
 #: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_view_form

From 1bcbf833e704713ed7034a39a522508903eeac45 Mon Sep 17 00:00:00 2001
From: Patryk Pyczko <ppyczko@apsl.net>
Date: Wed, 17 Jul 2024 07:53:46 +0200
Subject: [PATCH 22/30] [IMP] hr_employee_relative: pre-commit auto fixes

---
 hr_employee_relative/README.rst               | 29 +++++++++----------
 hr_employee_relative/pyproject.toml           |  3 ++
 hr_employee_relative/readme/CONTRIBUTORS.md   |  6 ++++
 hr_employee_relative/readme/CONTRIBUTORS.rst  |  9 ------
 .../{DESCRIPTION.rst => DESCRIPTION.md}       |  0
 .../static/description/index.html             | 21 ++++++++------
 6 files changed, 35 insertions(+), 33 deletions(-)
 create mode 100644 hr_employee_relative/pyproject.toml
 create mode 100644 hr_employee_relative/readme/CONTRIBUTORS.md
 delete mode 100644 hr_employee_relative/readme/CONTRIBUTORS.rst
 rename hr_employee_relative/readme/{DESCRIPTION.rst => DESCRIPTION.md} (100%)

diff --git a/hr_employee_relative/README.rst b/hr_employee_relative/README.rst
index b765bb3fbc3..1ba63c2def5 100644
--- a/hr_employee_relative/README.rst
+++ b/hr_employee_relative/README.rst
@@ -17,13 +17,13 @@ HR Employee Relatives
     :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
     :alt: License: AGPL-3
 .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fhr-lightgray.png?logo=github
-    :target: https://github.com/OCA/hr/tree/16.0/hr_employee_relative
+    :target: https://github.com/OCA/hr/tree/17.0/hr_employee_relative
     :alt: OCA/hr
 .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
-    :target: https://translation.odoo-community.org/projects/hr-16-0/hr-16-0-hr_employee_relative
+    :target: https://translation.odoo-community.org/projects/hr-17-0/hr-17-0-hr_employee_relative
     :alt: Translate me on Weblate
 .. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
-    :target: https://runboat.odoo-community.org/builds?repo=OCA/hr&target_branch=16.0
+    :target: https://runboat.odoo-community.org/builds?repo=OCA/hr&target_branch=17.0
     :alt: Try me on Runboat
 
 |badge1| |badge2| |badge3| |badge4| |badge5|
@@ -41,7 +41,7 @@ Bug Tracker
 Bugs are tracked on `GitHub Issues <https://github.com/OCA/hr/issues>`_.
 In case of trouble, please check there if your issue has already been reported.
 If you spotted it first, help us to smash it by providing a detailed and welcomed
-`feedback <https://github.com/OCA/hr/issues/new?body=module:%20hr_employee_relative%0Aversion:%2016.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
+`feedback <https://github.com/OCA/hr/issues/new?body=module:%20hr_employee_relative%0Aversion:%2017.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
 
 Do not contact contributors directly about support or help with technical issues.
 
@@ -49,25 +49,24 @@ Credits
 =======
 
 Authors
-~~~~~~~
+-------
 
 * CorporateHub
 
 Contributors
-~~~~~~~~~~~~
+------------
 
-* `CorporateHub <https://corporatehub.eu/>`__
+-  `CorporateHub <https://corporatehub.eu/>`__
 
-  * Alexey Pelykh <alexey.pelykh@corphub.eu>
+   -  Alexey Pelykh <alexey.pelykh@corphub.eu>
 
-* Saran Lim. <saranl@ecosoft.co.th>
-
-* Nattapong W. <aphon61bank@gmail.com>
-
-* Alberto Nieto de Pablos <alberto.nieto@braintec.com> (https://braintec.com)
+-  Saran Lim. <saranl@ecosoft.co.th>
+-  Nattapong W. <aphon61bank@gmail.com>
+-  Alberto Nieto de Pablos <alberto.nieto@braintec.com>
+   (https://braintec.com)
 
 Maintainers
-~~~~~~~~~~~
+-----------
 
 This module is maintained by the OCA.
 
@@ -79,6 +78,6 @@ OCA, or the Odoo Community Association, is a nonprofit organization whose
 mission is to support the collaborative development of Odoo features and
 promote its widespread use.
 
-This module is part of the `OCA/hr <https://github.com/OCA/hr/tree/16.0/hr_employee_relative>`_ project on GitHub.
+This module is part of the `OCA/hr <https://github.com/OCA/hr/tree/17.0/hr_employee_relative>`_ project on GitHub.
 
 You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
diff --git a/hr_employee_relative/pyproject.toml b/hr_employee_relative/pyproject.toml
new file mode 100644
index 00000000000..4231d0cccb3
--- /dev/null
+++ b/hr_employee_relative/pyproject.toml
@@ -0,0 +1,3 @@
+[build-system]
+requires = ["whool"]
+build-backend = "whool.buildapi"
diff --git a/hr_employee_relative/readme/CONTRIBUTORS.md b/hr_employee_relative/readme/CONTRIBUTORS.md
new file mode 100644
index 00000000000..e28fcdbfddc
--- /dev/null
+++ b/hr_employee_relative/readme/CONTRIBUTORS.md
@@ -0,0 +1,6 @@
+- [CorporateHub](https://corporatehub.eu/)
+  - Alexey Pelykh \<<alexey.pelykh@corphub.eu>\>
+- Saran Lim. \<<saranl@ecosoft.co.th>\>
+- Nattapong W. \<<aphon61bank@gmail.com>\>
+- Alberto Nieto de Pablos \<<alberto.nieto@braintec.com>\>
+  (<https://braintec.com>)
diff --git a/hr_employee_relative/readme/CONTRIBUTORS.rst b/hr_employee_relative/readme/CONTRIBUTORS.rst
deleted file mode 100644
index 79c3d4dc05a..00000000000
--- a/hr_employee_relative/readme/CONTRIBUTORS.rst
+++ /dev/null
@@ -1,9 +0,0 @@
-* `CorporateHub <https://corporatehub.eu/>`__
-
-  * Alexey Pelykh <alexey.pelykh@corphub.eu>
-
-* Saran Lim. <saranl@ecosoft.co.th>
-
-* Nattapong W. <aphon61bank@gmail.com>
-
-* Alberto Nieto de Pablos <alberto.nieto@braintec.com> (https://braintec.com)
diff --git a/hr_employee_relative/readme/DESCRIPTION.rst b/hr_employee_relative/readme/DESCRIPTION.md
similarity index 100%
rename from hr_employee_relative/readme/DESCRIPTION.rst
rename to hr_employee_relative/readme/DESCRIPTION.md
diff --git a/hr_employee_relative/static/description/index.html b/hr_employee_relative/static/description/index.html
index 7775242fc4d..2dd5610137f 100644
--- a/hr_employee_relative/static/description/index.html
+++ b/hr_employee_relative/static/description/index.html
@@ -1,4 +1,3 @@
-<?xml version="1.0" encoding="utf-8"?>
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
 <head>
@@ -9,10 +8,11 @@
 
 /*
 :Author: David Goodger (goodger@python.org)
-:Id: $Id: html4css1.css 8954 2022-01-20 10:10:25Z milde $
+:Id: $Id: html4css1.css 9511 2024-01-13 09:50:07Z milde $
 :Copyright: This stylesheet has been placed in the public domain.
 
 Default cascading style sheet for the HTML output of Docutils.
+Despite the name, some widely supported CSS2 features are used.
 
 See https://docutils.sourceforge.io/docs/howto/html-stylesheets.html for how to
 customize this style sheet.
@@ -275,7 +275,7 @@
   margin-left: 2em ;
   margin-right: 2em }
 
-pre.code .ln { color: grey; } /* line numbers */
+pre.code .ln { color: gray; } /* line numbers */
 pre.code, code { background-color: #eeeeee }
 pre.code .comment, code .comment { color: #5C6576 }
 pre.code .keyword, code .keyword { color: #3B0D06; font-weight: bold }
@@ -301,7 +301,7 @@
 span.pre {
   white-space: pre }
 
-span.problematic {
+span.problematic, pre.problematic {
   color: red }
 
 span.section-subtitle {
@@ -369,7 +369,7 @@ <h1 class="title">HR Employee Relatives</h1>
 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 !! source digest: sha256:9978b31df0e194b808faaadf77e51a1ccdea14914c5164002db25d4a940c7b1a
 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
-<p><a class="reference external image-reference" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external image-reference" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external image-reference" href="https://github.com/OCA/hr/tree/16.0/hr_employee_relative"><img alt="OCA/hr" src="https://img.shields.io/badge/github-OCA%2Fhr-lightgray.png?logo=github" /></a> <a class="reference external image-reference" href="https://translation.odoo-community.org/projects/hr-16-0/hr-16-0-hr_employee_relative"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external image-reference" href="https://runboat.odoo-community.org/builds?repo=OCA/hr&amp;target_branch=16.0"><img alt="Try me on Runboat" src="https://img.shields.io/badge/runboat-Try%20me-875A7B.png" /></a></p>
+<p><a class="reference external image-reference" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external image-reference" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external image-reference" href="https://github.com/OCA/hr/tree/17.0/hr_employee_relative"><img alt="OCA/hr" src="https://img.shields.io/badge/github-OCA%2Fhr-lightgray.png?logo=github" /></a> <a class="reference external image-reference" href="https://translation.odoo-community.org/projects/hr-17-0/hr-17-0-hr_employee_relative"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external image-reference" href="https://runboat.odoo-community.org/builds?repo=OCA/hr&amp;target_branch=17.0"><img alt="Try me on Runboat" src="https://img.shields.io/badge/runboat-Try%20me-875A7B.png" /></a></p>
 <p>This module allows storing information about employee’s family.</p>
 <p><strong>Table of contents</strong></p>
 <div class="contents local topic" id="contents">
@@ -388,7 +388,7 @@ <h1><a class="toc-backref" href="#toc-entry-1">Bug Tracker</a></h1>
 <p>Bugs are tracked on <a class="reference external" href="https://github.com/OCA/hr/issues">GitHub Issues</a>.
 In case of trouble, please check there if your issue has already been reported.
 If you spotted it first, help us to smash it by providing a detailed and welcomed
-<a class="reference external" href="https://github.com/OCA/hr/issues/new?body=module:%20hr_employee_relative%0Aversion:%2016.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p>
+<a class="reference external" href="https://github.com/OCA/hr/issues/new?body=module:%20hr_employee_relative%0Aversion:%2017.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p>
 <p>Do not contact contributors directly about support or help with technical issues.</p>
 </div>
 <div class="section" id="credits">
@@ -408,17 +408,20 @@ <h2><a class="toc-backref" href="#toc-entry-4">Contributors</a></h2>
 </li>
 <li>Saran Lim. &lt;<a class="reference external" href="mailto:saranl&#64;ecosoft.co.th">saranl&#64;ecosoft.co.th</a>&gt;</li>
 <li>Nattapong W. &lt;<a class="reference external" href="mailto:aphon61bank&#64;gmail.com">aphon61bank&#64;gmail.com</a>&gt;</li>
-<li>Alberto Nieto de Pablos &lt;<a class="reference external" href="mailto:alberto.nieto&#64;braintec.com">alberto.nieto&#64;braintec.com</a>&gt; (<a class="reference external" href="https://braintec.com">https://braintec.com</a>)</li>
+<li>Alberto Nieto de Pablos &lt;<a class="reference external" href="mailto:alberto.nieto&#64;braintec.com">alberto.nieto&#64;braintec.com</a>&gt;
+(<a class="reference external" href="https://braintec.com">https://braintec.com</a>)</li>
 </ul>
 </div>
 <div class="section" id="maintainers">
 <h2><a class="toc-backref" href="#toc-entry-5">Maintainers</a></h2>
 <p>This module is maintained by the OCA.</p>
-<a class="reference external image-reference" href="https://odoo-community.org"><img alt="Odoo Community Association" src="https://odoo-community.org/logo.png" /></a>
+<a class="reference external image-reference" href="https://odoo-community.org">
+<img alt="Odoo Community Association" src="https://odoo-community.org/logo.png" />
+</a>
 <p>OCA, or the Odoo Community Association, is a nonprofit organization whose
 mission is to support the collaborative development of Odoo features and
 promote its widespread use.</p>
-<p>This module is part of the <a class="reference external" href="https://github.com/OCA/hr/tree/16.0/hr_employee_relative">OCA/hr</a> project on GitHub.</p>
+<p>This module is part of the <a class="reference external" href="https://github.com/OCA/hr/tree/17.0/hr_employee_relative">OCA/hr</a> project on GitHub.</p>
 <p>You are welcome to contribute. To learn how please visit <a class="reference external" href="https://odoo-community.org/page/Contribute">https://odoo-community.org/page/Contribute</a>.</p>
 </div>
 </div>

From b052f45a7fd63701500d8f3406dd73003c985a22 Mon Sep 17 00:00:00 2001
From: Patryk Pyczko <ppyczko@apsl.net>
Date: Fri, 6 Sep 2024 07:03:25 +0200
Subject: [PATCH 23/30] [MIG] hr_employee_relative: Migration to 17.0

---
 hr_employee_relative/README.rst                    | 5 +++++
 hr_employee_relative/__manifest__.py               | 2 +-
 hr_employee_relative/readme/CONTRIBUTORS.md        | 3 +++
 hr_employee_relative/static/description/index.html | 5 +++++
 4 files changed, 14 insertions(+), 1 deletion(-)

diff --git a/hr_employee_relative/README.rst b/hr_employee_relative/README.rst
index 1ba63c2def5..703bb6877d7 100644
--- a/hr_employee_relative/README.rst
+++ b/hr_employee_relative/README.rst
@@ -65,6 +65,11 @@ Contributors
 -  Alberto Nieto de Pablos <alberto.nieto@braintec.com>
    (https://braintec.com)
 
+-  `APSL-Nagarro <https://apsl.tech>`__:
+
+   -  Patryk Pyczko ppyczko@apsl.net
+   -  Bernat Obrador bobrador@apsl.net
+
 Maintainers
 -----------
 
diff --git a/hr_employee_relative/__manifest__.py b/hr_employee_relative/__manifest__.py
index d6c1f3f27eb..aeeb32dbc1d 100644
--- a/hr_employee_relative/__manifest__.py
+++ b/hr_employee_relative/__manifest__.py
@@ -4,7 +4,7 @@
 
 {
     "name": "HR Employee Relatives",
-    "version": "16.0.1.0.0",
+    "version": "17.0.1.0.0",
     "category": "Human Resources",
     "website": "https://github.com/OCA/hr",
     "author": "CorporateHub, Odoo Community Association (OCA)",
diff --git a/hr_employee_relative/readme/CONTRIBUTORS.md b/hr_employee_relative/readme/CONTRIBUTORS.md
index e28fcdbfddc..fb20a5a7816 100644
--- a/hr_employee_relative/readme/CONTRIBUTORS.md
+++ b/hr_employee_relative/readme/CONTRIBUTORS.md
@@ -4,3 +4,6 @@
 - Nattapong W. \<<aphon61bank@gmail.com>\>
 - Alberto Nieto de Pablos \<<alberto.nieto@braintec.com>\>
   (<https://braintec.com>)
+* [APSL-Nagarro](<https://apsl.tech>):
+  * Patryk Pyczko <ppyczko@apsl.net>
+  * Bernat Obrador <bobrador@apsl.net>
\ No newline at end of file
diff --git a/hr_employee_relative/static/description/index.html b/hr_employee_relative/static/description/index.html
index 2dd5610137f..518ade97ea9 100644
--- a/hr_employee_relative/static/description/index.html
+++ b/hr_employee_relative/static/description/index.html
@@ -410,6 +410,11 @@ <h2><a class="toc-backref" href="#toc-entry-4">Contributors</a></h2>
 <li>Nattapong W. &lt;<a class="reference external" href="mailto:aphon61bank&#64;gmail.com">aphon61bank&#64;gmail.com</a>&gt;</li>
 <li>Alberto Nieto de Pablos &lt;<a class="reference external" href="mailto:alberto.nieto&#64;braintec.com">alberto.nieto&#64;braintec.com</a>&gt;
 (<a class="reference external" href="https://braintec.com">https://braintec.com</a>)</li>
+<li><a class="reference external" href="https://apsl.tech">APSL-Nagarro</a>:<ul>
+<li>Patryk Pyczko <a class="reference external" href="mailto:ppyczko&#64;apsl.net">ppyczko&#64;apsl.net</a></li>
+<li>Bernat Obrador <a class="reference external" href="mailto:bobrador&#64;apsl.net">bobrador&#64;apsl.net</a></li>
+</ul>
+</li>
 </ul>
 </div>
 <div class="section" id="maintainers">

From d2ccb29fe52a68bee6a9f68dac93519b0605aece Mon Sep 17 00:00:00 2001
From: Patryk Pyczko <ppyczko@apsl.net>
Date: Fri, 6 Sep 2024 07:10:44 +0200
Subject: [PATCH 24/30] [ENH] hr_employee_relative: Enhance age float field
 into separate integer fields

---
 .../models/hr_employee_relative.py            | 15 +++++--
 .../tests/test_hr_employee_relatives.py       | 45 ++++++++++++++-----
 .../views/hr_employee_relative.xml            |  4 +-
 3 files changed, 48 insertions(+), 16 deletions(-)

diff --git a/hr_employee_relative/models/hr_employee_relative.py b/hr_employee_relative/models/hr_employee_relative.py
index 21ed4c63e73..f7258bfde55 100644
--- a/hr_employee_relative/models/hr_employee_relative.py
+++ b/hr_employee_relative/models/hr_employee_relative.py
@@ -23,7 +23,9 @@ class HrEmployeeRelative(models.Model):
         selection=[("male", "Male"), ("female", "Female"), ("other", "Other")],
     )
     date_of_birth = fields.Date()
-    age = fields.Float(compute="_compute_age")
+    age_year = fields.Integer(string="Age (Years)", compute="_compute_age")
+    age_month = fields.Integer(string="Age (Months)")
+    age_day = fields.Integer(string="Age (Days)")
 
     job = fields.Char()
     phone_number = fields.Char()
@@ -33,8 +35,15 @@ class HrEmployeeRelative(models.Model):
     @api.depends("date_of_birth")
     def _compute_age(self):
         for record in self:
-            age = relativedelta(datetime.now(), record.date_of_birth)
-            record.age = age.years + (age.months / 12)
+            if record.date_of_birth:
+                age = relativedelta(datetime.now(), record.date_of_birth)
+                record.age_year = age.years
+                record.age_month = age.months
+                record.age_day = age.days
+            else:
+                record.age_year = 0
+                record.age_month = 0
+                record.age_day = 0
 
     @api.onchange("partner_id")
     def _onchange_partner_id(self):
diff --git a/hr_employee_relative/tests/test_hr_employee_relatives.py b/hr_employee_relative/tests/test_hr_employee_relatives.py
index 3d5d02fc34f..9f6ab78923e 100644
--- a/hr_employee_relative/tests/test_hr_employee_relatives.py
+++ b/hr_employee_relative/tests/test_hr_employee_relatives.py
@@ -9,13 +9,16 @@
 
 
 class TestHrEmployeeRelatives(common.TransactionCase):
-    def setUp(self):
-        super().setUp()
-        self.Employee = self.env["hr.employee"]
-        self.EmployeeRelative = self.env["hr.employee.relative"]
-        self.relation_sibling = self.env.ref("hr_employee_relative.relation_sibling")
+    @classmethod
+    def setUpClass(cls):
+        super().setUpClass()
+        cls.Employee = cls.env["hr.employee"]
+        cls.EmployeeRelative = cls.env["hr.employee.relative"]
+        cls.relation_sibling = cls.env.ref("hr_employee_relative.relation_sibling")
+        cls.partner_1 = cls.env.ref("base.res_partner_1")
+        cls.partner_2 = cls.env.ref("base.res_partner_2")
 
-    def test_age_calculation(self):
+    def create_relative(self, dob):
         employee = self.Employee.create(
             {
                 "name": "Employee",
@@ -25,19 +28,37 @@ def test_age_calculation(self):
                         0,
                         {
                             "relation_id": self.relation_sibling.id,
-                            "partner_id": self.env.ref("base.res_partner_1").id,
+                            "partner_id": self.partner_1.id,
                             "name": "Relative",
-                            "date_of_birth": datetime.now() + relativedelta(years=-42),
+                            "date_of_birth": dob,
                         },
                     )
                 ],
             }
         )
-        relative = self.EmployeeRelative.browse(employee.relative_ids[0].id)
-        self.assertEqual(int(relative.age), 42)
+        return self.EmployeeRelative.browse(employee.relative_ids[0].id)
+
+    def test_age_calculation_with_dob(self):
+        dob = datetime.now() + relativedelta(years=-42, months=-3, days=-15)
+        relative = self.create_relative(dob)
+
+        expected_age = relativedelta(datetime.now(), dob)
+
+        self.assertEqual(relative.age_year, expected_age.years)
+        self.assertEqual(relative.age_month, expected_age.months)
+        self.assertEqual(relative.age_day, expected_age.days)
         self.assertEqual(relative.name, "Relative")
-        # onchange partner
+
+        # Test onchange partner
         with Form(relative) as f:
-            f.partner_id = self.env.ref("base.res_partner_2")
+            f.partner_id = self.partner_2
             f.relation_id = self.relation_sibling
         self.assertEqual(relative.name, relative.partner_id.display_name)
+
+    def test_age_calculation_without_dob(self):
+        relative = self.create_relative(False)
+
+        self.assertEqual(relative.age_year, 0)
+        self.assertEqual(relative.age_month, 0)
+        self.assertEqual(relative.age_day, 0)
+        self.assertEqual(relative.name, "Relative")
diff --git a/hr_employee_relative/views/hr_employee_relative.xml b/hr_employee_relative/views/hr_employee_relative.xml
index b1ddd11673e..c009c79450a 100644
--- a/hr_employee_relative/views/hr_employee_relative.xml
+++ b/hr_employee_relative/views/hr_employee_relative.xml
@@ -14,7 +14,9 @@
                 <field name="partner_id" />
                 <field name="gender" />
                 <field name="date_of_birth" />
-                <field name="age" />
+                <field name="age_year" string="Age (Years)" />
+                <field name="age_month" string="Age (Months)" optional="hide" />
+                <field name="age_day" string="Age (Days)" optional="hide" />
                 <field name="phone_number" />
                 <field name="job" />
                 <field name="notes" />

From 6d7da5b7f7cc352cf8bdf85c15e32bbe930e2993 Mon Sep 17 00:00:00 2001
From: oca-ci <oca-ci@odoo-community.org>
Date: Fri, 6 Sep 2024 06:16:07 +0000
Subject: [PATCH 25/30] [UPD] Update hr_employee_relative.pot

---
 .../i18n/hr_employee_relative.pot             | 25 ++++++++++++-------
 1 file changed, 16 insertions(+), 9 deletions(-)

diff --git a/hr_employee_relative/i18n/hr_employee_relative.pot b/hr_employee_relative/i18n/hr_employee_relative.pot
index c9e54bb0f8a..463686e2177 100644
--- a/hr_employee_relative/i18n/hr_employee_relative.pot
+++ b/hr_employee_relative/i18n/hr_employee_relative.pot
@@ -4,7 +4,7 @@
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: Odoo Server 16.0\n"
+"Project-Id-Version: Odoo Server 17.0\n"
 "Report-Msgid-Bugs-To: \n"
 "Last-Translator: \n"
 "Language-Team: \n"
@@ -14,8 +14,21 @@ msgstr ""
 "Plural-Forms: \n"
 
 #. module: hr_employee_relative
-#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age
-msgid "Age"
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age_day
+#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
+msgid "Age (Days)"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age_month
+#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
+msgid "Age (Months)"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age_year
+#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
+msgid "Age (Years)"
 msgstr ""
 
 #. module: hr_employee_relative
@@ -98,12 +111,6 @@ msgstr ""
 msgid "Job"
 msgstr ""
 
-#. module: hr_employee_relative
-#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative____last_update
-#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation____last_update
-msgid "Last Modified on"
-msgstr ""
-
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__write_uid
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__write_uid

From fb9229c3636db54e3d506f50e664994407e697b7 Mon Sep 17 00:00:00 2001
From: OCA-git-bot <oca-git-bot@odoo-community.org>
Date: Fri, 6 Sep 2024 06:18:29 +0000
Subject: [PATCH 26/30] [BOT] post-merge updates

---
 hr_employee_relative/README.rst                    | 2 +-
 hr_employee_relative/static/description/index.html | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/hr_employee_relative/README.rst b/hr_employee_relative/README.rst
index 703bb6877d7..ee92053d086 100644
--- a/hr_employee_relative/README.rst
+++ b/hr_employee_relative/README.rst
@@ -7,7 +7,7 @@ HR Employee Relatives
    !! This file is generated by oca-gen-addon-readme !!
    !! changes will be overwritten.                   !!
    !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
-   !! source digest: sha256:9978b31df0e194b808faaadf77e51a1ccdea14914c5164002db25d4a940c7b1a
+   !! source digest: sha256:33db2b8abd6478bc61c211c50fc64d942d6de629e98835b8fba8c4158934be5a
    !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 
 .. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
diff --git a/hr_employee_relative/static/description/index.html b/hr_employee_relative/static/description/index.html
index 518ade97ea9..569c10a7ff6 100644
--- a/hr_employee_relative/static/description/index.html
+++ b/hr_employee_relative/static/description/index.html
@@ -367,7 +367,7 @@ <h1 class="title">HR Employee Relatives</h1>
 !! This file is generated by oca-gen-addon-readme !!
 !! changes will be overwritten.                   !!
 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
-!! source digest: sha256:9978b31df0e194b808faaadf77e51a1ccdea14914c5164002db25d4a940c7b1a
+!! source digest: sha256:33db2b8abd6478bc61c211c50fc64d942d6de629e98835b8fba8c4158934be5a
 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
 <p><a class="reference external image-reference" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external image-reference" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external image-reference" href="https://github.com/OCA/hr/tree/17.0/hr_employee_relative"><img alt="OCA/hr" src="https://img.shields.io/badge/github-OCA%2Fhr-lightgray.png?logo=github" /></a> <a class="reference external image-reference" href="https://translation.odoo-community.org/projects/hr-17-0/hr-17-0-hr_employee_relative"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external image-reference" href="https://runboat.odoo-community.org/builds?repo=OCA/hr&amp;target_branch=17.0"><img alt="Try me on Runboat" src="https://img.shields.io/badge/runboat-Try%20me-875A7B.png" /></a></p>
 <p>This module allows storing information about employee’s family.</p>

From 151dba68b9a5363b7464e11f1c5c30c76ad87f33 Mon Sep 17 00:00:00 2001
From: Weblate <noreply@weblate.org>
Date: Fri, 6 Sep 2024 06:42:48 +0000
Subject: [PATCH 27/30] Update translation files

Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: hr-17.0/hr-17.0-hr_employee_relative
Translate-URL: https://translation.odoo-community.org/projects/hr-17-0/hr-17-0-hr_employee_relative/
---
 hr_employee_relative/i18n/de.po    | 31 ++++++++++++++++++++---------
 hr_employee_relative/i18n/es.po    | 31 ++++++++++++++++++++---------
 hr_employee_relative/i18n/fr.po    | 31 ++++++++++++++++++++---------
 hr_employee_relative/i18n/hr.po    | 32 ++++++++++++++++++++----------
 hr_employee_relative/i18n/it.po    | 31 ++++++++++++++++++++---------
 hr_employee_relative/i18n/pt_BR.po | 31 ++++++++++++++++++++---------
 6 files changed, 131 insertions(+), 56 deletions(-)

diff --git a/hr_employee_relative/i18n/de.po b/hr_employee_relative/i18n/de.po
index f758b8e11af..5f5650a626f 100644
--- a/hr_employee_relative/i18n/de.po
+++ b/hr_employee_relative/i18n/de.po
@@ -17,9 +17,22 @@ msgstr ""
 "X-Generator: Weblate 4.3.2\n"
 
 #. module: hr_employee_relative
-#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age
-msgid "Age"
-msgstr "Alter"
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age_day
+#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
+msgid "Age (Days)"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age_month
+#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
+msgid "Age (Months)"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age_year
+#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
+msgid "Age (Years)"
+msgstr ""
 
 #. module: hr_employee_relative
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_child
@@ -101,12 +114,6 @@ msgstr "ID"
 msgid "Job"
 msgstr "Job"
 
-#. module: hr_employee_relative
-#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative____last_update
-#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation____last_update
-msgid "Last Modified on"
-msgstr "Zuletzt geändert am"
-
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__write_uid
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__write_uid
@@ -185,6 +192,12 @@ msgstr ""
 msgid "Spouse"
 msgstr "Ehepartner"
 
+#~ msgid "Age"
+#~ msgstr "Alter"
+
+#~ msgid "Last Modified on"
+#~ msgstr "Zuletzt geändert am"
+
 #~ msgid "Date of Birth"
 #~ msgstr "Geburtsdatum"
 
diff --git a/hr_employee_relative/i18n/es.po b/hr_employee_relative/i18n/es.po
index eafc80c8b05..b7db3dd4c33 100644
--- a/hr_employee_relative/i18n/es.po
+++ b/hr_employee_relative/i18n/es.po
@@ -17,9 +17,22 @@ msgstr ""
 "X-Generator: Weblate 4.17\n"
 
 #. module: hr_employee_relative
-#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age
-msgid "Age"
-msgstr "Edad"
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age_day
+#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
+msgid "Age (Days)"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age_month
+#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
+msgid "Age (Months)"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age_year
+#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
+msgid "Age (Years)"
+msgstr ""
 
 #. module: hr_employee_relative
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_child
@@ -101,12 +114,6 @@ msgstr "ID"
 msgid "Job"
 msgstr "Profesión"
 
-#. module: hr_employee_relative
-#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative____last_update
-#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation____last_update
-msgid "Last Modified on"
-msgstr "Última modificación el"
-
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__write_uid
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__write_uid
@@ -185,6 +192,12 @@ msgstr "Pareja"
 msgid "Spouse"
 msgstr "Cónyugue"
 
+#~ msgid "Age"
+#~ msgstr "Edad"
+
+#~ msgid "Last Modified on"
+#~ msgstr "Última modificación el"
+
 #~ msgid "Date of Birth"
 #~ msgstr "Fecha de nacimiento"
 
diff --git a/hr_employee_relative/i18n/fr.po b/hr_employee_relative/i18n/fr.po
index 463dcb435af..d47dbcc0e86 100644
--- a/hr_employee_relative/i18n/fr.po
+++ b/hr_employee_relative/i18n/fr.po
@@ -17,9 +17,22 @@ msgstr ""
 "X-Generator: Weblate 4.17\n"
 
 #. module: hr_employee_relative
-#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age
-msgid "Age"
-msgstr "Âge"
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age_day
+#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
+msgid "Age (Days)"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age_month
+#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
+msgid "Age (Months)"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age_year
+#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
+msgid "Age (Years)"
+msgstr ""
 
 #. module: hr_employee_relative
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_child
@@ -101,12 +114,6 @@ msgstr "ID"
 msgid "Job"
 msgstr "Métier"
 
-#. module: hr_employee_relative
-#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative____last_update
-#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation____last_update
-msgid "Last Modified on"
-msgstr "Dernière modification le"
-
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__write_uid
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__write_uid
@@ -185,6 +192,12 @@ msgstr "Autre"
 msgid "Spouse"
 msgstr "Époux / Épouse"
 
+#~ msgid "Age"
+#~ msgstr "Âge"
+
+#~ msgid "Last Modified on"
+#~ msgstr "Dernière modification le"
+
 #~ msgid "Date of Birth"
 #~ msgstr "Date de naissance"
 
diff --git a/hr_employee_relative/i18n/hr.po b/hr_employee_relative/i18n/hr.po
index 6f272179d3e..135efc7930a 100644
--- a/hr_employee_relative/i18n/hr.po
+++ b/hr_employee_relative/i18n/hr.po
@@ -13,14 +13,27 @@ msgstr ""
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: \n"
-"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
-"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
+"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
+"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
 "X-Generator: Weblate 3.8\n"
 
 #. module: hr_employee_relative
-#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age
-msgid "Age"
-msgstr "Dob"
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age_day
+#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
+msgid "Age (Days)"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age_month
+#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
+msgid "Age (Months)"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age_year
+#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
+msgid "Age (Years)"
+msgstr ""
 
 #. module: hr_employee_relative
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_child
@@ -102,12 +115,6 @@ msgstr ""
 msgid "Job"
 msgstr ""
 
-#. module: hr_employee_relative
-#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative____last_update
-#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation____last_update
-msgid "Last Modified on"
-msgstr ""
-
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__write_uid
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__write_uid
@@ -186,6 +193,9 @@ msgstr ""
 msgid "Spouse"
 msgstr ""
 
+#~ msgid "Age"
+#~ msgstr "Dob"
+
 #~ msgid "Date of Birth"
 #~ msgstr "Datum rođenja"
 
diff --git a/hr_employee_relative/i18n/it.po b/hr_employee_relative/i18n/it.po
index a92cd178143..8ab7c35d054 100644
--- a/hr_employee_relative/i18n/it.po
+++ b/hr_employee_relative/i18n/it.po
@@ -17,9 +17,22 @@ msgstr ""
 "X-Generator: Weblate 4.17\n"
 
 #. module: hr_employee_relative
-#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age
-msgid "Age"
-msgstr "Età"
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age_day
+#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
+msgid "Age (Days)"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age_month
+#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
+msgid "Age (Months)"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age_year
+#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
+msgid "Age (Years)"
+msgstr ""
 
 #. module: hr_employee_relative
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_child
@@ -101,12 +114,6 @@ msgstr "ID"
 msgid "Job"
 msgstr "Lavoro"
 
-#. module: hr_employee_relative
-#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative____last_update
-#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation____last_update
-msgid "Last Modified on"
-msgstr "Ultima modifica il"
-
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__write_uid
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__write_uid
@@ -184,3 +191,9 @@ msgstr "Altri importanti"
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_spouse
 msgid "Spouse"
 msgstr "Moglie"
+
+#~ msgid "Age"
+#~ msgstr "Età"
+
+#~ msgid "Last Modified on"
+#~ msgstr "Ultima modifica il"
diff --git a/hr_employee_relative/i18n/pt_BR.po b/hr_employee_relative/i18n/pt_BR.po
index 5b99c7c39b1..b3df69b3aee 100644
--- a/hr_employee_relative/i18n/pt_BR.po
+++ b/hr_employee_relative/i18n/pt_BR.po
@@ -18,9 +18,22 @@ msgstr ""
 "X-Generator: Weblate 4.17\n"
 
 #. module: hr_employee_relative
-#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age
-msgid "Age"
-msgstr "Idade"
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age_day
+#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
+msgid "Age (Days)"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age_month
+#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
+msgid "Age (Months)"
+msgstr ""
+
+#. module: hr_employee_relative
+#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age_year
+#: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
+msgid "Age (Years)"
+msgstr ""
 
 #. module: hr_employee_relative
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_child
@@ -102,12 +115,6 @@ msgstr "ID"
 msgid "Job"
 msgstr "Trabalho"
 
-#. module: hr_employee_relative
-#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative____last_update
-#: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation____last_update
-msgid "Last Modified on"
-msgstr "Última Modificação em"
-
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__write_uid
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative_relation__write_uid
@@ -186,6 +193,12 @@ msgstr "Outro Significativo"
 msgid "Spouse"
 msgstr "Cônjuge"
 
+#~ msgid "Age"
+#~ msgstr "Idade"
+
+#~ msgid "Last Modified on"
+#~ msgstr "Última Modificação em"
+
 #~ msgid "Date of Birth"
 #~ msgstr "Data de Nascimento"
 

From 72b3c09ff16e6a54d78845d937beef6408d743fe Mon Sep 17 00:00:00 2001
From: mymage <stefano.consolaro@mymage.it>
Date: Fri, 6 Sep 2024 11:08:09 +0000
Subject: [PATCH 28/30] Translated using Weblate (Italian)

Currently translated at 100.0% (33 of 33 strings)

Translation: hr-17.0/hr-17.0-hr_employee_relative
Translate-URL: https://translation.odoo-community.org/projects/hr-17-0/hr-17-0-hr_employee_relative/it/
---
 hr_employee_relative/i18n/it.po | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/hr_employee_relative/i18n/it.po b/hr_employee_relative/i18n/it.po
index 8ab7c35d054..18ae991d3a5 100644
--- a/hr_employee_relative/i18n/it.po
+++ b/hr_employee_relative/i18n/it.po
@@ -6,7 +6,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: Odoo Server 16.0\n"
 "Report-Msgid-Bugs-To: \n"
-"PO-Revision-Date: 2023-05-30 09:10+0000\n"
+"PO-Revision-Date: 2024-09-06 14:06+0000\n"
 "Last-Translator: mymage <stefano.consolaro@mymage.it>\n"
 "Language-Team: none\n"
 "Language: it\n"
@@ -14,25 +14,25 @@ msgstr ""
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: \n"
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
-"X-Generator: Weblate 4.17\n"
+"X-Generator: Weblate 5.6.2\n"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age_day
 #: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
 msgid "Age (Days)"
-msgstr ""
+msgstr "Età (giorni)"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age_month
 #: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
 msgid "Age (Months)"
-msgstr ""
+msgstr "Età (mesi)"
 
 #. module: hr_employee_relative
 #: model:ir.model.fields,field_description:hr_employee_relative.field_hr_employee_relative__age_year
 #: model_terms:ir.ui.view,arch_db:hr_employee_relative.hr_employee_relative_view_tree
 msgid "Age (Years)"
-msgstr ""
+msgstr "Età (anni)"
 
 #. module: hr_employee_relative
 #: model:hr.employee.relative.relation,name:hr_employee_relative.relation_child

From a6025f265faa4e839e91f5a95d1cb197463e40a7 Mon Sep 17 00:00:00 2001
From: jguerriat <jerome.guerriat@brussels.msf.org>
Date: Fri, 27 Dec 2024 11:37:49 +0000
Subject: [PATCH 29/30] [IMP] hr_employee_relative: pre-commit auto fixes

---
 .../data/data_relative_relation.xml           | 52 +++++++++----------
 requirements.txt                              |  2 +
 2 files changed, 28 insertions(+), 26 deletions(-)
 create mode 100644 requirements.txt

diff --git a/hr_employee_relative/data/data_relative_relation.xml b/hr_employee_relative/data/data_relative_relation.xml
index ef84f60357c..1f7754fe1c2 100644
--- a/hr_employee_relative/data/data_relative_relation.xml
+++ b/hr_employee_relative/data/data_relative_relation.xml
@@ -1,32 +1,32 @@
 <?xml version="1.0" encoding="utf-8" ?>
 <odoo noupdate="1">
-        <!--
+    <!--
           Copyright (C) 2018 Brainbean Apps (https://brainbeanapps.com)
           License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
         -->
-        <!-- hr.employee.relative.relation -->
-        <record model="hr.employee.relative.relation" id="relation_spouse">
-            <field name="name">Spouse</field>
-        </record>
-        <record model="hr.employee.relative.relation" id="relation_significant_other">
-            <field name="name">Significant Other</field>
-        </record>
-        <record model="hr.employee.relative.relation" id="relation_child">
-            <field name="name">Child</field>
-        </record>
-        <record model="hr.employee.relative.relation" id="relation_parent">
-            <field name="name">Parent</field>
-        </record>
-        <record model="hr.employee.relative.relation" id="relation_sibling">
-            <field name="name">Sibling</field>
-        </record>
-        <record model="hr.employee.relative.relation" id="relation_cousin">
-            <field name="name">Cousin</field>
-        </record>
-        <record model="hr.employee.relative.relation" id="relation_grandparent">
-            <field name="name">Grandparent</field>
-        </record>
-        <record model="hr.employee.relative.relation" id="relation_grandchild">
-            <field name="name">Grandchild</field>
-        </record>
+    <!-- hr.employee.relative.relation -->
+    <record model="hr.employee.relative.relation" id="relation_spouse">
+        <field name="name">Spouse</field>
+    </record>
+    <record model="hr.employee.relative.relation" id="relation_significant_other">
+        <field name="name">Significant Other</field>
+    </record>
+    <record model="hr.employee.relative.relation" id="relation_child">
+        <field name="name">Child</field>
+    </record>
+    <record model="hr.employee.relative.relation" id="relation_parent">
+        <field name="name">Parent</field>
+    </record>
+    <record model="hr.employee.relative.relation" id="relation_sibling">
+        <field name="name">Sibling</field>
+    </record>
+    <record model="hr.employee.relative.relation" id="relation_cousin">
+        <field name="name">Cousin</field>
+    </record>
+    <record model="hr.employee.relative.relation" id="relation_grandparent">
+        <field name="name">Grandparent</field>
+    </record>
+    <record model="hr.employee.relative.relation" id="relation_grandchild">
+        <field name="name">Grandchild</field>
+    </record>
 </odoo>
diff --git a/requirements.txt b/requirements.txt
new file mode 100644
index 00000000000..7d41f1be0f9
--- /dev/null
+++ b/requirements.txt
@@ -0,0 +1,2 @@
+# generated from manifests external_dependencies
+python-dateutil

From ea527bab9c9c3b7ff3ec34f45559ef24088522f6 Mon Sep 17 00:00:00 2001
From: jguerriat <jerome.guerriat@brussels.msf.org>
Date: Fri, 27 Dec 2024 11:41:36 +0000
Subject: [PATCH 30/30] [MIG] hr_employee_relative: Migration to 18.0

---
 hr_employee_relative/__manifest__.py                | 4 ++--
 hr_employee_relative/views/hr_employee_relative.xml | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/hr_employee_relative/__manifest__.py b/hr_employee_relative/__manifest__.py
index aeeb32dbc1d..4b9b23bf604 100644
--- a/hr_employee_relative/__manifest__.py
+++ b/hr_employee_relative/__manifest__.py
@@ -4,7 +4,7 @@
 
 {
     "name": "HR Employee Relatives",
-    "version": "17.0.1.0.0",
+    "version": "18.0.1.0.0",
     "category": "Human Resources",
     "website": "https://github.com/OCA/hr",
     "author": "CorporateHub, Odoo Community Association (OCA)",
@@ -13,7 +13,7 @@
     "application": False,
     "summary": "Allows storing information about employee's family",
     "depends": ["hr"],
-    "external_dependencies": {"python": ["dateutil"]},
+    "external_dependencies": {"python": ["python-dateutil"]},
     "data": [
         "data/data_relative_relation.xml",
         "security/ir.model.access.csv",
diff --git a/hr_employee_relative/views/hr_employee_relative.xml b/hr_employee_relative/views/hr_employee_relative.xml
index c009c79450a..ae5ad7b052b 100644
--- a/hr_employee_relative/views/hr_employee_relative.xml
+++ b/hr_employee_relative/views/hr_employee_relative.xml
@@ -8,7 +8,7 @@
         <field name="name">hr.employee.relative.view.tree</field>
         <field name="model">hr.employee.relative</field>
         <field name="arch" type="xml">
-            <tree editable="bottom">
+            <list editable="bottom">
                 <field name="relation_id" />
                 <field name="name" />
                 <field name="partner_id" />
@@ -20,7 +20,7 @@
                 <field name="phone_number" />
                 <field name="job" />
                 <field name="notes" />
-            </tree>
+            </list>
         </field>
     </record>
 </odoo>