diff --git a/addons/transifex/data/ir_translation_view.xml b/addons/transifex/data/ir_translation_view.xml
index bd6541b9567..13b79771134 100644
--- a/addons/transifex/data/ir_translation_view.xml
+++ b/addons/transifex/data/ir_translation_view.xml
@@ -5,9 +5,10 @@
ir.translation
-
+
@@ -18,9 +19,10 @@
ir.translation
-
+
diff --git a/addons/transifex/i18n/transifex.pot b/addons/transifex/i18n/transifex.pot
index 8f55c29bdc4..3dceecf6793 100644
--- a/addons/transifex/i18n/transifex.pot
+++ b/addons/transifex/i18n/transifex.pot
@@ -30,6 +30,11 @@ msgstr ""
msgid "Last Modified on"
msgstr ""
+#. module: transifex
+#: model:ir.model.fields,help:transifex.field_ir_translation__transifex_url
+msgid "Propose a modification in the official version of Odoo"
+msgstr ""
+
#. module: transifex
#: model_terms:ir.ui.view,arch_db:transifex.ir_translation_dialog_view_tree_transifex
#: model_terms:ir.ui.view,arch_db:transifex.ir_translation_view_tree_transifex
diff --git a/addons/transifex/models/ir_translation.py b/addons/transifex/models/ir_translation.py
index 1f17fc47d3a..18a91ef082f 100644
--- a/addons/transifex/models/ir_translation.py
+++ b/addons/transifex/models/ir_translation.py
@@ -14,7 +14,7 @@ class IrTranslation(models.Model):
_inherit = 'ir.translation'
- transifex_url = fields.Char("Transifex URL", compute='_get_transifex_url')
+ transifex_url = fields.Char("Transifex URL", compute='_get_transifex_url', help="Propose a modification in the official version of Odoo")
def _get_transifex_url(self):
""" Construct transifex URL based on the module on configuration """
@@ -74,13 +74,13 @@ class IrTranslation(models.Model):
translation.transifex_url = False
continue
- # e.g. https://www.transifex.com/odoo/odoo-10/translate/#fr/sale/42?q=text'Sale+Order'
+ # e.g. https://www.transifex.com/odoo/odoo-10/translate/#fr/sale/42?q=text:'Sale+Order'
+ src = werkzeug.urls.url_quote_plus(translation.src[:50].replace("\n", "").replace("'", ""))
+ src = f"'{src}'" if "+" in src else src
translation.transifex_url = "%(url)s/%(project)s/translate/#%(lang)s/%(module)s/42?q=%(src)s" % {
'url': base_url,
'project': project,
'lang': lang_code,
'module': translation.module,
- 'src': "text:'" + werkzeug.urls.url_quote_plus(
- translation.src[:50].replace("\n", "").replace("'", "")
- ) + "'",
+ 'src': f"text%3A{src}",
}