Public release from ruodoo-project: 19.0 - 2026-05-31 21:19:12 UTC

This commit is contained in:
CI Publish Bot
2026-05-31 21:19:21 +00:00
commit aa4214c195
1213 changed files with 183945 additions and 0 deletions

View File

@ -0,0 +1,47 @@
import logging
import os
from odoo import api, models
from odoo.modules import get_module_path
from odoo.tools.translate import TranslationImporter
_logger = logging.getLogger(__name__)
module_lname = os.path.basename(
os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
)
class Module(models.Model):
_inherit = "ir.module.module"
@api.model
def _load_module_terms(self, modules, langs, overwrite=False):
if module_lname not in modules:
return super()._load_module_terms(modules, langs, overwrite=overwrite)
# load i18n files
translation_importer = TranslationImporter(self.env.cr, verbose=False)
for module_name in modules:
modpath = get_module_path(module_name)
if not modpath:
continue
for lang in langs:
po_paths = []
for subdir in ("i18n", "i18n_extra"):
po_path = os.path.join(modpath, subdir, "%s.po" % lang)
if os.path.exists(po_path):
po_paths.append(po_path)
for po_path in po_paths:
_logger.info(
"module %s: loading translation file %s for language %s",
module_name,
po_path,
lang,
)
translation_importer.load_file(po_path, lang)
if lang != "en_US" and not po_paths:
_logger.info(
"module %s: no translation for language %s", module_name, lang
)
translation_importer.save(overwrite=overwrite, force_overwrite=overwrite)