From 967913e7185915c72a63e2c7c3346e628f8135c8 Mon Sep 17 00:00:00 2001 From: OCA Transbot Date: Mon, 23 Nov 2015 23:43:23 -0500 Subject: [PATCH 1/4] OCA Transbot updated translations from Transifex --- web_translate_dialog/i18n/ar.po | 54 ++++++++++++++++++++++++++++ web_translate_dialog/i18n/de.po | 54 ++++++++++++++++++++++++++++ web_translate_dialog/i18n/es.po | 51 +++++++++++++++++--------- web_translate_dialog/i18n/fi.po | 54 ++++++++++++++++++++++++++++ web_translate_dialog/i18n/fr.po | 51 +++++++++++++++++--------- web_translate_dialog/i18n/it.po | 54 ++++++++++++++++++++++++++++ web_translate_dialog/i18n/pt_BR.po | 54 ++++++++++++++++++++++++++++ web_translate_dialog/i18n/sl.po | 54 ++++++++++++++++++++++++++++ web_translate_dialog/i18n/tr.po | 58 +++++++++++++++++++----------- 9 files changed, 429 insertions(+), 55 deletions(-) create mode 100644 web_translate_dialog/i18n/ar.po create mode 100644 web_translate_dialog/i18n/de.po create mode 100644 web_translate_dialog/i18n/fi.po create mode 100644 web_translate_dialog/i18n/it.po create mode 100644 web_translate_dialog/i18n/pt_BR.po create mode 100644 web_translate_dialog/i18n/sl.po diff --git a/web_translate_dialog/i18n/ar.po b/web_translate_dialog/i18n/ar.po new file mode 100644 index 00000000..bd61093e --- /dev/null +++ b/web_translate_dialog/i18n/ar.po @@ -0,0 +1,54 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * web_translate_dialog +# +# Translators: +# SaFi J. , 2015 +msgid "" +msgstr "" +"Project-Id-Version: web (8.0)\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2015-12-16 07:41+0000\n" +"PO-Revision-Date: 2015-12-16 17:26+0000\n" +"Last-Translator: SaFi J. \n" +"Language-Team: Arabic (http://www.transifex.com/oca/OCA-web-8-0/language/ar/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: ar\n" +"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/xml/base.xml:30 +#, python-format +msgid "Cancel" +msgstr "إلغاء" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/xml/base.xml:7 +#, python-format +msgid "Field" +msgstr "الحقل" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/xml/base.xml:29 +#, python-format +msgid "Save" +msgstr "حفظ" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/js/web_translate_dialog.js:15 +#, python-format +msgid "Translate" +msgstr "ترجم" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/js/web_translate_dialog.js:37 +#, python-format +msgid "Translations" +msgstr "الترجمات" diff --git a/web_translate_dialog/i18n/de.po b/web_translate_dialog/i18n/de.po new file mode 100644 index 00000000..418111e6 --- /dev/null +++ b/web_translate_dialog/i18n/de.po @@ -0,0 +1,54 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * web_translate_dialog +# +# Translators: +# Rudolf Schnapka , 2016 +msgid "" +msgstr "" +"Project-Id-Version: web (8.0)\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-01-10 07:31+0000\n" +"PO-Revision-Date: 2016-01-18 20:58+0000\n" +"Last-Translator: Rudolf Schnapka \n" +"Language-Team: German (http://www.transifex.com/oca/OCA-web-8-0/language/de/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: de\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/xml/base.xml:30 +#, python-format +msgid "Cancel" +msgstr "Abbrechen" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/xml/base.xml:7 +#, python-format +msgid "Field" +msgstr "Feld" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/xml/base.xml:29 +#, python-format +msgid "Save" +msgstr "Speichern" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/js/web_translate_dialog.js:15 +#, python-format +msgid "Translate" +msgstr "Übersetze" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/js/web_translate_dialog.js:37 +#, python-format +msgid "Translations" +msgstr "Übersetzungen" diff --git a/web_translate_dialog/i18n/es.po b/web_translate_dialog/i18n/es.po index d1af454b..047d0a81 100644 --- a/web_translate_dialog/i18n/es.po +++ b/web_translate_dialog/i18n/es.po @@ -1,19 +1,43 @@ -# Translation of OpenERP Server. +# Translation of Odoo Server. # This file contains the translation of the following modules: -# +# * web_translate_dialog +# +# Translators: +# Pedro M. Baeza , 2015 msgid "" msgstr "" -"Project-Id-Version: OpenERP Server 7.0\n" +"Project-Id-Version: web (8.0)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-12-09 07:15+0000\n" -"PO-Revision-Date: 2014-03-07 15:45+0000\n" -"Last-Translator: Pedro Manuel Baeza \n" -"Language-Team: \n" +"POT-Creation-Date: 2015-11-23 13:46+0000\n" +"PO-Revision-Date: 2015-11-07 11:25+0000\n" +"Last-Translator: Pedro M. Baeza \n" +"Language-Team: Spanish (http://www.transifex.com/oca/OCA-web-8-0/language/es/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-06-28 06:02+0000\n" -"X-Generator: Launchpad (build 17077)\n" +"Content-Transfer-Encoding: \n" +"Language: es\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/xml/base.xml:30 +#, python-format +msgid "Cancel" +msgstr "Cancelar" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/xml/base.xml:7 +#, python-format +msgid "Field" +msgstr "Campo" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/xml/base.xml:29 +#, python-format +msgid "Save" +msgstr "Guardar" #. module: web_translate_dialog #. openerp-web @@ -28,10 +52,3 @@ msgstr "Traducir" #, python-format msgid "Translations" msgstr "Traducciones" - -#. module: web_translate_dialog -#. openerp-web -#: code:addons/web_translate_dialog/static/src/xml/base.xml:7 -#, python-format -msgid "Field" -msgstr "Campo" diff --git a/web_translate_dialog/i18n/fi.po b/web_translate_dialog/i18n/fi.po new file mode 100644 index 00000000..734fc247 --- /dev/null +++ b/web_translate_dialog/i18n/fi.po @@ -0,0 +1,54 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * web_translate_dialog +# +# Translators: +# Jarmo Kortetjärvi , 2016 +msgid "" +msgstr "" +"Project-Id-Version: web (8.0)\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-01-10 07:31+0000\n" +"PO-Revision-Date: 2016-02-01 09:53+0000\n" +"Last-Translator: Jarmo Kortetjärvi \n" +"Language-Team: Finnish (http://www.transifex.com/oca/OCA-web-8-0/language/fi/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: fi\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/xml/base.xml:30 +#, python-format +msgid "Cancel" +msgstr "Peru" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/xml/base.xml:7 +#, python-format +msgid "Field" +msgstr "Kenttä" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/xml/base.xml:29 +#, python-format +msgid "Save" +msgstr "Tallenna" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/js/web_translate_dialog.js:15 +#, python-format +msgid "Translate" +msgstr "Käännä" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/js/web_translate_dialog.js:37 +#, python-format +msgid "Translations" +msgstr "Käännökset" diff --git a/web_translate_dialog/i18n/fr.po b/web_translate_dialog/i18n/fr.po index 57ea09a4..ad0ac61c 100644 --- a/web_translate_dialog/i18n/fr.po +++ b/web_translate_dialog/i18n/fr.po @@ -1,19 +1,43 @@ -# Translation of OpenERP Server. +# Translation of Odoo Server. # This file contains the translation of the following modules: -# +# * web_translate_dialog +# +# Translators: +# Mohamed HABOU , 2016 msgid "" msgstr "" -"Project-Id-Version: OpenERP Server 7.0\n" +"Project-Id-Version: web (8.0)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2013-12-09 07:15+0000\n" -"PO-Revision-Date: 2014-03-07 15:45+0000\n" -"Last-Translator: Guewen Baconnier @ Camptocamp \n" -"Language-Team: \n" +"POT-Creation-Date: 2016-01-10 07:31+0000\n" +"PO-Revision-Date: 2016-01-14 14:50+0000\n" +"Last-Translator: Mohamed HABOU \n" +"Language-Team: French (http://www.transifex.com/oca/OCA-web-8-0/language/fr/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-06-28 06:02+0000\n" -"X-Generator: Launchpad (build 17077)\n" +"Content-Transfer-Encoding: \n" +"Language: fr\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/xml/base.xml:30 +#, python-format +msgid "Cancel" +msgstr "Annuler" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/xml/base.xml:7 +#, python-format +msgid "Field" +msgstr "Champ" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/xml/base.xml:29 +#, python-format +msgid "Save" +msgstr "Enregistrer" #. module: web_translate_dialog #. openerp-web @@ -28,10 +52,3 @@ msgstr "Traduire" #, python-format msgid "Translations" msgstr "Traductions" - -#. module: web_translate_dialog -#. openerp-web -#: code:addons/web_translate_dialog/static/src/xml/base.xml:7 -#, python-format -msgid "Field" -msgstr "Champ" diff --git a/web_translate_dialog/i18n/it.po b/web_translate_dialog/i18n/it.po new file mode 100644 index 00000000..ba916c46 --- /dev/null +++ b/web_translate_dialog/i18n/it.po @@ -0,0 +1,54 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * web_translate_dialog +# +# Translators: +# Paolo Valier, 2016 +msgid "" +msgstr "" +"Project-Id-Version: web (8.0)\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-03-17 07:30+0000\n" +"PO-Revision-Date: 2016-03-19 10:15+0000\n" +"Last-Translator: Paolo Valier\n" +"Language-Team: Italian (http://www.transifex.com/oca/OCA-web-8-0/language/it/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: it\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/xml/base.xml:30 +#, python-format +msgid "Cancel" +msgstr "Annulla" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/xml/base.xml:7 +#, python-format +msgid "Field" +msgstr "Campo" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/xml/base.xml:29 +#, python-format +msgid "Save" +msgstr "Salva" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/js/web_translate_dialog.js:15 +#, python-format +msgid "Translate" +msgstr "Traduci" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/js/web_translate_dialog.js:37 +#, python-format +msgid "Translations" +msgstr "Traduzioni" diff --git a/web_translate_dialog/i18n/pt_BR.po b/web_translate_dialog/i18n/pt_BR.po new file mode 100644 index 00000000..f51d8662 --- /dev/null +++ b/web_translate_dialog/i18n/pt_BR.po @@ -0,0 +1,54 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * web_translate_dialog +# +# Translators: +# danimaribeiro , 2016 +msgid "" +msgstr "" +"Project-Id-Version: web (8.0)\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-03-11 02:17+0000\n" +"PO-Revision-Date: 2016-03-05 16:20+0000\n" +"Last-Translator: danimaribeiro \n" +"Language-Team: Portuguese (Brazil) (http://www.transifex.com/oca/OCA-web-8-0/language/pt_BR/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: pt_BR\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/xml/base.xml:30 +#, python-format +msgid "Cancel" +msgstr "Cancelar" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/xml/base.xml:7 +#, python-format +msgid "Field" +msgstr "Campo" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/xml/base.xml:29 +#, python-format +msgid "Save" +msgstr "Salvar" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/js/web_translate_dialog.js:15 +#, python-format +msgid "Translate" +msgstr "Traduzir" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/js/web_translate_dialog.js:37 +#, python-format +msgid "Translations" +msgstr "Traduções" diff --git a/web_translate_dialog/i18n/sl.po b/web_translate_dialog/i18n/sl.po new file mode 100644 index 00000000..296350ff --- /dev/null +++ b/web_translate_dialog/i18n/sl.po @@ -0,0 +1,54 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * web_translate_dialog +# +# Translators: +# Matjaž Mozetič , 2015 +msgid "" +msgstr "" +"Project-Id-Version: web (8.0)\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2015-11-23 13:46+0000\n" +"PO-Revision-Date: 2015-11-08 05:47+0000\n" +"Last-Translator: Matjaž Mozetič \n" +"Language-Team: Slovenian (http://www.transifex.com/oca/OCA-web-8-0/language/sl/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: sl\n" +"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/xml/base.xml:30 +#, python-format +msgid "Cancel" +msgstr "Preklic" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/xml/base.xml:7 +#, python-format +msgid "Field" +msgstr "Polje" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/xml/base.xml:29 +#, python-format +msgid "Save" +msgstr "Shrani" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/js/web_translate_dialog.js:15 +#, python-format +msgid "Translate" +msgstr "Prevod" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/js/web_translate_dialog.js:37 +#, python-format +msgid "Translations" +msgstr "Prevodi" diff --git a/web_translate_dialog/i18n/tr.po b/web_translate_dialog/i18n/tr.po index f57ec97f..82c70a3f 100644 --- a/web_translate_dialog/i18n/tr.po +++ b/web_translate_dialog/i18n/tr.po @@ -1,21 +1,44 @@ -# Turkish translation for web-addons -# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 -# This file is distributed under the same license as the web-addons package. -# FIRST AUTHOR , 2014. -# +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * web_translate_dialog +# +# Translators: +# Ahmet Altınışık , 2015 +# FIRST AUTHOR , 2014 msgid "" msgstr "" -"Project-Id-Version: web-addons\n" -"Report-Msgid-Bugs-To: FULL NAME \n" -"POT-Creation-Date: 2013-12-09 07:15+0000\n" -"PO-Revision-Date: 2014-03-07 22:08+0000\n" -"Last-Translator: Ediz Duman \n" -"Language-Team: Turkish \n" +"Project-Id-Version: web (8.0)\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-01-08 21:34+0000\n" +"PO-Revision-Date: 2015-12-30 22:16+0000\n" +"Last-Translator: Ahmet Altınışık \n" +"Language-Team: Turkish (http://www.transifex.com/oca/OCA-web-8-0/language/tr/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2014-06-28 06:02+0000\n" -"X-Generator: Launchpad (build 17077)\n" +"Content-Transfer-Encoding: \n" +"Language: tr\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/xml/base.xml:30 +#, python-format +msgid "Cancel" +msgstr "İptal" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/xml/base.xml:7 +#, python-format +msgid "Field" +msgstr "Alan" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/xml/base.xml:29 +#, python-format +msgid "Save" +msgstr "Kaydet" #. module: web_translate_dialog #. openerp-web @@ -30,10 +53,3 @@ msgstr "Çeviri" #, python-format msgid "Translations" msgstr "daha çevrilmedi" - -#. module: web_translate_dialog -#. openerp-web -#: code:addons/web_translate_dialog/static/src/xml/base.xml:7 -#, python-format -msgid "Field" -msgstr "Alan" From a2c4c973b9dc33f0bead8cf511798e3ff059469b Mon Sep 17 00:00:00 2001 From: Alexandre Fayolle Date: Fri, 6 May 2016 16:49:34 +0200 Subject: [PATCH 2/4] minor improvements to README.rst --- web_translate_dialog/README.rst | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/web_translate_dialog/README.rst b/web_translate_dialog/README.rst index d0c95f0b..00a5ceaf 100644 --- a/web_translate_dialog/README.rst +++ b/web_translate_dialog/README.rst @@ -1,11 +1,12 @@ Web Translate Dialog ==================== -This module replaces the standard translation view by an easy-to-use pop-up view where you can translate all the fields of the object in all the installed languages (for the ancient users, it may remind them the translation pop-up of OpenERP 6.1). +This module replaces the standard translation view by an easy-to-use pop-up view where you can translate all the fields of the object in all the installed languages (for long-time users, it may remind them the translation pop-up of OpenERP 6.1). -This module also features : -* Adds a *Translate* button item in the *More* menu -* Support HTML fields +This module also features: + +* A *Translate* button item in the *More* menu +* Support for HTML fields * Autosize the textareas to the size of the content Usage From 1312ad1c1b5ae45bdf1883ce4dcfecf2cb8a643b Mon Sep 17 00:00:00 2001 From: OCA Transbot Date: Sun, 3 Jul 2016 20:48:52 -0400 Subject: [PATCH 3/4] OCA Transbot updated translations from Transifex --- web_translate_dialog/i18n/hr.po | 53 +++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 web_translate_dialog/i18n/hr.po diff --git a/web_translate_dialog/i18n/hr.po b/web_translate_dialog/i18n/hr.po new file mode 100644 index 00000000..dea03d81 --- /dev/null +++ b/web_translate_dialog/i18n/hr.po @@ -0,0 +1,53 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * web_translate_dialog +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: web (8.0)\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-06-24 00:46+0000\n" +"PO-Revision-Date: 2015-11-07 11:21+0000\n" +"Last-Translator: <>\n" +"Language-Team: Croatian (http://www.transifex.com/oca/OCA-web-8-0/language/hr/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: hr\n" +"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/xml/base.xml:30 +#, python-format +msgid "Cancel" +msgstr "Otkaži" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/xml/base.xml:7 +#, python-format +msgid "Field" +msgstr "" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/xml/base.xml:29 +#, python-format +msgid "Save" +msgstr "" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/js/web_translate_dialog.js:15 +#, python-format +msgid "Translate" +msgstr "" + +#. module: web_translate_dialog +#. openerp-web +#: code:addons/web_translate_dialog/static/src/js/web_translate_dialog.js:37 +#, python-format +msgid "Translations" +msgstr "" From 03ba7cc69eca47e7f324039aa848f87dc2028ac7 Mon Sep 17 00:00:00 2001 From: Antonio Espinosa Date: Thu, 21 Jul 2016 09:37:53 +0200 Subject: [PATCH 4/4] [MIG] web_translate_dialog --- web_translate_dialog/README.rst | 48 ++- web_translate_dialog/__openerp__.py | 56 ++- web_translate_dialog/static/src/css/base.css | 3 + .../static/src/js/web_translate_dialog.js | 403 +++++++++--------- web_translate_dialog/static/src/xml/base.xml | 71 +-- web_translate_dialog/view/web_translate.xml | 11 +- 6 files changed, 333 insertions(+), 259 deletions(-) diff --git a/web_translate_dialog/README.rst b/web_translate_dialog/README.rst index 00a5ceaf..10d92814 100644 --- a/web_translate_dialog/README.rst +++ b/web_translate_dialog/README.rst @@ -1,7 +1,15 @@ +.. image:: https://img.shields.io/badge/licence-AGPL--3-blue.svg + :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html + :alt: License: AGPL-3 + +==================== Web Translate Dialog ==================== -This module replaces the standard translation view by an easy-to-use pop-up view where you can translate all the fields of the object in all the installed languages (for long-time users, it may remind them the translation pop-up of OpenERP 6.1). +This module replaces the standard translation view by an easy-to-use pop-up +view where you can translate all the fields of the object in all the installed +languages (for long-time users, it may remind them the translation pop-up of +OpenERP 6.1). This module also features: @@ -12,25 +20,53 @@ This module also features: Usage ===== -Go to an object that has translatable fields (*Products* for example) and select *More > Translate* (or click on *Edit* and then click on the flag at the top-right of one of the translatable fields): the translation view will pop-up on your screen. This translation view contains all the translatable fields of the object. +Go to an object that has translatable fields (*Products* for example) and +select *More > Translate* (or click on *Edit* and then click on the flag at +the top-right of one of the translatable fields): the translation view will +pop-up on your screen. This translation view contains all the translatable +fields of the object. + +If you click in the standard translate icon then the translation view will +pop-up with this field only. + +.. image:: https://odoo-community.org/website/image/ir.attachment/5784_f2813bd/datas + :alt: Try me on Runbot + :target: https://runbot.odoo-community.org/runbot/162/9.0 + + +Bug Tracker +=========== + +Bugs are tracked on `GitHub Issues +`_. In case of trouble, please +check there if your issue has already been reported. If you spotted it first, +help us smashing it by providing a detailed and welcomed feedback. Credits ======= +Images +------ + +* Odoo Community Association: `Icon `_. + Contributors ------------ * Guewen Baconnier (Camptocamp) +* Antonio Espinosa Maintainer ---------- -.. image:: http://odoo-community.org/logo.png +.. image:: https://odoo-community.org/logo.png :alt: Odoo Community Association - :target: http://odoo-community.org + :target: https://odoo-community.org This module is maintained by the OCA. -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. +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. -To contribute to this module, please visit http://odoo-community.org. +To contribute to this module, please visit https://odoo-community.org. diff --git a/web_translate_dialog/__openerp__.py b/web_translate_dialog/__openerp__.py index 2656bd36..7dd28159 100644 --- a/web_translate_dialog/__openerp__.py +++ b/web_translate_dialog/__openerp__.py @@ -1,32 +1,26 @@ # -*- coding: utf-8 -*- -############################################################################## -# -# Author: Guewen Baconnier -# Copyright 2012 Camptocamp SA -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU Affero General Public License as -# published by the Free Software Foundation, either version 3 of the -# License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Affero General Public License for more details. -# -# You should have received a copy of the GNU Affero General Public License -# along with this program. If not, see . -# -############################################################################## - -{"name": "Web Translate Dialog", - "category": "Web", - "summary": "Easy-to-use pop-up to translate fields in several languages", - "license": "AGPL-3", - "author": "Camptocamp,Odoo Community Association (OCA)", - "version": "8.0.1.0.0", - "depends": ['web'], - 'data': ['view/web_translate.xml'], - 'qweb': ["static/src/xml/base.xml"], - 'installable': False, - } +# Copyright 2012 Guewen Baconnier (Camptocamp SA) +# Copyright 2016 Antonio Espinosa +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). +{ + "name": "Web Translate Dialog", + "summary": "Easy-to-use pop-up to translate fields in several languages", + "version": "9.0.1.0.0", + "category": "Web", + "website": "https://odoo-community.org/", + "author": "Camptocamp, " + "Tecnativa, " + "Odoo Community Association (OCA)", + "license": "AGPL-3", + "application": False, + "installable": True, + "depends": [ + "web", + ], + "data": [ + "view/web_translate.xml", + ], + "qweb": [ + "static/src/xml/base.xml", + ] +} diff --git a/web_translate_dialog/static/src/css/base.css b/web_translate_dialog/static/src/css/base.css index 8f884849..aec33758 100644 --- a/web_translate_dialog/static/src/css/base.css +++ b/web_translate_dialog/static/src/css/base.css @@ -1,3 +1,6 @@ +/* Copyright 2012 Guewen Baconnier (Camptocamp SA) + * License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). */ + .openerp .oe_translation_field { width: 95%; } diff --git a/web_translate_dialog/static/src/js/web_translate_dialog.js b/web_translate_dialog/static/src/js/web_translate_dialog.js index 89c284c1..cbce9f5e 100644 --- a/web_translate_dialog/static/src/js/web_translate_dialog.js +++ b/web_translate_dialog/static/src/js/web_translate_dialog.js @@ -1,209 +1,228 @@ -openerp.web_translate_dialog = function (instance) { +/* Copyright 2012 Guewen Baconnier (Camptocamp SA) + Copyright 2016 Antonio Espinosa + * License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). */ - "use strict"; +odoo.define('web_translate_dialog.translate_dialog', function(require){ +"use strict"; - var QWeb = instance.web.qweb, - _t = instance.web._t, - _lt = instance.web._lt; +var _ = require('_'); +var $ = require('$'); - instance.web.FormView.include({ - load_form: function(data) { - var self = this; - this._super(data); - if (this.sidebar) { - this.sidebar.add_items('other', _.compact([ - self.is_action_enabled('edit') && { label: _t('Translate'), callback: self.on_button_translate }, - ])); - } - }, - on_button_translate: function() { - var self = this; - $.when(this.has_been_loaded).then(function() { - self.open_translate_dialog(this); - }); - }, - }); +var core = require('web.core'); +var data = require('web.data'); +var common = require('web.form_common'); - instance.web.View.include({ - open_translate_dialog: function() { - new instance.web_translate_dialog.TranslateDialog(this).open(); - } - }); +var FormView = require('web.FormView'); +var View = require('web.View'); +var Dialog = require('web.Dialog'); - instance.web_translate_dialog.TranslateDialog = instance.web.Dialog.extend({ - template: "TranslateDialog", - init: function(parent, options, content) { - this._super(parent, - {title: _t("Translations"), - width: '90%', - height: '80%'}, - content); - this.view_language = this.session.user_context.lang; - this.view = parent; - this.view_type = parent.fields_view.type || ''; - this.$view_form = null; - this.$sidebar_form = null; - this.translatable_fields_keys = _.map(this.view.translatable_fields || [], function(i) { return i.name;}); - this.languages = null; - this.languages_loaded = $.Deferred(); - (new instance.web.DataSetSearch(this, - 'res.lang', - this.view.dataset.get_context(), - [['translatable', '=', '1']])) - .read_slice(['code', 'name'], { sort: 'id' }) - .then(this.on_languages_loaded); - }, - on_languages_loaded: function(langs) { - this.languages = langs; - this.languages_loaded.resolve(); - }, - open: function() { - var self = this, - sup = this._super; - // the template needs the languages - $.when(this.languages_loaded).then(function() { - return sup.call(self); - }); - }, - start: function() { - var self = this; - this.$el.find('.oe_translation_field').change(function() { - $(this).toggleClass('touched', ($(this).val() != $(this).attr('data-value'))); - }); - this.$buttons.html(QWeb.render("TranslateDialog.buttons")); - this.$buttons.find(".oe_form_translate_dialog_save_button").click(function(){ - self.on_button_save(); - self.on_button_close(); - }); - this.$buttons.find(".oe_form_translate_dialog_cancel_button").click(function(){ - self.on_button_close(); - }); - this.initialize_html_fields(); +var _t = core._t; +var QWeb = core.qweb; - this.do_load_fields_values(); - }, - initialize_html_fields: function() { - this.$el.find('.oe_form_field_html textarea').each(function() { - var $textarea = $(this); - var width = 100; // forced to fixed size on initialization - // will be changed to percentage right after - // the creation - var height = 250; - $textarea.cleditor({ - width: width, // width not including margins, borders or padding - height: height, // height not including margins, borders or padding - controls: // controls to add to the toolbar - "bold italic underline strikethrough " + - "| removeformat | bullets numbering | outdent " + - "indent | link unlink | source", - bodyStyle: // style to assign to document body contained within the editor - "margin:4px; color:#4c4c4c; font-size:13px; font-family:'Lucida Grande',Helvetica,Verdana,Arial,sans-serif; cursor:text" - }); +var translateDialog = Dialog.extend({ + template: "TranslateDialog", + init: function(parent, field, content) { + this._super(parent, + {title: _t("Translations"), + width: '90%', + height: '80%'}, + content); + this.view_language = this.session.user_context.lang; + this.view = parent; + this.view_type = parent.fields_view.type || ''; + this.$view_form = null; + this.$sidebar_form = null; + if (!!field) { + this.translatable_fields_keys = [field]; + this.translatable_fields = _.filter( + this.view.translatable_fields || [], + function(i) {return i.name == field;} + ); + } else { + this.translatable_fields_keys = _.map( + this.view.translatable_fields || [], + function(i) {return i.name;} + ); + this.translatable_fields = this.view.translatable_fields.slice(0); + } + this.languages = null; + this.languages_loaded = $.Deferred(); + (new data.DataSetSearch(this, 'res.lang', this.view.dataset.get_context(), + [['translatable', '=', '1']])) + .read_slice(['code', 'name'], { sort: 'id' }) + .then(this.on_languages_loaded); + }, + on_languages_loaded: function(langs) { + this.languages = langs; + this.languages_loaded.resolve(); + }, + open: function() { + var self = this, + sup = this._super; + // the template needs the languages + $.when(this.languages_loaded).then(function() { + return sup.call(self); + }); + }, + start: function() { + var self = this; + this.$el.find('.oe_translation_field').change(function() { + $(this).toggleClass('touched', ($(this).val() != $(this).attr('data-value'))); + }); + this.$footer.html(QWeb.render("TranslateDialog.buttons")); + this.$footer.find(".oe_form_translate_dialog_save_button").click(function(){ + self.on_button_save(); + self.on_button_close(); + }); + this.$footer.find(".oe_form_translate_dialog_cancel_button").click(function(){ + self.on_button_close(); + }); - var $cleditor = $textarea.cleditor()[0]; - // Down to -- end, this is a workaround for the bug - // https://bugs.launchpad.net/openerp-web/+bug/1258463 - // The editor is initially created with a fixed size so - // the buggy event is not bound to $(window), then we restore - // a percentage width and bind the "normal" event without the - // CHM's buggy change. - $cleditor.$main.width('95%'); - $cleditor.options.width = '95%'; - $(window).resize(function() { - //Forcefully blurred iframe contentWindow, chrome, IE, safari doesn't trigger blur on window resize and due to which text disappears - var contentWindow = $cleditor.$frame[0].contentWindow; - if(!$.browser.mozilla && contentWindow){ - $(contentWindow).trigger('blur'); + this.do_load_fields_values(); + }, + initialize_html_fields: function(lang) { + var self = this; + _.each(this.translatable_fields_keys, function(f) { + // Initialize summernote if HTML field + self.$el.find('.oe_form_field_html .oe_translation_field[name="' + lang.code + '-' + f + '"]').each(function() { + var $parent = $(this).summernote({ + 'focus': false, + 'toolbar': [ + ['style', ['style']], + ['font', ['bold', 'italic', 'underline', 'clear']], + ['fontsize', ['fontsize']], + ['color', ['color']], + ['para', ['ul', 'ol', 'paragraph']], + ['table', ['table']], + ['insert', ['link', 'picture']], + ['history', ['undo', 'redo']] + ], + 'prettifyHtml': false, + 'styleWithSpan': false, + 'inlinemedia': ['p'], + 'lang': "odoo", + 'onChange': function (value) { + $(this).toggleClass('touched', (value != $(this).attr('data-value'))); } + }).parent(); + // Triggers a mouseup to refresh the editor toolbar + $parent.find('.note-editable').trigger('mouseup'); + $parent.find('.note-editing-area').css({ + minHeight:'100px', + minWidth:'260px', }); - $cleditor.refresh(); - // -- end + }); + }); + }, + set_fields_values: function(lang, values) { + var self = this; + _.each(this.translatable_fields_keys, function(f) { + self.$el.find('.oe_translation_field[name="' + lang.code + '-' + f + '"]') + .val(values[f] || '') + .attr('data-value', values[f] || ''); + }); + this.$el.find('textarea.oe_translation_field').css({ + minHeight:'100px', + }); + $(window).resize(); // triggers the autosize + this.initialize_html_fields(lang); + }, + do_load_fields_values: function() { + var self = this, + deferred = []; - $cleditor.change(function() { - this.updateTextArea(); - this.$area.toggleClass('touched', - (this.$area.val() != this.$area.attr('data-value'))); + this.$el.find('.oe_translation_field').val('').removeClass('touched'); + _.each(self.languages, function(lg) { + var deff = $.Deferred(); + deferred.push(deff); + if (lg.code === self.view_language) { + var values = {}; + _.each(self.translatable_fields_keys, function(field) { + values[field] = self.view.fields[field].get_value(); }); + self.set_fields_values(lg, values); + deff.resolve(); + } else { + self.view.dataset.call( + 'read', + [[self.view.datarecord.id], + self.translatable_fields_keys, + self.view.dataset.get_context({ + 'lang': lg.code + })]).done(function (rows) { + self.set_fields_values(lg, rows[0]); + deff.resolve(); + }); + } + }); + return deferred; + }, + on_button_save: function() { + var translations = {}, + self = this, + translation_mutex = new $.Mutex(); + self.$el.find('.oe_translation_field.touched').each(function() { + var field = $(this).attr('name').split('-'); + if (!translations[field[0]]) { + translations[field[0]] = {}; + } + translations[field[0]][field[1]] = $(this).val(); + }); + _.each(translations, function(text, code) { + if (code === self.view_language) { + self.view.set_values(text); + } + translation_mutex.exec(function() { + return new data.DataSet(self, self.view.dataset.model, + self.view.dataset.get_context()) + .write(self.view.datarecord.id, text, + { context : { 'lang': code }}); }); - }, - set_fields_values: function(lang, values) { - var self = this; - _.each(this.translatable_fields_keys, function(f) { - self.$el.find('.oe_translation_field[name="' + lang.code + '-' + f + '"]') - .val(values[f] || '') - .attr('data-value', values[f] || ''); + }); + this.close(); + }, + on_button_close: function() { + this.close(); + }, - var $tarea = self.$el.find('.oe_form_field_html .oe_translation_field[name="' + lang.code + '-' + f + '"]'); - if ($tarea.length) { - $tarea.cleditor()[0].updateFrame(); - } - }); - var $textarea = this.$el.find('textarea.oe_translation_field'); - $textarea.css({minHeight:'100px'}); - $textarea.autosize(); - $(window).resize(); // triggers the autosize - }, - do_load_fields_values: function() { - var self = this, - deferred = []; +}); - this.$el.find('.oe_translation_field').val('').removeClass('touched'); - _.each(self.languages, function(lg) { - var deff = $.Deferred(); - deferred.push(deff); - if (lg.code === self.view_language) { - var values = {}; - _.each(self.translatable_fields_keys, function(field) { - values[field] = self.view.fields[field].get_value(); - }); - self.set_fields_values(lg, values); - deff.resolve(); - } else { - self.view.dataset.call( - 'read', - [[self.view.datarecord.id], - self.translatable_fields_keys, - self.view.dataset.get_context({ - 'lang': lg.code - })]).done(function (rows) { - self.set_fields_values(lg, rows[0]); - deff.resolve(); - }); - }; - }); - return deferred; - }, - on_button_save: function() { - var translations = {}, - self = this, - translation_mutex = new $.Mutex(); - self.$el.find('.oe_translation_field.touched').each(function() { - var field = $(this).attr('name').split('-'); - if (!translations[field[0]]) { - translations[field[0]] = {}; - } - translations[field[0]][field[1]] = $(this).val(); - }); - _.each(translations, function(data, code) { - if (code === self.view_language) { - self.view.set_values(data); - } - translation_mutex.exec(function() { - return new instance.web.DataSet(self, self.view.dataset.model, self.view.dataset.get_context()).write(self.view.datarecord.id, data, { context : { 'lang': code }}); - }); - }); - this.close(); - }, - on_button_close: function() { - this.close(); - }, +FormView.include({ + render_sidebar: function($node) { + this._super($node); + if (this.sidebar) { + this.sidebar.add_items('other', _.compact([ + this.is_action_enabled('edit') && + this.translatable_fields.length > 0 && { + label: _t('Translate'), + callback: this.on_button_translate + }, + ])); + } + }, + on_button_translate: function() { + var self = this; + $.when(this.has_been_loaded).then(function() { + self.open_translate_dialog(); + }); + }, +}); - }); +View.include({ + open_translate_dialog: function(field) { + new translateDialog(this, field).open(); + } +}); - instance.web.form.AbstractField.include({ - on_translate: function() { - // the image next to the fields opens the translate dialog - this.view.open_translate_dialog(); - }, - }); +common.AbstractField.include({ + on_translate: function() { + // the image next to the fields opens the translate dialog + this.view.open_translate_dialog(this.name); + }, +}); + +return { + translateDialog: translateDialog, }; + +}); // odoo.define diff --git a/web_translate_dialog/static/src/xml/base.xml b/web_translate_dialog/static/src/xml/base.xml index 689586b5..ae3ee5e2 100644 --- a/web_translate_dialog/static/src/xml/base.xml +++ b/web_translate_dialog/static/src/xml/base.xml @@ -1,34 +1,51 @@ - + + +