合并企业版代码(未测试,先提交到测试分支)

This commit is contained in:
qihao.gong@jikimo.com
2023-04-14 17:42:23 +08:00
parent 7a7b3d7126
commit d28525526a
1300 changed files with 513579 additions and 5426 deletions

4
web_mobile/__init__.py Normal file
View File

@@ -0,0 +1,4 @@
# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
from . import models

View File

@@ -0,0 +1,32 @@
# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
{
'name': 'Mobile',
'category': 'Hidden',
'summary': 'Odoo Mobile Core module',
'version': '1.0',
'description': """
This module provides the core of the Odoo Mobile App.
""",
'depends': [
'web_enterprise',
],
'data': [
'views/views.xml',
],
'assets': {
'web.assets_backend': [
'web_mobile/static/src/**/*',
],
'web.tests_assets': [
'web_mobile/static/tests/helpers/**/*',
],
'web.qunit_mobile_suite_tests': [
'web_mobile/static/tests/*_mobile_tests.js',
],
},
'installable': True,
'auto_install': True,
'license': 'OEEL-1',
}

51
web_mobile/i18n/af.po Normal file
View File

@@ -0,0 +1,51 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.saas~18+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-09-20 11:33+0000\n"
"PO-Revision-Date: 2017-09-20 11:33+0000\n"
"Language-Team: Afrikaans (https://www.transifex.com/odoo/teams/41243/af/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: af\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:10
#, python-format
msgid "Mobile"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:56
#, python-format
msgid "No shortcut for App Switcher"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:10
#, python-format
msgid "Switch/Add Account"
msgstr ""

51
web_mobile/i18n/am.po Normal file
View File

@@ -0,0 +1,51 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.saas~18+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-09-20 11:33+0000\n"
"PO-Revision-Date: 2017-09-20 11:33+0000\n"
"Language-Team: Amharic (https://www.transifex.com/odoo/teams/41243/am/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: am\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:10
#, python-format
msgid "Mobile"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:56
#, python-format
msgid "No shortcut for App Switcher"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:10
#, python-format
msgid "Switch/Add Account"
msgstr ""

52
web_mobile/i18n/ar.po Normal file
View File

@@ -0,0 +1,52 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Martin Trigaux, 2022
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0beta+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-09-23 08:25+0000\n"
"PO-Revision-Date: 2022-09-22 05:49+0000\n"
"Last-Translator: Martin Trigaux, 2022\n"
"Language-Team: Arabic (https://www.transifex.com/odoo/teams/41243/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_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Add to Home Screen"
msgstr "إضافة إلى الشاشة الرئيسية "
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_partner
msgid "Contact"
msgstr "جهة الاتصال"
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_partner__image_medium
#: model:ir.model.fields,field_description:web_mobile.field_res_users__image_medium
msgid "Medium-sized image"
msgstr "صورة متوسطة الحجم"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "No shortcut for Home Menu"
msgstr "لا توجد اختصارات للقائمة الرئيسية"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Switch/Add Account"
msgstr "تغيير الحساب/إضافة حساب جديد"

52
web_mobile/i18n/az.po Normal file
View File

@@ -0,0 +1,52 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Jumshud Sultanov <cumshud@gmail.com>, 2022
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0beta+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-09-23 08:25+0000\n"
"PO-Revision-Date: 2022-09-22 05:49+0000\n"
"Last-Translator: Jumshud Sultanov <cumshud@gmail.com>, 2022\n"
"Language-Team: Azerbaijani (https://www.transifex.com/odoo/teams/41243/az/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: az\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_partner
msgid "Contact"
msgstr "Kontakt"
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_partner__image_medium
#: model:ir.model.fields,field_description:web_mobile.field_res_users__image_medium
msgid "Medium-sized image"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "No shortcut for Home Menu"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Switch/Add Account"
msgstr ""

51
web_mobile/i18n/bg.po Normal file
View File

@@ -0,0 +1,51 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.saas~18+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-09-20 11:33+0000\n"
"PO-Revision-Date: 2017-09-20 11:33+0000\n"
"Language-Team: Bulgarian (https://www.transifex.com/odoo/teams/41243/bg/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: bg\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:10
#, python-format
msgid "Mobile"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:56
#, python-format
msgid "No shortcut for App Switcher"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:10
#, python-format
msgid "Switch/Add Account"
msgstr ""

76
web_mobile/i18n/bs.po Normal file
View File

@@ -0,0 +1,76 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Martin Trigaux, 2018
# Boško Stojaković <bluesoft83@gmail.com>, 2018
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~11.5+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-09-18 10:05+0000\n"
"PO-Revision-Date: 2018-09-18 10:05+0000\n"
"Last-Translator: Boško Stojaković <bluesoft83@gmail.com>, 2018\n"
"Language-Team: Bosnian (https://www.transifex.com/odoo/teams/41243/bs/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: bs\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_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:7
#, python-format
msgid "Add"
msgstr "Dodaj"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:6
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:10
#, python-format
msgid "Mobile"
msgstr "Mobitel"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:58
#, python-format
msgid "No shortcut for Home Menu"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:14
#, python-format
msgid "On Apple Store"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:9
#, python-format
msgid "On Google Play"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Switch/Add Account"
msgstr ""

53
web_mobile/i18n/ca.po Normal file
View File

@@ -0,0 +1,53 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Martin Trigaux, 2022
# Arnau Ros, 2022
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0beta+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-09-23 08:25+0000\n"
"PO-Revision-Date: 2022-09-22 05:49+0000\n"
"Last-Translator: Arnau Ros, 2022\n"
"Language-Team: Catalan (https://www.transifex.com/odoo/teams/41243/ca/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: ca\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Add to Home Screen"
msgstr "Afegir a la pàgina d'inici"
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_partner
msgid "Contact"
msgstr "Contacte"
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_partner__image_medium
#: model:ir.model.fields,field_description:web_mobile.field_res_users__image_medium
msgid "Medium-sized image"
msgstr "Imatge de mida mitjana"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "No shortcut for Home Menu"
msgstr "Sense accés directe per al menú d'inici"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Switch/Add Account"
msgstr "Canviar/Afegir Compte"

53
web_mobile/i18n/cs.po Normal file
View File

@@ -0,0 +1,53 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Jan Horzinka <jan.horzinka@centrum.cz>, 2022
# trendspotter <jirka.p@volny.cz>, 2022
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0beta+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-09-23 08:25+0000\n"
"PO-Revision-Date: 2022-09-22 05:49+0000\n"
"Last-Translator: trendspotter <jirka.p@volny.cz>, 2022\n"
"Language-Team: Czech (https://www.transifex.com/odoo/teams/41243/cs/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: cs\n"
"Plural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Add to Home Screen"
msgstr "Přidat na domácí obrazovku"
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_partner
msgid "Contact"
msgstr "Kontakt"
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_partner__image_medium
#: model:ir.model.fields,field_description:web_mobile.field_res_users__image_medium
msgid "Medium-sized image"
msgstr "Středně velký obrázek"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "No shortcut for Home Menu"
msgstr "Žádná zkratka pro nabídku Domů"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Switch/Add Account"
msgstr "Přepnout / přidat účet"

115
web_mobile/i18n/da.po Normal file
View File

@@ -0,0 +1,115 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Martin Trigaux, 2019
# Sanne Kristensen <sanne@vkdata.dk>, 2019
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~12.5+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-08-26 08:05+0000\n"
"PO-Revision-Date: 2019-08-26 09:38+0000\n"
"Last-Translator: Sanne Kristensen <sanne@vkdata.dk>, 2019\n"
"Language-Team: Danish (https://www.transifex.com/odoo/teams/41243/da/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: da\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:0
#, python-format
msgid "Add"
msgstr "Tilføj"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:0
#, python-format
msgid "Add to"
msgstr "Tilføj til"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:0
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_config_settings
msgid "Config Settings"
msgstr "Konfigurer opsætning"
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_partner
msgid "Contact"
msgstr "Kontakt"
#. module: web_mobile
#: model_terms:ir.ui.view,arch_db:web_mobile.res_config_settings_view_form
msgid "Get notifications on Android and iOS application"
msgstr ""
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_partner__image_medium
#: model:ir.model.fields,field_description:web_mobile.field_res_users__image_medium
msgid "Medium-sized image"
msgstr "Mellem størrelse billede"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:0
#, python-format
msgid "Mobile"
msgstr "Mobil"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:0
#, python-format
msgid "No shortcut for Home Menu"
msgstr ""
#. module: web_mobile
#: model_terms:ir.ui.view,arch_db:web_mobile.res_config_settings_view_form
msgid "Odoo Cloud Notification (OCN)"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:0
#, python-format
msgid "On Apple Store"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:0
#, python-format
msgid "On Google Play"
msgstr ""
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_config_settings__module_ocn_client
msgid "Push Notifications"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/barcode_fields.xml:0
#, python-format
msgid "Scan barcode"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:0
#, python-format
msgid "Switch/Add Account"
msgstr "Skift/tilføj konto"

52
web_mobile/i18n/de.po Normal file
View File

@@ -0,0 +1,52 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Martin Trigaux, 2022
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0beta+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-09-23 08:25+0000\n"
"PO-Revision-Date: 2022-09-22 05:49+0000\n"
"Last-Translator: Martin Trigaux, 2022\n"
"Language-Team: German (https://www.transifex.com/odoo/teams/41243/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_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Add to Home Screen"
msgstr "Zum Homescreen hinzufügen"
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_partner
msgid "Contact"
msgstr "Kontakt"
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_partner__image_medium
#: model:ir.model.fields,field_description:web_mobile.field_res_users__image_medium
msgid "Medium-sized image"
msgstr "Mittelgroßes Bild"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "No shortcut for Home Menu"
msgstr "Keine Verknüpfung für das Start-Menü"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Switch/Add Account"
msgstr "Wechsle/Füge Konto hinzu"

84
web_mobile/i18n/el.po Normal file
View File

@@ -0,0 +1,84 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Martin Trigaux, 2018
# Kostas Goutoudis <goutoudis@gmail.com>, 2019
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~12.2+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-03-20 14:08+0000\n"
"PO-Revision-Date: 2017-02-15 11:46+0000\n"
"Last-Translator: Kostas Goutoudis <goutoudis@gmail.com>, 2019\n"
"Language-Team: Greek (https://www.transifex.com/odoo/teams/41243/el/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: el\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:7
#, python-format
msgid "Add"
msgstr "Προσθήκη"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr "Προσθήκη στο"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:6
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Mobile"
msgstr "Κινητό"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:58
#, python-format
msgid "No shortcut for Home Menu"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:14
#, python-format
msgid "On Apple Store"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:9
#, python-format
msgid "On Google Play"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/barcode_fields.xml:13
#, python-format
msgid "Scan barcode"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Switch/Add Account"
msgstr "Εναλλαγή/Προσθήκη Λογαριασμού"

51
web_mobile/i18n/en_GB.po Normal file
View File

@@ -0,0 +1,51 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.saas~18+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-09-20 11:33+0000\n"
"PO-Revision-Date: 2017-09-20 11:33+0000\n"
"Language-Team: English (United Kingdom) (https://www.transifex.com/odoo/teams/41243/en_GB/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: en_GB\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:10
#, python-format
msgid "Mobile"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:56
#, python-format
msgid "No shortcut for App Switcher"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:10
#, python-format
msgid "Switch/Add Account"
msgstr ""

52
web_mobile/i18n/es.po Normal file
View File

@@ -0,0 +1,52 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Martin Trigaux, 2022
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0beta+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-09-23 08:25+0000\n"
"PO-Revision-Date: 2022-09-22 05:49+0000\n"
"Last-Translator: Martin Trigaux, 2022\n"
"Language-Team: Spanish (https://www.transifex.com/odoo/teams/41243/es/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: es\n"
"Plural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Add to Home Screen"
msgstr "Añadir a pantalla de inicio"
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_partner
msgid "Contact"
msgstr "Contacto"
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_partner__image_medium
#: model:ir.model.fields,field_description:web_mobile.field_res_users__image_medium
msgid "Medium-sized image"
msgstr "Imagen de tamaño mediano"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "No shortcut for Home Menu"
msgstr "No hay acceso directo para el menú de inicio"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Switch/Add Account"
msgstr "Cambiar/Añadir Cuenta"

51
web_mobile/i18n/es_AR.po Normal file
View File

@@ -0,0 +1,51 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.saas~18+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-09-20 11:33+0000\n"
"PO-Revision-Date: 2017-09-20 11:33+0000\n"
"Language-Team: Spanish (Argentina) (https://www.transifex.com/odoo/teams/41243/es_AR/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: es_AR\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:10
#, python-format
msgid "Mobile"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:56
#, python-format
msgid "No shortcut for App Switcher"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:10
#, python-format
msgid "Switch/Add Account"
msgstr ""

51
web_mobile/i18n/es_BO.po Normal file
View File

@@ -0,0 +1,51 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.saas~18+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-09-20 11:33+0000\n"
"PO-Revision-Date: 2017-09-20 11:33+0000\n"
"Language-Team: Spanish (Bolivia) (https://www.transifex.com/odoo/teams/41243/es_BO/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: es_BO\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:10
#, python-format
msgid "Mobile"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:56
#, python-format
msgid "No shortcut for App Switcher"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:10
#, python-format
msgid "Switch/Add Account"
msgstr ""

51
web_mobile/i18n/es_CL.po Normal file
View File

@@ -0,0 +1,51 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.saas~18+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-09-20 11:33+0000\n"
"PO-Revision-Date: 2017-09-20 11:33+0000\n"
"Language-Team: Spanish (Chile) (https://www.transifex.com/odoo/teams/41243/es_CL/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: es_CL\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:10
#, python-format
msgid "Mobile"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:56
#, python-format
msgid "No shortcut for App Switcher"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:10
#, python-format
msgid "Switch/Add Account"
msgstr ""

51
web_mobile/i18n/es_CO.po Normal file
View File

@@ -0,0 +1,51 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.saas~18+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-09-20 11:33+0000\n"
"PO-Revision-Date: 2017-09-20 11:33+0000\n"
"Language-Team: Spanish (Colombia) (https://www.transifex.com/odoo/teams/41243/es_CO/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: es_CO\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:10
#, python-format
msgid "Mobile"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:56
#, python-format
msgid "No shortcut for App Switcher"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:10
#, python-format
msgid "Switch/Add Account"
msgstr ""

