[MERGE] from trunk
bzr revid: xmo@openerp.com-20131115132553-9eqxggih8be63i36
This commit is contained in:
commit
8e78b40e6a
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:33+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:29+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:34+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:30+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:34+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:30+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:34+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:30+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:35+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:31+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:35+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:31+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:35+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:31+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
"X-Poedit-Language: Czech\n"
|
||||
|
||||
#. module: base
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:35+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:31+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:36+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:33+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -12,8 +12,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:37+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:33+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
"X-Poedit-Country: GREECE\n"
|
||||
"X-Poedit-Language: Greek\n"
|
||||
"X-Poedit-SourceCharset: utf-8\n"
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:43+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:39+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
@ -1107,7 +1107,7 @@ msgstr "Email Preferences"
|
|||
#: code:addons/base/ir/ir_fields.py:195
|
||||
#, python-format
|
||||
msgid "'%s' does not seem to be a valid date for field '%%(field)s'"
|
||||
msgstr ""
|
||||
msgstr "'%s' does not seem to be a valid date for field '%%(field)s'"
|
||||
|
||||
#. module: base
|
||||
#: view:res.partner:0
|
||||
|
@ -1257,7 +1257,7 @@ msgstr "Andorra, Principality of"
|
|||
#. module: base
|
||||
#: field:ir.rule,perm_read:0
|
||||
msgid "Apply for Read"
|
||||
msgstr ""
|
||||
msgstr "Apply for Read"
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.mn
|
||||
|
@ -1349,7 +1349,7 @@ msgstr "Document model"
|
|||
#. module: base
|
||||
#: view:res.users:0
|
||||
msgid "Change the user password."
|
||||
msgstr ""
|
||||
msgstr "Change the user password."
|
||||
|
||||
#. module: base
|
||||
#: view:res.lang:0
|
||||
|
@ -1488,12 +1488,12 @@ msgstr "The country name must be unique!"
|
|||
#. module: base
|
||||
#: field:ir.module.module,installed_version:0
|
||||
msgid "Latest Version"
|
||||
msgstr ""
|
||||
msgstr "Latest Version"
|
||||
|
||||
#. module: base
|
||||
#: view:ir.rule:0
|
||||
msgid "Delete Access Right"
|
||||
msgstr ""
|
||||
msgstr "Delete Access Right"
|
||||
|
||||
#. module: base
|
||||
#: code:addons/base/ir/ir_mail_server.py:214
|
||||
|
@ -1520,7 +1520,7 @@ msgstr "Cayman Islands"
|
|||
#. module: base
|
||||
#: view:ir.rule:0
|
||||
msgid "Record Rule"
|
||||
msgstr ""
|
||||
msgstr "Record Rule"
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.kr
|
||||
|
@ -1546,7 +1546,7 @@ msgstr "Contributors"
|
|||
#. module: base
|
||||
#: field:ir.rule,perm_unlink:0
|
||||
msgid "Apply for Delete"
|
||||
msgstr ""
|
||||
msgstr "Apply for Delete"
|
||||
|
||||
#. module: base
|
||||
#: selection:ir.property,type:0
|
||||
|
@ -1556,12 +1556,12 @@ msgstr "Char"
|
|||
#. module: base
|
||||
#: field:ir.module.category,visible:0
|
||||
msgid "Visible"
|
||||
msgstr ""
|
||||
msgstr "Visible"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.actions.client,name:base.action_client_base_menu
|
||||
msgid "Open Settings Menu"
|
||||
msgstr ""
|
||||
msgstr "Open Settings Menu"
|
||||
|
||||
#. module: base
|
||||
#: selection:base.language.install,lang:0
|
||||
|
@ -1621,6 +1621,10 @@ msgid ""
|
|||
" for uploading to OpenERP's translation "
|
||||
"platform,"
|
||||
msgstr ""
|
||||
"TGZ format: this is a compressed archive containing a PO file, directly "
|
||||
"suitable\n"
|
||||
" for uploading to OpenERP's translation "
|
||||
"platform,"
|
||||
|
||||
#. module: base
|
||||
#: view:res.lang:0
|
||||
|
@ -1647,7 +1651,7 @@ msgstr "Tests"
|
|||
#. module: base
|
||||
#: field:ir.actions.report.xml,attachment:0
|
||||
msgid "Save as Attachment Prefix"
|
||||
msgstr ""
|
||||
msgstr "Save as Attachment Prefix"
|
||||
|
||||
#. module: base
|
||||
#: field:ir.ui.view_sc,res_id:0
|
||||
|
@ -1684,7 +1688,7 @@ msgstr "Haiti"
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_l10n_fr_hr_payroll
|
||||
msgid "French Payroll"
|
||||
msgstr ""
|
||||
msgstr "French Payroll"
|
||||
|
||||
#. module: base
|
||||
#: view:ir.ui.view:0
|
||||
|
@ -1843,7 +1847,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: model:res.country,name:base.mf
|
||||
msgid "Saint Martin (French part)"
|
||||
msgstr ""
|
||||
msgstr "Saint Martin (French part)"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.model,name:base.model_ir_exports
|
||||
|
@ -1863,6 +1867,15 @@ msgid ""
|
|||
" * the main taxes used in Luxembourg\n"
|
||||
" * default fiscal position for local, intracom, extracom "
|
||||
msgstr ""
|
||||
"\n"
|
||||
"This is the base module to manage the accounting chart for Luxembourg.\n"
|
||||
"======================================================================\n"
|
||||
"\n"
|
||||
" * the Luxembourg Official Chart of Accounts (law of June 2009 + 2011 "
|
||||
"chart and Taxes),\n"
|
||||
" * the Tax Code Chart for Luxembourg\n"
|
||||
" * the main taxes used in Luxembourg\n"
|
||||
" * default fiscal position for local, intracom, extracom "
|
||||
|
||||
#. module: base
|
||||
#: code:addons/base/module/wizard/base_update_translations.py:39
|
||||
|
@ -1874,7 +1887,7 @@ msgstr "No language with code \"%s\" exists"
|
|||
#: model:ir.module.category,name:base.module_category_social_network
|
||||
#: model:ir.module.module,shortdesc:base.module_mail
|
||||
msgid "Social Network"
|
||||
msgstr ""
|
||||
msgstr "Social Network"
|
||||
|
||||
#. module: base
|
||||
#: view:res.lang:0
|
||||
|
@ -1884,12 +1897,12 @@ msgstr "%Y - Year with century."
|
|||
#. module: base
|
||||
#: view:res.company:0
|
||||
msgid "Report Footer Configuration"
|
||||
msgstr ""
|
||||
msgstr "Report Footer Configuration"
|
||||
|
||||
#. module: base
|
||||
#: field:ir.translation,comments:0
|
||||
msgid "Translation comments"
|
||||
msgstr ""
|
||||
msgstr "Translation comments"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_lunch
|
||||
|
@ -1947,6 +1960,8 @@ msgid ""
|
|||
"The field on the current object that links to the target object record (must "
|
||||
"be a many2one, or an integer field with the record ID)"
|
||||
msgstr ""
|
||||
"The field on the current object that links to the target object record (must "
|
||||
"be a many2one, or an integer field with the record ID)"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.model,name:base.model_res_bank
|
||||
|
@ -1972,7 +1987,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: help:res.partner,website:0
|
||||
msgid "Website of Partner or Company"
|
||||
msgstr ""
|
||||
msgstr "Website of Partner or Company"
|
||||
|
||||
#. module: base
|
||||
#: help:base.language.install,overwrite:0
|
||||
|
@ -2032,7 +2047,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_portal_project_issue
|
||||
msgid "Portal Issue"
|
||||
msgstr ""
|
||||
msgstr "Portal Issue"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.ui.menu,name:base.menu_tools
|
||||
|
@ -2052,6 +2067,10 @@ msgid ""
|
|||
"Launch Manually Once: after having been launched manually, it sets "
|
||||
"automatically to Done."
|
||||
msgstr ""
|
||||
"Manual: Launched manually.\n"
|
||||
"Automatic: Runs whenever the system is reconfigured.\n"
|
||||
"Launch Manually Once: after having been launched manually, it sets "
|
||||
"automatically to Done."
|
||||
|
||||
#. module: base
|
||||
#: field:res.partner,image_small:0
|
||||
|
@ -13849,7 +13868,7 @@ msgstr "ir.sequence.type"
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_l10n_be_hr_payroll_account
|
||||
msgid "Belgium - Payroll with Accounting"
|
||||
msgstr ""
|
||||
msgstr "Belgium - Payroll with Accounting"
|
||||
|
||||
#. module: base
|
||||
#: selection:base.language.export,format:0
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:41+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:37+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
@ -7260,7 +7260,7 @@ msgstr "El nombre del grupo no puede empezar con \"-\""
|
|||
#: view:ir.module.module:0
|
||||
#: model:ir.ui.menu,name:base.module_mi
|
||||
msgid "Apps"
|
||||
msgstr "Aplicaciones"
|
||||
msgstr "Tienda de aplicaciones"
|
||||
|
||||
#. module: base
|
||||
#: view:ir.ui.view_sc:0
|
||||
|
@ -17750,7 +17750,7 @@ msgstr ""
|
|||
#: model:ir.actions.act_window,name:base.open_module_tree
|
||||
#: model:ir.ui.menu,name:base.menu_module_tree
|
||||
msgid "Installed Modules"
|
||||
msgstr "Módulos instalados"
|
||||
msgstr "Módulos locales"
|
||||
|
||||
#. module: base
|
||||
#: code:addons/base/res/res_users.py:170
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:42+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:39+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:43+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:40+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:43+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:40+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:44+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:40+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
"Language: \n"
|
||||
|
||||
#. module: base
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:43+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:39+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:44+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:41+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -15,8 +15,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:44+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:41+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:42+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:39+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:36+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:32+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:34+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:31+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -9,8 +9,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:39+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:36+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
"X-Poedit-Country: IRAN, ISLAMIC REPUBLIC OF\n"
|
||||
"X-Poedit-Language: Persian\n"
|
||||
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:44+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:41+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:36+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:32+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:36+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:32+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
@ -15529,7 +15529,8 @@ msgstr "Partenaires clients"
|
|||
#. module: base
|
||||
#: sql_constraint:res.users:0
|
||||
msgid "You can not have two users with the same login !"
|
||||
msgstr "VOus ne pouvez pas avoir deux utilsiateurs avec le même login !"
|
||||
msgstr ""
|
||||
"Vous ne pouvez pas avoir deux utilisateurs avec le même identifiant !"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.model,name:base.model_res_request_history
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:43+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:40+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:36+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:33+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:37+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:33+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:37+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:33+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:37+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:33+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:40+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:37+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
"Language: hr\n"
|
||||
|
||||
#. module: base
|
||||
|
@ -3189,7 +3189,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: field:res.company,rml_header1:0
|
||||
msgid "Company Tagline"
|
||||
msgstr ""
|
||||
msgstr "Slogan tvrtke"
|
||||
|
||||
#. module: base
|
||||
#: code:addons/base/res/res_users.py:674
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:37+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:34+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -9,8 +9,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:34+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:30+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:38+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:34+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:37+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:34+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:38+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:34+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:38+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:34+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
@ -62,7 +62,7 @@ msgstr "ビューアーキテクチャ"
|
|||
#. module: base
|
||||
#: model:ir.module.module,summary:base.module_sale_stock
|
||||
msgid "Quotation, Sale Orders, Delivery & Invoicing Control"
|
||||
msgstr "見積書、販売オーダ、出荷、請求書コントロール"
|
||||
msgstr "見積、受注、出荷、請求書コントロール"
|
||||
|
||||
#. module: base
|
||||
#: selection:ir.sequence,implementation:0
|
||||
|
@ -94,7 +94,7 @@ msgstr "店舗用タッチスクリーン画面"
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_l10n_in_hr_payroll
|
||||
msgid "Indian Payroll"
|
||||
msgstr ""
|
||||
msgstr "インド給与管理"
|
||||
|
||||
#. module: base
|
||||
#: help:ir.cron,model:0
|
||||
|
@ -135,11 +135,14 @@ msgid ""
|
|||
"The module adds google user in res user.\n"
|
||||
"========================================\n"
|
||||
msgstr ""
|
||||
"\n"
|
||||
"このモジュールはユーザマスタにGoogleユーザを追加します。\n"
|
||||
"========================================\n"
|
||||
|
||||
#. module: base
|
||||
#: help:res.partner,employee:0
|
||||
msgid "Check this box if this contact is an Employee."
|
||||
msgstr ""
|
||||
msgstr "この連絡先が従業員である場合はチェック。"
|
||||
|
||||
#. module: base
|
||||
#: help:ir.model.fields,domain:0
|
||||
|
@ -169,7 +172,7 @@ msgstr "ターゲットウィンドウ"
|
|||
#. module: base
|
||||
#: field:ir.actions.report.xml,report_rml:0
|
||||
msgid "Main Report File Path"
|
||||
msgstr ""
|
||||
msgstr "メインレポートファイルパス"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_sale_analytic_plans
|
||||
|
@ -287,12 +290,12 @@ msgstr "販売管理"
|
|||
msgid ""
|
||||
"The internal user that is in charge of communicating with this contact if "
|
||||
"any."
|
||||
msgstr ""
|
||||
msgstr "この連絡先との連携を担当する内部ユーザ"
|
||||
|
||||
#. module: base
|
||||
#: view:res.partner:0
|
||||
msgid "Search Partner"
|
||||
msgstr "パートナ検索"
|
||||
msgstr "取引先検索"
|
||||
|
||||
#. module: base
|
||||
#: field:ir.module.category,module_nr:0
|
||||
|
@ -613,7 +616,7 @@ msgstr "スペイン語(ベネズエラ)/ Español (VE)"
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_hr_timesheet_invoice
|
||||
msgid "Invoice on Timesheets"
|
||||
msgstr "勤務表による請求書"
|
||||
msgstr "タイムシートを基に請求"
|
||||
|
||||
#. module: base
|
||||
#: view:base.module.upgrade:0
|
||||
|
@ -668,7 +671,7 @@ msgstr "未翻訳"
|
|||
#. module: base
|
||||
#: view:ir.mail_server:0
|
||||
msgid "Outgoing Mail Server"
|
||||
msgstr ""
|
||||
msgstr "送信メールサーバ"
|
||||
|
||||
#. module: base
|
||||
#: help:ir.actions.act_window,context:0
|
||||
|
@ -855,7 +858,7 @@ msgstr "セキュリティと認証"
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_web_calendar
|
||||
msgid "Web Calendar"
|
||||
msgstr ""
|
||||
msgstr "ウェブカレンダ"
|
||||
|
||||
#. module: base
|
||||
#: selection:base.language.install,lang:0
|
||||
|
@ -866,7 +869,7 @@ msgstr "スウェーデン語 / svenska"
|
|||
#: field:base.language.export,name:0
|
||||
#: field:ir.attachment,datas_fname:0
|
||||
msgid "File Name"
|
||||
msgstr ""
|
||||
msgstr "ファイル名"
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.rs
|
||||
|
@ -962,7 +965,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: view:res.partner:0
|
||||
msgid "My Partners"
|
||||
msgstr "Myパートナ"
|
||||
msgstr "自分の取引先"
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.zw
|
||||
|
@ -1261,7 +1264,7 @@ msgstr "国の名前は固有であるべきです。"
|
|||
#. module: base
|
||||
#: field:ir.module.module,installed_version:0
|
||||
msgid "Latest Version"
|
||||
msgstr ""
|
||||
msgstr "最新バージョン"
|
||||
|
||||
#. module: base
|
||||
#: view:ir.rule:0
|
||||
|
@ -1649,7 +1652,7 @@ msgstr "%Y - 世紀を含む年"
|
|||
#. module: base
|
||||
#: view:res.company:0
|
||||
msgid "Report Footer Configuration"
|
||||
msgstr ""
|
||||
msgstr "レポートフッタ設定調整"
|
||||
|
||||
#. module: base
|
||||
#: field:ir.translation,comments:0
|
||||
|
@ -1998,7 +2001,7 @@ msgstr "7. %H:%M:%S ==> 18:25:20"
|
|||
#: view:res.partner:0
|
||||
#: field:res.partner.category,partner_ids:0
|
||||
msgid "Partners"
|
||||
msgstr "パートナ"
|
||||
msgstr "取引先"
|
||||
|
||||
#. module: base
|
||||
#: field:res.partner.category,parent_left:0
|
||||
|
@ -2019,7 +2022,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: field:res.partner.bank,footer:0
|
||||
msgid "Display on Reports"
|
||||
msgstr "表示(レポート)"
|
||||
msgstr "レポート表記"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_project_timesheet
|
||||
|
@ -2596,7 +2599,7 @@ msgstr "オブジェクト名は x_ で始める必要があり、特殊文字
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_auth_oauth_signup
|
||||
msgid "Signup with OAuth2 Authentication"
|
||||
msgstr ""
|
||||
msgstr "OAuth2認証によるサインアップ"
|
||||
|
||||
#. module: base
|
||||
#: selection:ir.model,state:0
|
||||
|
@ -2623,12 +2626,12 @@ msgstr "ギリシャ語 / Ελληνικά"
|
|||
#. module: base
|
||||
#: field:res.company,custom_footer:0
|
||||
msgid "Custom Footer"
|
||||
msgstr ""
|
||||
msgstr "フッターのカスタマイズ"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_sale_crm
|
||||
msgid "Opportunity to Quotation"
|
||||
msgstr "商談から見積り"
|
||||
msgstr "商談から見積"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_sale_analytic_plans
|
||||
|
@ -3134,7 +3137,7 @@ msgstr "韓国語(韓国)/ 한국어 (KR)"
|
|||
#. module: base
|
||||
#: help:ir.model.fields,model:0
|
||||
msgid "The technical name of the model this field belongs to"
|
||||
msgstr "この項目が属するモデルの専門的名前"
|
||||
msgstr "この項目が属するモデルの技術名称"
|
||||
|
||||
#. module: base
|
||||
#: field:ir.actions.server,action_id:0
|
||||
|
@ -3165,7 +3168,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: field:res.company,rml_header1:0
|
||||
msgid "Company Tagline"
|
||||
msgstr ""
|
||||
msgstr "会社スローガン"
|
||||
|
||||
#. module: base
|
||||
#: code:addons/base/res/res_users.py:674
|
||||
|
@ -3370,12 +3373,12 @@ msgstr "オーストリア"
|
|||
#: model:ir.ui.menu,name:base.menu_calendar_configuration
|
||||
#: selection:ir.ui.view,type:0
|
||||
msgid "Calendar"
|
||||
msgstr "カレンダー"
|
||||
msgstr "カレンダ"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.category,name:base.module_category_knowledge_management
|
||||
msgid "Knowledge"
|
||||
msgstr ""
|
||||
msgstr "ナレッジ"
|
||||
|
||||
#. module: base
|
||||
#: field:workflow.activity,signal_send:0
|
||||
|
@ -3408,7 +3411,7 @@ msgid ""
|
|||
"Manage the contact titles you want to have available in your system and the "
|
||||
"way you want to print them in letters and other documents. Some example: "
|
||||
"Mr., Mrs. "
|
||||
msgstr "手紙や他のドキュメントの印刷において利用する際の適切な連絡先のタイトルを管理します。 幾つかの例:男子や夫人の敬称 "
|
||||
msgstr "手紙やその他のドキュメント印刷にて使用する連絡先敬称を管理します(例えば「様」、「御中」など)。 "
|
||||
|
||||
#. module: base
|
||||
#: view:ir.model.access:0
|
||||
|
@ -3477,7 +3480,7 @@ msgstr "生年月日"
|
|||
#: model:ir.actions.act_window,name:base.action_partner_title_contact
|
||||
#: model:ir.ui.menu,name:base.menu_partner_title_contact
|
||||
msgid "Contact Titles"
|
||||
msgstr "役職"
|
||||
msgstr "連絡先敬称"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_product_manufacturer
|
||||
|
@ -3700,7 +3703,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: view:base.language.import:0
|
||||
msgid "_Import"
|
||||
msgstr "インポート"
|
||||
msgstr "インポート(_I)"
|
||||
|
||||
#. module: base
|
||||
#: field:res.users,action_id:0
|
||||
|
@ -3753,7 +3756,7 @@ msgstr "ルール間の影響"
|
|||
#: field:res.company,rml_footer:0
|
||||
#: field:res.company,rml_footer_readonly:0
|
||||
msgid "Report Footer"
|
||||
msgstr ""
|
||||
msgstr "レポートフッタ"
|
||||
|
||||
#. module: base
|
||||
#: selection:res.lang,direction:0
|
||||
|
@ -3791,7 +3794,7 @@ msgstr "レポート"
|
|||
#: field:res.partner,title:0
|
||||
#: field:res.partner.title,name:0
|
||||
msgid "Title"
|
||||
msgstr "役職"
|
||||
msgstr "敬称"
|
||||
|
||||
#. module: base
|
||||
#: help:ir.property,res_id:0
|
||||
|
@ -4436,7 +4439,7 @@ msgstr "式"
|
|||
#. module: base
|
||||
#: view:res.company:0
|
||||
msgid "Header/Footer"
|
||||
msgstr "ヘッダー / フッター"
|
||||
msgstr "ヘッダ/フッタ"
|
||||
|
||||
#. module: base
|
||||
#: help:ir.mail_server,sequence:0
|
||||
|
@ -4482,7 +4485,7 @@ msgstr "モジュール .ZIPファイル"
|
|||
#. module: base
|
||||
#: model:res.partner.category,name:base.res_partner_category_17
|
||||
msgid "Telecom sector"
|
||||
msgstr "遠距離通信部門"
|
||||
msgstr "通信セクター"
|
||||
|
||||
#. module: base
|
||||
#: field:workflow.transition,trigger_model:0
|
||||
|
@ -4497,7 +4500,7 @@ msgstr "`code`は固有であるべきです。"
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_knowledge
|
||||
msgid "Knowledge Management System"
|
||||
msgstr ""
|
||||
msgstr "ナレッジ管理システム"
|
||||
|
||||
#. module: base
|
||||
#: view:workflow.activity:0
|
||||
|
@ -4811,7 +4814,7 @@ msgstr "郵便番号"
|
|||
#: view:ir.module.module:0
|
||||
#: field:ir.module.module,author:0
|
||||
msgid "Author"
|
||||
msgstr "著者"
|
||||
msgstr "作成者"
|
||||
|
||||
#. module: base
|
||||
#: view:ir.actions.todo:0
|
||||
|
@ -4970,7 +4973,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: model:res.partner.category,name:base.res_partner_category_7
|
||||
msgid "IT Services"
|
||||
msgstr ""
|
||||
msgstr "ITサービス"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.category,name:base.module_category_specific_industry_applications
|
||||
|
@ -5161,7 +5164,7 @@ msgstr "キー"
|
|||
#. module: base
|
||||
#: field:res.company,rml_header:0
|
||||
msgid "RML Header"
|
||||
msgstr "RMLヘッダー"
|
||||
msgstr "RMLヘッダ"
|
||||
|
||||
#. module: base
|
||||
#: help:res.country,address_format:0
|
||||
|
@ -5341,7 +5344,7 @@ msgstr "各モジュールは固有でなければなりません。"
|
|||
#: model:ir.module.category,name:base.module_category_localization
|
||||
#: model:ir.ui.menu,name:base.menu_localisation
|
||||
msgid "Localization"
|
||||
msgstr "ローカル化"
|
||||
msgstr "ローカライズ"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_web_api
|
||||
|
@ -5420,12 +5423,12 @@ msgstr ""
|
|||
#. module: base
|
||||
#: model:ir.ui.menu,name:base.menu_partner_category_form
|
||||
msgid "Partner Tags"
|
||||
msgstr ""
|
||||
msgstr "取引先タグ"
|
||||
|
||||
#. module: base
|
||||
#: view:res.company:0
|
||||
msgid "Preview Header/Footer"
|
||||
msgstr ""
|
||||
msgstr "ヘッダ/フッタプレビュー"
|
||||
|
||||
#. module: base
|
||||
#: field:ir.ui.menu,parent_id:0
|
||||
|
@ -5716,7 +5719,7 @@ msgstr ""
|
|||
#: field:workflow,name:0
|
||||
#: field:workflow.activity,name:0
|
||||
msgid "Name"
|
||||
msgstr "名前"
|
||||
msgstr "名称"
|
||||
|
||||
#. module: base
|
||||
#: help:ir.actions.act_window,multi:0
|
||||
|
@ -5944,7 +5947,7 @@ msgstr "インストール言語"
|
|||
#. module: base
|
||||
#: model:res.partner.category,name:base.res_partner_category_11
|
||||
msgid "Services"
|
||||
msgstr ""
|
||||
msgstr "サービス業"
|
||||
|
||||
#. module: base
|
||||
#: view:ir.translation:0
|
||||
|
@ -6393,7 +6396,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_account_cancel
|
||||
msgid "Cancel Journal Entries"
|
||||
msgstr "仕訳帳入力のキャンセル"
|
||||
msgstr "仕訳取消"
|
||||
|
||||
#. module: base
|
||||
#: field:res.partner,tz_offset:0
|
||||
|
@ -6530,7 +6533,7 @@ msgstr "フランス語 / Français"
|
|||
#. module: base
|
||||
#: view:ir.module.module:0
|
||||
msgid "Created Menus"
|
||||
msgstr "作成済メニュー"
|
||||
msgstr "作成メニュー"
|
||||
|
||||
#. module: base
|
||||
#: code:addons/base/module/module.py:502
|
||||
|
@ -6797,7 +6800,7 @@ msgstr "時刻の書式"
|
|||
#. module: base
|
||||
#: field:res.company,rml_header3:0
|
||||
msgid "RML Internal Header for Landscape Reports"
|
||||
msgstr ""
|
||||
msgstr "ランドスケープレポート用RML内部ヘッダ"
|
||||
|
||||
#. module: base
|
||||
#: model:res.groups,name:base.group_partner_manager
|
||||
|
@ -6807,7 +6810,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: view:ir.module.module:0
|
||||
msgid "Defined Reports"
|
||||
msgstr "レポートの定義"
|
||||
msgstr "定義レポート"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_project_gtd
|
||||
|
@ -6919,7 +6922,7 @@ msgstr "ボツワナ"
|
|||
#. module: base
|
||||
#: view:res.partner.title:0
|
||||
msgid "Partner Titles"
|
||||
msgstr "パートナのタイトル"
|
||||
msgstr "取引先タイトル"
|
||||
|
||||
#. module: base
|
||||
#: code:addons/base/ir/ir_fields.py:196
|
||||
|
@ -7033,7 +7036,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: help:ir.model.fields,relation:0
|
||||
msgid "For relationship fields, the technical name of the target model"
|
||||
msgstr "その目的モデルの関係項目のための技術的な名前"
|
||||
msgstr "関係項目につき、ターゲットモデルの技術名称"
|
||||
|
||||
#. module: base
|
||||
#: view:res.lang:0
|
||||
|
@ -7093,7 +7096,7 @@ msgstr "遷移"
|
|||
#: model:ir.module.module,shortdesc:base.module_hr_timesheet
|
||||
#: model:ir.module.module,shortdesc:base.module_hr_timesheet_sheet
|
||||
msgid "Timesheets"
|
||||
msgstr "勤務表"
|
||||
msgstr "タイムシート"
|
||||
|
||||
#. module: base
|
||||
#: help:ir.values,company_id:0
|
||||
|
@ -7276,7 +7279,7 @@ msgstr "署名"
|
|||
#. module: base
|
||||
#: field:res.partner.category,complete_name:0
|
||||
msgid "Full Name"
|
||||
msgstr "氏名"
|
||||
msgstr "名称"
|
||||
|
||||
#. module: base
|
||||
#: view:ir.attachment:0
|
||||
|
@ -7369,7 +7372,7 @@ msgstr ""
|
|||
#: view:res.partner:0
|
||||
#: field:res.partner,child_ids:0
|
||||
msgid "Contacts"
|
||||
msgstr "コンタクト"
|
||||
msgstr "連絡先"
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.fo
|
||||
|
@ -7395,7 +7398,7 @@ msgstr "エクアドル - 会計"
|
|||
#. module: base
|
||||
#: field:res.partner.category,name:0
|
||||
msgid "Category Name"
|
||||
msgstr "分類名"
|
||||
msgstr "カテゴリ名"
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.mp
|
||||
|
@ -7480,7 +7483,7 @@ msgstr "コンテンツが別のデータ項目にある場合、メインレポ
|
|||
#. module: base
|
||||
#: model:res.partner.category,name:base.res_partner_category_14
|
||||
msgid "Manufacturer"
|
||||
msgstr ""
|
||||
msgstr "製造業"
|
||||
|
||||
#. module: base
|
||||
#: help:res.users,company_id:0
|
||||
|
@ -7744,7 +7747,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: field:res.company,rml_header2:0
|
||||
msgid "RML Internal Header"
|
||||
msgstr "RML内部ヘッダー"
|
||||
msgstr "RML内部ヘッダ"
|
||||
|
||||
#. module: base
|
||||
#: field:ir.actions.act_window,search_view_id:0
|
||||
|
@ -8049,7 +8052,7 @@ msgstr "全ての x で繰り返す"
|
|||
#. module: base
|
||||
#: model:res.partner.bank.type,name:base.bank_normal
|
||||
msgid "Normal Bank Account"
|
||||
msgstr "通常の銀行口座"
|
||||
msgstr "普通口座"
|
||||
|
||||
#. module: base
|
||||
#: field:change.password.user,wizard_id:0
|
||||
|
@ -8118,7 +8121,7 @@ msgstr "フランス語(スイス)/ Français (CH)"
|
|||
#. module: base
|
||||
#: model:res.partner.category,name:base.res_partner_category_13
|
||||
msgid "Distributor"
|
||||
msgstr ""
|
||||
msgstr "代理店"
|
||||
|
||||
#. module: base
|
||||
#: help:ir.actions.server,subject:0
|
||||
|
@ -8274,7 +8277,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: field:res.partner.category,parent_id:0
|
||||
msgid "Parent Category"
|
||||
msgstr "親分類"
|
||||
msgstr "親カテゴリ"
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.fi
|
||||
|
@ -8448,7 +8451,7 @@ msgstr "香港"
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_portal_sale
|
||||
msgid "Portal Sale"
|
||||
msgstr ""
|
||||
msgstr "販売ポータル"
|
||||
|
||||
#. module: base
|
||||
#: field:ir.default,ref_id:0
|
||||
|
@ -8647,7 +8650,7 @@ msgstr ""
|
|||
#: model:ir.module.module,shortdesc:base.module_hr_attendance
|
||||
#: model:res.groups,name:base.group_hr_attendance
|
||||
msgid "Attendances"
|
||||
msgstr "参加"
|
||||
msgstr "勤怠"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_warning
|
||||
|
@ -8717,7 +8720,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: model:ir.ui.menu,name:base.menu_view_base_module_update
|
||||
msgid "Update Modules List"
|
||||
msgstr "モジュールリストの更新"
|
||||
msgstr "モジュールリスト更新"
|
||||
|
||||
#. module: base
|
||||
#: code:addons/base/module/module.py:359
|
||||
|
@ -8783,7 +8786,7 @@ msgstr "スロベニア語 / slovenščina"
|
|||
#. module: base
|
||||
#: field:res.currency,position:0
|
||||
msgid "Symbol Position"
|
||||
msgstr ""
|
||||
msgstr "記号位置"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_l10n_de
|
||||
|
@ -8896,7 +8899,7 @@ msgstr "複数のアクション"
|
|||
#. module: base
|
||||
#: model:ir.module.module,summary:base.module_mail
|
||||
msgid "Discussions, Mailing Lists, News"
|
||||
msgstr ""
|
||||
msgstr "ディスカッション、メーリングリスト、ニュース"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_fleet
|
||||
|
@ -8997,7 +9000,7 @@ msgstr "ユーザエラー"
|
|||
#. module: base
|
||||
#: model:ir.module.module,summary:base.module_project_issue
|
||||
msgid "Support, Bug Tracker, Helpdesk"
|
||||
msgstr ""
|
||||
msgstr "サポート、バグ追跡、ヘルプデスク"
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.ae
|
||||
|
@ -9022,12 +9025,12 @@ msgstr "このドキュメントはデフォルト属性として使用されて
|
|||
#. module: base
|
||||
#: model:res.partner.category,name:base.res_partner_category_5
|
||||
msgid "Silver"
|
||||
msgstr ""
|
||||
msgstr "シルバー"
|
||||
|
||||
#. module: base
|
||||
#: field:res.partner.title,shortcut:0
|
||||
msgid "Abbreviation"
|
||||
msgstr ""
|
||||
msgstr "略称"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.ui.menu,name:base.menu_crm_case_job_req_main
|
||||
|
@ -9313,7 +9316,7 @@ msgstr "なし"
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_hr_holidays
|
||||
msgid "Leave Management"
|
||||
msgstr ""
|
||||
msgstr "休暇管理"
|
||||
|
||||
#. module: base
|
||||
#: model:res.company,overdue_msg:base.main_company
|
||||
|
@ -9412,12 +9415,12 @@ msgstr ""
|
|||
#. module: base
|
||||
#: field:res.request,ref_partner_id:0
|
||||
msgid "Partner Ref."
|
||||
msgstr "パートナの参照"
|
||||
msgstr "取引先参照"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_hr_expense
|
||||
msgid "Expense Management"
|
||||
msgstr ""
|
||||
msgstr "経費管理"
|
||||
|
||||
#. module: base
|
||||
#: field:ir.attachment,create_date:0
|
||||
|
@ -9997,7 +10000,7 @@ msgstr "インストールする"
|
|||
#: model:ir.module.module,shortdesc:base.module_base
|
||||
#: field:res.currency,base:0
|
||||
msgid "Base"
|
||||
msgstr "ベース"
|
||||
msgstr "基本"
|
||||
|
||||
#. module: base
|
||||
#: field:ir.model.data,model:0
|
||||
|
@ -10185,7 +10188,7 @@ msgstr "間隔の単位"
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_portal_stock
|
||||
msgid "Portal Stock"
|
||||
msgstr ""
|
||||
msgstr "在庫ポータル"
|
||||
|
||||
#. module: base
|
||||
#: field:workflow.activity,kind:0
|
||||
|
@ -10251,7 +10254,7 @@ msgstr "データベース内の目的レコードのID"
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_account_analytic_analysis
|
||||
msgid "Contracts Management"
|
||||
msgstr "コンタクト管理"
|
||||
msgstr "契約管理"
|
||||
|
||||
#. module: base
|
||||
#: selection:base.language.install,lang:0
|
||||
|
@ -10555,7 +10558,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_portal_hr_employees
|
||||
msgid "Portal HR employees"
|
||||
msgstr ""
|
||||
msgstr "従業員ポータル"
|
||||
|
||||
#. module: base
|
||||
#: selection:base.language.install,lang:0
|
||||
|
@ -11049,7 +11052,7 @@ msgstr "Eメール"
|
|||
#. module: base
|
||||
#: model:res.partner.category,name:base.res_partner_category_12
|
||||
msgid "Office Supplies"
|
||||
msgstr ""
|
||||
msgstr "オフィス用品"
|
||||
|
||||
#. module: base
|
||||
#: field:ir.attachment,res_model:0
|
||||
|
@ -11158,7 +11161,7 @@ msgstr "カスケード"
|
|||
#. module: base
|
||||
#: model:ir.module.module,summary:base.module_crm
|
||||
msgid "Leads, Opportunities, Phone Calls"
|
||||
msgstr ""
|
||||
msgstr "リード、案件、電話"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.category,description:base.module_category_knowledge_management
|
||||
|
@ -11221,7 +11224,7 @@ msgstr "マーケティングキャンペーン"
|
|||
#. module: base
|
||||
#: field:res.country.state,name:0
|
||||
msgid "State Name"
|
||||
msgstr "状態の名前"
|
||||
msgstr "州名"
|
||||
|
||||
#. module: base
|
||||
#: help:ir.attachment,type:0
|
||||
|
@ -11820,7 +11823,7 @@ msgstr "トリガーのシグナル"
|
|||
#: model:ir.actions.act_window,name:base.action_country_state
|
||||
#: model:ir.ui.menu,name:base.menu_country_state_partner
|
||||
msgid "Fed. States"
|
||||
msgstr "連邦"
|
||||
msgstr "州"
|
||||
|
||||
#. module: base
|
||||
#: view:ir.model:0
|
||||
|
@ -12021,7 +12024,7 @@ msgstr "ループ式"
|
|||
#. module: base
|
||||
#: model:res.partner.category,name:base.res_partner_category_16
|
||||
msgid "Retailer"
|
||||
msgstr ""
|
||||
msgstr "小売業"
|
||||
|
||||
#. module: base
|
||||
#: view:ir.model.fields:0
|
||||
|
@ -12052,7 +12055,7 @@ msgstr "リファレンスガイド"
|
|||
#: selection:res.partner.title,domain:0
|
||||
#: model:res.request.link,name:base.req_link_partner
|
||||
msgid "Partner"
|
||||
msgstr "パートナ"
|
||||
msgstr "取引先"
|
||||
|
||||
#. module: base
|
||||
#: code:addons/base/ir/ir_mail_server.py:482
|
||||
|
@ -12309,7 +12312,7 @@ msgstr "条件"
|
|||
#. module: base
|
||||
#: model:ir.actions.act_window,name:base.action_partner_other_form
|
||||
msgid "Other Partners"
|
||||
msgstr "その他のパートナ"
|
||||
msgstr "他の取引先"
|
||||
|
||||
#. module: base
|
||||
#: field:base.language.install,state:0
|
||||
|
@ -12324,7 +12327,7 @@ msgstr "その他のパートナ"
|
|||
#: view:workflow.workitem:0
|
||||
#: field:workflow.workitem,state:0
|
||||
msgid "Status"
|
||||
msgstr ""
|
||||
msgstr "ステータス"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.actions.act_window,name:base.action_currency_form
|
||||
|
@ -12336,7 +12339,7 @@ msgstr "通貨"
|
|||
#. module: base
|
||||
#: model:res.partner.category,name:base.res_partner_category_8
|
||||
msgid "Consultancy Services"
|
||||
msgstr ""
|
||||
msgstr "コンサルティングサービス"
|
||||
|
||||
#. module: base
|
||||
#: help:ir.values,value:0
|
||||
|
@ -12446,7 +12449,7 @@ msgstr "調達"
|
|||
#. module: base
|
||||
#: model:res.partner.category,name:base.res_partner_category_6
|
||||
msgid "Bronze"
|
||||
msgstr ""
|
||||
msgstr "ブロンズ"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_hr_payroll_account
|
||||
|
@ -12476,7 +12479,7 @@ msgstr "作成月"
|
|||
#. module: base
|
||||
#: field:ir.module.module,demo:0
|
||||
msgid "Demo Data"
|
||||
msgstr ""
|
||||
msgstr "デモデータ"
|
||||
|
||||
#. module: base
|
||||
#: model:res.partner.title,shortcut:base.res_partner_title_mister
|
||||
|
@ -12491,7 +12494,7 @@ msgstr "モルディブ"
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_portal_crm
|
||||
msgid "Portal CRM"
|
||||
msgstr ""
|
||||
msgstr "CRMポータル"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.ui.menu,name:base.next_id_4
|
||||
|
@ -12633,7 +12636,7 @@ msgstr "銀行"
|
|||
#: model:ir.module.category,name:base.module_category_point_of_sale
|
||||
#: model:ir.module.module,shortdesc:base.module_point_of_sale
|
||||
msgid "Point of Sale"
|
||||
msgstr ""
|
||||
msgstr "POS"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_mail
|
||||
|
@ -12988,7 +12991,7 @@ msgstr "設定"
|
|||
#. module: base
|
||||
#: model:res.partner.category,name:base.res_partner_category_9
|
||||
msgid "Components Buyer"
|
||||
msgstr ""
|
||||
msgstr "部材バイヤー"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_web_tests_demo
|
||||
|
@ -13052,7 +13055,7 @@ msgstr "選択オプションの式は[('key','Label'), ...] の形式である
|
|||
#. module: base
|
||||
#: field:res.company,company_registry:0
|
||||
msgid "Company Registry"
|
||||
msgstr "会社のレジストリ"
|
||||
msgstr "会社レジストリ"
|
||||
|
||||
#. module: base
|
||||
#: view:ir.actions.report.xml:0
|
||||
|
@ -13240,7 +13243,7 @@ msgstr "不明"
|
|||
#. module: base
|
||||
#: field:res.currency,symbol:0
|
||||
msgid "Symbol"
|
||||
msgstr "シンボル"
|
||||
msgstr "記号"
|
||||
|
||||
#. module: base
|
||||
#: help:res.partner,image_medium:0
|
||||
|
@ -13356,7 +13359,7 @@ msgstr "依存関係:"
|
|||
#. module: base
|
||||
#: field:res.company,vat:0
|
||||
msgid "Tax ID"
|
||||
msgstr "税金ID"
|
||||
msgstr "税ID"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_account_bank_statement_extensions
|
||||
|
@ -13391,7 +13394,7 @@ msgstr "ザイール"
|
|||
#. module: base
|
||||
#: model:ir.module.module,summary:base.module_project
|
||||
msgid "Projects, Tasks"
|
||||
msgstr ""
|
||||
msgstr "プロジェクト、タスク"
|
||||
|
||||
#. module: base
|
||||
#: field:ir.attachment,res_id:0
|
||||
|
@ -13446,7 +13449,7 @@ msgstr "右括弧"
|
|||
#. module: base
|
||||
#: view:base.module.update:0
|
||||
msgid "Update Module List"
|
||||
msgstr "モジュールリストの更新"
|
||||
msgstr "モジュールリスト更新"
|
||||
|
||||
#. module: base
|
||||
#: code:addons/base/res/res_users.py:685
|
||||
|
@ -13701,7 +13704,7 @@ msgstr "宛先の活動"
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_project_issue
|
||||
msgid "Issue Tracker"
|
||||
msgstr ""
|
||||
msgstr "課題管理"
|
||||
|
||||
#. module: base
|
||||
#: view:base.module.update:0
|
||||
|
@ -13785,7 +13788,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: view:res.partner:0
|
||||
msgid "Supplier Partners"
|
||||
msgstr "仕入先パートナ"
|
||||
msgstr "仕入先取引先"
|
||||
|
||||
#. module: base
|
||||
#: view:res.config.installer:0
|
||||
|
@ -13800,7 +13803,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: view:res.partner:0
|
||||
msgid "Customer Partners"
|
||||
msgstr "顧客パートナ"
|
||||
msgstr "顧客取引先"
|
||||
|
||||
#. module: base
|
||||
#: sql_constraint:res.users:0
|
||||
|
@ -14047,7 +14050,7 @@ msgstr "ルクセンブルク"
|
|||
#. module: base
|
||||
#: model:ir.module.module,summary:base.module_base_calendar
|
||||
msgid "Personal & Shared Calendar"
|
||||
msgstr ""
|
||||
msgstr "個人および共有カレンダ"
|
||||
|
||||
#. module: base
|
||||
#: selection:res.request,priority:0
|
||||
|
@ -14161,7 +14164,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: model:ir.module.module,summary:base.module_account_voucher
|
||||
msgid "Send Invoices and Track Payments"
|
||||
msgstr ""
|
||||
msgstr "請求書送付、支払追跡"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.ui.menu,name:base.menu_crm_config_lead
|
||||
|
@ -14359,7 +14362,7 @@ msgstr "アクションの用途"
|
|||
#. module: base
|
||||
#: field:ir.module.module,name:0
|
||||
msgid "Technical Name"
|
||||
msgstr ""
|
||||
msgstr "技術名称"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.model,name:base.model_workflow_workitem
|
||||
|
@ -14940,7 +14943,7 @@ msgstr "国"
|
|||
#. module: base
|
||||
#: model:res.partner.category,name:base.res_partner_category_15
|
||||
msgid "Wholesaler"
|
||||
msgstr ""
|
||||
msgstr "卸売業"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_base_vat
|
||||
|
@ -15043,7 +15046,7 @@ msgstr "リネームは一度に1カラムしかできません。"
|
|||
#. module: base
|
||||
#: selection:ir.translation,type:0
|
||||
msgid "Report/Template"
|
||||
msgstr "レポート / テンプレート"
|
||||
msgstr "レポート/テンプレート"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_budget
|
||||
|
@ -15254,7 +15257,7 @@ msgstr "クロアチア"
|
|||
msgid ""
|
||||
"Do you confirm the uninstallation of this module? This will permanently "
|
||||
"erase all data currently stored by the module!"
|
||||
msgstr ""
|
||||
msgstr "このモジュールを本当にアンインストールしてよいですか?このアクションにより、このモジュール依存のデータが全て消失します。"
|
||||
|
||||
#. module: base
|
||||
#: field:ir.actions.server,mobile:0
|
||||
|
@ -15267,7 +15270,7 @@ msgstr "携帯電話番号"
|
|||
#: model:ir.model,name:base.model_res_partner_category
|
||||
#: view:res.partner.category:0
|
||||
msgid "Partner Categories"
|
||||
msgstr "パートナ分類"
|
||||
msgstr "取引先カテゴリ"
|
||||
|
||||
#. module: base
|
||||
#: view:base.module.upgrade:0
|
||||
|
@ -15298,7 +15301,7 @@ msgstr "セーシェル"
|
|||
#. module: base
|
||||
#: model:res.partner.category,name:base.res_partner_category_4
|
||||
msgid "Gold"
|
||||
msgstr ""
|
||||
msgstr "ゴールド"
|
||||
|
||||
#. module: base
|
||||
#: code:addons/base/res/res_company.py:173
|
||||
|
@ -15379,7 +15382,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: field:res.partner.bank,partner_id:0
|
||||
msgid "Account Owner"
|
||||
msgstr "アカウント所有者"
|
||||
msgstr "口座所有者"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_procurement
|
||||
|
@ -15501,7 +15504,7 @@ msgstr "ワークフローインスタンス"
|
|||
#: code:addons/base/res/res_partner.py:684
|
||||
#, python-format
|
||||
msgid "Partners: "
|
||||
msgstr "パートナ: "
|
||||
msgstr "取引先: "
|
||||
|
||||
#. module: base
|
||||
#: view:res.partner:0
|
||||
|
@ -15556,7 +15559,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: model:res.partner.category,name:base.res_partner_category_2
|
||||
msgid "Prospect"
|
||||
msgstr "見込み客"
|
||||
msgstr "見込客"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_stock_invoice_directly
|
||||
|
@ -15611,7 +15614,7 @@ msgstr "ロシア語 / русский язык"
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_auth_signup
|
||||
msgid "Signup"
|
||||
msgstr ""
|
||||
msgstr "サインアップ"
|
||||
|
||||
#~ msgid "Code (eg:en__US)"
|
||||
#~ msgstr "コード(例:en_US)"
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:36+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:32+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:38+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:34+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:38+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:35+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:39+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:35+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:38+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:35+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:39+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:35+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:39+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:35+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:39+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:35+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:35+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:32+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
@ -58,7 +58,7 @@ msgstr ""
|
|||
#: field:ir.ui.view,arch:0
|
||||
#: field:ir.ui.view.custom,arch:0
|
||||
msgid "View Architecture"
|
||||
msgstr "Opbouw weergave"
|
||||
msgstr "Hiërarchie bekijken"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,summary:base.module_sale_stock
|
||||
|
@ -78,7 +78,7 @@ msgstr "Hongaars / Magyar"
|
|||
#. module: base
|
||||
#: selection:base.language.install,lang:0
|
||||
msgid "Spanish (PY) / Español (PY)"
|
||||
msgstr "Spaans (PY) / Spanja (PY)"
|
||||
msgstr "Spaans (PY) / Español (PY)"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.category,description:base.module_category_project_management
|
||||
|
@ -153,11 +153,12 @@ msgid ""
|
|||
msgstr ""
|
||||
"\n"
|
||||
"Deze module voegt een Google gebruiker toe in res.user\n"
|
||||
"======================================================\n"
|
||||
|
||||
#. module: base
|
||||
#: help:res.partner,employee:0
|
||||
msgid "Check this box if this contact is an Employee."
|
||||
msgstr "Vink dit aan als deze gebruiker een werknemer is"
|
||||
msgstr "Vink dit aan als deze gebruiker een werknemer is."
|
||||
|
||||
#. module: base
|
||||
#: help:ir.model.fields,domain:0
|
||||
|
@ -210,13 +211,14 @@ msgid ""
|
|||
"reports."
|
||||
msgstr ""
|
||||
"\n"
|
||||
"Genereer je facturen vanuit uitgaven, tijdsregistraties.\n"
|
||||
"Genereer uw facturen vanuit uitgaven, tijdsregistraties.\n"
|
||||
" ========================================================\n"
|
||||
" \n"
|
||||
"Module voor het genereren van facturen op basis van uitgaven (Personen, "
|
||||
"uitgaven, enz).\n"
|
||||
"Module voor het genereren van facturen op basis van kosten (Personen, "
|
||||
"uitgaven, ...).\n"
|
||||
" \n"
|
||||
"Je kunt prijslijsten definieren in een grootboek rapportage."
|
||||
"U kunt prijslijsten definieren in een grootboek rapportage, maak enkele "
|
||||
"theoretische omzet rapportages."
|
||||
|
||||
#. module: base
|
||||
#: code:addons/base/ir/ir_sequence.py:134
|
||||
|
@ -252,7 +254,7 @@ msgstr "ir.ui.view.custom"
|
|||
#: code:addons/base/ir/ir_model.py:374
|
||||
#, python-format
|
||||
msgid "Renaming sparse field \"%s\" is not allowed"
|
||||
msgstr "Hiernoenen sparse field \"%s\" is niet toegestaan"
|
||||
msgstr "Hernoenen sparse veld \"%s\" is niet toegestaan"
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.sz
|
||||
|
@ -319,7 +321,7 @@ msgid ""
|
|||
"any."
|
||||
msgstr ""
|
||||
"De interne gebruiker die verantwoordelijk is voor de communicatie met deze "
|
||||
"contactpersoon indien aanwezig."
|
||||
"contactpersoon indien van toepassing."
|
||||
|
||||
#. module: base
|
||||
#: view:res.partner:0
|
||||
|
@ -491,9 +493,9 @@ msgid ""
|
|||
"Invalid date/time format directive specified. Please refer to the list of "
|
||||
"allowed directives, displayed when you edit a language."
|
||||
msgstr ""
|
||||
"Ongeldige datum / tijd-formaat richtlijn gespecificeerd. Raadpleeg de lijst "
|
||||
"met toegestane richtlijnen welke worden weergegeven wanneer u bewerken van "
|
||||
"een taal."
|
||||
"Ongeldige datum/tijd-formaat richtlijn gespecificeerd. Raadpleeg de lijst "
|
||||
"met toegestane richtlijnen welke worden weergegeven wanneer u een taal "
|
||||
"bewerkt."
|
||||
|
||||
#. module: base
|
||||
#: code:addons/orm.py:4153
|
||||
|
@ -502,7 +504,7 @@ msgid ""
|
|||
"One of the records you are trying to modify has already been deleted "
|
||||
"(Document type: %s)."
|
||||
msgstr ""
|
||||
"Een van de records die u probeert te wijzigen is al verwijderd )document "
|
||||
"Een van de records die u probeert te wijzigen is al verwijderd (Document "
|
||||
"type: %s)."
|
||||
|
||||
#. module: base
|
||||
|
@ -541,12 +543,12 @@ msgstr "Volgende assistent"
|
|||
#. module: base
|
||||
#: field:res.lang,date_format:0
|
||||
msgid "Date Format"
|
||||
msgstr "Datumopmaak"
|
||||
msgstr "Datumnotatie"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_base_report_designer
|
||||
msgid "OpenOffice Report Designer"
|
||||
msgstr "OpenOffice overzicht ontwerper"
|
||||
msgstr "OpenOffice Rapport Ontwerper"
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.an
|
||||
|
@ -667,7 +669,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: selection:base.language.install,lang:0
|
||||
msgid "Spanish (VE) / Español (VE)"
|
||||
msgstr "Spaans (VE) / Spanje (VE)"
|
||||
msgstr "Spaans (VE) / Español (VE)"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_hr_timesheet_invoice
|
||||
|
@ -883,7 +885,7 @@ msgstr "De naam van het bedrijf moet uniek zijn!"
|
|||
#. module: base
|
||||
#: model:ir.ui.menu,name:base.menu_base_action_rule_admin
|
||||
msgid "Automated Actions"
|
||||
msgstr "Automatische acties"
|
||||
msgstr "Geautomatiseerde acties"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_l10n_ro
|
||||
|
@ -1006,7 +1008,7 @@ msgstr "base.language.export"
|
|||
#. module: base
|
||||
#: model:res.country,name:base.pg
|
||||
msgid "Papua New Guinea"
|
||||
msgstr "Papua Nieuw-Guinea"
|
||||
msgstr "Papoea-Nieuw-Guinea"
|
||||
|
||||
#. module: base
|
||||
#: help:ir.actions.report.xml,report_type:0
|
||||
|
@ -1344,7 +1346,7 @@ msgstr "Nieuwste versie"
|
|||
#. module: base
|
||||
#: view:ir.rule:0
|
||||
msgid "Delete Access Right"
|
||||
msgstr "Tegangsrechten verwijderen."
|
||||
msgstr "Toegangsrechten verwijderen"
|
||||
|
||||
#. module: base
|
||||
#: code:addons/base/ir/ir_mail_server.py:214
|
||||
|
@ -1452,7 +1454,7 @@ msgstr "Veld assistent"
|
|||
#. module: base
|
||||
#: selection:base.language.install,lang:0
|
||||
msgid "Spanish (GT) / Español (GT)"
|
||||
msgstr "Spaans (GT) / Spanje (GT)"
|
||||
msgstr "Spaans (GT) / Español (GT)"
|
||||
|
||||
#. module: base
|
||||
#: field:ir.mail_server,smtp_port:0
|
||||
|
@ -1483,7 +1485,7 @@ msgid ""
|
|||
"decimal number [00,53]. All days in a new year preceding the first Monday "
|
||||
"are considered to be in week 0."
|
||||
msgstr ""
|
||||
"%W - Weeknummer van het jaar (Maandag als eerste dag van de maand) als "
|
||||
"%W - Weeknummer van het jaar (Maandag als eerste dag van de week) als "
|
||||
"decimaal getal [00,53]. Alle dagen in het nieuwe jaar voorafgaande aan de "
|
||||
"eerste maandag vallen in week 0."
|
||||
|
||||
|
@ -1646,13 +1648,13 @@ msgid ""
|
|||
" "
|
||||
msgstr ""
|
||||
"\n"
|
||||
"Deze module installaeert de basis voor IBAN (International Bank Account "
|
||||
"Number) bank rekeningen controleert op geldigheid.\n"
|
||||
"Deze module installeert de basis voor IBAN (International Bank Account "
|
||||
"Number) bankrekeningen en controleert deze op geldigheid.\n"
|
||||
"============================================================================="
|
||||
"========================\n"
|
||||
"=====================================\n"
|
||||
"\n"
|
||||
"De mogelijkheid om correcte local rekeningen op te halen uit een IBAN "
|
||||
"rekening met een een enkele opdacht.\n"
|
||||
"De mogelijkheid om correcte normale rekeningnummers te halen uit een IBAN "
|
||||
"rekeningnummer met een een enkele opdacht.\n"
|
||||
" "
|
||||
|
||||
#. module: base
|
||||
|
@ -1675,6 +1677,12 @@ msgid ""
|
|||
"=============\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"\n"
|
||||
"Deze module voegt claim menu en features aan uw portaal toe indien claim en "
|
||||
"portal zijn geïnstalleerd.\n"
|
||||
"============================================================================="
|
||||
"=========================\n"
|
||||
" "
|
||||
|
||||
#. module: base
|
||||
#: model:ir.actions.act_window,help:base.action_res_partner_bank_account_form
|
||||
|
@ -1812,8 +1820,8 @@ msgid ""
|
|||
"Helps you manage your purchase-related processes such as requests for "
|
||||
"quotations, supplier invoices, etc..."
|
||||
msgstr ""
|
||||
"Helpt de inkoop-gerelateerde processen te beheren zoals inkoop "
|
||||
"prijsaanvragen, inkoopfacturen, etc..."
|
||||
"Helpt de inkoop-gerelateerde processen te beheren zoals aanvragen van "
|
||||
"offertes, inkoopfacturen, etc..."
|
||||
|
||||
#. module: base
|
||||
#: help:res.partner,website:0
|
||||
|
@ -1974,7 +1982,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: model:res.country,name:base.kg
|
||||
msgid "Kyrgyz Republic (Kyrgyzstan)"
|
||||
msgstr "Kyrgyzstan"
|
||||
msgstr "Kirgizië"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_accountant
|
||||
|
@ -2008,8 +2016,7 @@ msgstr ""
|
|||
#: code:addons/base/ir/ir_fields.py:164
|
||||
#, python-format
|
||||
msgid "Unknown value '%s' for boolean field '%%(field)s', assuming '%s'"
|
||||
msgstr ""
|
||||
"Onbekende waarde '%s' voor boolean veld'%%(field)s', ervan uitgaande dat '%s'"
|
||||
msgstr "Onbekende waarde '%s' voor boolean veld '%%(field)s', neem '%s' aan"
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.nl
|
||||
|
@ -2045,12 +2052,12 @@ msgstr "Voertuig, lease, verzekeringen, kosten"
|
|||
#: view:ir.model.access:0
|
||||
#: field:ir.model.access,perm_read:0
|
||||
msgid "Read Access"
|
||||
msgstr "Lezen"
|
||||
msgstr "Leesrechten"
|
||||
|
||||
#. module: base
|
||||
#: help:ir.attachment,res_id:0
|
||||
msgid "The record id this is attached to"
|
||||
msgstr "Het record is waaraan dit is verbonden"
|
||||
msgstr "Het record id waaraan dit is verbonden"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_share
|
||||
|
@ -2348,12 +2355,12 @@ msgstr "Spaans / Español"
|
|||
#. module: base
|
||||
#: selection:base.language.install,lang:0
|
||||
msgid "Korean (KP) / 한국어 (KP)"
|
||||
msgstr "Koreans (KP) / Korea (KP)"
|
||||
msgstr "Koreaans (KP) / 한국어 (KP)"
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.ax
|
||||
msgid "Åland Islands"
|
||||
msgstr "Åland-eilanden"
|
||||
msgstr "Ålandseilanden"
|
||||
|
||||
#. module: base
|
||||
#: field:res.company,logo:0
|
||||
|
@ -2512,7 +2519,7 @@ msgstr "Groepen"
|
|||
#. module: base
|
||||
#: selection:base.language.install,lang:0
|
||||
msgid "Spanish (CL) / Español (CL)"
|
||||
msgstr "Spaans (CL) / Spanje (CL)"
|
||||
msgstr "Spaans (CL) / Español (CL)"
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.bz
|
||||
|
@ -2532,6 +2539,10 @@ msgid ""
|
|||
"=================================\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"\n"
|
||||
"Anonieme gebruikers toegang geven tot uw Portaal.\n"
|
||||
"=====================================================\n"
|
||||
" "
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.ge
|
||||
|
@ -2750,7 +2761,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_auth_oauth_signup
|
||||
msgid "Signup with OAuth2 Authentication"
|
||||
msgstr "Inloggen met OAuth2 Authenticatie"
|
||||
msgstr "Registreren met OAuth2 Authenticatie"
|
||||
|
||||
#. module: base
|
||||
#: selection:ir.model,state:0
|
||||
|
@ -2804,6 +2815,10 @@ msgid ""
|
|||
"==================================\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"\n"
|
||||
"Verenigde Staten - Grootboekschema.\n"
|
||||
"======================================\n"
|
||||
" "
|
||||
|
||||
#. module: base
|
||||
#: field:ir.actions.act_url,target:0
|
||||
|
@ -2962,6 +2977,9 @@ msgid ""
|
|||
"Module to attach a google document to any model.\n"
|
||||
"================================================\n"
|
||||
msgstr ""
|
||||
"\n"
|
||||
"Module om een google document aan een model te koppelen.\n"
|
||||
"============================================================\n"
|
||||
|
||||
#. module: base
|
||||
#: code:addons/base/ir/ir_fields.py:333
|
||||
|
@ -3311,7 +3329,7 @@ msgstr "Norfolkeiland"
|
|||
#. module: base
|
||||
#: selection:base.language.install,lang:0
|
||||
msgid "Korean (KR) / 한국어 (KR)"
|
||||
msgstr "Koreans(KR) / Korea (KR)"
|
||||
msgstr "Koreaans (KR) / 한국어 (KR)"
|
||||
|
||||
#. module: base
|
||||
#: help:ir.model.fields,model:0
|
||||
|
@ -3429,7 +3447,7 @@ msgstr "Armenië"
|
|||
#. module: base
|
||||
#: model:ir.module.module,summary:base.module_hr_evaluation
|
||||
msgid "Periodical Evaluations, Appraisals, Surveys"
|
||||
msgstr "Periodieke evaluaties, beoordelingen en enquêtes,"
|
||||
msgstr "Periodieke evaluaties, beoordelingen, enquêtes"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.actions.act_window,name:base.ir_property_form
|
||||
|
@ -3683,7 +3701,7 @@ msgstr "Personeels enquêtes"
|
|||
#. module: base
|
||||
#: selection:base.language.install,lang:0
|
||||
msgid "Spanish (DO) / Español (DO)"
|
||||
msgstr "Spaans (DO) / Spanje (DO)"
|
||||
msgstr "Spaans (DO) / Español (DO)"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.model,name:base.model_workflow_activity
|
||||
|
@ -3717,7 +3735,7 @@ msgstr "Uruguay"
|
|||
#. module: base
|
||||
#: selection:base.language.install,lang:0
|
||||
msgid "Finnish / Suomi"
|
||||
msgstr "Fins / Finland"
|
||||
msgstr "Fins / Suomi"
|
||||
|
||||
#. module: base
|
||||
#: view:ir.config_parameter:0
|
||||
|
@ -3990,7 +4008,7 @@ msgstr "Recursiviteit ontdekt."
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_l10n_et
|
||||
msgid "Ethiopia - Accounting"
|
||||
msgstr "Boekhouding - Ethiopië"
|
||||
msgstr "Ethiopië - Boekhouding"
|
||||
|
||||
#. module: base
|
||||
#: code:addons/base/module/module.py:366
|
||||
|
@ -4541,7 +4559,7 @@ msgstr "Te starten actie"
|
|||
#: field:ir.model.constraint,name:0
|
||||
#: selection:ir.translation,type:0
|
||||
msgid "Constraint"
|
||||
msgstr "Begrenzing"
|
||||
msgstr "Beperking"
|
||||
|
||||
#. module: base
|
||||
#: selection:ir.values,key:0
|
||||
|
@ -4552,7 +4570,7 @@ msgstr "Standaard adres"
|
|||
#. module: base
|
||||
#: model:ir.module.module,summary:base.module_lunch
|
||||
msgid "Lunch Order, Meal, Food"
|
||||
msgstr "Lunch orders, maaltijden en voeding"
|
||||
msgstr "Lunch orders, maaltijden, consumpties"
|
||||
|
||||
#. module: base
|
||||
#: view:ir.model.fields:0
|
||||
|
@ -4721,7 +4739,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_project_timesheet
|
||||
msgid "Bill Time on Tasks"
|
||||
msgstr "Tijd of taken factureren"
|
||||
msgstr "Tijd op taken factureren"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.category,name:base.module_category_marketing
|
||||
|
@ -4744,11 +4762,15 @@ msgid ""
|
|||
"==========================\n"
|
||||
"\n"
|
||||
msgstr ""
|
||||
"\n"
|
||||
"OpenERP Web Kalender weergave.\n"
|
||||
"==================================\n"
|
||||
"\n"
|
||||
|
||||
#. module: base
|
||||
#: selection:base.language.install,lang:0
|
||||
msgid "Spanish (HN) / Español (HN)"
|
||||
msgstr "Spaans (HN) / Spanje (HN)"
|
||||
msgstr "Spaans (HN) / Español (HN)"
|
||||
|
||||
#. module: base
|
||||
#: view:ir.sequence.type:0
|
||||
|
@ -4855,6 +4877,15 @@ msgid ""
|
|||
" * Commitment Date\n"
|
||||
" * Effective Date\n"
|
||||
msgstr ""
|
||||
"\n"
|
||||
"Extra datum informatie toevoegen aan een verkooporder.\n"
|
||||
"=====================================================\n"
|
||||
"\n"
|
||||
"U kunt de volgende extra datums toevoegen aan een verkooporder:\n"
|
||||
"-----------------------------------------------------------------------\n"
|
||||
" * Datum Verzoek\n"
|
||||
" * Datum Toezegging\n"
|
||||
" * Datum Uitvoering\n"
|
||||
|
||||
#. module: base
|
||||
#: field:ir.actions.server,srcmodel_id:0
|
||||
|
@ -4920,7 +4951,7 @@ msgstr "Open een venster"
|
|||
#. module: base
|
||||
#: model:res.country,name:base.gq
|
||||
msgid "Equatorial Guinea"
|
||||
msgstr "Equatoriaal Guinea"
|
||||
msgstr "Equatoriaal-Guinea"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_web_api
|
||||
|
@ -5002,7 +5033,7 @@ msgstr "Stel in als te doen"
|
|||
#. module: base
|
||||
#: view:res.lang:0
|
||||
msgid "%c - Appropriate date and time representation."
|
||||
msgstr "%c - Passende weergave datum en tijd"
|
||||
msgstr "%c - Passende datum en tijd weergave."
|
||||
|
||||
#. module: base
|
||||
#: code:addons/base/res/res_config.py:420
|
||||
|
@ -5013,6 +5044,7 @@ msgid ""
|
|||
"Click 'Continue' and enjoy your OpenERP experience..."
|
||||
msgstr ""
|
||||
"Uw database is nu volledig geconfigureerd.\n"
|
||||
"\n"
|
||||
"Klik op 'Doorgaan' en geniet van uw OpenERP beleving..."
|
||||
|
||||
#. module: base
|
||||
|
@ -5064,7 +5096,7 @@ msgstr "Rechten"
|
|||
#. module: base
|
||||
#: field:ir.mail_server,smtp_host:0
|
||||
msgid "SMTP Server"
|
||||
msgstr "SMTP-server"
|
||||
msgstr "SMTP Server"
|
||||
|
||||
#. module: base
|
||||
#: code:addons/base/module/module.py:320
|
||||
|
@ -5072,7 +5104,7 @@ msgstr "SMTP-server"
|
|||
msgid "You try to remove a module that is installed or will be installed"
|
||||
msgstr ""
|
||||
"U probeert een module te verwijderen die geïnstalleerd is of nog moet worden "
|
||||
"geïnstalleerd."
|
||||
"geïnstalleerd"
|
||||
|
||||
#. module: base
|
||||
#: view:base.module.upgrade:0
|
||||
|
@ -5082,7 +5114,7 @@ msgstr "De geselecteerde modules zijn bijgewerkt / geïnstalleerd !"
|
|||
#. module: base
|
||||
#: selection:base.language.install,lang:0
|
||||
msgid "Spanish (PR) / Español (PR)"
|
||||
msgstr "Spaans (PR) / Spanja (PR)"
|
||||
msgstr "Spaans (PR) / Español (PR)"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_crm_profiling
|
||||
|
@ -5137,7 +5169,7 @@ msgstr "Inkoop"
|
|||
#. module: base
|
||||
#: selection:base.language.install,lang:0
|
||||
msgid "Portuguese (BR) / Português (BR)"
|
||||
msgstr ""
|
||||
msgstr "Portugees (BR) / Português (BR)"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.model,name:base.model_ir_needaction_mixin
|
||||
|
@ -5157,7 +5189,7 @@ msgstr "IT Services"
|
|||
#. module: base
|
||||
#: model:ir.module.category,name:base.module_category_specific_industry_applications
|
||||
msgid "Specific Industry Applications"
|
||||
msgstr "Specificeer industrie toepassingen"
|
||||
msgstr "Specifieke industriële toepassingen"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_google_docs
|
||||
|
@ -5245,12 +5277,12 @@ msgstr "Kenia"
|
|||
#: model:ir.actions.act_window,name:base.action_translation
|
||||
#: model:ir.ui.menu,name:base.menu_action_translation
|
||||
msgid "Translated Terms"
|
||||
msgstr "Vertaalde regels"
|
||||
msgstr "Vertaalde uitdrukkingen"
|
||||
|
||||
#. module: base
|
||||
#: selection:base.language.install,lang:0
|
||||
msgid "Abkhazian / аҧсуа"
|
||||
msgstr "Abchazisch / Abchazië"
|
||||
msgstr "Abchazisch / аҧсуа"
|
||||
|
||||
#. module: base
|
||||
#: view:base.module.configuration:0
|
||||
|
@ -5301,7 +5333,7 @@ msgstr "Opslaan"
|
|||
#. module: base
|
||||
#: field:ir.actions.report.xml,report_xml:0
|
||||
msgid "XML Path"
|
||||
msgstr "XML Path"
|
||||
msgstr "XML Pad"
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.bj
|
||||
|
@ -5401,14 +5433,14 @@ msgstr "Beveiliging"
|
|||
#. module: base
|
||||
#: selection:base.language.install,lang:0
|
||||
msgid "Portuguese / Português"
|
||||
msgstr ""
|
||||
msgstr "Portugees / Português"
|
||||
|
||||
#. module: base
|
||||
#: code:addons/base/ir/ir_model.py:372
|
||||
#, python-format
|
||||
msgid "Changing the storing system for field \"%s\" is not allowed."
|
||||
msgstr ""
|
||||
"Het veranderen van het opsla systeem voor veld \"%s\" is niet toegestaan."
|
||||
"Het veranderen van het opslagsysteem voor veld \"%s\" is niet toegestaan."
|
||||
|
||||
#. module: base
|
||||
#: help:res.partner.bank,company_id:0
|
||||
|
@ -5436,7 +5468,7 @@ msgstr "Geïnstalleerd"
|
|||
#. module: base
|
||||
#: selection:base.language.install,lang:0
|
||||
msgid "Ukrainian / українська"
|
||||
msgstr "Oekraïens / Oekraïne"
|
||||
msgstr "Oekraïens / українська"
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.sn
|
||||
|
@ -5493,7 +5525,7 @@ msgstr "Expressie om aan te voldoen om de transitie te maken."
|
|||
#. module: base
|
||||
#: selection:base.language.install,lang:0
|
||||
msgid "Spanish (PA) / Español (PA)"
|
||||
msgstr "Spaans (PA) / Spanja (PA)"
|
||||
msgstr "Spaans (PA) / Español (PA)"
|
||||
|
||||
#. module: base
|
||||
#: view:res.currency:0
|
||||
|
@ -5525,7 +5557,7 @@ msgstr "Ieder model moet uniek zijn!"
|
|||
#: model:ir.module.category,name:base.module_category_localization
|
||||
#: model:ir.ui.menu,name:base.menu_localisation
|
||||
msgid "Localization"
|
||||
msgstr "Vertalingen"
|
||||
msgstr "Lokalisatie"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_web_api
|
||||
|
@ -5613,7 +5645,7 @@ msgstr "Relatie labels"
|
|||
#. module: base
|
||||
#: view:res.company:0
|
||||
msgid "Preview Header/Footer"
|
||||
msgstr "Bekijk kop/voet"
|
||||
msgstr "Bekijk kop-/voettekst"
|
||||
|
||||
#. module: base
|
||||
#: field:ir.ui.menu,parent_id:0
|
||||
|
@ -5624,7 +5656,7 @@ msgstr "Hoofdmenu"
|
|||
#. module: base
|
||||
#: field:res.partner.bank,owner_name:0
|
||||
msgid "Account Owner Name"
|
||||
msgstr "Naam eigenaar rekening"
|
||||
msgstr "Naam rekeningeigenaar"
|
||||
|
||||
#. module: base
|
||||
#: code:addons/base/ir/ir_model.py:420
|
||||
|
@ -5683,7 +5715,7 @@ msgstr "Filter Naam"
|
|||
#: view:res.partner:0
|
||||
#: field:res.request,history:0
|
||||
msgid "History"
|
||||
msgstr "Historie"
|
||||
msgstr "Geschiedenis"
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.im
|
||||
|
@ -5704,12 +5736,12 @@ msgstr "De modulenaam moet uniek zijn !"
|
|||
#. module: base
|
||||
#: model:res.country,name:base.bv
|
||||
msgid "Bouvet Island"
|
||||
msgstr "Bouvet-eiland"
|
||||
msgstr "Bouveteiland"
|
||||
|
||||
#. module: base
|
||||
#: field:ir.model.constraint,type:0
|
||||
msgid "Constraint Type"
|
||||
msgstr "Constraint soort"
|
||||
msgstr "Soort Beperking"
|
||||
|
||||
#. module: base
|
||||
#: field:res.company,child_ids:0
|
||||
|
@ -5939,7 +5971,7 @@ msgstr "ir.actions.act_url"
|
|||
#. module: base
|
||||
#: model:ir.ui.menu,name:base.menu_translation_app
|
||||
msgid "Application Terms"
|
||||
msgstr "Applicatie-termen"
|
||||
msgstr "Applicatie uitdrukkingen"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.actions.act_window,help:base.open_module_tree
|
||||
|
@ -5973,12 +6005,12 @@ msgstr "Engels (GB)"
|
|||
#. module: base
|
||||
#: selection:base.language.install,lang:0
|
||||
msgid "Japanese / 日本語"
|
||||
msgstr "Japans / Japan"
|
||||
msgstr "Japans / 日本語"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.model,name:base.model_base_language_import
|
||||
msgid "Language Import"
|
||||
msgstr "Taal import"
|
||||
msgstr "Taal Importeren"
|
||||
|
||||
#. module: base
|
||||
#: help:workflow.transition,act_from:0
|
||||
|
@ -6090,7 +6122,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: view:ir.translation:0
|
||||
msgid "Comments"
|
||||
msgstr "Reacties"
|
||||
msgstr "Opmerkingen"
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.et
|
||||
|
@ -6196,6 +6228,12 @@ msgid ""
|
|||
"===============================================\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"\n"
|
||||
"Gebruikers toestaan om te registreren en hun wachtwoord opnieuw in te "
|
||||
"stellen\n"
|
||||
"============================================================================="
|
||||
"\n"
|
||||
" "
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.category,name:base.module_category_usability
|
||||
|
@ -6278,7 +6316,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: selection:base.language.install,lang:0
|
||||
msgid "Spanish (BO) / Español (BO)"
|
||||
msgstr "Spaans (BO) / Spaans (BO)"
|
||||
msgstr "Spaans (BO) / Español (BO)"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_board
|
||||
|
@ -6300,7 +6338,7 @@ msgstr "Overzicht toegangscontrole"
|
|||
#. module: base
|
||||
#: model:res.country,name:base.um
|
||||
msgid "USA Minor Outlying Islands"
|
||||
msgstr "VS Kleine Buitengaatse Eilanden"
|
||||
msgstr "Kleine afgelegen eilanden van de Verenigde Staten"
|
||||
|
||||
#. module: base
|
||||
#: help:ir.cron,numbercall:0
|
||||
|
@ -6342,7 +6380,7 @@ msgstr "Initiële datum"
|
|||
#. module: base
|
||||
#: selection:base.language.install,lang:0
|
||||
msgid "Gujarati / ગુજરાતી"
|
||||
msgstr "Gujarati / India"
|
||||
msgstr "Gujarati / ગુજરાતી"
|
||||
|
||||
#. module: base
|
||||
#: code:addons/base/module/module.py:361
|
||||
|
@ -6356,7 +6394,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_l10n_be_hr_payroll
|
||||
msgid "Belgium - Payroll"
|
||||
msgstr "Loonadministratie - België"
|
||||
msgstr "België - Loonadministratie"
|
||||
|
||||
#. module: base
|
||||
#: view:workflow.activity:0
|
||||
|
@ -6741,7 +6779,7 @@ msgstr "Prijs nauwkeurigheid"
|
|||
#. module: base
|
||||
#: selection:base.language.install,lang:0
|
||||
msgid "Latvian / latviešu valoda"
|
||||
msgstr "Lets / Letland"
|
||||
msgstr "Lets / latviešu valoda"
|
||||
|
||||
#. module: base
|
||||
#: selection:base.language.install,lang:0
|
||||
|
@ -7004,7 +7042,7 @@ msgstr "Soms BIC of Swift genoemd."
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_l10n_in
|
||||
msgid "Indian - Accounting"
|
||||
msgstr "Boekhouding - India"
|
||||
msgstr "India - Boekhouding"
|
||||
|
||||
#. module: base
|
||||
#: field:res.lang,time_format:0
|
||||
|
@ -15159,7 +15197,7 @@ msgstr "Limiet"
|
|||
#. module: base
|
||||
#: model:res.groups,name:base.group_hr_user
|
||||
msgid "Officer"
|
||||
msgstr "Manager"
|
||||
msgstr "Functionaris"
|
||||
|
||||
#. module: base
|
||||
#: code:addons/orm.py:787
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:43+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:40+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:39+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:36+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:40+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:36+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:42+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:39+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -8,13 +8,13 @@ msgstr ""
|
|||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2012-12-21 17:04+0000\n"
|
||||
"PO-Revision-Date: 2013-01-05 18:18+0000\n"
|
||||
"Last-Translator: ERPSystems.ro <mihai@erpsystems.ro>\n"
|
||||
"Last-Translator: ERPSystems.ro <Unknown>\n"
|
||||
"Language-Team: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:40+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:36+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:40+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:36+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
@ -307,6 +307,13 @@ msgid ""
|
|||
"\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"\n"
|
||||
"Чилийский бухгалтерский учет и налоги в соответствии с действующими "
|
||||
"положениями\n"
|
||||
"==============================================\n"
|
||||
"Plan contable chileno e impuestos de acuerdo a disposiciones vigentes\n"
|
||||
"\n"
|
||||
" "
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_sale
|
||||
|
@ -429,6 +436,8 @@ msgid ""
|
|||
"There is already a shared filter set as default for %(model)s, delete or "
|
||||
"change it before setting a new default"
|
||||
msgstr ""
|
||||
"Уже существует общий фильтр по умолчанию для %(model)s, удалите или измените "
|
||||
"его прежде чем устанавливать новый по умолчанию"
|
||||
|
||||
#. module: base
|
||||
#: code:addons/orm.py:2649
|
||||
|
@ -597,6 +606,15 @@ msgid ""
|
|||
"that have no counterpart in the general financial accounts.\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"\n"
|
||||
"Модуль для определения объекта аналитического учета.\n"
|
||||
"===============================================\n"
|
||||
"\n"
|
||||
"В OpenERP, аналитические счета связаны с общими счетами, но рассматриваются\n"
|
||||
"полностью независимо. Таким образом, вы можете ввести различные "
|
||||
"аналитические операции\n"
|
||||
"которые не дублируются в общие финансовые счета.\n"
|
||||
" "
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_idea
|
||||
|
@ -620,6 +638,19 @@ msgid ""
|
|||
"* Use emails to automatically confirm and send acknowledgements for any "
|
||||
"event registration\n"
|
||||
msgstr ""
|
||||
"\n"
|
||||
"Организация и управление событиями.\n"
|
||||
"======================================\n"
|
||||
"\n"
|
||||
"Модуль мероприятий позволяет Вам эффективно организовывать события и все "
|
||||
"задачи связанные с: планификацией, регистрацией отслеживания,\n"
|
||||
"посещаемостью, и т.д.\n"
|
||||
"\n"
|
||||
"Основные характеристики\n"
|
||||
"------------\n"
|
||||
"* Управление своими Мероприятиями и Регистрациями\n"
|
||||
"* Использовать электронную почту для автоматического подтверждения и "
|
||||
"отправлять подтверждения для регистрации любого события\n"
|
||||
|
||||
#. module: base
|
||||
#: selection:base.language.install,lang:0
|
||||
|
@ -877,7 +908,7 @@ msgstr "Иордания"
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_l10n_hr
|
||||
msgid "Croatia - RRIF 2012 COA"
|
||||
msgstr ""
|
||||
msgstr "Хорватия - RRIF 2012 COA"
|
||||
|
||||
#. module: base
|
||||
#: help:ir.cron,nextcall:0
|
||||
|
@ -2534,6 +2565,10 @@ msgid ""
|
|||
"=================================\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"\n"
|
||||
"Позволить неавторизованным пользователям доступ к Порталу.\n"
|
||||
"=================================\n"
|
||||
" "
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.ge
|
||||
|
@ -2918,6 +2953,40 @@ msgid ""
|
|||
"* Monthly Turnover (Graph)\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"\n"
|
||||
"Управление предложениями цен и заказами покупателей \n"
|
||||
"==================================\n"
|
||||
"\n"
|
||||
"This application allows you to manage your sales goals in an effective and "
|
||||
"efficient manner by keeping track of all sales orders and history.\n"
|
||||
"\n"
|
||||
"It handles the full sales workflow:\n"
|
||||
"\n"
|
||||
"* **Quotation** -> **Sales order** -> **Invoice**\n"
|
||||
"\n"
|
||||
"Preferences (only with Warehouse Management installed)\n"
|
||||
"------------------------------------------------------\n"
|
||||
"\n"
|
||||
"If you also installed the Warehouse Management, you can deal with the "
|
||||
"following preferences:\n"
|
||||
"\n"
|
||||
"* Shipping: Choice of delivery at once or partial delivery\n"
|
||||
"* Invoicing: choose how invoices will be paid\n"
|
||||
"* Incoterms: International Commercial terms\n"
|
||||
"\n"
|
||||
"You can choose flexible invoicing methods:\n"
|
||||
"\n"
|
||||
"* *On Demand*: Invoices are created manually from Sales Orders when needed\n"
|
||||
"* *On Delivery Order*: Invoices are generated from picking (delivery)\n"
|
||||
"* *Before Delivery*: A Draft invoice is created and must be paid before "
|
||||
"delivery\n"
|
||||
"\n"
|
||||
"\n"
|
||||
"The Dashboard for the Sales Manager will include\n"
|
||||
"------------------------------------------------\n"
|
||||
"* My Quotations\n"
|
||||
"* Monthly Turnover (Graph)\n"
|
||||
" "
|
||||
|
||||
#. module: base
|
||||
#: field:ir.actions.act_window,res_id:0
|
||||
|
@ -3020,6 +3089,14 @@ msgid ""
|
|||
"This module is currently not compatible with the ``user_ldap`` module and\n"
|
||||
"will disable LDAP authentication completely if installed at the same time.\n"
|
||||
msgstr ""
|
||||
"\n"
|
||||
"Зашифрованные пароли\n"
|
||||
"==================\n"
|
||||
"\n"
|
||||
"Взаимодействие с LDAP - авторизацией\n"
|
||||
"-------------------------------------\n"
|
||||
"This module is currently not compatible with the ``user_ldap`` module and\n"
|
||||
"will disable LDAP authentication completely if installed at the same time.\n"
|
||||
|
||||
#. module: base
|
||||
#: model:res.groups,name:base.group_hr_manager
|
||||
|
@ -3205,6 +3282,15 @@ msgid ""
|
|||
" * ``base_stage``: stage management\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"\n"
|
||||
"Этот модуль обрабатывает состояния и стадии. Он является производным от "
|
||||
"классов crm_base и crm_case для crm. \n"
|
||||
"============================================================================="
|
||||
"======================\n"
|
||||
"\n"
|
||||
" * ``base_state``: управление состояниями \n"
|
||||
" * ``base_stage``: управление стадиями\n"
|
||||
" "
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_web_linkedin
|
||||
|
@ -7907,7 +7993,7 @@ msgstr "Следующее число в этой нумерации"
|
|||
#. module: base
|
||||
#: view:res.partner:0
|
||||
msgid "at"
|
||||
msgstr ""
|
||||
msgstr "в"
|
||||
|
||||
#. module: base
|
||||
#: view:ir.rule:0
|
||||
|
@ -8744,7 +8830,7 @@ msgstr "Гонконг"
|
|||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_portal_sale
|
||||
msgid "Portal Sale"
|
||||
msgstr ""
|
||||
msgstr "Портал: продажи"
|
||||
|
||||
#. module: base
|
||||
#: field:ir.default,ref_id:0
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:40+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:37+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:41+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:37+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:34+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:30+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:40+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:37+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:44+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:41+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:41+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:37+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
@ -59,7 +59,7 @@ msgstr "Visa arkitektur"
|
|||
#. module: base
|
||||
#: model:ir.module.module,summary:base.module_sale_stock
|
||||
msgid "Quotation, Sale Orders, Delivery & Invoicing Control"
|
||||
msgstr ""
|
||||
msgstr "Offerter, säljordrar, leverans & faktura kontroll"
|
||||
|
||||
#. module: base
|
||||
#: selection:ir.sequence,implementation:0
|
||||
|
@ -88,7 +88,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: model:ir.module.module,summary:base.module_point_of_sale
|
||||
msgid "Touchscreen Interface for Shops"
|
||||
msgstr ""
|
||||
msgstr "Pekskärmsinterface för affärer"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,shortdesc:base.module_l10n_in_hr_payroll
|
||||
|
@ -139,7 +139,7 @@ msgstr ""
|
|||
#. module: base
|
||||
#: help:res.partner,employee:0
|
||||
msgid "Check this box if this contact is an Employee."
|
||||
msgstr ""
|
||||
msgstr "Markera här om kontakten är en anställd"
|
||||
|
||||
#. module: base
|
||||
#: help:ir.model.fields,domain:0
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:41+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:38+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:41+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:38+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:41+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:38+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:42+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:38+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:42+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:38+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:42+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:38+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:44+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:41+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:42+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:38+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2013-10-24 04:43+0000\n"
|
||||
"X-Generator: Launchpad (build 16810)\n"
|
||||
"X-Launchpad-Export-Date: 2013-11-12 05:40+0000\n"
|
||||
"X-Generator: Launchpad (build 16820)\n"
|
||||
|
||||
#. module: base
|
||||
#: model:ir.module.module,description:base.module_account_check_writing
|
||||
|
|
|
@ -38,6 +38,7 @@ import osv_memory_autovacuum
|
|||
import ir_mail_server
|
||||
import ir_fields
|
||||
import ir_qweb
|
||||
import ir_http
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||
|
||||
|
|
|
@ -27,6 +27,7 @@ import re
|
|||
|
||||
from openerp import tools
|
||||
from openerp.osv import fields,osv
|
||||
from openerp import SUPERUSER_ID
|
||||
|
||||
_logger = logging.getLogger(__name__)
|
||||
|
||||
|
@ -143,9 +144,10 @@ class ir_attachment(osv.osv):
|
|||
if attach.store_fname:
|
||||
self._file_delete(cr, uid, location, attach.store_fname)
|
||||
fname = self._file_write(cr, uid, location, value)
|
||||
super(ir_attachment, self).write(cr, uid, [id], {'store_fname': fname, 'file_size': file_size}, context=context)
|
||||
# SUPERUSER_ID as probably don't have write access, trigger during create
|
||||
super(ir_attachment, self).write(cr, SUPERUSER_ID, [id], {'store_fname': fname, 'file_size': file_size}, context=context)
|
||||
else:
|
||||
super(ir_attachment, self).write(cr, uid, [id], {'db_datas': value, 'file_size': file_size}, context=context)
|
||||
super(ir_attachment, self).write(cr, SUPERUSER_ID, [id], {'db_datas': value, 'file_size': file_size}, context=context)
|
||||
return True
|
||||
|
||||
_name = 'ir.attachment'
|
||||
|
@ -187,8 +189,6 @@ class ir_attachment(osv.osv):
|
|||
In the 'document' module, it is overriden to relax this hard rule, since
|
||||
more complex ones apply there.
|
||||
"""
|
||||
if not ids:
|
||||
return
|
||||
res_ids = {}
|
||||
if ids:
|
||||
if isinstance(ids, (int, long)):
|
||||
|
@ -291,7 +291,7 @@ class ir_attachment(osv.osv):
|
|||
return super(ir_attachment, self).unlink(cr, uid, ids, context)
|
||||
|
||||
def create(self, cr, uid, values, context=None):
|
||||
self.check(cr, uid, [], mode='create', context=context, values=values)
|
||||
self.check(cr, uid, [], mode='write', context=context, values=values)
|
||||
if 'file_size' in values:
|
||||
del values['file_size']
|
||||
return super(ir_attachment, self).create(cr, uid, values, context)
|
||||
|
|
|
@ -0,0 +1,144 @@
|
|||
#----------------------------------------------------------
|
||||
# ir_http modular http routing
|
||||
#----------------------------------------------------------
|
||||
import logging
|
||||
import re
|
||||
|
||||
import werkzeug.exceptions
|
||||
import werkzeug.routing
|
||||
|
||||
import openerp
|
||||
from openerp import http
|
||||
from openerp.http import request
|
||||
from openerp.osv import osv, orm
|
||||
|
||||
_logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
# FIXME: replace by proxy on request.uid?
|
||||
_uid = object()
|
||||
|
||||
class ModelConverter(werkzeug.routing.BaseConverter):
|
||||
|
||||
def __init__(self, url_map, model=False):
|
||||
super(ModelConverter, self).__init__(url_map)
|
||||
self.model = model
|
||||
self.regex = '([0-9]+)'
|
||||
|
||||
def to_python(self, value):
|
||||
m = re.match(self.regex, value)
|
||||
return request.registry[self.model].browse(
|
||||
request.cr, _uid, int(m.group(1)), context=request.context)
|
||||
|
||||
def to_url(self, value):
|
||||
return value.id
|
||||
|
||||
class ModelsConverter(werkzeug.routing.BaseConverter):
|
||||
|
||||
def __init__(self, url_map, model=False):
|
||||
super(ModelsConverter, self).__init__(url_map)
|
||||
self.model = model
|
||||
# TODO add support for slug in the form [A-Za-z0-9-] bla-bla-89 -> id 89
|
||||
self.regex = '([0-9,]+)'
|
||||
|
||||
def to_python(self, value):
|
||||
# TODO:
|
||||
# - raise routing.ValidationError() if no browse record can be createdm
|
||||
# - support slug
|
||||
return request.registry[self.model].browse(request.cr, _uid, [int(i) for i in value.split(',')], context=request.context)
|
||||
|
||||
def to_url(self, value):
|
||||
return ",".join(i.id for i in value)
|
||||
|
||||
class ir_http(osv.AbstractModel):
|
||||
_name = 'ir.http'
|
||||
|
||||
_description = "HTTP routing"
|
||||
|
||||
def _get_converters(self):
|
||||
return {'model': ModelConverter, 'models': ModelsConverter}
|
||||
|
||||
def _find_handler(self):
|
||||
return self.routing_map().bind_to_environ(request.httprequest.environ).match()
|
||||
|
||||
def _auth_method_user(self):
|
||||
request.uid = request.session.uid
|
||||
if not request.uid:
|
||||
raise http.SessionExpiredException("Session expired")
|
||||
|
||||
def _auth_method_admin(self):
|
||||
if not request.db:
|
||||
raise http.SessionExpiredException("No valid database for request %s" % request.httprequest)
|
||||
request.uid = openerp.SUPERUSER_ID
|
||||
|
||||
def _auth_method_none(self):
|
||||
request.disable_db = True
|
||||
request.uid = None
|
||||
|
||||
def _authenticate(self, func, arguments):
|
||||
auth_method = getattr(func, "auth", "user")
|
||||
if request.session.uid:
|
||||
try:
|
||||
request.session.check_security()
|
||||
# what if error in security.check()
|
||||
# -> res_users.check()
|
||||
# -> res_users.check_credentials()
|
||||
except http.SessionExpiredException:
|
||||
request.session.logout()
|
||||
raise http.SessionExpiredException("Session expired for request %s" % request.httprequest)
|
||||
getattr(self, "_auth_method_%s" % auth_method)()
|
||||
return auth_method
|
||||
|
||||
def _handle_404(self, exception):
|
||||
raise exception
|
||||
|
||||
def _handle_403(self, exception):
|
||||
raise exception
|
||||
|
||||
def _handle_500(self, exception):
|
||||
raise exception
|
||||
|
||||
def _dispatch(self):
|
||||
# locate the controller method
|
||||
try:
|
||||
func, arguments = self._find_handler()
|
||||
except werkzeug.exceptions.NotFound, e:
|
||||
return self._handle_404(e)
|
||||
|
||||
# check authentication level
|
||||
try:
|
||||
auth_method = self._authenticate(func, arguments)
|
||||
except werkzeug.exceptions.NotFound, e:
|
||||
return self._handle_403(e)
|
||||
|
||||
# post process arg to set uid on browse records
|
||||
for arg in arguments.itervalues():
|
||||
if isinstance(arg, orm.browse_record) and arg._uid is _uid:
|
||||
arg._uid = request.uid
|
||||
|
||||
# set and execute handler
|
||||
try:
|
||||
request.set_handler(func, arguments, auth_method)
|
||||
result = request.dispatch()
|
||||
if isinstance(result, Exception):
|
||||
raise result
|
||||
except Exception, e:
|
||||
fn = getattr(self, '_handle_%s' % getattr(e, 'code', 500),
|
||||
self._handle_500)
|
||||
return fn(e)
|
||||
|
||||
return result
|
||||
|
||||
def routing_map(self):
|
||||
if not hasattr(self, '_routing_map'):
|
||||
_logger.info("Generating routing map")
|
||||
cr = request.cr
|
||||
m = request.registry.get('ir.module.module')
|
||||
ids = m.search(cr, openerp.SUPERUSER_ID, [('state', '=', 'installed'), ('name', '!=', 'web')], context=request.context)
|
||||
installed = set(x['name'] for x in m.read(cr, 1, ids, ['name'], context=request.context))
|
||||
mods = ['', "web"] + sorted(installed)
|
||||
self._routing_map = http.routing_map(mods, False, converters=self._get_converters())
|
||||
|
||||
return self._routing_map
|
||||
|
||||
# vim:et:
|
|
@ -102,13 +102,10 @@ class res_config_configurable(osv.osv_memory):
|
|||
res = next.action_launch(context=context)
|
||||
res['nodestroy'] = False
|
||||
return res
|
||||
# reload the client; open the first available root menu
|
||||
menu_obj = self.pool['ir.ui.menu']
|
||||
menu_ids = menu_obj.search(cr, uid, [('parent_id', '=', False)], context=context)
|
||||
|
||||
return {
|
||||
'type': 'ir.actions.client',
|
||||
'tag': 'reload',
|
||||
'params': {'menu_id': menu_ids and menu_ids[0] or False},
|
||||
}
|
||||
|
||||
def start(self, cr, uid, ids, context=None):
|
||||
|
|
|
@ -250,8 +250,8 @@ class res_currency_rate(osv.osv):
|
|||
_description = "Currency Rate"
|
||||
|
||||
_columns = {
|
||||
'name': fields.date('Date', required=True, select=True),
|
||||
'rate': fields.float('Rate', digits=(12,6), help='The rate of the currency to the currency of rate 1'),
|
||||
'name': fields.datetime('Date', required=True, select=True),
|
||||
'rate': fields.float('Rate', digits=(12, 6), help='The rate of the currency to the currency of rate 1'),
|
||||
'currency_id': fields.many2one('res.currency', 'Currency', readonly=True),
|
||||
'currency_rate_type_id': fields.many2one('res.currency.rate.type', 'Currency Rate Type', help="Allow you to define your own currency rate types, like 'Average' or 'Year to Date'. Leave empty if you simply want to use the normal 'spot' rate type"),
|
||||
}
|
||||
|
|
|
@ -329,7 +329,7 @@
|
|||
<field name="arch" type="xml">
|
||||
<search string="Search Partner">
|
||||
<field name="name"
|
||||
filter_domain="['|','|',('name','ilike',self),('parent_id','ilike',self),('ref','=',self)]"/>
|
||||
filter_domain="['|','|',('display_name','ilike',self),('ref','=',self),('email,'ilike',self)]"/>
|
||||
<filter help="My Partners" icon="terp-personal+" domain="[('user_id','=',uid)]"/>
|
||||
<separator/>
|
||||
<filter string="Persons" name="type_person" domain="[('is_company','=',0)]"/>
|
||||
|
|
|
@ -231,7 +231,7 @@
|
|||
<field name="model">res.users</field>
|
||||
<field name="arch" type="xml">
|
||||
<search string="Users">
|
||||
<field name="name" filter_domain="['|', ('name','ilike',self), ('login','ilike',self)]" string="User"/>
|
||||
<field name="name" filter_domain="['|', '|', ('name','ilike',self), ('login','ilike',self), ('email,'ilike',self)]" string="User"/>
|
||||
<field name="company_ids" string="Company" groups="base.group_multi_company"/>
|
||||
</search>
|
||||
</field>
|
||||
|
|
414
openerp/http.py
414
openerp/http.py
|
@ -3,8 +3,10 @@
|
|||
# OpenERP HTTP layer
|
||||
#----------------------------------------------------------
|
||||
import ast
|
||||
import collections
|
||||
import contextlib
|
||||
import errno
|
||||
import functools
|
||||
import getpass
|
||||
import inspect
|
||||
import logging
|
||||
|
@ -25,22 +27,14 @@ import simplejson
|
|||
import werkzeug.contrib.sessions
|
||||
import werkzeug.datastructures
|
||||
import werkzeug.exceptions
|
||||
import werkzeug.local
|
||||
import werkzeug.routing
|
||||
import werkzeug.wrappers
|
||||
import werkzeug.wsgi
|
||||
import werkzeug.routing as routing
|
||||
|
||||
import openerp
|
||||
from openerp.service import security, model as service_model
|
||||
|
||||
try:
|
||||
# use python-slugify (https://github.com/un33k/python-slugify) if available
|
||||
from slugify import slugify
|
||||
except ImportError:
|
||||
def slugify(s, max_length=None):
|
||||
spaceless = re.sub(r'\s+', '-', s)
|
||||
specialless = re.sub(r'[^-_A-Za-z0-9]', '', spaceless)
|
||||
return specialless[:max_length]
|
||||
|
||||
_logger = logging.getLogger(__name__)
|
||||
|
||||
#----------------------------------------------------------
|
||||
|
@ -104,6 +98,7 @@ class WebRequest(object):
|
|||
self.disable_db = False
|
||||
self.uid = None
|
||||
self.func = None
|
||||
self.func_arguments = {}
|
||||
self.auth_method = None
|
||||
self._cr_cm = None
|
||||
self._cr = None
|
||||
|
@ -117,14 +112,6 @@ class WebRequest(object):
|
|||
self.context = dict(self.session.context)
|
||||
self.lang = self.context["lang"]
|
||||
|
||||
def _authenticate(self):
|
||||
if self.session.uid:
|
||||
try:
|
||||
self.session.check_security()
|
||||
except SessionExpiredException, e:
|
||||
self.session.logout()
|
||||
raise SessionExpiredException("Session expired for request %s" % self.httprequest)
|
||||
auth_methods[self.auth_method]()
|
||||
@property
|
||||
def registry(self):
|
||||
"""
|
||||
|
@ -153,8 +140,17 @@ class WebRequest(object):
|
|||
self._cr = self._cr_cm.__enter__()
|
||||
return self._cr
|
||||
|
||||
def set_handler(self, func, arguments, auth):
|
||||
# is this needed ?
|
||||
arguments = dict((k, v) for k, v in arguments.iteritems()
|
||||
if not k.startswith("_ignored_"))
|
||||
|
||||
self.func = func
|
||||
self.func_request_type = func.exposed
|
||||
self.func_arguments = arguments
|
||||
self.auth_method = auth
|
||||
|
||||
def _call_function(self, *args, **kwargs):
|
||||
self._authenticate()
|
||||
try:
|
||||
# ugly syntax only to get the __exit__ arguments to pass to self._cr
|
||||
request = self
|
||||
|
@ -171,6 +167,18 @@ class WebRequest(object):
|
|||
if self.func_request_type != self._request_type:
|
||||
raise Exception("%s, %s: Function declared as capable of handling request of type '%s' but called with a request of type '%s'" \
|
||||
% (self.func, self.httprequest.path, self.func_request_type, self._request_type))
|
||||
|
||||
kwargs.update(self.func_arguments)
|
||||
|
||||
# Backward for 7.0
|
||||
if getattr(self.func, '_first_arg_is_req', False):
|
||||
args = (request,) + args
|
||||
# Correct exception handling and concurency retry
|
||||
@service_model.check
|
||||
def checked_call(dbname, *a, **kw):
|
||||
return self.func(*a, **kw)
|
||||
if self.db:
|
||||
return checked_call(self.db, *args, **kwargs)
|
||||
return self.func(*args, **kwargs)
|
||||
finally:
|
||||
# just to be sure no one tries to re-use the request
|
||||
|
@ -186,26 +194,6 @@ class WebRequest(object):
|
|||
warnings.warn('please use request.registry and request.cr directly', DeprecationWarning)
|
||||
yield (self.registry, self.cr)
|
||||
|
||||
def auth_method_user():
|
||||
request.uid = request.session.uid
|
||||
if not request.uid:
|
||||
raise SessionExpiredException("Session expired")
|
||||
|
||||
def auth_method_admin():
|
||||
if not request.db:
|
||||
raise SessionExpiredException("No valid database for request %s" % request.httprequest)
|
||||
request.uid = openerp.SUPERUSER_ID
|
||||
|
||||
def auth_method_none():
|
||||
request.disable_db = True
|
||||
request.uid = None
|
||||
|
||||
auth_methods = {
|
||||
"user": auth_method_user,
|
||||
"admin": auth_method_admin,
|
||||
"none": auth_method_none,
|
||||
}
|
||||
|
||||
def route(route, type="http", auth="user"):
|
||||
"""
|
||||
Decorator marking the decorated method as being a handler for requests. The method must be part of a subclass
|
||||
|
@ -225,7 +213,6 @@ def route(route, type="http", auth="user"):
|
|||
configuration indicating the current database nor the current user.
|
||||
"""
|
||||
assert type in ["http", "json"]
|
||||
assert auth in auth_methods
|
||||
def decorator(f):
|
||||
if isinstance(route, list):
|
||||
f.routes = route
|
||||
|
@ -237,12 +224,6 @@ def route(route, type="http", auth="user"):
|
|||
return f
|
||||
return decorator
|
||||
|
||||
def reject_nonliteral(dct):
|
||||
if '__ref' in dct:
|
||||
raise ValueError(
|
||||
"Non literal contexts can not be sent to the server anymore (%r)" % (dct,))
|
||||
return dct
|
||||
|
||||
class JsonRequest(WebRequest):
|
||||
""" JSON-RPC2 over HTTP.
|
||||
|
||||
|
@ -308,7 +289,7 @@ class JsonRequest(WebRequest):
|
|||
request = self.httprequest.stream.read()
|
||||
|
||||
# Read POST content or POST Form Data named "request"
|
||||
self.jsonrequest = simplejson.loads(request, object_hook=reject_nonliteral)
|
||||
self.jsonrequest = simplejson.loads(request)
|
||||
self.params = dict(self.jsonrequest.get("params", {}))
|
||||
self.context = self.params.pop('context', self.session.context)
|
||||
|
||||
|
@ -470,9 +451,7 @@ def httprequest(f):
|
|||
#----------------------------------------------------------
|
||||
# Thread local global request object
|
||||
#----------------------------------------------------------
|
||||
from werkzeug.local import LocalStack
|
||||
|
||||
_request_stack = LocalStack()
|
||||
_request_stack = werkzeug.local.LocalStack()
|
||||
|
||||
request = _request_stack()
|
||||
"""
|
||||
|
@ -488,11 +467,11 @@ def set_request(req):
|
|||
_request_stack.pop()
|
||||
|
||||
#----------------------------------------------------------
|
||||
# Controller metaclass registration
|
||||
# Controller and route registration
|
||||
#----------------------------------------------------------
|
||||
addons_module = {}
|
||||
addons_manifest = {}
|
||||
controllers_per_module = {}
|
||||
controllers_per_module = collections.defaultdict(list)
|
||||
|
||||
class ControllerType(type):
|
||||
def __init__(cls, name, bases, attrs):
|
||||
|
@ -517,11 +496,36 @@ class ControllerType(type):
|
|||
# but we only store controllers directly inheriting from Controller
|
||||
if not "Controller" in globals() or not Controller in bases:
|
||||
return
|
||||
controllers_per_module.setdefault(module, []).append(name_class)
|
||||
controllers_per_module[module].append(name_class)
|
||||
|
||||
class Controller(object):
|
||||
__metaclass__ = ControllerType
|
||||
|
||||
def routing_map(modules, nodb_only, converters=None):
|
||||
routing_map = werkzeug.routing.Map(strict_slashes=False, converters=converters)
|
||||
for module in modules:
|
||||
if module not in controllers_per_module:
|
||||
continue
|
||||
|
||||
for _, cls in controllers_per_module[module]:
|
||||
subclasses = cls.__subclasses__()
|
||||
subclasses = [c for c in subclasses if c.__module__.startswith('openerp.addons.') and c.__module__.split(".")[2] in modules]
|
||||
if subclasses:
|
||||
name = "%s (extended by %s)" % (cls.__name__, ', '.join(sub.__name__ for sub in subclasses))
|
||||
cls = type(name, tuple(reversed(subclasses)), {})
|
||||
|
||||
o = cls()
|
||||
members = inspect.getmembers(o)
|
||||
for mk, mv in members:
|
||||
if inspect.ismethod(mv) and getattr(mv, 'exposed', False) and (not nodb_only or nodb_only == (mv.auth == "none")):
|
||||
for url in mv.routes:
|
||||
if getattr(mv, "combine", False):
|
||||
url = o._cp_path.rstrip('/') + '/' + url.lstrip('/')
|
||||
if url.endswith("/") and len(url) > 1:
|
||||
url = url[: -1]
|
||||
routing_map.add(werkzeug.routing.Rule(url, endpoint=mv))
|
||||
return routing_map
|
||||
|
||||
#----------------------------------------------------------
|
||||
# HTTP Sessions
|
||||
#----------------------------------------------------------
|
||||
|
@ -685,6 +689,8 @@ class OpenERPSession(werkzeug.contrib.sessions.Session):
|
|||
|
||||
context['lang'] = lang or 'en_US'
|
||||
|
||||
# Deprecated to be removed in 9
|
||||
|
||||
"""
|
||||
Damn properties for retro-compatibility. All of that is deprecated, all
|
||||
of that.
|
||||
|
@ -800,7 +806,7 @@ def session_gc(session_store):
|
|||
pass
|
||||
|
||||
#----------------------------------------------------------
|
||||
# WSGI Application
|
||||
# WSGI Layer
|
||||
#----------------------------------------------------------
|
||||
# Add potentially missing (older ubuntu) font mime types
|
||||
mimetypes.add_type('application/font-woff', '.woff')
|
||||
|
@ -850,144 +856,31 @@ def session_path():
|
|||
raise
|
||||
return path
|
||||
|
||||
class ModelConverter(routing.BaseConverter):
|
||||
|
||||
def __init__(self, url_map, model=False):
|
||||
super(ModelConverter, self).__init__(url_map)
|
||||
self.model = model
|
||||
# TODO add support for slug in the form [A-Za-z0-9-] bla-bla-89 -> id 89
|
||||
self.regex = r'[A-Za-z0-9-_]*?(\d+)'
|
||||
|
||||
def to_python(self, value):
|
||||
# TODO:
|
||||
# - raise routing.ValidationError() if no browse record can be createdm
|
||||
m = re.match(self.regex, value)
|
||||
return request.registry[self.model].browse(
|
||||
request.cr, request.uid, int(m.group(1)), context=request.context)
|
||||
|
||||
def to_url(self, value):
|
||||
[(_, name)] = value.name_get()
|
||||
return "%s-%d" % (slugify(name), value.id)
|
||||
|
||||
def generate(self):
|
||||
for id in request.registry[self.model].search(request.cr, request.uid, [], context=request.context):
|
||||
yield request.registry[self.model].browse(request.cr, request.uid, id, context=request.context)
|
||||
|
||||
class ModelsConverter(routing.BaseConverter):
|
||||
|
||||
def __init__(self, url_map, model=False):
|
||||
super(ModelsConverter, self).__init__(url_map)
|
||||
self.model = model
|
||||
# TODO add support for slug in the form [A-Za-z0-9-] bla-bla-89 -> id 89
|
||||
self.regex = '([0-9,]+)'
|
||||
|
||||
def to_python(self, value):
|
||||
# TODO:
|
||||
# - raise routing.ValidationError() if no browse record can be createdm
|
||||
# - support slug
|
||||
return request.registry[self.model].browse(request.cr, request.uid, [int(i) for i in value.split(',')], context=request.context)
|
||||
|
||||
def to_url(self, value):
|
||||
return ",".join([i.id for i in value])
|
||||
|
||||
class Root(object):
|
||||
"""Root WSGI application for the OpenERP Web Client.
|
||||
"""
|
||||
def __init__(self):
|
||||
self.addons = {}
|
||||
self.statics = {}
|
||||
|
||||
self.no_db_router = None
|
||||
|
||||
self.load_addons()
|
||||
|
||||
# Setup http sessions
|
||||
path = session_path()
|
||||
self.session_store = werkzeug.contrib.sessions.FilesystemSessionStore(path, session_class=OpenERPSession)
|
||||
_logger.debug('HTTP sessions stored in: %s', path)
|
||||
self.session_store = werkzeug.contrib.sessions.FilesystemSessionStore(path, session_class=OpenERPSession)
|
||||
|
||||
# TODO should we move this to ir.http so that only configured modules are served ?
|
||||
_logger.info("HTTP Configuring static files")
|
||||
self.load_addons()
|
||||
|
||||
_logger.info("Generating nondb routing")
|
||||
self.nodb_routing_map = routing_map(['', "web"], True)
|
||||
|
||||
def __call__(self, environ, start_response):
|
||||
""" Handle a WSGI request
|
||||
"""
|
||||
return self.dispatch(environ, start_response)
|
||||
|
||||
def dispatch(self, environ, start_response):
|
||||
"""
|
||||
Performs the actual WSGI dispatching for the application.
|
||||
"""
|
||||
try:
|
||||
httprequest = werkzeug.wrappers.Request(environ)
|
||||
httprequest.parameter_storage_class = werkzeug.datastructures.ImmutableDict
|
||||
httprequest.app = self
|
||||
|
||||
session_gc(self.session_store)
|
||||
|
||||
sid = httprequest.args.get('session_id')
|
||||
explicit_session = True
|
||||
if not sid:
|
||||
sid = httprequest.headers.get("X-Openerp-Session-Id")
|
||||
if not sid:
|
||||
sid = httprequest.cookies.get('session_id')
|
||||
explicit_session = False
|
||||
if sid is None:
|
||||
httprequest.session = self.session_store.new()
|
||||
else:
|
||||
httprequest.session = self.session_store.get(sid)
|
||||
|
||||
self._find_db(httprequest)
|
||||
|
||||
if not "lang" in httprequest.session.context:
|
||||
lang = httprequest.accept_languages.best or "en_US"
|
||||
lang = babel.core.LOCALE_ALIASES.get(lang, lang).replace('-', '_')
|
||||
httprequest.session.context["lang"] = lang
|
||||
|
||||
request = self._build_request(httprequest)
|
||||
db = request.db
|
||||
|
||||
if db:
|
||||
openerp.modules.registry.RegistryManager.check_registry_signaling(db)
|
||||
|
||||
with set_request(request):
|
||||
self.find_handler()
|
||||
result = request.dispatch()
|
||||
|
||||
if db:
|
||||
openerp.modules.registry.RegistryManager.signal_caches_change(db)
|
||||
|
||||
if isinstance(result, basestring):
|
||||
headers=[('Content-Type', 'text/html; charset=utf-8'), ('Content-Length', len(result))]
|
||||
response = werkzeug.wrappers.Response(result, headers=headers)
|
||||
else:
|
||||
response = result
|
||||
|
||||
if httprequest.session.should_save:
|
||||
self.session_store.save(httprequest.session)
|
||||
if not explicit_session and hasattr(response, 'set_cookie'):
|
||||
response.set_cookie('session_id', httprequest.session.sid, max_age=90 * 24 * 60 * 60)
|
||||
|
||||
return response(environ, start_response)
|
||||
except werkzeug.exceptions.HTTPException, e:
|
||||
return e(environ, start_response)
|
||||
|
||||
def _find_db(self, httprequest):
|
||||
db = db_monodb(httprequest)
|
||||
if db != httprequest.session.db:
|
||||
httprequest.session.logout()
|
||||
httprequest.session.db = db
|
||||
|
||||
def _build_request(self, httprequest):
|
||||
if httprequest.args.get('jsonp'):
|
||||
return JsonRequest(httprequest)
|
||||
|
||||
if httprequest.mimetype == "application/json":
|
||||
return JsonRequest(httprequest)
|
||||
else:
|
||||
return HttpRequest(httprequest)
|
||||
|
||||
def load_addons(self):
|
||||
""" Load all addons from addons patch containg static files and
|
||||
controllers and configure them. """
|
||||
statics = {}
|
||||
|
||||
for addons_path in openerp.modules.module.ad_paths:
|
||||
for module in sorted(os.listdir(str(addons_path))):
|
||||
|
@ -1000,101 +893,107 @@ class Root(object):
|
|||
_logger.debug("Loading %s", module)
|
||||
if 'openerp.addons' in sys.modules:
|
||||
m = __import__('openerp.addons.' + module)
|
||||
else:
|
||||
m = __import__(module)
|
||||
addons_module[module] = m
|
||||
addons_manifest[module] = manifest
|
||||
self.statics['/%s/static' % module] = path_static
|
||||
statics['/%s/static' % module] = path_static
|
||||
|
||||
app = werkzeug.wsgi.SharedDataMiddleware(self.dispatch, self.statics)
|
||||
app = werkzeug.wsgi.SharedDataMiddleware(self.dispatch, statics)
|
||||
self.dispatch = DisableCacheMiddleware(app)
|
||||
|
||||
def _build_router(self, db):
|
||||
_logger.info("Generating routing configuration for database %s" % db)
|
||||
routing_map = routing.Map(strict_slashes=False, converters={'model': ModelConverter, 'models': ModelsConverter})
|
||||
def setup_session(self, httprequest):
|
||||
# recover or create session
|
||||
session_gc(self.session_store)
|
||||
|
||||
def gen(modules, nodb_only):
|
||||
for module in modules:
|
||||
for v in controllers_per_module[module]:
|
||||
cls = v[1]
|
||||
sid = httprequest.args.get('session_id')
|
||||
explicit_session = True
|
||||
if not sid:
|
||||
sid = httprequest.headers.get("X-Openerp-Session-Id")
|
||||
if not sid:
|
||||
sid = httprequest.cookies.get('session_id')
|
||||
explicit_session = False
|
||||
if sid is None:
|
||||
httprequest.session = self.session_store.new()
|
||||
else:
|
||||
httprequest.session = self.session_store.get(sid)
|
||||
return explicit_session
|
||||
|
||||
subclasses = cls.__subclasses__()
|
||||
subclasses = [c for c in subclasses if c.__module__.startswith('openerp.addons.') and
|
||||
c.__module__.split(".")[2] in modules]
|
||||
if subclasses:
|
||||
name = "%s (extended by %s)" % (cls.__name__, ', '.join(sub.__name__ for sub in subclasses))
|
||||
cls = type(name, tuple(reversed(subclasses)), {})
|
||||
def setup_db(self, httprequest):
|
||||
# if no db is found on the session try to deduce it from the domain
|
||||
db = db_monodb(httprequest)
|
||||
if db != httprequest.session.db:
|
||||
httprequest.session.logout()
|
||||
httprequest.session.db = db
|
||||
|
||||
o = cls()
|
||||
members = inspect.getmembers(o)
|
||||
for mk, mv in members:
|
||||
if inspect.ismethod(mv) and getattr(mv, 'exposed', False) and \
|
||||
nodb_only == (getattr(mv, "auth", "none") == "none"):
|
||||
for url in mv.routes:
|
||||
if getattr(mv, "combine", False):
|
||||
url = o._cp_path.rstrip('/') + '/' + url.lstrip('/')
|
||||
if url.endswith("/") and len(url) > 1:
|
||||
url = url[: -1]
|
||||
routing_map.add(routing.Rule(url, endpoint=mv))
|
||||
def setup_lang(self, httprequest):
|
||||
if not "lang" in httprequest.session.context:
|
||||
lang = httprequest.accept_languages.best or "en_US"
|
||||
lang = babel.core.LOCALE_ALIASES.get(lang, lang).replace('-', '_')
|
||||
httprequest.session.context["lang"] = lang
|
||||
|
||||
modules_set = set(controllers_per_module) - set(['', 'web'])
|
||||
# building all none methods
|
||||
gen(['', "web"] + sorted(modules_set), True)
|
||||
if not db:
|
||||
return routing_map
|
||||
def get_request(self, httprequest):
|
||||
# deduce type of request
|
||||
if httprequest.args.get('jsonp'):
|
||||
return JsonRequest(httprequest)
|
||||
if httprequest.mimetype == "application/json":
|
||||
return JsonRequest(httprequest)
|
||||
else:
|
||||
return HttpRequest(httprequest)
|
||||
|
||||
registry = openerp.modules.registry.RegistryManager.get(db)
|
||||
with registry.cursor() as cr:
|
||||
m = registry.get('ir.module.module')
|
||||
ids = m.search(cr, openerp.SUPERUSER_ID, [('state', '=', 'installed'), ('name', '!=', 'web')])
|
||||
installed = set(x['name'] for x in m.read(cr, 1, ids, ['name']))
|
||||
modules_set = modules_set & installed
|
||||
def get_response(self, httprequest, result, explicit_session):
|
||||
if isinstance(result, basestring):
|
||||
response = werkzeug.wrappers.Response(result, mimetype='text/html')
|
||||
else:
|
||||
response = result
|
||||
|
||||
# building all other methods
|
||||
gen(['', "web"] + sorted(modules_set), False)
|
||||
if httprequest.session.should_save:
|
||||
self.session_store.save(httprequest.session)
|
||||
# We must not set the cookie if the session id was specified using a http header or a GET parameter.
|
||||
# There are two reasons to this:
|
||||
# - When using one of those two means we consider that we are overriding the cookie, which means creating a new
|
||||
# session on top of an already existing session and we don't want to create a mess with the 'normal' session
|
||||
# (the one using the cookie). That is a special feature of the Session Javascript class.
|
||||
# - It could allow session fixation attacks.
|
||||
if not explicit_session and hasattr(response, 'set_cookie'):
|
||||
response.set_cookie('session_id', httprequest.session.sid, max_age=90 * 24 * 60 * 60)
|
||||
|
||||
return routing_map
|
||||
return response
|
||||
|
||||
def dispatch(self, environ, start_response):
|
||||
"""
|
||||
Performs the actual WSGI dispatching for the application.
|
||||
"""
|
||||
try:
|
||||
httprequest = werkzeug.wrappers.Request(environ)
|
||||
httprequest.parameter_storage_class = werkzeug.datastructures.ImmutableDict
|
||||
httprequest.app = self
|
||||
|
||||
explicit_session = self.setup_session(httprequest)
|
||||
self.setup_db(httprequest)
|
||||
self.setup_lang(httprequest)
|
||||
|
||||
request = self.get_request(httprequest)
|
||||
|
||||
with set_request(request):
|
||||
db = request.session.db
|
||||
if db:
|
||||
openerp.modules.registry.RegistryManager.check_registry_signaling(db)
|
||||
result = request.registry['ir.http']._dispatch()
|
||||
openerp.modules.registry.RegistryManager.signal_caches_change(db)
|
||||
else:
|
||||
# fallback to non-db handlers
|
||||
func, arguments = self.nodb_routing_map.bind_to_environ(request.httprequest.environ).match()
|
||||
request.set_handler(func, arguments, "none")
|
||||
result = request.dispatch()
|
||||
response = self.get_response(httprequest, result, explicit_session)
|
||||
return response(environ, start_response)
|
||||
|
||||
except werkzeug.exceptions.HTTPException, e:
|
||||
return e(environ, start_response)
|
||||
|
||||
def get_db_router(self, db):
|
||||
if db is None:
|
||||
router = self.no_db_router
|
||||
else:
|
||||
router = getattr(openerp.modules.registry.RegistryManager.get(db), "werkzeug_http_router", None)
|
||||
if not router:
|
||||
router = self._build_router(db)
|
||||
if db is None:
|
||||
self.no_db_router = router
|
||||
else:
|
||||
openerp.modules.registry.RegistryManager.get(db).werkzeug_http_router = router
|
||||
return router
|
||||
|
||||
def find_handler(self):
|
||||
"""
|
||||
Tries to discover the controller handling the request for the path specified in the request.
|
||||
"""
|
||||
path = request.httprequest.path
|
||||
urls = self.get_db_router(request.db).bind("")
|
||||
# TODO ugly hack please fix it niv
|
||||
func, _ = urls.match(path)
|
||||
|
||||
@service_model.check
|
||||
def checked_call(dbname, *a, **kw):
|
||||
return func(*a, **kw)
|
||||
|
||||
def nfunc(*args, **kwargs):
|
||||
_, arguments = urls.match(path)
|
||||
arguments = dict([(k, v) for k, v in arguments.items() if not k.startswith("_ignored_")])
|
||||
kwargs.update(arguments)
|
||||
if getattr(func, '_first_arg_is_req', False):
|
||||
args = (request,) + args
|
||||
|
||||
if request.db:
|
||||
return checked_call(request.db, *args, **kwargs)
|
||||
return func(*args, **kwargs)
|
||||
|
||||
request.func = nfunc
|
||||
request.auth_method = getattr(func, "auth", "user")
|
||||
request.func_request_type = func.exposed
|
||||
if not db:
|
||||
return self.nodb_routing_map
|
||||
return request.registry['ir.http'].routing_map()
|
||||
|
||||
def db_list(force=False, httprequest=None):
|
||||
httprequest = httprequest or request.httprequest
|
||||
|
@ -1133,6 +1032,9 @@ def db_monodb(httprequest=None):
|
|||
return dbs[0]
|
||||
return None
|
||||
|
||||
#----------------------------------------------------------
|
||||
# RPC controller
|
||||
#----------------------------------------------------------
|
||||
class CommonController(Controller):
|
||||
|
||||
@route('/jsonrpc', type='json', auth="none")
|
||||
|
|
|
@ -1012,7 +1012,7 @@ class expression(object):
|
|||
|
||||
else:
|
||||
if field._type == 'datetime' and right and len(right) == 10:
|
||||
if operator in ('>', '>='):
|
||||
if operator in ('>', '>=', '='):
|
||||
right += ' 00:00:00'
|
||||
elif operator in ('<', '<='):
|
||||
right += ' 23:59:59'
|
||||
|
|
|
@ -1407,7 +1407,7 @@ class dummy(function):
|
|||
def __init__(self, *arg, **args):
|
||||
self.arg = arg
|
||||
self._relations = []
|
||||
super(dummy, self).__init__(self._fnct_read, arg, self._fnct_write, fnct_inv_arg=arg, fnct_search=None, **args)
|
||||
super(dummy, self).__init__(self._fnct_read, arg, self._fnct_write, fnct_inv_arg=arg, fnct_search=self._fnct_search, **args)
|
||||
|
||||
# ---------------------------------------------------------
|
||||
# Serialized fields
|
||||
|
|
|
@ -26,7 +26,6 @@ import unittest2
|
|||
from . import test_mail_examples
|
||||
from openerp.tools import html_sanitize, html_email_clean, append_content_to_html, plaintext2html
|
||||
|
||||
|
||||
class TestSanitizer(unittest2.TestCase):
|
||||
""" Test the html sanitizer that filters html to remove unwanted attributes """
|
||||
|
||||
|
@ -76,15 +75,19 @@ class TestSanitizer(unittest2.TestCase):
|
|||
("<META HTTP-EQUIV=\"Link\" Content=\"<http://ha.ckers.org/xss.css>; REL=stylesheet\">"), # remote style sheet 3
|
||||
("<STYLE>BODY{-moz-binding:url(\"http://ha.ckers.org/xssmoz.xml#xss\")}</STYLE>"), # remote style sheet 4
|
||||
("<IMG STYLE=\"xss:expr/*XSS*/ession(alert('XSS'))\">"), # style attribute using a comment to break up expression
|
||||
#("""<!--[if gte IE 4]>
|
||||
# <SCRIPT>alert('XSS');</SCRIPT>
|
||||
# <![endif]-->"""), # down-level hidden block
|
||||
]
|
||||
for content in cases:
|
||||
html = html_sanitize(content)
|
||||
self.assertNotIn('javascript', html, 'html_sanitize did not remove a malicious javascript')
|
||||
self.assertTrue('ha.ckers.org' not in html or 'http://ha.ckers.org/xss.css' in html, 'html_sanitize did not remove a malicious code in %s (%s)' % (content, html))
|
||||
|
||||
# Raise an exception if the node is an empty string without any root tag
|
||||
with self.assertRaises(etree.ParserError):
|
||||
content = "<!--[if gte IE 4]><SCRIPT>alert('XSS');</SCRIPT><![endif]-->" # down-level hidden block
|
||||
html = html_sanitize(content, silent=False)
|
||||
|
||||
|
||||
|
||||
def test_html(self):
|
||||
sanitized_html = html_sanitize(test_mail_examples.MISC_HTML_SOURCE)
|
||||
for tag in ['<div', '<b', '<i', '<u', '<strike', '<li', '<blockquote', '<a href']:
|
||||
|
|
Loading…
Reference in New Issue