From bafec48c1caaf7817bf26253bc758c90f7a0f503 Mon Sep 17 00:00:00 2001 From: Abdellatif Benzbiria Date: Wed, 29 Jul 2026 11:59:13 +0100 Subject: [PATCH 1/7] [ADD] Base_translate --- .docker_files/main/__manifest__.py | 1 + Dockerfile | 1 + base_translate/README.rst | 47 +++++++++++ base_translate/__init__.py | 16 ++++ base_translate/__manifest__.py | 22 +++++ base_translate/data/base_translate.csv | 3 + base_translate/i18n/fr.po | 77 ++++++++++++++++++ base_translate/models/__init__.py | 5 ++ base_translate/models/base.py | 68 ++++++++++++++++ base_translate/models/base_translate.py | 61 ++++++++++++++ base_translate/security/ir.model.access.csv | 3 + base_translate/static/description/icon.png | Bin 0 -> 7982 bytes .../supplier_refund_menu_item_en.png | Bin 0 -> 19315 bytes .../supplier_refund_menu_item_fr.png | Bin 0 -> 19676 bytes base_translate/tests/__init__.py | 5 ++ base_translate/tests/test_base_translate.py | 40 +++++++++ base_translate/views/base_translate.xml | 40 +++++++++ 17 files changed, 389 insertions(+) create mode 100644 base_translate/README.rst create mode 100644 base_translate/__init__.py create mode 100644 base_translate/__manifest__.py create mode 100644 base_translate/data/base_translate.csv create mode 100644 base_translate/i18n/fr.po create mode 100644 base_translate/models/__init__.py create mode 100644 base_translate/models/base.py create mode 100644 base_translate/models/base_translate.py create mode 100644 base_translate/security/ir.model.access.csv create mode 100644 base_translate/static/description/icon.png create mode 100644 base_translate/static/description/supplier_refund_menu_item_en.png create mode 100644 base_translate/static/description/supplier_refund_menu_item_fr.png create mode 100644 base_translate/tests/__init__.py create mode 100644 base_translate/tests/test_base_translate.py create mode 100644 base_translate/views/base_translate.xml diff --git a/.docker_files/main/__manifest__.py b/.docker_files/main/__manifest__.py index 00ca9bc4..74cb8f23 100644 --- a/.docker_files/main/__manifest__.py +++ b/.docker_files/main/__manifest__.py @@ -13,6 +13,7 @@ "depends": [ "admin_light_base", "base_extended_security", + "base_translate", "lang_fr_activated", "test_http_request" ], diff --git a/Dockerfile b/Dockerfile index d6d46155..11390514 100644 --- a/Dockerfile +++ b/Dockerfile @@ -15,6 +15,7 @@ USER odoo COPY admin_light_base /mnt/extra-addons/admin_light_base COPY base_extended_security /mnt/extra-addons/base_extended_security +COPY base_translate /mnt/extra-addons/base_translate COPY lang_fr_activated /mnt/extra-addons/lang_fr_activated COPY test_http_request /mnt/extra-addons/test_http_request diff --git a/base_translate/README.rst b/base_translate/README.rst new file mode 100644 index 00000000..03778824 --- /dev/null +++ b/base_translate/README.rst @@ -0,0 +1,47 @@ +=============================== +Canada French Accounting Labels +=============================== + +Context +======= +Odoo's default French terms are based on European terminology. In Quebec and Canada, some important accounting terms are significantly different, which can lead to confusion for local users. + +The issue with these translations is that they appear hundreds of times in Odoo PO files across different modules. Updating and maintaining each of these translations manually would require a major and constant effort. + +Description +=========== +This module sanitizes and automatically adapts the labels of the accounting application for the French Canada (fr_CA) language. + +Here is an overview of the main terminology changes applied by this module: +* Avoir -> Note de crédit +* Balance âgée -> Âge des comptes +* Lettrage -> Conciliation bancaire + +Translations to update can be as specific as the following: "Compte utilisé sur les lignes de taxes des avoirs. Laissez vide pour utiliser le compte de dépenses." + +Usage +===== +To use this module and trigger the translation replacements: + +1. Navigate to **Accounting / Configuration / CA Accounting Terms**. +2. Add, edit, or remove the specific French to Canadian French term mappings. +3. Click the **"Apply translation"** button located in the header of the list view to apply changes across all installed modules. + +Screenshots +=========== + +Menu Items Adjustments +---------------------- +The missing `s` is added to the menu item `Accounting / Vendors / Refund`. + +.. image:: static/description/supplier_refund_menu_item_en.png + :alt: Supplier Refund Menu Item EN + :width: 600 px + +.. image:: static/description/supplier_refund_menu_item_fr.png + :alt: Supplier Refund Menu Item FR + :width: 600 px + +Contributors +============ +* Numigi (tm) and all its contributors (https://bit.ly/numigiens) \ No newline at end of file diff --git a/base_translate/__init__.py b/base_translate/__init__.py new file mode 100644 index 00000000..69c43860 --- /dev/null +++ b/base_translate/__init__.py @@ -0,0 +1,16 @@ +# Copyright 2026 Numigi and all its contributors (https://bit.ly/numigiens) +# License LGPL-3.0 or later (http://www.gnu.org/licenses/lgpl). + + +from . import models + + +def _get_installed_modules(env): + # Fetch all modules that are currently installed in the database + return env["ir.module.module"].search([("state", "=", "installed")]) + + +def post_init_hook(env): + # Force translation reload immediately after the module installation is complete + installed_modules = _get_installed_modules(env) + installed_modules._update_translations(["fr_FR"], True) diff --git a/base_translate/__manifest__.py b/base_translate/__manifest__.py new file mode 100644 index 00000000..741514c1 --- /dev/null +++ b/base_translate/__manifest__.py @@ -0,0 +1,22 @@ +# Copyright 2026-today Numigi +# License LGPL-3.0 or later (http://www.gnu.org/licenses/lgpl). + +{ + "name": "Canada French Labels", + "version": "18.0.1.0.0", + "author": "Numigi", + "maintainer": "Numigi", + "website": "https://www.numigi.com", + "license": "LGPL-3", + "category": "Accounting", + "summary": "Sanitize the accounting terms for Canada French", + "depends": ["base", "lang_fr_activated"], + "data": [ + "security/ir.model.access.csv", + "data/base_translate.csv", + "views/base_translate.xml", + ], + "installable": True, + "auto-install": True, + "post_init_hook": "post_init_hook", +} diff --git a/base_translate/data/base_translate.csv b/base_translate/data/base_translate.csv new file mode 100644 index 00000000..f52bbcaf --- /dev/null +++ b/base_translate/data/base_translate.csv @@ -0,0 +1,3 @@ +id,lang_id,model_id,term_fr,term_ca +translate_fr_ca_1,,base_res_partner,poste,job + diff --git a/base_translate/i18n/fr.po b/base_translate/i18n/fr.po new file mode 100644 index 00000000..46aa1fb7 --- /dev/null +++ b/base_translate/i18n/fr.po @@ -0,0 +1,77 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * base_fr_ca_labels +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 18.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2026-07-21 12:17+0000\n" +"PO-Revision-Date: 2026-07-21 12:17+0000\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: base_fr_ca_labels +#: model_terms:ir.ui.view,arch_db:base_fr_ca_labels.view_account_journal_group_tree +msgid "Appliquer les traductions" +msgstr "Appliquer les traductions" + +#. module: base_fr_ca_labels +#: model_terms:ir.ui.view,arch_db:base_fr_ca_labels.view_account_journal_group_tree +msgid "Apply translation" +msgstr "Appliquer la traduction" + +#. module: base_fr_ca_labels +#: model:ir.actions.act_window,name:base_fr_ca_labels.action_translate_term_fr_ca +#: model:ir.ui.menu,name:base_fr_ca_labels.menu_translate_term_fr_ca +msgid "CA Accouting Terms" +msgstr "Termes comptables CA" + +#. module: base_fr_ca_labels +#: model:ir.model.fields,field_description:base_fr_ca_labels.field_translate_term_fr_ca__create_uid +msgid "Created by" +msgstr "Créé par" + +#. module: base_fr_ca_labels +#: model:ir.model.fields,field_description:base_fr_ca_labels.field_translate_term_fr_ca__create_date +msgid "Created on" +msgstr "Créé le" + +#. module: base_fr_ca_labels +#: model:ir.model.fields,field_description:base_fr_ca_labels.field_translate_term_fr_ca__display_name +msgid "Display Name" +msgstr "Nom affiché" + +#. module: base_fr_ca_labels +#: model:ir.model.fields,field_description:base_fr_ca_labels.field_translate_term_fr_ca__id +msgid "ID" +msgstr "ID" + +#. module: base_fr_ca_labels +#: model:ir.model.fields,field_description:base_fr_ca_labels.field_translate_term_fr_ca__write_uid +msgid "Last Updated by" +msgstr "Dernière mise à jour par" + +#. module: base_fr_ca_labels +#: model:ir.model.fields,field_description:base_fr_ca_labels.field_translate_term_fr_ca__write_date +msgid "Last Updated on" +msgstr "Dernière modification le" + +#. module: base_fr_ca_labels +#: model:ir.model.fields,field_description:base_fr_ca_labels.field_translate_term_fr_ca__term_ca +msgid "Term CA" +msgstr "Terme CA" + +#. module: base_fr_ca_labels +#: model:ir.model.fields,field_description:base_fr_ca_labels.field_translate_term_fr_ca__term_fr +msgid "Term Fr" +msgstr "Terme Fr" + +#. module: base_fr_ca_labels +#: model:ir.model,name:base_fr_ca_labels.model_translate_term_fr_ca +msgid "Translation Terms (FR to CA)" +msgstr "Termes de traduction (FR vers CA)" \ No newline at end of file diff --git a/base_translate/models/__init__.py b/base_translate/models/__init__.py new file mode 100644 index 00000000..7e48c5d1 --- /dev/null +++ b/base_translate/models/__init__.py @@ -0,0 +1,5 @@ +# Copyright 2026 Numigi and all its contributors (https://bit.ly/numigiens) +# License LGPL-3.0 or later (http://www.gnu.org/licenses/lgpl). + +from . import base +from . import base_translate diff --git a/base_translate/models/base.py b/base_translate/models/base.py new file mode 100644 index 00000000..9e3aafdf --- /dev/null +++ b/base_translate/models/base.py @@ -0,0 +1,68 @@ +# Copyright 2024 Numigi and all its contributors (https://bit.ly/numigiens) +# License LGPL-3.0 or later (http://www.gnu.org/licenses/lgpl). + +from odoo import models + + +class BaseTranslationCA(models.AbstractModel): + _inherit = "base" + + def action_translate_to_ca(self): + # Main entry point to transpose FR translations to CA for any existing model + mapping_dict = self._get_ca_translation_mapping() + translatable_fields = self._get_translatable_fields() + self._apply_ca_translations_to_records(translatable_fields, mapping_dict) + + def _get_ca_translation_mapping(self): + # Fetch dictionary mapping from the newly isolated translation term model + term_model = self.env["base.translate"] + return term_model.get_mapping_for_model(self._name) + + def _get_translatable_fields(self): + # Identify translatable fields declared on the current model + return [ + field_name + for field_name, field_def in self._fields.items() + if field_def.translate + ] + + def _apply_ca_translations_to_records(self, fields_list, mapping_dict): + # Iterate over recordset without exceeding two indentation levels + for record in self: + record._translate_record_fields(fields_list, mapping_dict) + + def _translate_record_fields(self, fields_list, mapping_dict): + # Iterate over translatable fields for a single record + for field_name in fields_list: + self._translate_single_field(field_name, mapping_dict) + + def _translate_single_field(self, field_name, mapping_dict): + # Read FR text and apply Canadian French mapping if value is string + fr_value = self.with_context(lang="fr_FR")[field_name] + if isinstance(fr_value, str): + ca_value = self._replace_terms_in_text(fr_value, mapping_dict) + self._write_ca_value(field_name, ca_value) + + def _replace_terms_in_text(self, text_value, mapping_dict): + # Apply string replacements sorted by length descending + sorted_keys = sorted( + mapping_dict.keys(), + key=lambda k: len(str(k)), + reverse=True, + ) + for old_term in sorted_keys: + text_value = self._replace_single_term(text_value, old_term, mapping_dict) + return text_value + + def _replace_single_term(self, text_value, old_term, mapping_dict): + # Safe string replacement avoiding break or continue statements + if old_term and str(old_term) in text_value: + text_value = text_value.replace( + str(old_term), + str(mapping_dict[old_term]), + ) + return text_value + + def _write_ca_value(self, field_name, ca_value): + # Write translated value explicitly into the Canadian French language context + self.with_context(lang="fr_CA").write({field_name: ca_value}) diff --git a/base_translate/models/base_translate.py b/base_translate/models/base_translate.py new file mode 100644 index 00000000..c15cf59f --- /dev/null +++ b/base_translate/models/base_translate.py @@ -0,0 +1,61 @@ +# Copyright 2024 Numigi and all its contributors (https://bit.ly/numigiens) +# License LGPL-3.0 or later (http://www.gnu.org/licenses/lgpl). + +from odoo import fields, models + + +class BaseTranslate(models.Model): + # Use a distinct model name to prevent conflicts with account_fr_ca_labels + _name = "base.translate" + _description = "Database Translation Terms (FR to CA)" + + + + lang_id = fields.Many2one( + comodel_name="res.lang", + default=lambda self: self.env["res.lang"].search([("code", "=", "fr_FR")], limit=1), + string="Language") + model_id = fields.Many2one( + comodel_name="ir.model", + string="Model", + ondelete="cascade", + help="Leave empty to apply globally across all models.", + ) + term_fr = fields.Char(string="Term Fr", required=True) + term_ca = fields.Char(string="Term CA", required=True) + + def action_apply_translations(self): + # Force translation updates from installed modules + installed_modules = self._get_installed_modules() + installed_modules._update_translations(["fr_FR"], True) + self.env.registry.clear_cache() + return self._build_success_notification() + + def _get_installed_modules(self): + # Retrieve all currently installed modules + return self.env["ir.module.module"].search([("state", "=", "installed")]) + + def _build_success_notification(self): + # Build standard Odoo notification dictionary + return { + "type": "ir.actions.client", + "tag": "display_notification", + "params": { + "title": "Success", + "message": "Translations applied successfully.", + "type": "success", + "sticky": False, + }, + } + + def get_mapping_for_model(self, model_name): + # Retrieve translation mapping targeting the specific model or globally + domain = [ + "|", + ("model_id", "=", False), + ("model_id.model", "=", model_name), + ] + return { + record.term_fr: record.term_ca + for record in self.search(domain) + } diff --git a/base_translate/security/ir.model.access.csv b/base_translate/security/ir.model.access.csv new file mode 100644 index 00000000..b77056ee --- /dev/null +++ b/base_translate/security/ir.model.access.csv @@ -0,0 +1,3 @@ +id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink +access_base_translate,access_base_translate,model_base_translate,base.group_erp_manager,1,1,1,1 + diff --git a/base_translate/static/description/icon.png b/base_translate/static/description/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..92a86b10ed6e2f6a40b286805c8c92c5dc775111 GIT binary patch literal 7982 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 irr3Mc_cU7U(f{#QGTk0000 + + + + base.translate.tree + base.translate + 1 + + + +
+
+ + +