51
web_mobile/i18n/es_CR.po Normal file
View File

@@ -0,0 +1,51 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.saas~18+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-09-20 11:33+0000\n"
"PO-Revision-Date: 2017-09-20 11:33+0000\n"
"Language-Team: Spanish (Costa Rica) (https://www.transifex.com/odoo/teams/41243/es_CR/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: es_CR\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:10
#, python-format
msgid "Mobile"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:56
#, python-format
msgid "No shortcut for App Switcher"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:10
#, python-format
msgid "Switch/Add Account"
msgstr ""

51
web_mobile/i18n/es_DO.po Normal file
View File

@@ -0,0 +1,51 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.saas~18+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-09-20 11:33+0000\n"
"PO-Revision-Date: 2017-09-20 11:33+0000\n"
"Language-Team: Spanish (Dominican Republic) (https://www.transifex.com/odoo/teams/41243/es_DO/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: es_DO\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:10
#, python-format
msgid "Mobile"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:56
#, python-format
msgid "No shortcut for App Switcher"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:10
#, python-format
msgid "Switch/Add Account"
msgstr ""

51
web_mobile/i18n/es_EC.po Normal file
View File

@@ -0,0 +1,51 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.saas~18+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-09-20 11:33+0000\n"
"PO-Revision-Date: 2017-09-20 11:33+0000\n"
"Language-Team: Spanish (Ecuador) (https://www.transifex.com/odoo/teams/41243/es_EC/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: es_EC\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:10
#, python-format
msgid "Mobile"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:56
#, python-format
msgid "No shortcut for App Switcher"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:10
#, python-format
msgid "Switch/Add Account"
msgstr ""

52
web_mobile/i18n/es_MX.po Normal file
View File

@@ -0,0 +1,52 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Martin Trigaux, 2022
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0beta+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-09-23 08:25+0000\n"
"PO-Revision-Date: 2022-09-22 05:49+0000\n"
"Last-Translator: Martin Trigaux, 2022\n"
"Language-Team: Spanish (Mexico) (https://www.transifex.com/odoo/teams/41243/es_MX/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: es_MX\n"
"Plural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Add to Home Screen"
msgstr "Añadir a pantalla de inicio"
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_partner
msgid "Contact"
msgstr "Contacto"
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_partner__image_medium
#: model:ir.model.fields,field_description:web_mobile.field_res_users__image_medium
msgid "Medium-sized image"
msgstr "Imagen de tamaño mediano"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "No shortcut for Home Menu"
msgstr "No hay acceso directo para el menú de inicio"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Switch/Add Account"
msgstr "Cambiar/Añadir cuenta"

51
web_mobile/i18n/es_PE.po Normal file
View File

@@ -0,0 +1,51 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.saas~18+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-09-20 11:33+0000\n"
"PO-Revision-Date: 2017-09-20 11:33+0000\n"
"Language-Team: Spanish (Peru) (https://www.transifex.com/odoo/teams/41243/es_PE/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: es_PE\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:10
#, python-format
msgid "Mobile"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:56
#, python-format
msgid "No shortcut for App Switcher"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:10
#, python-format
msgid "Switch/Add Account"
msgstr ""

51
web_mobile/i18n/es_PY.po Normal file
View File

@@ -0,0 +1,51 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.saas~18+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-09-20 11:33+0000\n"
"PO-Revision-Date: 2017-09-20 11:33+0000\n"
"Language-Team: Spanish (Paraguay) (https://www.transifex.com/odoo/teams/41243/es_PY/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: es_PY\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:10
#, python-format
msgid "Mobile"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:56
#, python-format
msgid "No shortcut for App Switcher"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:10
#, python-format
msgid "Switch/Add Account"
msgstr ""

51
web_mobile/i18n/es_VE.po Normal file
View File

@@ -0,0 +1,51 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.saas~18+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-09-20 11:33+0000\n"
"PO-Revision-Date: 2017-09-20 11:33+0000\n"
"Language-Team: Spanish (Venezuela) (https://www.transifex.com/odoo/teams/41243/es_VE/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: es_VE\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:10
#, python-format
msgid "Mobile"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:56
#, python-format
msgid "No shortcut for App Switcher"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:10
#, python-format
msgid "Switch/Add Account"
msgstr ""

78
web_mobile/i18n/et.po Normal file
View File

@@ -0,0 +1,78 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Martin Trigaux, 2018
# Arma Gedonsky <armagedonsky@hot.ee>, 2018
# Eneli Õigus <enelioigus@gmail.com>, 2018
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~11.5+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-09-18 10:05+0000\n"
"PO-Revision-Date: 2018-08-24 11:49+0000\n"
"Last-Translator: Eneli Õigus <enelioigus@gmail.com>, 2018\n"
"Language-Team: Estonian (https://www.transifex.com/odoo/teams/41243/et/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: et\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:7
#, python-format
msgid "Add"
msgstr "Lisa"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr "Lisa"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:6
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:10
#, python-format
msgid "Mobile"
msgstr "Mobiil"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:58
#, python-format
msgid "No shortcut for Home Menu"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:14
#, python-format
msgid "On Apple Store"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:9
#, python-format
msgid "On Google Play"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Switch/Add Account"
msgstr ""

51
web_mobile/i18n/eu.po Normal file
View File

@@ -0,0 +1,51 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.saas~18+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-09-20 11:33+0000\n"
"PO-Revision-Date: 2017-09-20 11:33+0000\n"
"Language-Team: Basque (https://www.transifex.com/odoo/teams/41243/eu/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: eu\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:10
#, python-format
msgid "Mobile"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:56
#, python-format
msgid "No shortcut for App Switcher"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:10
#, python-format
msgid "Switch/Add Account"
msgstr ""

77
web_mobile/i18n/fa.po Normal file
View File

@@ -0,0 +1,77 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Martin Trigaux, 2018
# Hamid Darabi, 2018
# Maziar Niaki <maziarmn@gmail.com>, 2018
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~11.5+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-08-24 11:29+0000\n"
"PO-Revision-Date: 2018-08-24 11:29+0000\n"
"Last-Translator: Maziar Niaki <maziarmn@gmail.com>, 2018\n"
"Language-Team: Persian (https://www.transifex.com/odoo/teams/41243/fa/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: fa\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:7
#, python-format
msgid "Add"
msgstr "افزودن"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr "اضافه به"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:6
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:10
#, python-format
msgid "Mobile"
msgstr "تلفن همراه"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:58
#, python-format
msgid "No shortcut for Home Menu"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:14
#, python-format
msgid "On Apple Store"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:9
#, python-format
msgid "On Google Play"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Switch/Add Account"
msgstr "تغییر یا اضافه کردن حساب کاربری"

76
web_mobile/i18n/fi.po Normal file
View File

@@ -0,0 +1,76 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Jarmo Kortetjärvi <jarmo.kortetjarvi@gmail.com>, 2018
# Tuomo Aura <tuomo.aura@web-veistamo.fi>, 2018
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~11.5+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-08-24 11:29+0000\n"
"PO-Revision-Date: 2018-08-24 11:29+0000\n"
"Last-Translator: Tuomo Aura <tuomo.aura@web-veistamo.fi>, 2018\n"
"Language-Team: Finnish (https://www.transifex.com/odoo/teams/41243/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_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:7
#, python-format
msgid "Add"
msgstr "Lisää"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:6
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:10
#, python-format
msgid "Mobile"
msgstr "Matkapuhelin"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:58
#, python-format
msgid "No shortcut for Home Menu"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:14
#, python-format
msgid "On Apple Store"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:9
#, python-format
msgid "On Google Play"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Switch/Add Account"
msgstr ""

51
web_mobile/i18n/fo.po Normal file
View File

@@ -0,0 +1,51 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.saas~18+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-09-20 11:33+0000\n"
"PO-Revision-Date: 2017-09-20 11:33+0000\n"
"Language-Team: Faroese (https://www.transifex.com/odoo/teams/41243/fo/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: fo\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:10
#, python-format
msgid "Mobile"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:56
#, python-format
msgid "No shortcut for App Switcher"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:10
#, python-format
msgid "Switch/Add Account"
msgstr ""

52
web_mobile/i18n/fr.po Normal file
View File

@@ -0,0 +1,52 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Martin Trigaux, 2022
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0beta+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-09-23 08:25+0000\n"
"PO-Revision-Date: 2022-09-22 05:49+0000\n"
"Last-Translator: Martin Trigaux, 2022\n"
"Language-Team: French (https://www.transifex.com/odoo/teams/41243/fr/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: fr\n"
"Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Add to Home Screen"
msgstr "Ajouter à l'écran d'accueil"
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_partner
msgid "Contact"
msgstr "Contact"
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_partner__image_medium
#: model:ir.model.fields,field_description:web_mobile.field_res_users__image_medium
msgid "Medium-sized image"
msgstr "Image de taille moyenne"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "No shortcut for Home Menu"
msgstr "Pas de raccourci pour le menu Accueil "
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Switch/Add Account"
msgstr "Changer/Ajouter un compte"

51
web_mobile/i18n/gl.po Normal file
View File

@@ -0,0 +1,51 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.saas~18+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-09-20 11:33+0000\n"
"PO-Revision-Date: 2017-09-20 11:33+0000\n"
"Language-Team: Galician (https://www.transifex.com/odoo/teams/41243/gl/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: gl\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:10
#, python-format
msgid "Mobile"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:56
#, python-format
msgid "No shortcut for App Switcher"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:10
#, python-format
msgid "Switch/Add Account"
msgstr ""

75
web_mobile/i18n/gu.po Normal file
View File

@@ -0,0 +1,75 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Martin Trigaux, 2018
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~11.5+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-08-24 11:29+0000\n"
"PO-Revision-Date: 2018-08-24 11:29+0000\n"
"Last-Translator: Martin Trigaux, 2018\n"
"Language-Team: Gujarati (https://www.transifex.com/odoo/teams/41243/gu/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: gu\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:7
#, python-format
msgid "Add"
msgstr "ઉમેરો"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:6
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:10
#, python-format
msgid "Mobile"
msgstr "મોબાઇલ"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:58
#, python-format
msgid "No shortcut for Home Menu"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:14
#, python-format
msgid "On Apple Store"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:9
#, python-format
msgid "On Google Play"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Switch/Add Account"
msgstr ""

55
web_mobile/i18n/he.po Normal file
View File

@@ -0,0 +1,55 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# NoaFarkash, 2022
# Yihya Hugirat <hugirat@gmail.com>, 2022
# ZVI BLONDER <ZVIBLONDER@gmail.com>, 2022
# ExcaliberX <excaliberx@gmail.com>, 2022
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0beta+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-09-23 08:25+0000\n"
"PO-Revision-Date: 2022-09-22 05:49+0000\n"
"Last-Translator: ExcaliberX <excaliberx@gmail.com>, 2022\n"
"Language-Team: Hebrew (https://www.transifex.com/odoo/teams/41243/he/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: he\n"
"Plural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: (n % 10 == 0 && n % 1 == 0 && n > 10) ? 2 : 3;\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Add to Home Screen"
msgstr "הוסף למסך הבית"
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_partner
msgid "Contact"
msgstr "איש קשר"
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_partner__image_medium
#: model:ir.model.fields,field_description:web_mobile.field_res_users__image_medium
msgid "Medium-sized image"
msgstr "תמונה בגודל בינוני"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "No shortcut for Home Menu"
msgstr "אין קיצור דרך לתפריט הבית"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Switch/Add Account"
msgstr "החלף\\הוסף חשבון"

114
web_mobile/i18n/hr.po Normal file
View File

@@ -0,0 +1,114 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Bole <bole@dajmi5.com>, 2019
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~12.5+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-08-26 08:05+0000\n"
"PO-Revision-Date: 2019-08-26 09:38+0000\n"
"Last-Translator: Bole <bole@dajmi5.com>, 2019\n"
"Language-Team: Croatian (https://www.transifex.com/odoo/teams/41243/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_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:0
#, python-format
msgid "Add"
msgstr "Dodaj"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:0
#, python-format
msgid "Add to"
msgstr "Dodaj"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:0
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_config_settings
msgid "Config Settings"
msgstr "Postavke"
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_partner
msgid "Contact"
msgstr "Kontakt"
#. module: web_mobile
#: model_terms:ir.ui.view,arch_db:web_mobile.res_config_settings_view_form
msgid "Get notifications on Android and iOS application"
msgstr ""
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_partner__image_medium
#: model:ir.model.fields,field_description:web_mobile.field_res_users__image_medium
msgid "Medium-sized image"
msgstr "Slika srednje veličine"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:0
#, python-format
msgid "Mobile"
msgstr "Mobitel"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:0
#, python-format
msgid "No shortcut for Home Menu"
msgstr ""
#. module: web_mobile
#: model_terms:ir.ui.view,arch_db:web_mobile.res_config_settings_view_form
msgid "Odoo Cloud Notification (OCN)"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:0
#, python-format
msgid "On Apple Store"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:0
#, python-format
msgid "On Google Play"
msgstr ""
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_config_settings__module_ocn_client
msgid "Push Notifications"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/barcode_fields.xml:0
#, python-format
msgid "Scan barcode"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:0
#, python-format
msgid "Switch/Add Account"
msgstr "Zamjeni/dodaj račun"

117
web_mobile/i18n/hu.po Normal file
View File

