summaryrefslogtreecommitdiff
path: root/addons
diff options
context:
space:
mode:
authorMartin Trigaux <mat@odoo.com>2019-08-07 10:09:09 +0000
committerMartin Trigaux <mat@odoo.com>2019-08-13 14:12:17 +0000
commitbdec8efabf4b77cf75aec83cc96d01384f6c978b (patch)
tree748adc84372b1541a3d079b207147cba7dac3be0 /addons
parent2347b84c66b1d6519f5be4689082da22bfc624f6 (diff)
[ADD] web: add the language code in the translation widget
The planet icon is not very clear for translation feature. Replace it with the code of the current language. Task-id: 2028152
Diffstat (limited to 'addons')
-rw-r--r--addons/http_routing/models/ir_http.py1
-rw-r--r--addons/web/controllers/main.py1
-rw-r--r--addons/web/models/ir_http.py1
-rw-r--r--addons/web/static/src/js/core/translation.js3
-rw-r--r--addons/web/static/src/js/fields/basic_fields.js2
-rw-r--r--addons/web/static/src/scss/form_view.scss3
-rw-r--r--addons/web/static/src/scss/form_view_extra.scss2
7 files changed, 10 insertions, 3 deletions
diff --git a/addons/http_routing/models/ir_http.py b/addons/http_routing/models/ir_http.py
index 0da7d82e1e2..d6a4524eb31 100644
--- a/addons/http_routing/models/ir_http.py
+++ b/addons/http_routing/models/ir_http.py
@@ -246,6 +246,7 @@ class IrHttp(models.AbstractModel):
'lang_parameters': lang_params,
'modules': translations,
'multi_lang': len(request.env['res.lang'].sudo().get_installed()) > 1,
+ 'lang': lang,
}
session_info.update({
diff --git a/addons/web/controllers/main.py b/addons/web/controllers/main.py
index 1487fbdeba9..10e350fbd0a 100644
--- a/addons/web/controllers/main.py
+++ b/addons/web/controllers/main.py
@@ -793,6 +793,7 @@ class WebClient(http.Controller):
translations_per_module, lang_params = request.env["ir.translation"].get_translations_for_webclient(mods, lang)
body = json.dumps({
+ 'lang': lang,
'lang_parameters': lang_params,
'modules': translations_per_module,
'multi_lang': len(request.env['res.lang'].sudo().get_installed()) > 1,
diff --git a/addons/web/models/ir_http.py b/addons/web/models/ir_http.py
index 5d1ac1aac11..f5a9f922abf 100644
--- a/addons/web/models/ir_http.py
+++ b/addons/web/models/ir_http.py
@@ -33,6 +33,7 @@ class Http(models.AbstractModel):
lang = user_context.get("lang")
translations_per_module, lang_params = request.env['ir.translation'].get_translations_for_webclient(mods, lang)
translation_cache = {
+ 'lang': lang,
'lang_parameters': lang_params,
'modules': translations_per_module,
'multi_lang': len(request.env['res.lang'].sudo().get_installed()) > 1,
diff --git a/addons/web/static/src/js/core/translation.js b/addons/web/static/src/js/core/translation.js
index 416ea9130d2..5335f4716a7 100644
--- a/addons/web/static/src/js/core/translation.js
+++ b/addons/web/static/src/js/core/translation.js
@@ -13,7 +13,8 @@ var TranslationDataBase = Class.extend(/** @lends instance.TranslationDataBase#
"time_format": '%H:%M:%S',
"grouping": [],
"decimal_point": ".",
- "thousands_sep": ","};
+ "thousands_sep": ",",
+ "code": "en_US"};
},
set_bundle: function(translation_bundle) {
var self = this;
diff --git a/addons/web/static/src/js/fields/basic_fields.js b/addons/web/static/src/js/fields/basic_fields.js
index dbafc45e592..d226ef655c7 100644
--- a/addons/web/static/src/js/fields/basic_fields.js
+++ b/addons/web/static/src/js/fields/basic_fields.js
@@ -41,9 +41,11 @@ var TranslatableFieldMixin = {
*/
_renderTranslateButton: function () {
if (_t.database.multi_lang && this.field.translate && this.res_id) {
+ var lang = _t.database.parameters.code.split('_')[0].toUpperCase();
return $('<button>', {
type: 'button',
'class': 'o_field_translate fa fa-globe btn btn-link',
+ 'data-code': lang,
})
.on('click', this._onTranslate.bind(this));
}
diff --git a/addons/web/static/src/scss/form_view.scss b/addons/web/static/src/scss/form_view.scss
index 51920df3510..f01fedbbab1 100644
--- a/addons/web/static/src/scss/form_view.scss
+++ b/addons/web/static/src/scss/form_view.scss
@@ -578,10 +578,11 @@
.o_field_translate {
padding: 0;
cursor: pointer;
- width: 12px !important;
+ width: 35px !important;
vertical-align: top;
&::before { // seems to be useful for some old browser
position: relative;
+ content: attr(data-code);
}
}
diff --git a/addons/web/static/src/scss/form_view_extra.scss b/addons/web/static/src/scss/form_view_extra.scss
index 49d14438e33..77b713784fe 100644
--- a/addons/web/static/src/scss/form_view_extra.scss
+++ b/addons/web/static/src/scss/form_view_extra.scss
@@ -82,7 +82,7 @@
// Translate icon
.o_field_translate {
- margin-left: -15px;
+ margin-left: -35px;
}
// Specific style classes