Skip to content

Commit

Permalink
[FIX] account_chart_update_multilang: get closer to being able to upd…
Browse files Browse the repository at this point in the history
…ate fiscal position notes

Not working yet, but it's closer.

Now you can't choose any other language than en_US. Gotta hide that.

Other translations are batched later.

MT-7597
  • Loading branch information
yajo committed Nov 1, 2024
1 parent 6bfeb3d commit e8c7b58
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 9 deletions.
11 changes: 7 additions & 4 deletions account_chart_update_multilang/static/description/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -8,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.
Expand Down Expand Up @@ -274,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 }
Expand All @@ -300,7 +301,7 @@
span.pre {
white-space: pre }

span.problematic {
span.problematic, pre.problematic {
color: red }

span.section-subtitle {
Expand Down Expand Up @@ -434,7 +435,9 @@ <h2><a class="toc-backref" href="#toc-entry-6">Contributors</a></h2>
<div class="section" id="maintainers">
<h2><a class="toc-backref" href="#toc-entry-7">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>
Expand Down
22 changes: 17 additions & 5 deletions account_chart_update_multilang/wizards/wizard_chart_update.py
Original file line number Diff line number Diff line change
@@ -1,28 +1,40 @@
# Copyright 2024 Moduon Team S.L.
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl-3.0)

from odoo import models
from odoo import fields, models
from odoo.tools import ormcache


class WizardUpdateChartsAccount(models.TransientModel):
_inherit = "wizard.update.charts.accounts"

lang = fields.Selection(default="en_US")

@ormcache("self.lang")
def _other_langs(self):
return self.env["res.lang"].search([("code", "!=", self.lang)]).mapped("code")

def _get_lang_selection_options(self):
"""Only can translate in base language by default."""
en = self.env["res.lang"]._lang_get("en_US")
return [(en.code, en.name)]

def _update_other_langs(self, templates):
for _, tpl_xmlid in templates.get_external_id().items():
for tpl_xmlid in templates.get_external_id().values():
template = self.env.ref(tpl_xmlid)
module, xmlid = tpl_xmlid.split(".", 1)
rec_xmlid = f"{module}.{self.company_id.id}_{xmlid}"
rec = self.env.ref(rec_xmlid)
translations = {}
for lang in self._other_langs():
lang_tpl = template.with_context(lang=lang)
for key in self._diff_translate_fields(template, rec):
lang_rec = rec.with_context(lang=lang)
lang_rec[key] = lang_tpl[key]
translated = template.with_context(lang=lang)[key]
translations[lang] = (
{rec[key]: translated}
if callable(rec._fields[key].translate)
else translated
)
rec.update_field_translations(key, translations)

def _diff_translate_fields(self, template, real):
"""Find differences by comparing the translations of the fields."""
Expand Down

0 comments on commit e8c7b58

Please sign in to comment.