@@ -0,0 +1,117 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# krnkris, 2019
# gezza <geza.nagy@oregional.hu>, 2019
# Ákos Nagy <akos.nagy@oregional.hu>, 2019
# Tibor Kőnig <konig.tibor@evitalit.hu>, 2019
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~12.5+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-08-26 08:05+0000\n"
"PO-Revision-Date: 2019-08-26 09:38+0000\n"
"Last-Translator: Tibor Kőnig <konig.tibor@evitalit.hu>, 2019\n"
"Language-Team: Hungarian (https://www.transifex.com/odoo/teams/41243/hu/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: hu\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:0
#, python-format
msgid "Add"
msgstr "Hozzáadás"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:0
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:0
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_config_settings
msgid "Config Settings"
msgstr "Konfigurációs beállítások"
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_partner
msgid "Contact"
msgstr "Kapcsolat"
#. module: web_mobile
#: model_terms:ir.ui.view,arch_db:web_mobile.res_config_settings_view_form
msgid "Get notifications on Android and iOS application"
msgstr ""
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_partner__image_medium
#: model:ir.model.fields,field_description:web_mobile.field_res_users__image_medium
msgid "Medium-sized image"
msgstr "Közepes méretű kép"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:0
#, python-format
msgid "Mobile"
msgstr "Mobilszám"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:0
#, python-format
msgid "No shortcut for Home Menu"
msgstr ""
#. module: web_mobile
#: model_terms:ir.ui.view,arch_db:web_mobile.res_config_settings_view_form
msgid "Odoo Cloud Notification (OCN)"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:0
#, python-format
msgid "On Apple Store"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:0
#, python-format
msgid "On Google Play"
msgstr ""
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_config_settings__module_ocn_client
msgid "Push Notifications"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/barcode_fields.xml:0
#, python-format
msgid "Scan barcode"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:0
#, python-format
msgid "Switch/Add Account"
msgstr ""

37
web_mobile/i18n/hy.po Normal file
View File

@@ -0,0 +1,37 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-10-10 09:15+0000\n"
"PO-Revision-Date: 2016-10-10 09:15+0000\n"
"Language-Team: Armenian (https://www.transifex.com/odoo/teams/41243/hy/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: hy\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/web_template.xml:9
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/web_template.xml:10
#, python-format
msgid "Mobile"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:8
#, python-format
msgid "Switch/Add Account"
msgstr ""

52
web_mobile/i18n/id.po Normal file
View File

@@ -0,0 +1,52 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Martin Trigaux, 2022
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0beta+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-09-23 08:25+0000\n"
"PO-Revision-Date: 2022-09-22 05:49+0000\n"
"Last-Translator: Martin Trigaux, 2022\n"
"Language-Team: Indonesian (https://www.transifex.com/odoo/teams/41243/id/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: id\n"
"Plural-Forms: nplurals=1; plural=0;\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_partner
msgid "Contact"
msgstr "Kontak"
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_partner__image_medium
#: model:ir.model.fields,field_description:web_mobile.field_res_users__image_medium
msgid "Medium-sized image"
msgstr "Gambar ukuran sedang"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "No shortcut for Home Menu"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Switch/Add Account"
msgstr ""

77
web_mobile/i18n/is.po Normal file
View File

@@ -0,0 +1,77 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Martin Trigaux, 2018
# Bjorn Ingvarsson <boi@exigo.is>, 2018
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~11.5+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-09-18 10:05+0000\n"
"PO-Revision-Date: 2018-08-24 11:49+0000\n"
"Last-Translator: Bjorn Ingvarsson <boi@exigo.is>, 2018\n"
"Language-Team: Icelandic (https://www.transifex.com/odoo/teams/41243/is/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: is\n"
"Plural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:7
#, python-format
msgid "Add"
msgstr "Bæta við"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:6
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:10
#, python-format
msgid "Mobile"
msgstr "Farsími"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:58
#, python-format
msgid "No shortcut for Home Menu"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:14
#, python-format
msgid "On Apple Store"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:9
#, python-format
msgid "On Google Play"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Switch/Add Account"
msgstr ""

52
web_mobile/i18n/it.po Normal file
View File

@@ -0,0 +1,52 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Martin Trigaux, 2022
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0beta+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-09-23 08:25+0000\n"
"PO-Revision-Date: 2022-09-22 05:49+0000\n"
"Last-Translator: Martin Trigaux, 2022\n"
"Language-Team: Italian (https://www.transifex.com/odoo/teams/41243/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=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Add to Home Screen"
msgstr "Aggiungi alla schermata principale"
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_partner
msgid "Contact"
msgstr "Contatto"
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_partner__image_medium
#: model:ir.model.fields,field_description:web_mobile.field_res_users__image_medium
msgid "Medium-sized image"
msgstr "Immagine di media dimensione"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "No shortcut for Home Menu"
msgstr "Nessuna scorciatoia per il menù principale"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Switch/Add Account"
msgstr "Cambia/Aggiungi Account"

52
web_mobile/i18n/ja.po Normal file
View File

@@ -0,0 +1,52 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Martin Trigaux, 2022
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0beta+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-09-23 08:25+0000\n"
"PO-Revision-Date: 2022-09-22 05:49+0000\n"
"Last-Translator: Martin Trigaux, 2022\n"
"Language-Team: Japanese (https://www.transifex.com/odoo/teams/41243/ja/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: ja\n"
"Plural-Forms: nplurals=1; plural=0;\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Add to Home Screen"
msgstr "ホーム画面に追加"
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_partner
msgid "Contact"
msgstr "連絡先"
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_partner__image_medium
#: model:ir.model.fields,field_description:web_mobile.field_res_users__image_medium
msgid "Medium-sized image"
msgstr "画像 (中)"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "No shortcut for Home Menu"
msgstr "ホームメニューへのショートカットはありません"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Switch/Add Account"
msgstr "アカウントの変更/追加"

51
web_mobile/i18n/ka.po Normal file
View File

@@ -0,0 +1,51 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.saas~18+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-09-20 11:33+0000\n"
"PO-Revision-Date: 2017-09-20 11:33+0000\n"
"Language-Team: Georgian (https://www.transifex.com/odoo/teams/41243/ka/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: ka\n"
"Plural-Forms: nplurals=1; plural=0;\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:10
#, python-format
msgid "Mobile"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:56
#, python-format
msgid "No shortcut for App Switcher"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:10
#, python-format
msgid "Switch/Add Account"
msgstr ""

51
web_mobile/i18n/kab.po Normal file
View File

@@ -0,0 +1,51 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.saas~18+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-09-20 11:33+0000\n"
"PO-Revision-Date: 2017-09-20 11:33+0000\n"
"Language-Team: Kabyle (https://www.transifex.com/odoo/teams/41243/kab/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: kab\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:10
#, python-format
msgid "Mobile"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:56
#, python-format
msgid "No shortcut for App Switcher"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:10
#, python-format
msgid "Switch/Add Account"
msgstr ""

75
web_mobile/i18n/km.po Normal file
View File

@@ -0,0 +1,75 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Sengtha Chay <sengtha@gmail.com>, 2018
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~11.5+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-09-18 10:05+0000\n"
"PO-Revision-Date: 2018-09-18 10:05+0000\n"
"Last-Translator: Sengtha Chay <sengtha@gmail.com>, 2018\n"
"Language-Team: Khmer (https://www.transifex.com/odoo/teams/41243/km/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: km\n"
"Plural-Forms: nplurals=1; plural=0;\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:7
#, python-format
msgid "Add"
msgstr "បន្ថែម"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:6
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:10
#, python-format
msgid "Mobile"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:58
#, python-format
msgid "No shortcut for Home Menu"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:14
#, python-format
msgid "On Apple Store"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:9
#, python-format
msgid "On Google Play"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Switch/Add Account"
msgstr ""

52
web_mobile/i18n/ko.po Normal file
View File

@@ -0,0 +1,52 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Martin Trigaux, 2022
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0beta+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-09-23 08:25+0000\n"
"PO-Revision-Date: 2022-09-22 05:49+0000\n"
"Last-Translator: Martin Trigaux, 2022\n"
"Language-Team: Korean (https://www.transifex.com/odoo/teams/41243/ko/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: ko\n"
"Plural-Forms: nplurals=1; plural=0;\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Add to Home Screen"
msgstr "홈 화면에 추가하기"
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_partner
msgid "Contact"
msgstr "연락처"
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_partner__image_medium
#: model:ir.model.fields,field_description:web_mobile.field_res_users__image_medium
msgid "Medium-sized image"
msgstr "중간 크기 이미지"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "No shortcut for Home Menu"
msgstr "홈 메뉴에 빨리가기 없음"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Switch/Add Account"
msgstr "계정 추가/변경"

110
web_mobile/i18n/lb.po Normal file
View File

@@ -0,0 +1,110 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~12.5+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-08-26 08:05+0000\n"
"PO-Revision-Date: 2019-08-26 09:38+0000\n"
"Language-Team: Luxembourgish (https://www.transifex.com/odoo/teams/41243/lb/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: lb\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:0
#, python-format
msgid "Add"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:0
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:0
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_config_settings
msgid "Config Settings"
msgstr ""
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_partner
msgid "Contact"
msgstr ""
#. module: web_mobile
#: model_terms:ir.ui.view,arch_db:web_mobile.res_config_settings_view_form
msgid "Get notifications on Android and iOS application"
msgstr ""
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_partner__image_medium
#: model:ir.model.fields,field_description:web_mobile.field_res_users__image_medium
msgid "Medium-sized image"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:0
#, python-format
msgid "Mobile"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:0
#, python-format
msgid "No shortcut for Home Menu"
msgstr ""
#. module: web_mobile
#: model_terms:ir.ui.view,arch_db:web_mobile.res_config_settings_view_form
msgid "Odoo Cloud Notification (OCN)"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:0
#, python-format
msgid "On Apple Store"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:0
#, python-format
msgid "On Google Play"
msgstr ""
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_config_settings__module_ocn_client
msgid "Push Notifications"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/barcode_fields.xml:0
#, python-format
msgid "Scan barcode"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:0
#, python-format
msgid "Switch/Add Account"
msgstr ""

51
web_mobile/i18n/lo.po Normal file
View File

@@ -0,0 +1,51 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.saas~18+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-09-20 11:33+0000\n"
"PO-Revision-Date: 2017-09-20 11:33+0000\n"
"Language-Team: Lao (https://www.transifex.com/odoo/teams/41243/lo/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: lo\n"
"Plural-Forms: nplurals=1; plural=0;\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:10
#, python-format
msgid "Mobile"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:56
#, python-format
msgid "No shortcut for App Switcher"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:10
#, python-format
msgid "Switch/Add Account"
msgstr ""

116
web_mobile/i18n/lt.po Normal file
View File

@@ -0,0 +1,116 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Martin Trigaux, 2019
# Silvija Butko <silvija.butko@gmail.com>, 2019
# Linas Versada <linaskrisiukenas@gmail.com>, 2019
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~12.5+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-08-26 08:05+0000\n"
"PO-Revision-Date: 2019-08-26 09:38+0000\n"
"Last-Translator: Linas Versada <linaskrisiukenas@gmail.com>, 2019\n"
"Language-Team: Lithuanian (https://www.transifex.com/odoo/teams/41243/lt/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: lt\n"
"Plural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:0
#, python-format
msgid "Add"
msgstr "Pridėti"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:0
#, python-format
msgid "Add to"
msgstr "Pridėti į"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:0
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_config_settings
msgid "Config Settings"
msgstr "Konfigūracijos nustatymai"
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_partner
msgid "Contact"
msgstr "Kontaktai"
#. module: web_mobile
#: model_terms:ir.ui.view,arch_db:web_mobile.res_config_settings_view_form
msgid "Get notifications on Android and iOS application"
msgstr ""
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_partner__image_medium
#: model:ir.model.fields,field_description:web_mobile.field_res_users__image_medium
msgid "Medium-sized image"
msgstr "Vidutinio dydžio paveikslėlis"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:0
#, python-format
msgid "Mobile"
msgstr "Mobilus"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:0
#, python-format
msgid "No shortcut for Home Menu"
msgstr ""
#. module: web_mobile
#: model_terms:ir.ui.view,arch_db:web_mobile.res_config_settings_view_form
msgid "Odoo Cloud Notification (OCN)"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:0
#, python-format
msgid "On Apple Store"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:0
#, python-format
msgid "On Google Play"
msgstr ""
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_config_settings__module_ocn_client
msgid "Push Notifications"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/barcode_fields.xml:0
#, python-format
msgid "Scan barcode"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:0
#, python-format
msgid "Switch/Add Account"
msgstr ""

54
web_mobile/i18n/lv.po Normal file
View File

@@ -0,0 +1,54 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Arnis Putniņš <arnis.putnins@its1.lv>, 2018
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.saas~18+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-09-20 11:33+0000\n"
"PO-Revision-Date: 2017-09-20 11:33+0000\n"
"Last-Translator: Arnis Putniņš <arnis.putnins@its1.lv>, 2018\n"
"Language-Team: Latvian (https://www.transifex.com/odoo/teams/41243/lv/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: lv\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:10
#, python-format
msgid "Mobile"
msgstr "Mobilais tālr."
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:56
#, python-format
msgid "No shortcut for App Switcher"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:10
#, python-format
msgid "Switch/Add Account"
msgstr ""

51
web_mobile/i18n/mk.po Normal file
View File

@@ -0,0 +1,51 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.saas~18+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-09-20 11:33+0000\n"
"PO-Revision-Date: 2017-09-20 11:33+0000\n"
"Language-Team: Macedonian (https://www.transifex.com/odoo/teams/41243/mk/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: mk\n"
"Plural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:10
#, python-format
msgid "Mobile"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:56
#, python-format
msgid "No shortcut for App Switcher"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:10
#, python-format
msgid "Switch/Add Account"
msgstr ""

116
web_mobile/i18n/mn.po Normal file
View File

