diff --git a/README.rst b/README.rst
index bb6f7bcd1e38b47f63d4570a062eff30cad9b36c..d116631093c5b4ff081c5220486744473301c5a3 100644
--- a/README.rst
+++ b/README.rst
@@ -4,12 +4,12 @@
=================================
-NOM CLIENT - Titre fonctionnalité
+Alterincub - geo
=================================
Description
===========
-
+Geolocalise partners from alterincub modules
Exemple
=======
@@ -22,7 +22,7 @@ Credits
Contributors
------------
-* Prenom Nom <mail@le-filament.com>
+* Thibaud Bruge <Thibaud@le-filament.com>
Maintainer
diff --git a/__init__.py b/__init__.py
index f838ed83992c35c7ed801240fa4d4f2b9faa021e..bd6f3ee0fba8cbc06b5dee57d49212b751451dba 100644
--- a/__init__.py
+++ b/__init__.py
@@ -1,4 +1,15 @@
-# Copyright 2021 Le Filament (https://le-filament.com)
+# Copyright 2023 Le Filament (https://le-filament.com)
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html)
-from . import FolderName
+from odoo import SUPERUSER_ID, api
+
+from . import models
+
+
+def set_lat_long(cr, registry):
+ env = api.Environment(cr, SUPERUSER_ID, {})
+ partners = env["res.partner"].search(
+ ["|", ("city", "!=", False), ("street", "!=", False)]
+ )
+ for p in partners:
+ p.geo_localize()
diff --git a/__manifest__.py b/__manifest__.py
index cfa625adb439d89311807792e7b63f42fa0831d0..3f54d869a05e8040adab64e75e03987b70a7a536 100644
--- a/__manifest__.py
+++ b/__manifest__.py
@@ -1,14 +1,14 @@
{
- "name": "NOM DU CLIENT - Titre du module",
- "summary": "Description du module",
+ "name": "Alterincub - geo",
+ "summary": "Geolocalise partners from alterincub modules",
"author": "Le Filament",
"website": "https://le-filament.com",
"version": "14.0.1.0.1",
"license": "AGPL-3",
- "depends": [],
+ "depends": ["alterincub_partner", "alterincub_endpoint", "queue_job"],
"data": [
- "security/ir.model.access.csv",
# datas
+ "datas/res_config_setting_geolocalize_service.xml"
# views
# views menu
# wizard
@@ -18,4 +18,5 @@
],
"installable": True,
"auto_install": False,
+ "post_init_hook": "set_lat_long",
}
diff --git a/datas/res_config_setting_geolocalize_service.xml b/datas/res_config_setting_geolocalize_service.xml
new file mode 100644
index 0000000000000000000000000000000000000000..21b09eff877dba4d97d7b7deca5985db14f9a4cf
--- /dev/null
+++ b/datas/res_config_setting_geolocalize_service.xml
@@ -0,0 +1,5 @@
+<odoo>
+ <record id="alterincub_geoloc_provider" model="res.config.settings">
+ <field name="module_base_geolocalize">adressedatagouv</field>
+ </record>
+</odoo>
diff --git a/models/__init__.py b/models/__init__.py
index 98f31b77bebf9a8cf1b062c1d1851ebbb0ce7a5e..bf253ceb7b877e12b10853b488564ddb0a3bd18e 100644
--- a/models/__init__.py
+++ b/models/__init__.py
@@ -1,4 +1,4 @@
-# Copyright 2021 Le Filament (https://le-filament.com)
+# Copyright 2023 Le Filament (https://le-filament.com)
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html)
-from . import ModelName
+from . import res_partner
diff --git a/models/res_partner.py b/models/res_partner.py
new file mode 100644
index 0000000000000000000000000000000000000000..edaea2f1f1bf099c9ac90f9512ddb3f475fc821b
--- /dev/null
+++ b/models/res_partner.py
@@ -0,0 +1,24 @@
+# Copyright 2022 Le Filament (https://le-filament.com)
+# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html)
+
+from odoo import api, models
+
+
+class ResPartner(models.Model):
+ _inherit = "res.partner"
+
+ # ------------------------------------------------------
+ # CRUD methods (ORM overrides)
+ # ------------------------------------------------------
+ @api.model
+ def create(self, vals):
+ partner = super().create(vals)
+ partner.with_delay().geo_localize()
+ return partner
+
+ def write(self, vals):
+ fields_to_watch = ["street", "street2", "street3", "zip", "country_id", "city"]
+ if any(x in vals for x in fields_to_watch):
+ self.with_delay().geo_localize()
+
+ return super().write(vals)
diff --git a/models/template_model.py b/models/template_model.py
deleted file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000
diff --git a/security/ir.model.access.csv b/security/ir.model.access.csv
deleted file mode 100644
index 301b7dab167cbcb978ea78e7da9e7f032c40b90e..0000000000000000000000000000000000000000
--- a/security/ir.model.access.csv
+++ /dev/null
@@ -1 +0,0 @@
-id,name,model_id/id,group_id/id,perm_read,perm_write,perm_create,perm_unlink