@@ -0,0 +1,116 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Baskhuu Lodoikhuu <baskhuujacara@gmail.com>, 2019
# Martin Trigaux, 2019
# nurbakhit nurka <nurbakhit@bumanit.mn>, 2019
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~12.5+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-08-26 08:05+0000\n"
"PO-Revision-Date: 2019-08-26 09:38+0000\n"
"Last-Translator: nurbakhit nurka <nurbakhit@bumanit.mn>, 2019\n"
"Language-Team: Mongolian (https://www.transifex.com/odoo/teams/41243/mn/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: mn\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:0
#, python-format
msgid "Add"
msgstr "Нэмэх"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:0
#, python-format
msgid "Add to"
msgstr "Нэмэх"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:0
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_config_settings
msgid "Config Settings"
msgstr "Тохиргооны тохируулга"
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_partner
msgid "Contact"
msgstr "Харилцах хаяг"
#. module: web_mobile
#: model_terms:ir.ui.view,arch_db:web_mobile.res_config_settings_view_form
msgid "Get notifications on Android and iOS application"
msgstr ""
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_partner__image_medium
#: model:ir.model.fields,field_description:web_mobile.field_res_users__image_medium
msgid "Medium-sized image"
msgstr "Дунд-хэмжээтэй зураг"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:0
#, python-format
msgid "Mobile"
msgstr "Гар утас"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:0
#, python-format
msgid "No shortcut for Home Menu"
msgstr ""
#. module: web_mobile
#: model_terms:ir.ui.view,arch_db:web_mobile.res_config_settings_view_form
msgid "Odoo Cloud Notification (OCN)"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:0
#, python-format
msgid "On Apple Store"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:0
#, python-format
msgid "On Google Play"
msgstr ""
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_config_settings__module_ocn_client
msgid "Push Notifications"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/barcode_fields.xml:0
#, python-format
msgid "Scan barcode"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:0
#, python-format
msgid "Switch/Add Account"
msgstr "Солих/Бүртгэл нэмэх"

40
web_mobile/i18n/my.po Normal file
View File

@@ -0,0 +1,40 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Myat Thu <myat90thu@gmail.com>, 2016
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-10-10 09:15+0000\n"
"PO-Revision-Date: 2016-10-10 09:15+0000\n"
"Last-Translator: Myat Thu <myat90thu@gmail.com>, 2016\n"
"Language-Team: Burmese (https://www.transifex.com/odoo/teams/41243/my/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: my\n"
"Plural-Forms: nplurals=1; plural=0;\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/web_template.xml:9
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/web_template.xml:10
#, python-format
msgid "Mobile"
msgstr "မိုဘိုင်း"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:8
#, python-format
msgid "Switch/Add Account"
msgstr ""

52
web_mobile/i18n/nb.po Normal file
View File

@@ -0,0 +1,52 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Martin Trigaux, 2022
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0beta+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-09-23 08:25+0000\n"
"PO-Revision-Date: 2022-09-22 05:49+0000\n"
"Last-Translator: Martin Trigaux, 2022\n"
"Language-Team: Norwegian Bokmål (https://www.transifex.com/odoo/teams/41243/nb/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: nb\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Add to Home Screen"
msgstr "Legg til på hjemmeskjerm"
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_partner
msgid "Contact"
msgstr "Kontakt"
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_partner__image_medium
#: model:ir.model.fields,field_description:web_mobile.field_res_users__image_medium
msgid "Medium-sized image"
msgstr "Mellomstort bilde"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "No shortcut for Home Menu"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Switch/Add Account"
msgstr "Bytt/legg til konto"

51
web_mobile/i18n/ne.po Normal file
View File

@@ -0,0 +1,51 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.saas~18+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-09-20 11:33+0000\n"
"PO-Revision-Date: 2017-09-20 11:33+0000\n"
"Language-Team: Nepali (https://www.transifex.com/odoo/teams/41243/ne/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: ne\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:10
#, python-format
msgid "Mobile"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:56
#, python-format
msgid "No shortcut for App Switcher"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:10
#, python-format
msgid "Switch/Add Account"
msgstr ""

52
web_mobile/i18n/nl.po Normal file
View File

@@ -0,0 +1,52 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Martin Trigaux, 2022
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0beta+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-09-23 08:25+0000\n"
"PO-Revision-Date: 2022-09-22 05:49+0000\n"
"Last-Translator: Martin Trigaux, 2022\n"
"Language-Team: Dutch (https://www.transifex.com/odoo/teams/41243/nl/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: nl\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Add to Home Screen"
msgstr "Toevoegen aan home scherm"
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_partner
msgid "Contact"
msgstr "Contact"
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_partner__image_medium
#: model:ir.model.fields,field_description:web_mobile.field_res_users__image_medium
msgid "Medium-sized image"
msgstr "Middelgrote afbeelding"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "No shortcut for Home Menu"
msgstr "Geen snelkoppeling voor Home menu"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Switch/Add Account"
msgstr "Wisselen/toevoegen account"

51
web_mobile/i18n/nl_BE.po Normal file
View File

@@ -0,0 +1,51 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.saas~18+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-09-20 11:33+0000\n"
"PO-Revision-Date: 2017-09-20 11:33+0000\n"
"Language-Team: Dutch (Belgium) (https://www.transifex.com/odoo/teams/41243/nl_BE/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: nl_BE\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:10
#, python-format
msgid "Mobile"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:56
#, python-format
msgid "No shortcut for App Switcher"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:10
#, python-format
msgid "Switch/Add Account"
msgstr ""

120
web_mobile/i18n/pl.po Normal file
View File

@@ -0,0 +1,120 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Martin Trigaux, 2019
# Grzegorz Grzelak <grzegorz.grzelak@openglobe.pl>, 2019
# Piotr Szlązak <szlazakpiotr@gmail.com>, 2019
# Piotr Cierkosz <piotr.w.cierkosz@gmail.com>, 2019
# Radosław Biegalski <radoslaw.biegalski@openglobe.pl>, 2019
# Paweł Wodyński <pw@myodoo.pl>, 2019
# Maksym <ms@myodoo.pl>, 2019
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~12.5+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-08-26 08:05+0000\n"
"PO-Revision-Date: 2019-08-26 09:38+0000\n"
"Last-Translator: Maksym <ms@myodoo.pl>, 2019\n"
"Language-Team: Polish (https://www.transifex.com/odoo/teams/41243/pl/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: pl\n"
"Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:0
#, python-format
msgid "Add"
msgstr "dodaj"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:0
#, python-format
msgid "Add to"
msgstr "Dodaj do"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:0
#, python-format
msgid "Add to Home Screen"
msgstr "Dodaj do ekranu głównego"
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_config_settings
msgid "Config Settings"
msgstr "Ustawienia konfiguracji"
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_partner
msgid "Contact"
msgstr "Kontakt"
#. module: web_mobile
#: model_terms:ir.ui.view,arch_db:web_mobile.res_config_settings_view_form
msgid "Get notifications on Android and iOS application"
msgstr ""
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_partner__image_medium
#: model:ir.model.fields,field_description:web_mobile.field_res_users__image_medium
msgid "Medium-sized image"
msgstr "Obrazek średniej wielkości"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:0
#, python-format
msgid "Mobile"
msgstr "Tel. komórkowy"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:0
#, python-format
msgid "No shortcut for Home Menu"
msgstr "Bez skrótu do menu głównego"
#. module: web_mobile
#: model_terms:ir.ui.view,arch_db:web_mobile.res_config_settings_view_form
msgid "Odoo Cloud Notification (OCN)"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:0
#, python-format
msgid "On Apple Store"
msgstr "W Apple Store"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:0
#, python-format
msgid "On Google Play"
msgstr "W Google Play"
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_config_settings__module_ocn_client
msgid "Push Notifications"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/barcode_fields.xml:0
#, python-format
msgid "Scan barcode"
msgstr "Zeskanuj kod"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:0
#, python-format
msgid "Switch/Add Account"
msgstr "Przełącz/Dodaj konto"

110
web_mobile/i18n/pt.po Normal file
View File

@@ -0,0 +1,110 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~12.5+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-08-26 08:05+0000\n"
"PO-Revision-Date: 2019-08-26 09:38+0000\n"
"Language-Team: Portuguese (https://www.transifex.com/odoo/teams/41243/pt/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: pt\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:0
#, python-format
msgid "Add"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:0
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:0
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_config_settings
msgid "Config Settings"
msgstr ""
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_partner
msgid "Contact"
msgstr ""
#. module: web_mobile
#: model_terms:ir.ui.view,arch_db:web_mobile.res_config_settings_view_form
msgid "Get notifications on Android and iOS application"
msgstr ""
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_partner__image_medium
#: model:ir.model.fields,field_description:web_mobile.field_res_users__image_medium
msgid "Medium-sized image"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:0
#, python-format
msgid "Mobile"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:0
#, python-format
msgid "No shortcut for Home Menu"
msgstr ""
#. module: web_mobile
#: model_terms:ir.ui.view,arch_db:web_mobile.res_config_settings_view_form
msgid "Odoo Cloud Notification (OCN)"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:0
#, python-format
msgid "On Apple Store"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:0
#, python-format
msgid "On Google Play"
msgstr ""
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_config_settings__module_ocn_client
msgid "Push Notifications"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/barcode_fields.xml:0
#, python-format
msgid "Scan barcode"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:0
#, python-format
msgid "Switch/Add Account"
msgstr ""

117
web_mobile/i18n/pt_BR.po Normal file
View File

@@ -0,0 +1,117 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Mateus Lopes <mateus1@gmail.com>, 2019
# grazziano <gra.negocia@gmail.com>, 2019
# Silmar <pinheirosilmar@gmail.com>, 2019
# Danilo Rodrigues, 2019
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~12.5+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-08-26 08:05+0000\n"
"PO-Revision-Date: 2019-08-26 09:38+0000\n"
"Last-Translator: Danilo Rodrigues, 2019\n"
"Language-Team: Portuguese (Brazil) (https://www.transifex.com/odoo/teams/41243/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_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:0
#, python-format
msgid "Add"
msgstr "Adicionar"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:0
#, python-format
msgid "Add to"
msgstr "Adicionar a"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:0
#, python-format
msgid "Add to Home Screen"
msgstr "Adicionar à tela inicial"
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_config_settings
msgid "Config Settings"
msgstr "Ajuste de configurações"
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_partner
msgid "Contact"
msgstr "Contato"
#. module: web_mobile
#: model_terms:ir.ui.view,arch_db:web_mobile.res_config_settings_view_form
msgid "Get notifications on Android and iOS application"
msgstr ""
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_partner__image_medium
#: model:ir.model.fields,field_description:web_mobile.field_res_users__image_medium
msgid "Medium-sized image"
msgstr "Imagem de tamanho Médio"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:0
#, python-format
msgid "Mobile"
msgstr "Celular"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:0
#, python-format
msgid "No shortcut for Home Menu"
msgstr "Sem atalhos para o menu inicial"
#. module: web_mobile
#: model_terms:ir.ui.view,arch_db:web_mobile.res_config_settings_view_form
msgid "Odoo Cloud Notification (OCN)"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:0
#, python-format
msgid "On Apple Store"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:0
#, python-format
msgid "On Google Play"
msgstr ""
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_config_settings__module_ocn_client
msgid "Push Notifications"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/barcode_fields.xml:0
#, python-format
msgid "Scan barcode"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:0
#, python-format
msgid "Switch/Add Account"
msgstr "Trocar/Adicionar conta"

52
web_mobile/i18n/ro.po Normal file
View File

@@ -0,0 +1,52 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Martin Trigaux, 2022
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0beta+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-09-23 08:25+0000\n"
"PO-Revision-Date: 2022-09-22 05:49+0000\n"
"Last-Translator: Martin Trigaux, 2022\n"
"Language-Team: Romanian (https://www.transifex.com/odoo/teams/41243/ro/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: ro\n"
"Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_partner
msgid "Contact"
msgstr "Contact"
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_partner__image_medium
#: model:ir.model.fields,field_description:web_mobile.field_res_users__image_medium
msgid "Medium-sized image"
msgstr "Imagine de dimensiune mijlocie"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "No shortcut for Home Menu"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Switch/Add Account"
msgstr "Schimbă / adaugă cont"

55
web_mobile/i18n/ru.po Normal file
View File

@@ -0,0 +1,55 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Vasiliy Korobatov <korobatov@gmail.com>, 2022
# Martin Trigaux, 2022
# Ivan Kropotkin <yelizariev@itpp.dev>, 2022
# Irina Fedulova <istartlin@gmail.com>, 2022
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0beta+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-09-23 08:25+0000\n"
"PO-Revision-Date: 2022-09-22 05:49+0000\n"
"Last-Translator: Irina Fedulova <istartlin@gmail.com>, 2022\n"
"Language-Team: Russian (https://www.transifex.com/odoo/teams/41243/ru/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: ru\n"
"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Add to Home Screen"
msgstr "Добавить на главный экран"
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_partner
msgid "Contact"
msgstr "Контакт"
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_partner__image_medium
#: model:ir.model.fields,field_description:web_mobile.field_res_users__image_medium
msgid "Medium-sized image"
msgstr "Изображение средних размеров"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "No shortcut for Home Menu"
msgstr "Есть ярлыков для Главного Меню"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Switch/Add Account"
msgstr "Переключить/Доб. аккаунт"

76
web_mobile/i18n/sk.po Normal file
View File

@@ -0,0 +1,76 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Matus Krnac <matus.krnac@gmail.com>, 2018
# Jaroslav Bosansky <jaro.bosansky@ekoenergo.sk>, 2018
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~11.5+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-09-18 10:05+0000\n"
"PO-Revision-Date: 2018-09-18 10:05+0000\n"
"Last-Translator: Jaroslav Bosansky <jaro.bosansky@ekoenergo.sk>, 2018\n"
"Language-Team: Slovak (https://www.transifex.com/odoo/teams/41243/sk/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: sk\n"
"Plural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:7
#, python-format
msgid "Add"
msgstr "Pridať"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:6
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:10
#, python-format
msgid "Mobile"
msgstr "Mobil"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:58
#, python-format
msgid "No shortcut for Home Menu"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:14
#, python-format
msgid "On Apple Store"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:9
#, python-format
msgid "On Google Play"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Switch/Add Account"
msgstr ""

51
web_mobile/i18n/sl.po Normal file
View File

@@ -0,0 +1,51 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.saas~18+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-09-20 11:33+0000\n"
"PO-Revision-Date: 2017-09-20 11:33+0000\n"
"Language-Team: Slovenian (https://www.transifex.com/odoo/teams/41243/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_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:10
#, python-format
msgid "Mobile"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:56
#, python-format
msgid "No shortcut for App Switcher"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:10
#, python-format
msgid "Switch/Add Account"
msgstr ""

51
web_mobile/i18n/sq.po Normal file
View File

@@ -0,0 +1,51 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.saas~18+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-09-20 11:33+0000\n"
"PO-Revision-Date: 2017-09-20 11:33+0000\n"
"Language-Team: Albanian (https://www.transifex.com/odoo/teams/41243/sq/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: sq\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:10
#, python-format
msgid "Mobile"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:56
#, python-format
msgid "No shortcut for App Switcher"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:10
#, python-format
msgid "Switch/Add Account"
msgstr ""

75
web_mobile/i18n/sr.po Normal file
View File

@@ -0,0 +1,75 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Martin Trigaux, 2018
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~11.5+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-09-18 10:05+0000\n"
"PO-Revision-Date: 2018-09-18 10:05+0000\n"
"Last-Translator: Martin Trigaux, 2018\n"
"Language-Team: Serbian (https://www.transifex.com/odoo/teams/41243/sr/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: sr\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_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:7
#, python-format
msgid "Add"
msgstr "Dodaj"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:6
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:10
#, python-format
msgid "Mobile"
msgstr "Mobilni"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:58
#, python-format
msgid "No shortcut for Home Menu"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:14
#, python-format
msgid "On Apple Store"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:9
#, python-format
msgid "On Google Play"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Switch/Add Account"
msgstr ""

View File

@@ -0,0 +1,54 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Martin Trigaux <mat@odoo.com>, 2017
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.saas~18+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-09-20 11:33+0000\n"
"PO-Revision-Date: 2017-09-20 11:33+0000\n"
"Last-Translator: Martin Trigaux <mat@odoo.com>, 2017\n"
"Language-Team: Serbian (Latin) (https://www.transifex.com/odoo/teams/41243/sr%40latin/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: sr@latin\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_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:10
#, python-format
msgid "Mobile"
msgstr "Mobilni"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:56
#, python-format
msgid "No shortcut for App Switcher"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:10
#, python-format
msgid "Switch/Add Account"
msgstr ""

84
web_mobile/i18n/sv.po Normal file
View File

@@ -0,0 +1,84 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Anders Wallenquist <anders.wallenquist@vertel.se>, 2018
# Martin Trigaux, 2019
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server saas~12.2+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2019-03-20 14:08+0000\n"
"PO-Revision-Date: 2017-02-15 11:46+0000\n"
"Last-Translator: Martin Trigaux, 2019\n"
"Language-Team: Swedish (https://www.transifex.com/odoo/teams/41243/sv/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: sv\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:7
#, python-format
msgid "Add"
msgstr "Lägg till"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Add to"
msgstr "Lägg till"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:6
#, python-format
msgid "Add to Home Screen"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/contact_sync.xml:9
#, python-format
msgid "Mobile"
msgstr "Mobil"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu.js:58
#, python-format
msgid "No shortcut for Home Menu"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:14
#, python-format
msgid "On Apple Store"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/settings_dashboard.xml:9
#, python-format
msgid "On Google Play"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/barcode_fields.xml:13
#, python-format
msgid "Scan barcode"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/xml/user_menu.xml:7
#, python-format
msgid "Switch/Add Account"
msgstr "Byt/lägg till konto"

53
web_mobile/i18n/th.po Normal file
View File

@@ -0,0 +1,53 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Martin Trigaux, 2022
# Wichanon Jamwutthipreecha, 2022
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0beta+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-09-23 08:25+0000\n"
"PO-Revision-Date: 2022-09-22 05:49+0000\n"
"Last-Translator: Wichanon Jamwutthipreecha, 2022\n"
"Language-Team: Thai (https://www.transifex.com/odoo/teams/41243/th/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: th\n"
"Plural-Forms: nplurals=1; plural=0;\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Add to Home Screen"
msgstr "เพิ่มไปที่หน้าจอหลัก"
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_partner
msgid "Contact"
msgstr "ติดต่อ"
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_partner__image_medium
#: model:ir.model.fields,field_description:web_mobile.field_res_users__image_medium
msgid "Medium-sized image"
msgstr "รูปภาพขนาดกลาง"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "No shortcut for Home Menu"
msgstr "ไม่มีทางลัดสำหรับโฮมเมนู"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Switch/Add Account"
msgstr "สลับ/เพิ่มบัญชี"

55
web_mobile/i18n/tr.po Normal file
View File

@@ -0,0 +1,55 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Umur Akın <umura@projetgrup.com>, 2022
# Levent Karakaş <levent@mektup.at>, 2022
# Murat Durmuş <muratd@projetgrup.com>, 2022
# cagri erarslan <cagri.erarslan@mechsoft.com.tr>, 2022
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0beta+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-09-23 08:25+0000\n"
"PO-Revision-Date: 2022-09-22 05:49+0000\n"
"Last-Translator: cagri erarslan <cagri.erarslan@mechsoft.com.tr>, 2022\n"
"Language-Team: Turkish (https://www.transifex.com/odoo/teams/41243/tr/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: tr\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Add to Home Screen"
msgstr "Ekrana Home Tuşu Ekleyin"
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_partner
msgid "Contact"
msgstr "Kontak"
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_partner__image_medium
#: model:ir.model.fields,field_description:web_mobile.field_res_users__image_medium
msgid "Medium-sized image"
msgstr "Orta boyutlu görsel"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "No shortcut for Home Menu"
msgstr "Ana Menü için kısayol yok"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Switch/Add Account"
msgstr "Hesap Değiştir/Ekle"

52
web_mobile/i18n/uk.po Normal file
View File

@@ -0,0 +1,52 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Martin Trigaux, 2022
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0beta+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-09-23 08:25+0000\n"
"PO-Revision-Date: 2022-09-22 05:49+0000\n"
"Last-Translator: Martin Trigaux, 2022\n"
"Language-Team: Ukrainian (https://www.transifex.com/odoo/teams/41243/uk/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: uk\n"
"Plural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Add to Home Screen"
msgstr "Додати до головного екрана"
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_partner
msgid "Contact"
msgstr "Контакт"
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_partner__image_medium
#: model:ir.model.fields,field_description:web_mobile.field_res_users__image_medium
msgid "Medium-sized image"
msgstr "Зображення середнього розміру"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "No shortcut for Home Menu"
msgstr "Немає ярликів для Домашнього Меню"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Switch/Add Account"
msgstr "Переключити/Додати обліковий запис"

52
web_mobile/i18n/vi.po Normal file
View File

@@ -0,0 +1,52 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Martin Trigaux, 2022
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0beta+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-09-23 08:25+0000\n"
"PO-Revision-Date: 2022-09-22 05:49+0000\n"
"Last-Translator: Martin Trigaux, 2022\n"
"Language-Team: Vietnamese (https://www.transifex.com/odoo/teams/41243/vi/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: vi\n"
"Plural-Forms: nplurals=1; plural=0;\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Add to Home Screen"
msgstr "Thêm vào trang chính"
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_partner
msgid "Contact"
msgstr "Danh bạ"
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_partner__image_medium
#: model:ir.model.fields,field_description:web_mobile.field_res_users__image_medium
msgid "Medium-sized image"
msgstr "Hình ảnh kích thước chuẩn"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "No shortcut for Home Menu"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Switch/Add Account"
msgstr "Chuyển/Thêm tài khoản"

52
web_mobile/i18n/zh_CN.po Normal file
View File

@@ -0,0 +1,52 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Martin Trigaux, 2022
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0beta+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-09-23 08:25+0000\n"
"PO-Revision-Date: 2022-09-22 05:49+0000\n"
"Last-Translator: Martin Trigaux, 2022\n"
"Language-Team: Chinese (China) (https://www.transifex.com/odoo/teams/41243/zh_CN/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: zh_CN\n"
"Plural-Forms: nplurals=1; plural=0;\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Add to Home Screen"
msgstr "添加到首页"
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_partner
msgid "Contact"
msgstr "联系人"
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_partner__image_medium
#: model:ir.model.fields,field_description:web_mobile.field_res_users__image_medium
msgid "Medium-sized image"
msgstr "中等尺寸图像"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "No shortcut for Home Menu"
msgstr "没有首页菜单快捷方式"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Switch/Add Account"
msgstr "切换/添加账户"

52
web_mobile/i18n/zh_TW.po Normal file
View File

@@ -0,0 +1,52 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * web_mobile
#
# Translators:
# Martin Trigaux, 2022
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0beta+e\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-09-23 08:25+0000\n"
"PO-Revision-Date: 2022-09-22 05:49+0000\n"
"Last-Translator: Martin Trigaux, 2022\n"
"Language-Team: Chinese (Taiwan) (https://www.transifex.com/odoo/teams/41243/zh_TW/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: zh_TW\n"
"Plural-Forms: nplurals=1; plural=0;\n"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Add to Home Screen"
msgstr "加至主畫面"
#. module: web_mobile
#: model:ir.model,name:web_mobile.model_res_partner
msgid "Contact"
msgstr "聯絡人"
#. module: web_mobile
#: model:ir.model.fields,field_description:web_mobile.field_res_partner__image_medium
#: model:ir.model.fields,field_description:web_mobile.field_res_users__image_medium
msgid "Medium-sized image"
msgstr "中等尺寸圖像"
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "No shortcut for Home Menu"
msgstr ""
#. module: web_mobile
#. openerp-web
#: code:addons/web_mobile/static/src/js/user_menu_items.js:0
#, python-format
msgid "Switch/Add Account"
msgstr ""

View File

@@ -0,0 +1,4 @@
# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
from . import res_partner

View File

@@ -0,0 +1,7 @@
from odoo import fields, models
class Partners(models.Model):
_inherit = 'res.partner'
# related for backward compatibility with < 13.0
image_medium = fields.Binary(string="Medium-sized image", related='avatar_128', store=False, readonly=True)

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

View File

@@ -0,0 +1,48 @@
/** @odoo-module */
import { device } from "web.config";
import * as LegacyControlPanel from "web.ControlPanel";
import { useBackButton } from "web_mobile.hooks";
import { patch } from "@web/core/utils/patch";
import { ControlPanel } from "@web/search/control_panel/control_panel";
if (device.isMobile) {
patch(LegacyControlPanel.prototype, "web_mobile", {
setup() {
this._super(...arguments);
useBackButton(this._onBackButton.bind(this), () => this.state.showMobileSearch);
},
//---------------------------------------------------------------------
// Handlers
//---------------------------------------------------------------------
/**
* close mobile search on back-button
* @private
*/
_onBackButton() {
this._resetSearchState();
},
});
patch(ControlPanel.prototype, "web_mobile", {
setup() {
this._super(...arguments);
useBackButton(this._onBackButton.bind(this), () => this.state.showMobileSearch);
},
//---------------------------------------------------------------------
// Handlers
//---------------------------------------------------------------------
/**
* close mobile search on back-button
* @private
*/
_onBackButton() {
this.resetSearchState();
},
});
}

View File

@@ -0,0 +1,79 @@
odoo.define("web_mobile.Dialog", function (require) {
"use strict";
var Dialog = require("web.Dialog");
var mobileMixins = require("web_mobile.mixins");
Dialog.include(
_.extend({}, mobileMixins.BackButtonEventMixin, {
//--------------------------------------------------------------------------
// Handlers
//--------------------------------------------------------------------------
/**
* Close the current dialog on 'backbutton' event.
*
* @private
* @override
* @param {Event} ev
*/
_onBackButton: function () {
this.close();
},
})
);
});
odoo.define("web_mobile.OwlDialog", function (require) {
"use strict";
const OwlDialog = require("web.OwlDialog");
const { useBackButton } = require("web_mobile.hooks");
const { patch } = require("web.utils");
patch(OwlDialog.prototype, "web_mobile", {
setup() {
this._super(...arguments);
useBackButton(this._onBackButton.bind(this));
},
//---------------------------------------------------------------------
// Handlers
//---------------------------------------------------------------------
/**
* Close dialog on back-button
* @private
*/
_onBackButton() {
this._close();
},
});
});
odoo.define("web_mobile.Popover", function (require) {
"use strict";
const Popover = require("web.Popover");
const { useBackButton } = require("web_mobile.hooks");
const { patch } = require("web.utils");
patch(Popover.prototype, "web_mobile", {
setup() {
this._super(...arguments);
useBackButton(this._onBackButton.bind(this), () => this.state.displayed);
},
//---------------------------------------------------------------------
// Handlers
//---------------------------------------------------------------------
/**
* Close popover on back-button
* @private
*/
_onBackButton() {
this._close();
},
});
});

View File

@@ -0,0 +1,145 @@
odoo.define('web_mobile.mixins', function (require) {
"use strict";
const session = require('web.session');
const mobile = require('web_mobile.core');
/**
* Mixin to setup lifecycle methods and allow to use 'backbutton' events sent
* from the native application.
*
* @mixin
* @name BackButtonEventMixin
*
*/
var BackButtonEventMixin = {
/**
* Register event listener for 'backbutton' event when attached to the DOM
*/
on_attach_callback: function () {
mobile.backButtonManager.addListener(this, this._onBackButton);
},
/**
* Unregister event listener for 'backbutton' event when detached from the DOM
*/
on_detach_callback: function () {
mobile.backButtonManager.removeListener(this, this._onBackButton);
},
//--------------------------------------------------------------------------
// Handlers
//--------------------------------------------------------------------------
/**
* @private
* @param {Event} ev 'backbutton' type event
*/
_onBackButton: function () {},
};
/**
* Mixin to hook into the controller record's saving method and
* trigger the update of the user's account details on the mobile app.
*
* @mixin
* @name UpdateDeviceAccountControllerMixin
*
*/
const UpdateDeviceAccountControllerMixin = {
/**
* @override
*/
async save() {
const changedFields = await this._super(...arguments);
await session.updateAccountOnMobileDevice();
return changedFields;
},
};
/**
* Trigger the update of the user's account details on the mobile app as soon as
* the session is correctly initialized.
*/
session.is_bound.then(() => session.updateAccountOnMobileDevice());
return {
BackButtonEventMixin: BackButtonEventMixin,
UpdateDeviceAccountControllerMixin,
};
});
odoo.define('web_mobile.hooks', function (require) {
"use strict";
const { backButtonManager } = require('web_mobile.core');
const { onMounted, onPatched, onWillUnmount, useComponent } = owl;
/**
* This hook provides support for executing code when the back button is pressed
* on the mobile application of Odoo. This actually replaces the default back
* button behavior so this feature should only be enabled when it is actually
* useful.
*
* The feature is either enabled on mount or, using the `shouldEnable` function
* argument as condition, when the component is patched. In both cases,
* the feature is automatically disabled on unmount.
*
* @param {function} func the function to execute when the back button is
* pressed. The function is called with the custom event as param.
* @param {function} [shouldEnable] the function to execute when the DOM is
* patched to check if the backbutton should be enabled or disabled ;
* if undefined will be enabled on mount and disabled on unmount.
*/
function useBackButton(func, shouldEnable) {
const component = useComponent();
let isEnabled = false;
/**
* Enables the func listener, overriding default back button behavior.
*/
function enable() {
backButtonManager.addListener(component, func);
isEnabled = true;
}
/**
* Disables the func listener, restoring the default back button behavior if
* no other listeners are present.
*/
function disable() {
backButtonManager.removeListener(component);
isEnabled = false;
}
onMounted(() => {
if (shouldEnable && !shouldEnable()) {
return;
}
enable();
});
onPatched(() => {
if (!shouldEnable) {
return;
}
const shouldBeEnabled = shouldEnable();
if (shouldBeEnabled && !isEnabled) {
enable();
} else if (!shouldBeEnabled && isEnabled) {
disable();
}
});
onWillUnmount(() => {
if (isEnabled) {
disable();
}
});
}
return {
useBackButton,
};
});

View File

@@ -0,0 +1,18 @@
/** @odoo-module **/
import mobile from "web_mobile.core";
import { download } from "@web/core/network/download";
const _download = download._download;
download._download = async function (options) {
if (mobile.methods.downloadFile) {
if (odoo.csrf_token) {
options.csrf_token = odoo.csrf_token;
}
mobile.methods.downloadFile(options);
return Promise.resolve();
} else {
return _download.apply(this, arguments);
}
};

View File

@@ -0,0 +1,89 @@
odoo.define('web_mobile.Session', function (require) {
"use strict";
const core = require('web.core');
const Session = require('web.Session');
const mobile = require('web_mobile.core');
const DEFAULT_AVATAR_SIZE = 128;
/*
Android webview not supporting post download and odoo is using post method to download
so here override get_file of session and passed all data to native mobile downloader
ISSUE: https://code.google.com/p/android/issues/detail?id=1780
*/
Session.include({
//--------------------------------------------------------------------------
// Public
//--------------------------------------------------------------------------
/**
* @override
*/
get_file: function (options) {
if (mobile.methods.downloadFile) {
if (core.csrf_token) {
options.csrf_token = core.csrf_token;
}
mobile.methods.downloadFile(options);
// There is no need to wait downloadFile because we delegate this to
// Download Manager Service where error handling will be handled correclty.
// On our side, we do not want to block the UI and consider the request
// as success.
if (options.success) { options.success(); }
if (options.complete) { options.complete(); }
return true;
} else {
return this._super.apply(this, arguments);
}
},
/**
* Update the user's account details on the mobile app
*
* @returns {Promise}
*/
async updateAccountOnMobileDevice() {
if (!mobile.methods.updateAccount) {
return;
}
const base64Avatar = await this.fetchAvatar();
return mobile.methods.updateAccount({
avatar: base64Avatar.substring(base64Avatar.indexOf(',') + 1),
name: this.name,
username: this.username,
});
},
/**
* Fetch current user's avatar as PNG image
*
* @returns {Promise} resolved with the dataURL, or rejected if the file is
* empty or if an error occurs.
*/
fetchAvatar() {
const url = this.url('/web/image', {
model: 'res.users',
field: 'image_medium',
id: this.uid,
});
return new Promise((resolve, reject) => {
const canvas = document.createElement('canvas');
canvas.width = DEFAULT_AVATAR_SIZE;
canvas.height = DEFAULT_AVATAR_SIZE;
const context = canvas.getContext('2d');
const image = new Image();
image.addEventListener('load', () => {
context.drawImage(image, 0, 0, DEFAULT_AVATAR_SIZE, DEFAULT_AVATAR_SIZE);
resolve(canvas.toDataURL('image/png'));
});
image.addEventListener('error', reject);
image.src = url;
});
},
});
});

View File

@@ -0,0 +1,14 @@
/** @odoo-module */
import { registry } from "@web/core/registry";
import mobile from "web_mobile.core";
function mobileErrorHandler(env, error, originalError) {
if (mobile.methods.crashManager) {
error.originalError = originalError;
mobile.methods.crashManager(error);
}
}
registry
.category("error_handlers")
.add("web_mobile.errorHandler", mobileErrorHandler, { sequence: 3 });

View File

@@ -0,0 +1,26 @@
/** @odoo-module **/
import { registry } from "@web/core/registry";
import mobile from "web_mobile.core";
import { shortcutItem, switchAccountItem } from "./user_menu_items";
const serviceRegistry = registry.category("services");
const userMenuRegistry = registry.category("user_menuitems");
const mobileService = {
start() {
if (mobile.methods.addHomeShortcut) {
userMenuRegistry.add("web_mobile.shortcut", shortcutItem);
}
if (mobile.methods.switchAccount) {
// remove "Log Out" and "My Odoo.com Account"
userMenuRegistry.remove('log_out');
userMenuRegistry.remove('odoo_account');
userMenuRegistry.add("web_mobile.switch", switchAccountItem);
}
},
};
serviceRegistry.add("mobile", mobileService);

View File

@@ -0,0 +1,158 @@
/* global OdooDeviceUtility */
odoo.define('web_mobile.core', function () {
"use strict";
var available = typeof OdooDeviceUtility !== 'undefined';
var DeviceUtility;
var deferreds = {};
var methods = {};
if (available){
DeviceUtility = OdooDeviceUtility;
delete window.OdooDeviceUtility;
}
/**
* Responsible for invoking native methods which called from JavaScript
*
* @param {String} name name of action want to perform in mobile
* @param {Object} args extra arguments for mobile
*
* @returns Promise Object
*/
function native_invoke(name, args) {
if(_.isUndefined(args)){
args = {};
}
var id = _.uniqueId();
args = JSON.stringify(args);
DeviceUtility.execute(name, args, id);
return new Promise(function (resolve, reject) {
deferreds[id] = {
successCallback: resolve,
errorCallback: reject
};
});
}
/**
* Manages deferred callback from initiate from native mobile
*
* @param {String} id callback id
* @param {Object} result
*/
window.odoo.native_notify = function (id, result) {
if (deferreds.hasOwnProperty(id)) {
if (result.success) {
deferreds[id].successCallback(result);
} else {
deferreds[id].errorCallback(result);
}
}
};
var plugins = available ? JSON.parse(DeviceUtility.list_plugins()) : [];
_.each(plugins, function (plugin) {
methods[plugin.name] = function (args) {
return native_invoke(plugin.action, args);
};
});
/**
* Use to notify an uri hash change on native devices (ios / android)
*/
if (methods.hashChange) {
var currentHash;
$(window).bind('hashchange', function (event) {
var hash = event.getState();
if (!_.isEqual(currentHash, hash)) {
methods.hashChange(hash);
}
currentHash = hash;
});
}
/**
* Error related to the registration of a listener to the backbutton event
*/
class BackButtonListenerError extends Error {}
/**
* By using the back button feature the default back button behavior from the
* app is actually overridden so it is important to keep count to restore the
* default when no custom listener are remaining.
*/
class BackButtonManager {
constructor() {
this._listeners = new Map();
this._onGlobalBackButton = this._onGlobalBackButton.bind(this);
}
//--------------------------------------------------------------------------
// Public
//--------------------------------------------------------------------------
/**
* Enables the func listener, overriding default back button behavior.
*
* @param {Widget|Component} listener
* @param {function} func
* @throws {BackButtonListenerError} if the listener has already been registered
*/
addListener(listener, func) {
if (!methods.overrideBackButton) {
return;
}
if (this._listeners.has(listener)) {
throw new BackButtonListenerError("This listener was already registered.");
}
this._listeners.set(listener, func);
if (this._listeners.size === 1) {
document.addEventListener('backbutton', this._onGlobalBackButton);
methods.overrideBackButton({ enabled: true });
}
}
/**
* Disables the func listener, restoring the default back button behavior if
* no other listeners are present.
*
* @param {Widget|Component} listener
* @throws {BackButtonListenerError} if the listener has already been unregistered
*/
removeListener(listener) {
if (!methods.overrideBackButton) {
return;
}
if (!this._listeners.has(listener)) {
throw new BackButtonListenerError("This listener has already been unregistered.");
}
this._listeners.delete(listener);
if (this._listeners.size === 0) {
document.removeEventListener('backbutton', this._onGlobalBackButton);
methods.overrideBackButton({ enabled: false });
}
}
//--------------------------------------------------------------------------
// Private
//--------------------------------------------------------------------------
_onGlobalBackButton() {
const [listener, func] = [...this._listeners].pop();
if (listener) {
func.apply(listener, arguments);
}
}
}
const backButtonManager = new BackButtonManager();
return {
BackButtonManager,
BackButtonListenerError,
backButtonManager,
methods,
};
});

View File

@@ -0,0 +1,38 @@
/** @odoo-module **/
import mobile from "web_mobile.core";
export function shortcutItem(env) {
return {
type: "item",
id: "web_mobile.shortcut",
description: env._t("Add to Home Screen"),
callback: () => {
const { hash } = env.services.router.current;
if (hash.menu_id) {
const menu = env.services.menu.getMenu(hash.menu_id);
const base64Icon = menu && menu.webIconData;
mobile.methods.addHomeShortcut({
title: document.title,
shortcut_url: document.URL,
web_icon: base64Icon.substring(base64Icon.indexOf(',') + 1),
});
} else {
env.services.notification.add(env._t("No shortcut for Home Menu"));
}
},
sequence: 100,
};
}
export function switchAccountItem(env) {
return {
type: "item",
id: "web_mobile.switch",
description: env._t("Switch/Add Account"),
callback: () => {
mobile.methods.switchAccount();
},
sequence: 100,
};
}

View File

@@ -0,0 +1,23 @@
/** @odoo-module */
import { registry } from "@web/core/registry";
import { patch } from "@web/core/utils/patch";
import { formView } from "@web/views/form/form_view";
import { UpdateDeviceAccountControllerMixin } from "web_mobile.mixins";
import { Record, RelationalModel } from "@web/views/basic_relational_model";
export class ResUsersPreferenceRecord extends Record {}
export class ResUsersPreferenceModel extends RelationalModel {}
ResUsersPreferenceModel.Record = ResUsersPreferenceRecord;
patch(
ResUsersPreferenceRecord.prototype,
"res_users_controller_mobile_mixin",
UpdateDeviceAccountControllerMixin
);
registry.category("views").add("res_users_preferences_form", {
...formView,
Model: ResUsersPreferenceModel,
});

View File

@@ -0,0 +1,31 @@
odoo.define('web_mobile.testUtils', function () {
'use strict';
/**
* Transforms base64 encoded data to a Blob object
*
* @param {string} b64Data
* @param {string} contentType
* @param {int} sliceSize
* @returns {Blob}
*/
function base64ToBlob(b64Data, contentType, sliceSize) {
contentType = contentType || '';
sliceSize = sliceSize || 512;
const byteCharacters = atob(b64Data);
let byteArrays = [];
for (let offset = 0; offset < byteCharacters.length; offset += sliceSize) {
const slice = byteCharacters.slice(offset, offset + sliceSize);
const byteNumbers = Array.from(slice).map((char) => char.charCodeAt(0));
byteArrays.push(new Uint8Array(byteNumbers));
}
return new Blob(byteArrays, { type: contentType });
}
return {
base64ToBlob,
};
});

View File

@@ -0,0 +1,121 @@
/** @odoo-module **/
import { registry } from "@web/core/registry";
import { hotkeyService } from "@web/core/hotkeys/hotkey_service";
import { UserMenu } from "@web/webclient/user_menu/user_menu";
import { shortcutItem, switchAccountItem } from "../src/js/user_menu_items";
import { makeTestEnv } from "@web/../tests/helpers/mock_env";
import { makeFakeNotificationService } from "@web/../tests/helpers/mock_services";
import { click as _click, getFixture, mount, patchWithCleanup } from "@web/../tests/helpers/utils";
import { menuService } from "@web/webclient/menus/menu_service";
import { actionService } from "@web/webclient/actions/action_service";
import mobile from "web_mobile.core";
import { viewService } from "@web/views/view_service";
import { ormService } from "@web/core/orm_service";
const serviceRegistry = registry.category("services");
const userMenuRegistry = registry.category("user_menuitems");
const MY_IMAGE =
"iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==";
let target;
// The UserMenu has a d-none class which is overriden, purely by bootstrap
// by d-x-block classes when the screen has a minimum size.
// To avoid problems, we always skip the visibility check by default when clicking
const click = (el, selector, skipVisibility) => {
if (skipVisibility === undefined) {
skipVisibility = true;
}
return _click(el, selector, skipVisibility);
};
QUnit.module("UserMenu", {
async beforeEach() {
serviceRegistry.add("hotkey", hotkeyService);
serviceRegistry.add("action", actionService)
.add("view", viewService) // #action-serv-leg-compat-js-class
.add("orm", ormService); // #action-serv-leg-compat-js-class
serviceRegistry.add("menu", menuService);
target = getFixture();
},
});
QUnit.test("can execute the callback of addHomeShortcut on an App", async (assert) => {
assert.expect(8)
patchWithCleanup(mobile.methods, {
addHomeShortcut({ title, shortcut_url, web_icon }) {
assert.step("should call addHomeShortcut");
assert.strictEqual(title, document.title);
assert.strictEqual(shortcut_url, document.URL);
assert.strictEqual(web_icon, MY_IMAGE);
}
});
const menus = {
root: { id: "root", children: [1], name: "root", appID: "root" },
1: { id: 1, children: [], name: "App0", appID: 1, webIconData: `data:image/png;base64,${MY_IMAGE}` },
};
const baseConfig = { serverData: { menus } };
const env = await makeTestEnv(baseConfig);
userMenuRegistry.add("web_mobile.shortcut", shortcutItem);
// Set App1 menu and mount
env.services.menu.setCurrentMenu(1);
await mount(UserMenu, target, { env });
assert.hasClass(target.querySelector(".o_user_menu"), "d-none");
// remove the "d-none" class to make the menu visible before interacting with it
target.querySelector(".o_user_menu").classList.remove("d-none");
await click(target.querySelector("button.dropdown-toggle"));
assert.containsOnce(target, ".dropdown-menu .dropdown-item");
const item = target.querySelector(".dropdown-menu .dropdown-item");
assert.strictEqual(item.textContent, "Add to Home Screen");
await click(item);
assert.verifySteps(['should call addHomeShortcut']);
});
QUnit.test("can execute the callback of addHomeShortcut on the HomeMenu", async (assert) => {
assert.expect(4)
patchWithCleanup(mobile.methods, {
addHomeShortcut() {
assert.step("shouldn't call addHomeShortcut");
}
});
const mockNotification = (message) => {
assert.step(`notification (${message})`);
return () => {};
}
serviceRegistry.add("notification", makeFakeNotificationService(mockNotification));
const env = await makeTestEnv();
userMenuRegistry.add("web_mobile.shortcut", shortcutItem);
await mount(UserMenu, target, { env });
// remove the "d-none" class to make the menu visible before interacting with it
target.querySelector(".o_user_menu").classList.remove("d-none");
await click(target.querySelector("button.dropdown-toggle"));
assert.containsOnce(target, ".dropdown-menu .dropdown-item");
const item = target.querySelector(".dropdown-menu .dropdown-item");
assert.strictEqual(item.textContent, "Add to Home Screen");
await click(item);
assert.verifySteps(["notification (No shortcut for Home Menu)"]);
});
QUnit.test("can execute the callback of switchAccount", async (assert) => {
assert.expect(4)
patchWithCleanup(mobile.methods, {
switchAccount() {
assert.step("should call switchAccount");
}
});
const env = await makeTestEnv();
userMenuRegistry.add("web_mobile.switch", switchAccountItem);
await mount(UserMenu, target, { env });
// remove the "d-none" class to make the menu visible before interacting with it
target.querySelector(".o_user_menu").classList.remove("d-none");
await click(target.querySelector("button.dropdown-toggle"));
assert.containsOnce(target, ".dropdown-menu .dropdown-item");
const item = target.querySelector(".dropdown-menu .dropdown-item");
assert.strictEqual(item.textContent, "Switch/Add Account");
await click(item);
assert.verifySteps(["should call switchAccount"]);
});

View File

@@ -0,0 +1,752 @@
/** @odoo-module **/
import Dialog from "web.Dialog";
import dom from "web.dom";
import OwlDialog from "web.OwlDialog";
import Popover from "web.Popover";
import session from "web.session";
import makeTestEnvironment from "web.test_env";
import testUtils from "web.test_utils";
import Widget from "web.Widget";
import { useBackButton } from "web_mobile.hooks";
import { BackButtonEventMixin } from "web_mobile.mixins";
import mobile from "web_mobile.core";
/*import UserPreferencesFormView from "web_mobile.UserPreferencesFormView";*/
import { createWebClient, doAction } from '@web/../tests/webclient/helpers';
import { makeTestEnv } from "@web/../tests/helpers/mock_env";
import { mount, getFixture, destroy, patchWithCleanup, clickSave} from "@web/../tests/helpers/utils";
import { makeView, setupViewRegistries } from "@web/../tests/views/helpers";
const { Component, useState, xml } = owl;
const { createParent } = testUtils;
const MY_IMAGE =
"iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==";
const BASE64_SVG_IMAGE =
"PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxNzUnIGhlaWdodD0nMTAwJyBmaWxsPScjMDAwJz48cG9seWdvbiBwb2ludHM9JzAsMCAxMDAsMCA1MCw1MCcvPjwvc3ZnPg==";
const BASE64_PNG_HEADER = "iVBORw0KGg";
let target;
let serverData;
QUnit.module("web_mobile", {
async beforeEach() {
target = getFixture();
serverData = {
models: {
partner: {
fields: {
name: { string: "name", type: "char" },
avatar_1920: {},
parent_id: { string: "Parent", type: "many2one", relation: "partner" },
sibling_ids: {
string: "Sibling",
type: "many2many",
relation: "partner",
},
phone: {},
mobile: {},
email: {},
street: {},
street2: {},
city: {},
state_id: {},
zip: {},
country_id: {},
website: {},
function: {},
title: {},
date: { string: "A date", type: "date" },
datetime: { string: "A datetime", type: "datetime" },
},
records: [
{
id: 1,
name: "coucou1",
},
{
id: 2,
name: "coucou2",
},
{
id: 11,
name: "coucou3",
avatar_1920: "image",
parent_id: 1,
phone: "phone",
mobile: "mobile",
email: "email",
street: "street",
street2: "street2",
city: "city",
state_id: "state_id",
zip: "zip",
country_id: "country_id",
website: "website",
function: "function",
title: "title",
},
],
},
users: {
fields: {
name: { string: "name", type: "char" },
},
records: [],
},
},
};
setupViewRegistries();
},
}, function () {
QUnit.module("core", function () {
QUnit.test("BackButtonManager", async function (assert) {
assert.expect(13);
patchWithCleanup(mobile.methods, {
overrideBackButton({ enabled }) {
assert.step(`overrideBackButton: ${enabled}`);
},
});
const { BackButtonManager, BackButtonListenerError } = mobile;
const manager = new BackButtonManager();
const DummyWidget = Widget.extend({
_onBackButton(ev) {
assert.step(`${ev.type} event`);
},
});
const dummy = new DummyWidget();
manager.addListener(dummy, dummy._onBackButton);
assert.verifySteps(["overrideBackButton: true"]);
// simulate 'backbutton' event triggered by the app
await testUtils.dom.triggerEvent(document, "backbutton");
assert.verifySteps(["backbutton event"]);
manager.removeListener(dummy);
assert.verifySteps(["overrideBackButton: false"]);
await testUtils.dom.triggerEvent(document, "backbutton");
assert.verifySteps([], "shouldn't trigger any handler");
manager.addListener(dummy, dummy._onBackButton);
assert.throws(
() => {
manager.addListener(dummy, dummy._onBackButton);
},
BackButtonListenerError,
"should raise an error if adding a listener twice"
);
assert.verifySteps(["overrideBackButton: true"]);
manager.removeListener(dummy);
assert.throws(
() => {
manager.removeListener(dummy);
},
BackButtonListenerError,
"should raise an error if removing a non-registered listener"
);
assert.verifySteps(["overrideBackButton: false"]);
dummy.destroy();
});
});
QUnit.module("BackButtonEventMixin");
QUnit.test("widget should receive a backbutton event", async function (assert) {
assert.expect(5);
patchWithCleanup(mobile.methods, {
overrideBackButton({ enabled }) {
assert.step(`overrideBackButton: ${enabled}`);
},
});
const DummyWidget = Widget.extend(BackButtonEventMixin, {
_onBackButton(ev) {
assert.step(`${ev.type} event`);
},
});
const backButtonEvent = new Event("backbutton");
const dummy = new DummyWidget();
dummy.appendTo($("<div>"));
// simulate 'backbutton' event triggered by the app
document.dispatchEvent(backButtonEvent);
// waiting nextTick to match testUtils.dom.triggerEvents() behavior
await testUtils.nextTick();
assert.verifySteps([], "shouldn't have register handle before attached to the DOM");
dom.append($("qunit-fixture"), dummy.$el, {
in_DOM: true,
callbacks: [{ widget: dummy }],
});
// simulate 'backbutton' event triggered by the app
document.dispatchEvent(backButtonEvent);
await testUtils.nextTick();
dom.detach([{ widget: dummy }]);
assert.verifySteps(
["overrideBackButton: true", "backbutton event", "overrideBackButton: false"],
"should have enabled/disabled the back-button override"
);
dummy.destroy();
});
QUnit.test("multiple widgets should receive backbutton events in the right order", async function (assert) {
assert.expect(6);
patchWithCleanup(mobile.methods, {
overrideBackButton({ enabled }) {
assert.step(`overrideBackButton: ${enabled}`);
},
});
const DummyWidget = Widget.extend(BackButtonEventMixin, {
init(parent, { name }) {
this._super.apply(this, arguments);
this.name = name;
},
_onBackButton(ev) {
assert.step(`${this.name}: ${ev.type} event`);
dom.detach([{ widget: this }]);
},
});
const backButtonEvent = new Event("backbutton");
const dummy1 = new DummyWidget(null, { name: "dummy1" });
dom.append($("qunit-fixture"), dummy1.$el, {
in_DOM: true,
callbacks: [{ widget: dummy1 }],
});
const dummy2 = new DummyWidget(null, { name: "dummy2" });
dom.append($("qunit-fixture"), dummy2.$el, {
in_DOM: true,
callbacks: [{ widget: dummy2 }],
});
const dummy3 = new DummyWidget(null, { name: "dummy3" });
dom.append($("qunit-fixture"), dummy3.$el, {
in_DOM: true,
callbacks: [{ widget: dummy3 }],
});
// simulate 'backbutton' events triggered by the app
document.dispatchEvent(backButtonEvent);
// waiting nextTick to match testUtils.dom.triggerEvents() behavior
await testUtils.nextTick();
document.dispatchEvent(backButtonEvent);
await testUtils.nextTick();
document.dispatchEvent(backButtonEvent);
await testUtils.nextTick();
assert.verifySteps([
"overrideBackButton: true",
"dummy3: backbutton event",
"dummy2: backbutton event",
"dummy1: backbutton event",
"overrideBackButton: false",
]);
dummy1.destroy();
dummy2.destroy();
dummy3.destroy();
});
QUnit.module("useBackButton");
QUnit.test("component should receive a backbutton event", async function (assert) {
assert.expect(5);
patchWithCleanup(mobile.methods, {
overrideBackButton({ enabled }) {
assert.step(`overrideBackButton: ${enabled}`);
},
});
class DummyComponent extends Component {
setup() {
this._backButtonHandler = useBackButton(this._onBackButton);
}
_onBackButton(ev) {
assert.step(`${ev.type} event`);
}
}
DummyComponent.template = xml`<div/>`;
const target = getFixture();
const env = makeTestEnv();
const dummy = await mount(DummyComponent, target, { env });
// simulate 'backbutton' event triggered by the app
await testUtils.dom.triggerEvent(document, "backbutton");
assert.verifySteps(
["overrideBackButton: true", "backbutton event"],
"should have enabled/disabled the back-button override"
);
destroy(dummy);
assert.verifySteps(["overrideBackButton: false"]);
});
QUnit.test("multiple components should receive backbutton events in the right order", async function (assert) {
assert.expect(6);
patchWithCleanup(mobile.methods, {
overrideBackButton({ enabled }) {
assert.step(`overrideBackButton: ${enabled}`);
},
});
class DummyComponent extends Component {
setup() {
this._backButtonHandler = useBackButton(this._onBackButton);
}
_onBackButton(ev) {
assert.step(`${this.props.name}: ${ev.type} event`);
// unmounting is not supported anymore
// A real business case equivalent to this is to have a Parent component
// doing a foreach on some reactive object which contains the list of dummy components
// and calling a callback props.onBackButton right here that removes the element from the list
destroy(this);
}
}
DummyComponent.template = xml`<div/>`;
const props1 = { name: "dummy1" };
const props2 = { name: "dummy2" };
const props3 = { name: "dummy3" };
const target = getFixture();
const env = makeTestEnv();
await mount(DummyComponent, target, { props: props1, env });
await mount(DummyComponent, target, { props: props2, env });
await mount(DummyComponent, target, { props: props3, env });
// simulate 'backbutton' events triggered by the app
await testUtils.dom.triggerEvent(document, "backbutton");
await testUtils.dom.triggerEvent(document, "backbutton");
await testUtils.dom.triggerEvent(document, "backbutton");
assert.verifySteps([
"overrideBackButton: true",
"dummy3: backbutton event",
"dummy2: backbutton event",
"dummy1: backbutton event",
"overrideBackButton: false",
]);
});
QUnit.test("component should receive a backbutton event: custom activation", async function (assert) {
assert.expect(10);
patchWithCleanup(mobile.methods, {
overrideBackButton({ enabled }) {
assert.step(`overrideBackButton: ${enabled}`);
},
});
class DummyComponent extends Component {
setup() {
this._backButtonHandler = useBackButton(
this._onBackButton,
this.shouldActivateBackButton.bind(this)
);
this.state = useState({
show: this.props.show,
});
}
toggle() {
this.state.show = !this.state.show;
}
shouldActivateBackButton() {
return this.state.show;
}
_onBackButton(ev) {
assert.step(`${ev.type} event`);
}
}
DummyComponent.template = xml`<button class="dummy" t-esc="state.show" t-on-click="toggle"/>`;
const target = getFixture();
const env = makeTestEnv();
const dummy = await mount(DummyComponent, target, { props: { show: false }, env });
assert.verifySteps([], "shouldn't have enabled backbutton mount");
await testUtils.dom.click(target.querySelector(".dummy"));
// simulate 'backbutton' event triggered by the app
await testUtils.dom.triggerEvent(document, "backbutton");
await testUtils.dom.click(target.querySelector(".dummy"));
assert.verifySteps(
[
"overrideBackButton: true",
"backbutton event",
"overrideBackButton: false",
],
"should have enabled/disabled the back-button override"
);
destroy(dummy);
// enabled at mount
const dummy2 = await mount(DummyComponent, target, { props: { show: true }, env });
assert.verifySteps(
["overrideBackButton: true"],
"shouldn have enabled backbutton at mount"
);
// simulate 'backbutton' event triggered by the app
await testUtils.dom.triggerEvent(document, "backbutton");
destroy(dummy2);
assert.verifySteps(
["backbutton event", "overrideBackButton: false"],
"should have disabled the back-button override during unmount"
);
});
QUnit.module("Dialog");
QUnit.test("dialog is closable with backbutton event", async function (assert) {
assert.expect(7);
patchWithCleanup(mobile.methods, {
overrideBackButton({ enabled }) {
assert.step(`overrideBackButton: ${enabled}`);
},
});
testUtils.mock.patch(Dialog, {
close: function () {
assert.step("close");
return this._super.apply(this, arguments);
},
});
const parent = await createParent({
data: this.data,
archs: {
"partner,false,form": `
<form>
<sheet>
<field name="name"/>
</sheet>
</form>
`,
},
});
const backButtonEvent = new Event("backbutton");
const dialog = new Dialog(parent, {
res_model: "partner",
res_id: 1,
}).open();
await dialog.opened().then(() => {
assert.step("opened");
});
assert.containsOnce(document.body, ".modal", "should have a modal");
// simulate 'backbutton' event triggered by the app waiting
document.dispatchEvent(backButtonEvent);
// nextTick to match testUtils.dom.triggerEvents() behavior
await testUtils.nextTick();
// The goal of this assert is to check that our event called the
// opened/close methods on Dialog.
assert.verifySteps(
["overrideBackButton: true", "opened", "close", "overrideBackButton: false"],
"should have open/close dialog"
);
assert.containsNone(document.body, ".modal", "modal should be closed");
parent.destroy();
});
QUnit.module("OwlDialog");
QUnit.test("dialog is closable with backbutton event", async function (assert) {
assert.expect(7);
patchWithCleanup(mobile.methods, {
overrideBackButton({ enabled }) {
assert.step(`overrideBackButton: ${enabled}`);
},
});
class Parent extends Component {
setup() {
this.state = useState({ display: true });
}
_onDialogClosed() {
this.state.display = false;
assert.step("dialog_closed");
}
}
Parent.components = { OwlDialog };
Parent.template = xml`
<div>
<OwlDialog
t-if="state.display"
onClosed="() => this._onDialogClosed()">
Some content
</OwlDialog>
</div>`;
const target = getFixture();
const env = await makeTestEnvironment();
await mount(Parent, target, { env });
assert.containsOnce(document.body, ".o_dialog");
assert.verifySteps(["overrideBackButton: true"]);
// simulate 'backbutton' event triggered by the app
await testUtils.dom.triggerEvent(document, "backbutton");
assert.verifySteps(["dialog_closed", "overrideBackButton: false"]);
assert.containsNone(document.body, ".o_dialog", "should have been closed");
});
QUnit.module("Popover");
QUnit.test("popover is closable with backbutton event", async function (assert) {
assert.expect(7);
patchWithCleanup(mobile.methods, {
overrideBackButton({ enabled }) {
assert.step(`overrideBackButton: ${enabled}`);
},
});
class Parent extends Component {}
Parent.components = { Popover };
Parent.template = xml`
<div>
<Popover>
<t t-set="opened">
Some content
</t>
<button id="target">
Show me
</button>
</Popover>
</div>`;
const target = getFixture();
const env = makeTestEnv();
await mount(Parent, target, { env });
assert.containsNone(document.body, ".o_popover");
await testUtils.dom.click(document.querySelector("#target"));
assert.containsOnce(document.body, ".o_popover");
assert.verifySteps(["overrideBackButton: true"]);
// simulate 'backbutton' event triggered by the app
await testUtils.dom.triggerEvent(document, "backbutton");
assert.verifySteps(["overrideBackButton: false"]);
assert.containsNone(document.body, ".o_popover", "should have been closed");
});
QUnit.module("ControlPanel");
QUnit.test("mobile search: close with backbutton event", async function (assert) {
assert.expect(7);
patchWithCleanup(mobile.methods, {
overrideBackButton({ enabled }) {
assert.step(`overrideBackButton: ${enabled}`);
},
});
const actions = {
1: {
id: 1,
name: "Yes",
res_model: "partner",
type: "ir.actions.act_window",
views: [[false, "list"]],
},
};
const views = {
"partner,false,list": '<tree><field name="foo"/></tree>',
"partner,false,search": `
<search>
<filter string="Active" name="my_projects" domain="[('boolean_field', '=', True)]"/>
<field name="foo" string="Foo"/>
</search>`,
};
const models = {
partner: {
fields: {
foo: { string: "Foo", type: "char" },
boolean_field: { string: "I am a boolean", type: "boolean" },
},
records: [{ id: 1, display_name: "First record", foo: "yop" }],
},
};
const serverData = {actions, models, views};
const webClient = await createWebClient({ serverData });
await doAction(webClient, 1);
// the mobile search is portaled in body, not in the fixture
assert.containsNone(document.body, ".o_mobile_search");
// open the search view
await testUtils.dom.click(
target.querySelector("button.o_enable_searchview")
);
// open it in full screen
await testUtils.dom.click(
target.querySelector(".o_toggle_searchview_full")
);
assert.containsOnce(document.body, ".o_mobile_search");
assert.verifySteps(["overrideBackButton: true"]);
// simulate 'backbutton' event triggered by the app
await testUtils.dom.triggerEvent(target, "backbutton");
assert.containsNone(target, ".o_mobile_search");
assert.verifySteps(["overrideBackButton: false"]);
});
QUnit.module("UpdateDeviceAccountControllerMixin");
QUnit.test("controller should call native updateAccount method when saving record", async function (assert) {
assert.expect(4);
patchWithCleanup(mobile.methods, {
updateAccount( options ) {
const { avatar, name, username } = options;
assert.ok("should call updateAccount");
assert.ok(avatar.startsWith(BASE64_PNG_HEADER), "should have a PNG base64 encoded avatar");
assert.strictEqual(name, "Marc Demo");
assert.strictEqual(username, "demo");
return Promise.resolve();
}
});
patchWithCleanup(session, {
url(path) {
if (path === '/web/image') {
return `data:image/png;base64,${MY_IMAGE}`;
}
return this._super(...arguments);
},
username: "demo",
name: "Marc Demo",
});
await makeView({
type: "form",
resModel: "partner",
serverData: serverData,
arch: `
<form js_class="res_users_preferences_form">
<sheet>
<field name="name"/>
</sheet>
</form>`,
});
await clickSave(target);
});
QUnit.test("controller should call native updateAccount method with SVG avatar when saving record", async function (assert) {
assert.expect(4);
patchWithCleanup(mobile.methods, {
updateAccount( options ) {
const { avatar, name, username } = options;
assert.ok("should call updateAccount");
assert.ok(avatar.startsWith(BASE64_PNG_HEADER), "should have a PNG base64 encoded avatar");
assert.strictEqual(name, "Marc Demo");
assert.strictEqual(username, "demo");
return Promise.resolve();
}
});
patchWithCleanup(session, {
url(path) {
if (path === '/web/image') {
return `data:image/svg+xml;base64,${BASE64_SVG_IMAGE}`;
}
return this._super(...arguments);
},
username: "demo",
name: "Marc Demo",
});
await makeView({
type: "form",
resModel: "partner",
serverData: serverData,
arch: `
<form js_class="res_users_preferences_form">
<sheet>
<field name="name"/>
</sheet>
</form>`,
});
await clickSave(target);
});
QUnit.test("UserPreferencesFormView should call native updateAccount method when saving record", async function (assert) {
assert.expect(4);
patchWithCleanup(mobile.methods, {
updateAccount( options ) {
const { avatar, name, username } = options;
assert.ok("should call updateAccount");
assert.ok(avatar.startsWith(BASE64_PNG_HEADER), "should have a PNG base64 encoded avatar");
assert.strictEqual(name, "Marc Demo");
assert.strictEqual(username, "demo");
return Promise.resolve();
}
});
patchWithCleanup(session, {
url(path) {
if (path === '/web/image') {
return `data:image/png;base64,${MY_IMAGE}`;
}
return this._super(...arguments);
},
username: "demo",
name: "Marc Demo",
});
await makeView({
type: "form",
resModel: "users",
serverData: serverData,
arch: `
<form js_class="res_users_preferences_form">
<sheet>
<field name="name"/>
</sheet>
</form>`,
});
await clickSave(target);
});
});

View File

@@ -0,0 +1,2 @@
# -*- coding: utf-8 -*-
from . import test_mobile_routes

View File

@@ -0,0 +1,191 @@
# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
import json
import re
from PIL import Image
from io import BytesIO
from uuid import uuid4
from odoo.tests.common import HttpCase, tagged
from odoo.tools import config, mute_logger
@tagged("-at_install", "post_install")
class MobileRoutesTest(HttpCase):
"""
This test suite is used to request the routes used by the mobile applications (Android & iOS)
"""
def setUp(self):
super(MobileRoutesTest, self).setUp()
self.headers = {
"Content-Type": "application/json",
}
def test_version_info(self):
"""
This request is used to check for a compatible Odoo server
"""
payload = self._build_payload()
response = self.url_open(
"/web/webclient/version_info",
data=json.dumps(payload),
headers=self.headers,
)
self.assertEqual(response.status_code, 200)
data = response.json()
self._is_success_json_response(data)
result = data["result"]
self.assertIn("server_version_info", result)
self.assertIsInstance(result["server_version_info"], list)
self.assertGreater(len(result["server_version_info"]), 0)
self.assertEqual(result["server_version_info"][-1], "e")
@mute_logger("odoo.http")
def test_database_list(self):
"""
This request is used to retrieve the databases' list
NB: this route has a different behavior depending on the ability to list databases or not.
"""
payload = self._build_payload()
response = self.url_open("/web/database/list", data=json.dumps(payload), headers=self.headers)
self.assertEqual(response.status_code, 200)
data = response.json()
if config['list_db']:
self._is_success_json_response(data)
result = data["result"]
self.assertIsInstance(result, list)
self.assertGreater(len(result), 0)
self.assertIn(self.env.cr.dbname, result)
else:
self._is_error_json_response(data)
error = data["error"]
self.assertEqual(error["code"], 200)
self.assertEqual(error["message"], "Odoo Server Error")
self.assertEqual(error["data"]["name"], "odoo.exceptions.AccessDenied")
def test_authenticate(self):
"""
This request is used to authenticate a user using its username/password
and retrieve its details & session's id
"""
payload = self._build_payload({
"db": self.env.cr.dbname,
"login": "demo",
"password": "demo",
"context": {},
})
response = self.url_open("/web/session/authenticate", data=json.dumps(payload), headers=self.headers)
self.assertEqual(response.status_code, 200)
data = response.json()
self._is_success_json_response(data)
result = data["result"]
self.assertIsInstance(response.cookies.get("session_id"), str, "should have a session cookie")
self.assertEqual(result["username"], "demo")
self.assertEqual(result["db"], self.env.cr.dbname)
user = self.env["res.users"].search_read([("login", "=", "demo")], limit=1)[0]
self.assertEqual(result["uid"], user["id"])
self.assertEqual(result["name"], user["name"])
@mute_logger("odoo.http")
def test_authenticate_wrong_credentials(self):
"""
This request is used to attempt to authenticate a user using the wrong credentials
(username/password) and check the returned error
"""
payload = self._build_payload({
"db": self.env.cr.dbname,
"login": "demo",
"password": "admin",
"context": {},
})
response = self.url_open("/web/session/authenticate", data=json.dumps(payload), headers=self.headers)
self.assertEqual(response.status_code, 200)
data = response.json()
self._is_error_json_response(data)
error = data["error"]
self.assertEqual(error["code"], 200)
self.assertEqual(error["message"], "Odoo Server Error")
self.assertEqual(error["data"]["name"], "odoo.exceptions.AccessDenied")
@mute_logger("odoo.http")
def test_authenticate_wrong_database(self):
"""
This request is used to authenticate a user against a non existing database and
check the returned error
"""
db_name = "dummydb-%s" % str(uuid4())
payload = self._build_payload({
"db": db_name,
"login": "demo",
"password": "admin",
"context": {},
})
response = self.url_open("/web/session/authenticate", data=json.dumps(payload), headers=self.headers)
self.assertEqual(response.status_code, 200)
data = response.json()
self._is_error_json_response(data)
error = data["error"]
self.assertEqual(error["code"], 200)
self.assertEqual(error["message"], "Odoo Server Error")
self.assertEqual(error["data"]["name"], "odoo.exceptions.AccessError")
def test_avatar(self):
"""
This request is used to retrieve the user's picture
"""
self.authenticate("demo", "demo")
response = self.url_open("/web/image?model=res.users&field=image_medium&id=%s" % self.session.uid)
self.assertEqual(response.status_code, 200)
avatar = Image.open(BytesIO(response.content))
self.assertIsInstance(avatar, Image.Image)
def test_session_info(self):
"""
This request is used to authenticate a user using its session id
"""
payload = self._build_payload()
self.authenticate("demo", "demo")
response = self.url_open("/web/session/get_session_info", data=json.dumps(payload), headers=self.headers)
self.assertEqual(response.status_code, 200)
data = response.json()
self._is_success_json_response(data)
result = data["result"]
self.assertEqual(result["username"], "demo")
self.assertEqual(result["db"], self.env.cr.dbname)
self.assertEqual(result["uid"], self.session.uid)
def _build_payload(self, params={}):
"""
Helper to properly build jsonrpc payload
"""
return {
"jsonrpc": "2.0",
"method": "call",
"id": str(uuid4()),
"params": params,
}
def _is_success_json_response(self, data):
""""
Helper to validate a standard JSONRPC response's structure
"""
self.assertEqual(list(data.keys()), ["jsonrpc", "id", "result"], "should be a valid jsonrpc response")
self.assertTrue(isinstance(data["jsonrpc"], str))
self.assertTrue(isinstance(data["id"], str))
def _is_error_json_response(self, data):
"""
Helper to validate an error JSONRPC response's structure
"""
self.assertEqual(list(data.keys()), ["jsonrpc", "id", "error"], "should be a valid error jsonrpc response")
self.assertTrue(isinstance(data["jsonrpc"], str))
self.assertTrue(isinstance(data["id"], str))
self.assertTrue(isinstance(data["error"], dict))
self.assertEqual(list(data["error"].keys()), ["code", "message", "data"], "should be a valid error structure")
error = data["error"]
self.assertTrue(isinstance(error["data"], dict))
self.assertIn("name", error["data"])
self.assertIn("message", error["data"])

View File

@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="view_users_form_simple_modif" model="ir.ui.view">
<field name="name">res.users.preferences.form.mobile</field>
<field name="model">res.users</field>
<field name="inherit_id" ref="base.view_users_form_simple_modif"/>
<field name="arch" type="xml">
<xpath expr="//form" position="attributes">
<attribute name="js_class">res_users_preferences_form</attribute>
</xpath>
</field>
</record>
</odoo>