[merge] from trunk-lxml-fixes
bzr revid: xmo@tinyerp.com-20091210111811-r5yixjp5jararnzl
This commit is contained in:
@@ -47,6 +47,7 @@
|
||||
'module/module_report.xml',
|
||||
'res/res_request_view.xml',
|
||||
'res/res_lang_view.xml',
|
||||
'res/res_company_view.xml',
|
||||
'res/partner/partner_report.xml',
|
||||
'res/partner/partner_view.xml',
|
||||
'res/partner/partner_wizard.xml',
|
||||
|
||||
@@ -78,7 +78,7 @@
|
||||
<form string="Users">
|
||||
<field name="password" password="True" readonly="0"/>
|
||||
<label colspan="4" string="Please note that you will have to logout and relog if you change your password."/>
|
||||
<field name="company"/>
|
||||
<field name="company_id" widget="selection"/>
|
||||
<field name="context_lang" completion="1" readonly="0"/>
|
||||
<field name="context_tz" completion="1" readonly="0" colspan="4"/>
|
||||
<newline/>
|
||||
|
||||
@@ -13,7 +13,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-01 04:41+0000\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-05 04:37+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: base
|
||||
|
||||
+536
-4064
File diff suppressed because it is too large
Load Diff
@@ -7,13 +7,13 @@ msgstr ""
|
||||
"Project-Id-Version: OpenERP Server 5.0.4\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
|
||||
"PO-Revision-Date: 2009-11-30 07:56+0000\n"
|
||||
"PO-Revision-Date: 2009-12-05 06:41+0000\n"
|
||||
"Last-Translator: lem0na <nickyk@gmx.net>\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: 2009-12-01 04:41+0000\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-06 04:42+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: base
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -7,13 +7,13 @@ msgstr ""
|
||||
"Project-Id-Version: OpenERP Server 5.0.4\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
|
||||
"PO-Revision-Date: 2009-11-30 07:58+0000\n"
|
||||
"PO-Revision-Date: 2009-12-05 06:40+0000\n"
|
||||
"Last-Translator: Fabien (Open ERP) <fp@tinyerp.com>\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: 2009-12-01 04:41+0000\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-06 04:42+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: base
|
||||
|
||||
@@ -7,13 +7,13 @@ msgstr ""
|
||||
"Project-Id-Version: OpenERP Server 5.0.4\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
|
||||
"PO-Revision-Date: 2009-11-30 07:58+0000\n"
|
||||
"PO-Revision-Date: 2009-12-05 06:39+0000\n"
|
||||
"Last-Translator: Fabien (Open ERP) <fp@tinyerp.com>\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: 2009-12-01 04:41+0000\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-06 04:42+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: base
|
||||
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-01 04:41+0000\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-05 04:38+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: base
|
||||
|
||||
@@ -7,13 +7,13 @@ msgstr ""
|
||||
"Project-Id-Version: OpenERP Server 5.0.4\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
|
||||
"PO-Revision-Date: 2009-11-30 08:01+0000\n"
|
||||
"PO-Revision-Date: 2009-12-05 06:37+0000\n"
|
||||
"Last-Translator: Fabien (Open ERP) <fp@tinyerp.com>\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: 2009-12-01 04:42+0000\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-06 04:43+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: base
|
||||
@@ -4060,7 +4060,7 @@ msgstr ""
|
||||
#. module: base
|
||||
#: model:res.country,name:base.hu
|
||||
msgid "Hungary"
|
||||
msgstr "Ungarn"
|
||||
msgstr ""
|
||||
|
||||
#. module: base
|
||||
#: code:addons/addons/use_control/module.py:0
|
||||
|
||||
@@ -6,13 +6,13 @@ msgstr ""
|
||||
"Project-Id-Version: OpenERP Server 5.0.0\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
|
||||
"PO-Revision-Date: 2009-11-30 08:09+0000\n"
|
||||
"PO-Revision-Date: 2009-12-05 06:37+0000\n"
|
||||
"Last-Translator: Fabien (Open ERP) <fp@tinyerp.com>\n"
|
||||
"Language-Team: nls@hellug.gr <nls@hellug.gr>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-01 04:42+0000\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-06 04:43+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
"X-Poedit-Country: GREECE\n"
|
||||
"X-Poedit-Language: Greek\n"
|
||||
|
||||
@@ -7,13 +7,13 @@ msgstr ""
|
||||
"Project-Id-Version: OpenERP Server 5.0.4\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
|
||||
"PO-Revision-Date: 2009-11-30 08:13+0000\n"
|
||||
"PO-Revision-Date: 2009-12-05 06:36+0000\n"
|
||||
"Last-Translator: Borja López Soilán (Pexego) <borjals@pexego.es>\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: 2009-12-01 04:44+0000\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-06 04:43+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: base
|
||||
|
||||
+5
-3677
File diff suppressed because it is too large
Load Diff
@@ -7,13 +7,13 @@ msgstr ""
|
||||
"Project-Id-Version: OpenERP Server 5.0.4\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
|
||||
"PO-Revision-Date: 2009-11-30 08:14+0000\n"
|
||||
"PO-Revision-Date: 2009-12-05 06:36+0000\n"
|
||||
"Last-Translator: Fabien (Open ERP) <fp@tinyerp.com>\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: 2009-12-01 04:41+0000\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-06 04:42+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: base
|
||||
|
||||
@@ -7,13 +7,13 @@ msgstr ""
|
||||
"Project-Id-Version: OpenERP Server 5.0.4\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
|
||||
"PO-Revision-Date: 2009-11-30 08:14+0000\n"
|
||||
"PO-Revision-Date: 2009-12-05 06:34+0000\n"
|
||||
"Last-Translator: mra (Open ERP) <mra@tinyerp.com>\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: 2009-12-01 04:42+0000\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-06 04:43+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: base
|
||||
|
||||
+847
-4433
File diff suppressed because it is too large
Load Diff
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-01 04:42+0000\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-05 04:39+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: base
|
||||
|
||||
@@ -13,7 +13,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-01 04:44+0000\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-05 04:40+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: base
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-01 04:42+0000\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-05 04:39+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: base
|
||||
|
||||
+14
-14
@@ -7,13 +7,13 @@ msgstr ""
|
||||
"Project-Id-Version: OpenERP Server 5.0.4\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
|
||||
"PO-Revision-Date: 2009-11-30 08:28+0000\n"
|
||||
"PO-Revision-Date: 2009-12-07 06:00+0000\n"
|
||||
"Last-Translator: Fabien (Open ERP) <fp@tinyerp.com>\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: 2009-12-01 04:42+0000\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-08 04:38+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: base
|
||||
@@ -41,7 +41,7 @@ msgstr "%j - Giorno dell'anno come numero decimale [001,366]."
|
||||
#: code:addons/addons/mrp/report/price.py:0
|
||||
#, python-format
|
||||
msgid "Product quantity"
|
||||
msgstr ""
|
||||
msgstr "Quantità del prodotto"
|
||||
|
||||
#. module: base
|
||||
#: field:ir.values,meta_unpickle:0
|
||||
@@ -58,7 +58,7 @@ msgstr "Visualizza Architettura"
|
||||
#: code:addons/addons/base/ir/ir_model.py:0
|
||||
#, python-format
|
||||
msgid "You can not create this kind of document! (%s)"
|
||||
msgstr ""
|
||||
msgstr "Non puoi creare questo tipo di documento! (%s)"
|
||||
|
||||
#. module: base
|
||||
#: wizard_field:module.lang.import,init,code:0
|
||||
@@ -108,7 +108,7 @@ msgstr ""
|
||||
#: code:addons/addons/base_module_quality/pylint_test/pylint_test.py:0
|
||||
#, python-format
|
||||
msgid "Result (/10)"
|
||||
msgstr ""
|
||||
msgstr "Risultato (/10)"
|
||||
|
||||
#. module: base
|
||||
#: view:ir.module.module:0
|
||||
@@ -231,7 +231,7 @@ msgstr "ir.report.custom.fields"
|
||||
#: code:addons/addons/base/module/wizard/wizard_export_lang.py:0
|
||||
#, python-format
|
||||
msgid "new"
|
||||
msgstr ""
|
||||
msgstr "nuovo"
|
||||
|
||||
#. module: base
|
||||
#: selection:ir.ui.menu,icon:0
|
||||
@@ -282,7 +282,7 @@ msgstr "STOCK_DELETE"
|
||||
#: code:addons/addons/base/ir/ir_model.py:0
|
||||
#, python-format
|
||||
msgid "Password mismatch !"
|
||||
msgstr ""
|
||||
msgstr "Le password non corrispondono !"
|
||||
|
||||
#. module: base
|
||||
#: code:addons/addons/base/module/module.py:0
|
||||
@@ -443,7 +443,7 @@ msgstr "Oggetto Personalizzato"
|
||||
#: code:addons/addons/hr_timesheet/report/users_timesheet.py:0
|
||||
#, python-format
|
||||
msgid "June"
|
||||
msgstr ""
|
||||
msgstr "Giugno"
|
||||
|
||||
#. module: base
|
||||
#: field:res.lang,date_format:0
|
||||
@@ -505,7 +505,7 @@ msgstr ""
|
||||
#: code:addons/osv/orm.py:0
|
||||
#, python-format
|
||||
msgid "The read method is not implemented on this object !"
|
||||
msgstr ""
|
||||
msgstr "Il metodo 'Lettura' non è implementato per questo oggetto."
|
||||
|
||||
#. module: base
|
||||
#: selection:ir.ui.menu,icon:0
|
||||
@@ -521,7 +521,7 @@ msgstr "Testo"
|
||||
#: code:addons/addons/mrp/report/price.py:0
|
||||
#, python-format
|
||||
msgid "Product Quantity"
|
||||
msgstr ""
|
||||
msgstr "Quantità prodotto"
|
||||
|
||||
#. module: base
|
||||
#: field:res.country,name:0
|
||||
@@ -618,7 +618,7 @@ msgstr "Interfaccia Estesa"
|
||||
#: code:addons/addons/base/ir/ir_model.py:0
|
||||
#, python-format
|
||||
msgid "Custom fields must have a name that starts with 'x_' !"
|
||||
msgstr ""
|
||||
msgstr "I Campi personalizzati devono avere un nome che inizia con 'x_' !"
|
||||
|
||||
#. module: base
|
||||
#: help:ir.actions.server,action_id:0
|
||||
@@ -645,7 +645,7 @@ msgstr "Descrizione Modello"
|
||||
#: code:addons/addons/odms/odms.py:0
|
||||
#, python-format
|
||||
msgid "You need to choose a model"
|
||||
msgstr ""
|
||||
msgstr "Devi scegliere un modello"
|
||||
|
||||
#. module: base
|
||||
#: field:workflow.transition,trigger_expr_id:0
|
||||
@@ -661,13 +661,13 @@ msgstr "Giordania"
|
||||
#: code:addons/addons/base_module_quality/terp_test/terp_test.py:0
|
||||
#, python-format
|
||||
msgid "Tag Name"
|
||||
msgstr ""
|
||||
msgstr "Nome del tag"
|
||||
|
||||
#. module: base
|
||||
#: code:addons/addons/base/ir/ir_model.py:0
|
||||
#, python-format
|
||||
msgid "You can not remove the model '%s' !"
|
||||
msgstr ""
|
||||
msgstr "Non puoi rimuovere il modello '%s' !"
|
||||
|
||||
#. module: base
|
||||
#: model:res.country,name:base.er
|
||||
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-01 04:42+0000\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-05 04:39+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: base
|
||||
|
||||
@@ -13,7 +13,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-01 04:43+0000\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-05 04:39+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: base
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-01 04:43+0000\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-05 04:39+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: base
|
||||
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-02 04:54+0000\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-05 04:39+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: base
|
||||
|
||||
@@ -7,13 +7,13 @@ msgstr ""
|
||||
"Project-Id-Version: OpenERP Server 5.0.4\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
|
||||
"PO-Revision-Date: 2009-11-30 08:46+0000\n"
|
||||
"PO-Revision-Date: 2009-12-05 06:18+0000\n"
|
||||
"Last-Translator: Fabien (Open ERP) <fp@tinyerp.com>\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: 2009-12-01 04:41+0000\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-06 04:42+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: base
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
+1927
-4827
File diff suppressed because it is too large
Load Diff
+744
-4430
File diff suppressed because it is too large
Load Diff
@@ -13,7 +13,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-01 04:45+0000\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-05 04:41+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: base
|
||||
|
||||
@@ -13,7 +13,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-01 04:43+0000\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-05 04:40+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: base
|
||||
|
||||
@@ -13,7 +13,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-01 04:43+0000\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-05 04:40+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: base
|
||||
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-01 04:44+0000\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-05 04:40+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: base
|
||||
|
||||
@@ -13,7 +13,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-01 04:44+0000\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-05 04:40+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: base
|
||||
|
||||
@@ -13,7 +13,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-01 04:41+0000\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-05 04:37+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: base
|
||||
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-01 04:43+0000\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-05 04:40+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: base
|
||||
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-01 04:44+0000\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-05 04:41+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: base
|
||||
|
||||
@@ -13,7 +13,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-01 04:44+0000\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-05 04:41+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: base
|
||||
|
||||
@@ -7,13 +7,13 @@ msgstr ""
|
||||
"Project-Id-Version: OpenERP Server 5.0.4\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
|
||||
"PO-Revision-Date: 2009-11-30 09:10+0000\n"
|
||||
"PO-Revision-Date: 2009-12-05 06:30+0000\n"
|
||||
"Last-Translator: Mustafa Yılmaz <apshalasha@gmail.com>\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: 2009-12-01 04:44+0000\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-06 04:43+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: base
|
||||
|
||||
@@ -7,13 +7,13 @@ msgstr ""
|
||||
"Project-Id-Version: OpenERP Server 5.0.0\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
|
||||
"PO-Revision-Date: 2009-11-30 09:12+0000\n"
|
||||
"PO-Revision-Date: 2009-12-05 06:31+0000\n"
|
||||
"Last-Translator: Eugene Babiy <eugene.babiy@gmail.com>\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: 2009-12-01 04:44+0000\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-06 04:43+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: base
|
||||
|
||||
+2174
-4440
File diff suppressed because it is too large
Load Diff
@@ -26,23 +26,12 @@ msgstr ""
|
||||
msgid "SMS - Gateway: clickatell"
|
||||
msgstr ""
|
||||
|
||||
#. module: base
|
||||
#: code:addons/addons/account/wizard/wizard_open_closed_fiscalyear.py:0
|
||||
#, python-format
|
||||
msgid "No journal for ending writing has been defined for the fiscal year"
|
||||
msgstr ""
|
||||
|
||||
#. module: base
|
||||
#: view:res.lang:0
|
||||
msgid "%j - Day of the year as a decimal number [001,366]."
|
||||
msgstr ""
|
||||
|
||||
#. module: base
|
||||
#: code:addons/addons/mrp/report/price.py:0
|
||||
#, python-format
|
||||
msgid "Product quantity"
|
||||
msgstr ""
|
||||
|
||||
#. module: base
|
||||
#: field:ir.values,meta_unpickle:0
|
||||
msgid "Metadata"
|
||||
|
||||
@@ -150,8 +150,12 @@
|
||||
<tree string="Sequences">
|
||||
<field name="name"/>
|
||||
<field name="code"/>
|
||||
<field name="active"/>
|
||||
<field name="company_id"/>
|
||||
<field name="number_next"/>
|
||||
<field name="number_increment"/>
|
||||
<field name="prefix"/>
|
||||
<field name="padding"/>
|
||||
<field name="active"/>
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
@@ -428,6 +432,11 @@
|
||||
<menuitem action="ir_action_wizard" id="menu_ir_action_wizard" parent="base.next_id_6"/>
|
||||
|
||||
<!-- Companies -->
|
||||
<menuitem id="menu_res_company_global"
|
||||
parent="base.menu_administration"
|
||||
name="Companies"
|
||||
sequence="5"/>
|
||||
|
||||
<record id="action_res_company_tree" model="ir.actions.act_window">
|
||||
<field name="name">Company's Structure</field>
|
||||
<field name="type">ir.actions.act_window</field>
|
||||
@@ -435,7 +444,7 @@
|
||||
<field name="domain">[('parent_id','=',False)]</field>
|
||||
<field name="view_type">tree</field>
|
||||
</record>
|
||||
<menuitem action="action_res_company_tree" id="menu_action_res_company_tree" parent="base.menu_users" sequence="16"/>
|
||||
<menuitem action="action_res_company_tree" id="menu_action_res_company_tree" parent="base.menu_res_company_global" sequence="16"/>
|
||||
|
||||
<record id="action_res_company_form" model="ir.actions.act_window">
|
||||
<field name="name">Companies</field>
|
||||
@@ -443,7 +452,7 @@
|
||||
<field name="res_model">res.company</field>
|
||||
<field name="view_type">form</field>
|
||||
</record>
|
||||
<menuitem action="action_res_company_form" id="menu_action_res_company_form" parent="menu_action_res_company_tree"/>
|
||||
<menuitem action="action_res_company_form" id="menu_action_res_company_form" parent="base.menu_res_company_global"/>
|
||||
|
||||
<!-- User Roles -->
|
||||
<record id="action_res_users" model="ir.actions.act_window">
|
||||
@@ -1128,8 +1137,8 @@
|
||||
<field name="type">form</field>
|
||||
<field name="arch" type="xml">
|
||||
<form string="Record rules">
|
||||
<field name="model_id"/>
|
||||
<field name="global"/>
|
||||
<field name="model_id" select="1"/>
|
||||
<field name="global" select="1"/>
|
||||
<field colspan="4" name="name"/>
|
||||
<group col="6" colspan="4" expand="1">
|
||||
<field colspan="6" name="rules" nolabel="1"/>
|
||||
|
||||
@@ -40,7 +40,7 @@ class Country(osv.osv):
|
||||
]
|
||||
|
||||
def name_search(self, cr, user, name='', args=None, operator='ilike',
|
||||
context=None, limit=80):
|
||||
context=None, limit=100):
|
||||
if not args:
|
||||
args=[]
|
||||
if not context:
|
||||
@@ -81,7 +81,7 @@ class CountryState(osv.osv):
|
||||
help='The state code in three chars.\n', required=True),
|
||||
}
|
||||
def name_search(self, cr, user, name='', args=None, operator='ilike',
|
||||
context=None, limit=80):
|
||||
context=None, limit=100):
|
||||
if not args:
|
||||
args = []
|
||||
if not context:
|
||||
|
||||
@@ -199,7 +199,7 @@ class res_partner(osv.osv):
|
||||
res = [(r['id'], r[rec_name]) for r in self.read(cr, uid, ids, [rec_name], context)]
|
||||
return res
|
||||
|
||||
def name_search(self, cr, uid, name, args=None, operator='ilike', context=None, limit=80):
|
||||
def name_search(self, cr, uid, name, args=None, operator='ilike', context=None, limit=100):
|
||||
if not args:
|
||||
args=[]
|
||||
if not context:
|
||||
@@ -317,7 +317,7 @@ class res_partner_address(osv.osv):
|
||||
res.append((r['id'], addr.strip() or '/'))
|
||||
return res
|
||||
|
||||
def name_search(self, cr, user, name, args=None, operator='ilike', context=None, limit=80):
|
||||
def name_search(self, cr, user, name, args=None, operator='ilike', context=None, limit=100):
|
||||
if not args:
|
||||
args=[]
|
||||
if not context:
|
||||
|
||||
@@ -96,7 +96,6 @@
|
||||
<field name="function"/>
|
||||
<newline/>
|
||||
<group string="Postal Address" colspan="2" col="2">
|
||||
<field name="type" select="2" />
|
||||
<field name="street" select="2"/>
|
||||
<field name="street2"/>
|
||||
<field name="zip" select="2"/>
|
||||
@@ -105,6 +104,7 @@
|
||||
<field name="state_id" select="2"/>
|
||||
</group>
|
||||
<group string="Communication" colspan="2" col="2">
|
||||
<field name="type" select="2" />
|
||||
<field name="phone"/>
|
||||
<field name="fax"/>
|
||||
<field name="mobile" select="2"/>
|
||||
@@ -255,12 +255,14 @@
|
||||
<page string="General">
|
||||
<field colspan="4" mode="form,tree" name="address" nolabel="1" select="1" height="260">
|
||||
<form string="Partner Contacts">
|
||||
<field name="name" select="2"/>
|
||||
<field domain="[('domain', '=', 'contact')]" name="title" string="Type"/>
|
||||
<field name="function"/>
|
||||
<group colspan="4" col="4">
|
||||
<field name="name" select="2"/>
|
||||
<field domain="[('domain', '=', 'contact')]" name="title" string="Type"/>
|
||||
<field name="function"/>
|
||||
<field name="type" select="2" colspan="4"/>
|
||||
</group>
|
||||
<newline/>
|
||||
<group string="Postal Address" colspan="2" col="4">
|
||||
<field name="type" select="2" colspan="4"/>
|
||||
<field name="street" select="2" colspan="4"/>
|
||||
<field name="street2" colspan="4"/>
|
||||
<field name="zip" select="2"/>
|
||||
@@ -295,7 +297,7 @@
|
||||
<field name="website" widget="url"/>
|
||||
<field name="date" select="2"/>
|
||||
<field name="parent_id"/>
|
||||
<field name="company_id" groups="base.group_extended" widget="selection"/>
|
||||
<field name="company_id" groups="base.group_multi_company" widget="selection"/>
|
||||
<newline/>
|
||||
</page>
|
||||
<page string="History">
|
||||
@@ -317,14 +319,15 @@
|
||||
<field name="arch" type="xml">
|
||||
<search string="Search Partner">
|
||||
<group col='10' colspan='4'>
|
||||
<filter string="My Partners" icon="terp-partner" domain="[('parent_id','!=',False)]"/>
|
||||
<separator orientation="vertical"/>
|
||||
<filter string="Customers" icon="terp-partner" domain="[('customer','=',1)]" help="Customer Partners"/>
|
||||
<filter string="Suppliers" icon="terp-partner" domain="[('supplier','=',1)]" help="Supplier Partners"/>
|
||||
<filter string="My Partners" icon="terp-partner" domain="[('parent_id','!=',False)]"/>
|
||||
<separator orientation="vertical"/>
|
||||
<field name="name" select='1'/>
|
||||
<field name="country" select='1'/>
|
||||
<filter string="Customers" icon="terp-partner" domain="[('customer','=',1)]" help="Customer Partners"/>
|
||||
<filter string="Suppliers" icon="terp-partner" domain="[('supplier','=',1)]" help="Supplier Partners"/>
|
||||
<separator orientation="vertical"/>
|
||||
<field name="name" select="1"/>
|
||||
<field name="country" select="1"/>
|
||||
<field name="address" select="1"/>
|
||||
<field name="category_id" select="1"/>
|
||||
</group>
|
||||
</search>
|
||||
</field>
|
||||
|
||||
@@ -19,13 +19,58 @@
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
from osv import fields,osv
|
||||
from osv import osv
|
||||
from osv import fields
|
||||
import os
|
||||
import tools
|
||||
from tools.translate import _
|
||||
|
||||
|
||||
class multi_company_default(osv.osv):
|
||||
"""
|
||||
Manage multi company default value
|
||||
"""
|
||||
_name = 'multi_company.default'
|
||||
_description = 'Default multi company'
|
||||
_order = 'company_id,sequence,id'
|
||||
|
||||
_columns = {
|
||||
'sequence': fields.integer('Sequence'),
|
||||
'name': fields.char('Name', size=32, required=True, help='Name it to easily find a record'),
|
||||
'company_id': fields.many2one('res.company', 'Main Company', required=True,
|
||||
help='Company where the user is connected'),
|
||||
'company_dest_id': fields.many2one('res.company', 'Default Company', required=True,
|
||||
help='Company to store the current record'),
|
||||
'object_id': fields.many2one('ir.model', 'Object', required=True,
|
||||
help='Object affect by this rules'),
|
||||
'expression': fields.char('Expression', size=32, required=True,
|
||||
help='Expression, must be True to match'),
|
||||
}
|
||||
|
||||
_defaults = {
|
||||
'expression': lambda *a: 'True',
|
||||
'sequence': lambda *a: 100,
|
||||
}
|
||||
|
||||
def copy(self, cr, uid, id, default=None, context=None):
|
||||
"""
|
||||
Add (copy) in the name when duplicate record
|
||||
"""
|
||||
if not context:
|
||||
context = {}
|
||||
if not default:
|
||||
default = {}
|
||||
company = self.browse(cr, uid, id, context=context)
|
||||
default = default.copy()
|
||||
default['name'] = company.name + _(' (copy)')
|
||||
return super(multi_company_default, self).copy(cr, uid, id, default, context=context)
|
||||
|
||||
multi_company_default()
|
||||
|
||||
|
||||
class res_company(osv.osv):
|
||||
_name = "res.company"
|
||||
|
||||
_description = 'Companies'
|
||||
_columns = {
|
||||
'name': fields.char('Company Name', size=64, required=True),
|
||||
'parent_id': fields.many2one('res.company', 'Parent Company', select=True),
|
||||
@@ -38,13 +83,25 @@ class res_company(osv.osv):
|
||||
'rml_header2' : fields.text('RML Internal Header'),
|
||||
'logo' : fields.binary('Logo'),
|
||||
'currency_id': fields.many2one('res.currency', 'Currency', required=True),
|
||||
'currency_ids': fields.one2many('res.currency', 'company_id', 'Currency')
|
||||
'currency_ids': fields.one2many('res.currency', 'company_id', 'Currency'),
|
||||
'user_ids': fields.many2many('res.users', 'res_company_users_rel', 'cid', 'user_id', 'Accepted Users')
|
||||
}
|
||||
|
||||
|
||||
def _company_default_get(self, cr, uid, object=False, context={}):
|
||||
|
||||
|
||||
def _company_default_get(self, cr, uid, object=False, context=None):
|
||||
"""
|
||||
Check if the object for this company have a default value
|
||||
"""
|
||||
if not context:
|
||||
context = {}
|
||||
proxy = self.pool.get('multi_company.default')
|
||||
ids = proxy.search(cr, uid, [('object_id.model', '=', object)])
|
||||
for rule in proxy.browse(cr, uid, ids, context):
|
||||
user = self.pool.get('res.users').browse(cr, uid, uid)
|
||||
if eval(rule.expression, {'context': context, 'user': user}):
|
||||
return rule.company_dest_id.id
|
||||
return self.pool.get('res.users').browse(cr, uid, uid).company_id.id
|
||||
|
||||
|
||||
def _get_child_ids(self, cr, uid, uid2, context={}):
|
||||
company = self.pool.get('res.users').company_get(cr, uid, uid2)
|
||||
ids = self._get_company_children(cr, uid, company)
|
||||
@@ -94,7 +151,7 @@ class res_company(osv.osv):
|
||||
return self.pool.get('res.currency').search(cr, uid, [])[0]
|
||||
except:
|
||||
return False
|
||||
|
||||
|
||||
def _check_recursion(self, cr, uid, ids):
|
||||
level = 100
|
||||
while len(ids):
|
||||
@@ -104,7 +161,7 @@ class res_company(osv.osv):
|
||||
return False
|
||||
level -= 1
|
||||
return True
|
||||
|
||||
|
||||
def _get_header2(self,cr,uid,ids):
|
||||
return """
|
||||
<header>
|
||||
@@ -175,6 +232,5 @@ class res_company(osv.osv):
|
||||
|
||||
res_company()
|
||||
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||
|
||||
|
||||
@@ -0,0 +1,75 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<openerp>
|
||||
<data>
|
||||
|
||||
<record id="view_inventory_tree" model="ir.ui.view">
|
||||
<field name="name">multi_company.default.tree</field>
|
||||
<field name="model">multi_company.default</field>
|
||||
<field name="type">tree</field>
|
||||
<field name="priority" eval="8"/>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Multi Company">
|
||||
<field name="company_id" groups="base.group_multi_company"/>
|
||||
<field name="object_id"/>
|
||||
<field name="expression" />
|
||||
<field name="sequence"/>
|
||||
<field name="company_dest_id"/>
|
||||
<field name="name"/>
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
<record id="view_inventory_form" model="ir.ui.view">
|
||||
<field name="name">multi_company.default.form</field>
|
||||
<field name="model">multi_company.default</field>
|
||||
<field name="type">form</field>
|
||||
<field name="priority" eval="8"/>
|
||||
<field name="arch" type="xml">
|
||||
<form string="Multi Company">
|
||||
<group col="6" colspan="4">
|
||||
<field name="name" colspan="6"/>
|
||||
<separator string="Matching" colspan="6"/>
|
||||
<field name="company_id" groups="base.group_multi_company"/>
|
||||
<field name="object_id"/>
|
||||
<field name="company_dest_id"/>
|
||||
<separator string="Condition" colspan="6"/>
|
||||
<field name="expression" colspan="4"/>
|
||||
<field name="sequence"/>
|
||||
</group>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="view_inventory_search" model="ir.ui.view">
|
||||
<field name="name">multi_company.default.search</field>
|
||||
<field name="model">multi_company.default</field>
|
||||
<field name="type">search</field>
|
||||
<field name="priority" eval="8"/>
|
||||
<field name="arch" type="xml">
|
||||
<search string="Multi Company">
|
||||
<field name="name" select="1"/>
|
||||
<field name="company_id" select="1" widget="selection"/>
|
||||
<field name="company_dest_id" select="1" widget="selection"/>
|
||||
<field name="object_id" select="1"/>
|
||||
</search>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="action_inventory_form" model="ir.actions.act_window">
|
||||
<field name="name">Default Company per Object</field>
|
||||
<field name="type">ir.actions.act_window</field>
|
||||
<field name="res_model">multi_company.default</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="search_view_id" ref="view_inventory_search"/>
|
||||
</record>
|
||||
|
||||
<menuitem id="menu_custom_multicompany"
|
||||
name="Multi company"
|
||||
parent="base.menu_custom"
|
||||
sequence="50"/>
|
||||
|
||||
<menuitem id="menu_action_inventory_form"
|
||||
action="action_inventory_form"
|
||||
parent="menu_custom_multicompany"/>
|
||||
</data>
|
||||
</openerp>
|
||||
|
||||
@@ -123,7 +123,7 @@ class res_currency(osv.osv):
|
||||
else:
|
||||
return (from_amount * rate)
|
||||
|
||||
def name_search(self, cr, uid, name, args=[], operator='ilike', context={}, limit=80):
|
||||
def name_search(self, cr, uid, name, args=[], operator='ilike', context={}, limit=100):
|
||||
args2 = args[:]
|
||||
if name:
|
||||
args += [('name', operator, name)]
|
||||
|
||||
@@ -57,12 +57,22 @@
|
||||
</field>
|
||||
</record>
|
||||
<record id="res_request-act" model="ir.actions.act_window">
|
||||
<field name="name">Requests</field>
|
||||
<field name="name">My Requests</field>
|
||||
<field name="type">ir.actions.act_window</field>
|
||||
<field name="res_model">res.request</field>
|
||||
<field name="view_id" eval="False"/>
|
||||
</record>
|
||||
<menuitem id="next_id_12" name="Requests" parent="base.next_id_4"/><menuitem action="res_request-act" id="menu_res_request_act" parent="next_id_12"/>
|
||||
<menuitem id="next_id_12" name="Requests" parent="base.next_id_4"/>
|
||||
<menuitem action="res_request-act" id="menu_res_request_act" parent="next_id_12"/>
|
||||
|
||||
<record id="res_request-closed" model="ir.actions.act_window">
|
||||
<field name="name">My Closed Requests</field>
|
||||
<field name="type">ir.actions.act_window</field>
|
||||
<field name="res_model">res.request</field>
|
||||
<field name="domain">[('active','=',False)]</field>
|
||||
<field name="view_id" eval="False"/>
|
||||
</record>
|
||||
<menuitem action="res_request-closed" id="next_id_12_close" parent="menu_res_request_act"/>
|
||||
|
||||
<record id="res_request_link-view" model="ir.ui.view">
|
||||
<field name="name">res.request.link.form</field>
|
||||
|
||||
@@ -139,8 +139,8 @@ class users(osv.osv):
|
||||
'groups_id': fields.many2many('res.groups', 'res_groups_users_rel', 'uid', 'gid', 'Groups'),
|
||||
'roles_id': fields.many2many('res.roles', 'res_roles_users_rel', 'uid', 'rid', 'Roles'),
|
||||
'rules_id': fields.many2many('ir.rule.group', 'user_rule_group_rel', 'user_id', 'rule_group_id', 'Rules'),
|
||||
'company_id': fields.many2one('res.company', 'Company'),
|
||||
'company_ids':fields.many2many('res.company','res_company_users_rel','user_id','cid','Accepted Companies'),
|
||||
'company_id': fields.many2one('res.company', 'Company', help="The company this user is currently working on.", required=True),
|
||||
'company_ids':fields.many2many('res.company','res_company_users_rel','user_id','cid','Accepted Companies'),
|
||||
'context_lang': fields.selection(_lang_get, 'Language', required=True),
|
||||
'context_tz': fields.selection(_tz_get, 'Timezone', size=64),
|
||||
'company': fields.selection(_companies_get, 'Company', size=64),
|
||||
@@ -208,9 +208,6 @@ class users(osv.osv):
|
||||
ok=False
|
||||
if ok:
|
||||
uid = 1
|
||||
context_company=values.get('company',False)
|
||||
if context_company:
|
||||
values.update({'company_id':context_company})
|
||||
res = super(users, self).write(cr, uid, ids, values, *args, **argv)
|
||||
self.company_get.clear_cache(cr.dbname)
|
||||
# Restart the cache on the company_get method
|
||||
@@ -223,7 +220,7 @@ class users(osv.osv):
|
||||
raise osv.except_osv(_('Can not remove root user!'), _('You can not remove the admin user as it is used internally for resources created by OpenERP (updates, module installation, ...)'))
|
||||
return super(users, self).unlink(cr, uid, ids, context=context)
|
||||
|
||||
def name_search(self, cr, user, name='', args=None, operator='ilike', context=None, limit=80):
|
||||
def name_search(self, cr, user, name='', args=None, operator='ilike', context=None, limit=100):
|
||||
if not args:
|
||||
args=[]
|
||||
if not context:
|
||||
@@ -247,6 +244,17 @@ class users(osv.osv):
|
||||
if k.startswith('context_'):
|
||||
result[k[8:]] = getattr(user,k)
|
||||
return result
|
||||
|
||||
|
||||
def _check_company(self, cursor, user, ids):
|
||||
for user in self.browse(cursor, user, ids):
|
||||
if user.company_ids and (user.company_id.id not in map(lambda x: x.id, user.company_ids)):
|
||||
return False
|
||||
return True
|
||||
|
||||
_constraints = [
|
||||
(_check_company, 'This user can not connect using this company !', ['company_id']),
|
||||
]
|
||||
users()
|
||||
|
||||
class config_users(osv.osv_memory):
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0"?>
|
||||
<openerp>
|
||||
<data noupdate="0">
|
||||
<data noupdate="0">
|
||||
|
||||
<!--
|
||||
Users Groups
|
||||
@@ -30,7 +30,7 @@
|
||||
</record>
|
||||
|
||||
<record model="res.groups" id="group_multi_company">
|
||||
<field name="name">MultiCompany/Manager</field>
|
||||
<field name="name">Multi Companies</field>
|
||||
</record>
|
||||
|
||||
<!--
|
||||
@@ -45,36 +45,71 @@
|
||||
</record>
|
||||
|
||||
|
||||
<!-- Set accesses to menu -->
|
||||
<record model="ir.ui.menu" id="base.menu_administration">
|
||||
<field name="groups_id" eval="[(6,0, [ref('group_system'), ref('group_erp_manager')])]"/>
|
||||
</record>
|
||||
<!-- Set accesses to menu -->
|
||||
<record model="ir.ui.menu" id="base.menu_administration">
|
||||
<field name="groups_id" eval="[(6,0, [ref('group_system'), ref('group_erp_manager')])]"/>
|
||||
</record>
|
||||
|
||||
<record id="base.menu_security" model="ir.ui.menu">
|
||||
<field eval="[(6,0,[ref('base.group_erp_manager')])]" name="groups_id"/>
|
||||
</record>
|
||||
<record id="base.menu_security" model="ir.ui.menu">
|
||||
<field eval="[(6,0,[ref('base.group_erp_manager')])]" name="groups_id"/>
|
||||
</record>
|
||||
|
||||
<record id="base.menu_users" model="ir.ui.menu">
|
||||
<field eval="[(6,0,[ref('base.group_erp_manager')])]" name="groups_id"/>
|
||||
</record>
|
||||
<record id="base.menu_users" model="ir.ui.menu">
|
||||
<field eval="[(6,0,[ref('base.group_erp_manager')])]" name="groups_id"/>
|
||||
</record>
|
||||
|
||||
<record id="base.menu_action_currency_form" model="ir.ui.menu">
|
||||
<field eval="[(6,0,[ref('base.group_system')])]" name="groups_id"/>
|
||||
</record>
|
||||
<record id="base.menu_action_currency_form" model="ir.ui.menu">
|
||||
<field eval="[(6,0,[ref('base.group_system')])]" name="groups_id"/>
|
||||
</record>
|
||||
|
||||
<record id="base.menu_custom" model="ir.ui.menu">
|
||||
<field eval="[(6,0,[ref('base.group_system')])]" name="groups_id"/>
|
||||
</record>
|
||||
<record id="base.menu_custom" model="ir.ui.menu">
|
||||
<field eval="[(6,0,[ref('base.group_system')])]" name="groups_id"/>
|
||||
</record>
|
||||
|
||||
<record id="base.menu_translation" model="ir.ui.menu">
|
||||
<!-- FIXME: a "Usability / Translations" group ?? -->
|
||||
<field eval="[(6,0,[ref('base.group_system')])]" name="groups_id"/>
|
||||
</record>
|
||||
<record id="base.menu_translation" model="ir.ui.menu">
|
||||
<!-- FIXME: a "Usability / Translations" group ?? -->
|
||||
<field eval="[(6,0,[ref('base.group_system')])]" name="groups_id"/>
|
||||
</record>
|
||||
|
||||
<record id="base.menu_management" model="ir.ui.menu">
|
||||
<field eval="[(6,0,[ref('base.group_system')])]" name="groups_id"/>
|
||||
</record>
|
||||
<record id="base.menu_management" model="ir.ui.menu">
|
||||
<field eval="[(6,0,[ref('base.group_system')])]" name="groups_id"/>
|
||||
</record>
|
||||
|
||||
</data>
|
||||
|
||||
<record model="ir.rule.group" id="res_partner_address_rule_group">
|
||||
<field name="name">res.partner.address company</field>
|
||||
<field name="model_id" ref="model_res_partner_address"/>
|
||||
<field name="global" eval="True"/>
|
||||
</record>
|
||||
<record model="ir.rule" id="res_partner_address_comp_rule">
|
||||
<field name="field_id" search="[('model','=','res.partner.address'),('name','=','company_id')]" model="ir.model.fields"/>
|
||||
<field name="rule_group" ref="res_partner_address_rule_group"/>
|
||||
<field name="domain_force">[('company_id','child_of',[user.company_id.id])]</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.rule.group" id="res_partner_rule_group">
|
||||
<field name="name">res.partner company</field>
|
||||
<field name="model_id" ref="model_res_partner"/>
|
||||
<field name="global" eval="True"/>
|
||||
</record>
|
||||
<record model="ir.rule" id="res_partner_comp_rule">
|
||||
<field name="field_id" search="[('model','=','res.partner'),('name','=','company_id')]" model="ir.model.fields"/>
|
||||
<field name="rule_group" ref="res_partner_rule_group"/>
|
||||
<field name="domain_force">[('company_id','child_of',[user.company_id.id])]</field>
|
||||
</record>
|
||||
|
||||
|
||||
<record model="ir.rule.group" id="multi_company_default_rule_group">
|
||||
<field name="name">Multi_company_default company</field>
|
||||
<field name="model_id" ref="model_multi_company_default"/>
|
||||
<field name="global" eval="True"/>
|
||||
</record>
|
||||
<record model="ir.rule" id="multi_company_default_comp_rule">
|
||||
<field name="field_id" search="[('model','=','multi_company.default'),('name','=','company_id')]" model="ir.model.fields"/>
|
||||
<field name="rule_group" ref="multi_company_default_rule_group"/>
|
||||
<field name="domain_force">[('company_id','child_of',[user.company_id.id])]</field>
|
||||
</record>
|
||||
|
||||
</data>
|
||||
</openerp>
|
||||
|
||||
|
||||
@@ -132,3 +132,5 @@
|
||||
"access_maintenance_group_user","maintenance_contract group_user","model_maintenance_contract","group_maintenance_manager",1,1,1,1
|
||||
"access_maintenance_contract_module","maintenance.contract.module","model_maintenance_contract_module","group_maintenance_manager",1,1,1,1
|
||||
"access_maintenance_contract_wizard","maintenance.contract.wizard","model_maintenance_contract_wizard","group_maintenance_manager",1,1,1,1
|
||||
"access_multi_company_default user","multi_company_default User","model_multi_company_default","group_user",1,0,0,0
|
||||
"access_multi_company_default manager","multi_company_default Manager","model_multi_company_default","group_erp_manager",1,1,1,1
|
||||
|
||||
|
@@ -208,20 +208,19 @@ def drop_db(uri, dbname):
|
||||
def make_links(uri, uid, dbname, source, destination, module, user, pwd):
|
||||
if module in ('base','quality_integration_server'):
|
||||
return True
|
||||
if not os.path.islink(destination + '/' + module):
|
||||
if not os.path.isdir(destination + '/' + module):
|
||||
for path in source:
|
||||
if os.path.isdir(path + '/' + module):
|
||||
os.symlink(path + '/' + module, destination + '/' + module)
|
||||
obj_conn = xmlrpclib.ServerProxy(uri + '/xmlrpc/object')
|
||||
execute(obj_conn, 'execute', dbname, uid, pwd, 'ir.module.module', 'update_list')
|
||||
module_ids = execute(obj_conn, 'execute', dbname, uid, pwd, 'ir.module.module', 'search', [('name','=',module)])
|
||||
if len(module_ids):
|
||||
data = execute(obj_conn, 'execute', dbname, uid, pwd, 'ir.module.module', 'read', module_ids[0],['name','dependencies_id'])
|
||||
dep_datas = execute(obj_conn, 'execute', dbname, uid, pwd, 'ir.module.module.dependency', 'read', data['dependencies_id'],['name'])
|
||||
for dep_data in dep_datas:
|
||||
make_links(uri, uid, dbname, source, destination, dep_data['name'], user, pwd)
|
||||
return True
|
||||
if os.path.islink(destination + '/' + module):
|
||||
os.unlink(destination + '/' + module)
|
||||
for path in source:
|
||||
if os.path.isdir(path + '/' + module):
|
||||
os.symlink(path + '/' + module, destination + '/' + module)
|
||||
obj_conn = xmlrpclib.ServerProxy(uri + '/xmlrpc/object')
|
||||
execute(obj_conn, 'execute', dbname, uid, pwd, 'ir.module.module', 'update_list')
|
||||
module_ids = execute(obj_conn, 'execute', dbname, uid, pwd, 'ir.module.module', 'search', [('name','=',module)])
|
||||
if len(module_ids):
|
||||
data = execute(obj_conn, 'execute', dbname, uid, pwd, 'ir.module.module', 'read', module_ids[0],['name','dependencies_id'])
|
||||
dep_datas = execute(obj_conn, 'execute', dbname, uid, pwd, 'ir.module.module.dependency', 'read', data['dependencies_id'],['name'])
|
||||
for dep_data in dep_datas:
|
||||
make_links(uri, uid, dbname, source, destination, dep_data['name'], user, pwd)
|
||||
return False
|
||||
|
||||
def install_module(uri, dbname, modules, addons='', extra_addons='', user='admin', pwd='admin'):
|
||||
|
||||
+1
-1
@@ -225,7 +225,7 @@ class Logger(object):
|
||||
|
||||
try:
|
||||
msg = tools.ustr(msg).strip()
|
||||
if level in (LOG_ERROR,LOG_CRITICAL) and tools.config.get_misc('debug','env_info',True):
|
||||
if level in (LOG_ERROR,LOG_CRITICAL) and tools.config.get_misc('debug','env_info',False):
|
||||
msg = common().exp_get_server_environment() + "\n" + msg
|
||||
|
||||
result = msg.split('\n')
|
||||
|
||||
@@ -58,7 +58,8 @@ class expression(object):
|
||||
cr.execute('SELECT "%s"' \
|
||||
' FROM "%s"' \
|
||||
' WHERE "%s" in (%s)' % (s, f, w, ','.join(['%s']*len(subids))),
|
||||
subids)
|
||||
subids)
|
||||
res.extend([r[0] for r in cr.fetchall()])
|
||||
else:
|
||||
cr.execute('SELECT distinct("%s")' \
|
||||
' FROM "%s" where "%s" is not null' % (s, f, s)),
|
||||
|
||||
@@ -785,6 +785,9 @@ class related(function):
|
||||
self.arg = arg
|
||||
self._relations = []
|
||||
super(related, self).__init__(self._fnct_read, arg, self._fnct_write, fnct_inv_arg=arg, method=True, fnct_search=self._fnct_search, **args)
|
||||
if self.store is True:
|
||||
# TODO: improve here to change self.store = {...} according to related objects
|
||||
pass
|
||||
|
||||
def _field_get2(self, cr, uid, obj, context={}):
|
||||
if self._relations:
|
||||
|
||||
+9
-5
@@ -211,6 +211,8 @@ class browse_record(object):
|
||||
raise except_orm('NoDataError', 'Field %s in %s%s'%(name,self._table_name,str(ids)))
|
||||
# create browse records for 'remote' objects
|
||||
for data in datas:
|
||||
if len(str(data['id']).split('-')) > 1:
|
||||
data['id'] = int(str(data['id']).split('-')[0])
|
||||
for n, f in ffields:
|
||||
if f._type in ('many2one', 'one2one'):
|
||||
if data[n]:
|
||||
@@ -1049,9 +1051,10 @@ class orm_template(object):
|
||||
attrs = {'views': views}
|
||||
if node.get('widget') and node.get('widget') == 'selection':
|
||||
# We can not use the 'string' domain has it is defined according to the record !
|
||||
dom = None
|
||||
dom = []
|
||||
if column._domain and not isinstance(column._domain, (str, unicode)):
|
||||
dom = column._domain
|
||||
dom += eval(node.get('domain','[]'), {'uid':user, 'time':time})
|
||||
attrs['selection'] = self.pool.get(relation).name_search(cr, user, '', dom, context=context)
|
||||
if (node.get('required') and not int(node.get('required'))) or not column.required:
|
||||
attrs['selection'].append((False,''))
|
||||
@@ -1451,7 +1454,7 @@ class orm_template(object):
|
||||
def name_get(self, cr, user, ids, context=None):
|
||||
raise _('The name_get method is not implemented on this object !')
|
||||
|
||||
def name_search(self, cr, user, name='', args=None, operator='ilike', context=None, limit=80):
|
||||
def name_search(self, cr, user, name='', args=None, operator='ilike', context=None, limit=100):
|
||||
raise _('The name_search method is not implemented on this object !')
|
||||
|
||||
def copy(self, cr, uid, id, default=None, context=None):
|
||||
@@ -2315,7 +2318,7 @@ class orm(orm_template):
|
||||
if isinstance(ids, (int, long)):
|
||||
select = [ids]
|
||||
else:
|
||||
select = map(int,ids)
|
||||
select = ids
|
||||
|
||||
select = map(lambda x: isinstance(x,dict) and x['id'] or x, select)
|
||||
result = self._read_flat(cr, user, select, fields, context, load)
|
||||
@@ -2348,7 +2351,7 @@ class orm(orm_template):
|
||||
context = {}
|
||||
if not ids:
|
||||
return []
|
||||
|
||||
ids = map(lambda x:int(x), ids)
|
||||
if fields_to_read == None:
|
||||
fields_to_read = self._columns.keys()
|
||||
|
||||
@@ -3163,6 +3166,7 @@ class orm(orm_template):
|
||||
','.join(tables) +qu1 + limit_str + offset_str, qu2)
|
||||
res = cr.fetchall()
|
||||
return res[0][0]
|
||||
|
||||
# execute the "main" query to fetch the ids we were searching for
|
||||
cr.execute('select %s.id from ' % self._table + ','.join(tables) +qu1+' order by '+order_by+limit_str+offset_str, qu2)
|
||||
res = cr.fetchall()
|
||||
@@ -3189,7 +3193,7 @@ class orm(orm_template):
|
||||
return [(r['id'], tools.ustr(r[self._rec_name])) for r in self.read(cr, user, ids,
|
||||
[self._rec_name], context, load='_classic_write')]
|
||||
|
||||
def name_search(self, cr, user, name='', args=None, operator='ilike', context=None, limit=80):
|
||||
def name_search(self, cr, user, name='', args=None, operator='ilike', context=None, limit=100):
|
||||
if not args:
|
||||
args = []
|
||||
if not context:
|
||||
|
||||
@@ -102,7 +102,7 @@ def _eval_xml(self,node, pool, cr, uid, idref, context=None):
|
||||
return eval(a_eval, idref2)
|
||||
except:
|
||||
logger = netsvc.Logger()
|
||||
logger.notifyChannel("init", netsvc.LOG_WARNING, 'could eval(%s) for %s in %s, please get back and fix it!' % (a_eval,node.getAttribute('name'),context))
|
||||
logger.notifyChannel("init", netsvc.LOG_WARNING, 'could eval(%s) for %s in %s, please get back and fix it!' % (a_eval,node.get('name'),context))
|
||||
return ""
|
||||
if t == 'xml':
|
||||
def _process(s, idref):
|
||||
|
||||
Vendored
+6
-5
@@ -8,20 +8,21 @@ msgstr ""
|
||||
"Project-Id-Version: openerp-server 5.0.1-0-2\n"
|
||||
"Report-Msgid-Bugs-To: openerp-server@packages.debian.org\n"
|
||||
"POT-Creation-Date: 2009-08-24 22:41+0300\n"
|
||||
"PO-Revision-Date: 2009-11-26 07:45+0000\n"
|
||||
"Last-Translator: Fernando González de Requena <Unknown>\n"
|
||||
"PO-Revision-Date: 2009-12-08 06:13+0000\n"
|
||||
"Last-Translator: Jordi Esteve - http://www.zikzakmedia.com "
|
||||
"<jesteve@zikzakmedia.com>\n"
|
||||
"Language-Team: Spanish <debian-l10n-spanish@lists.debian.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2009-11-27 04:51+0000\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-09 04:31+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. Type: string
|
||||
#. Description
|
||||
#: ../openerp-server.templates:1001
|
||||
msgid "Dedicated system account for the Open ERP server:"
|
||||
msgstr "Cuenta del sistema dedicada para el servidor Open ERP:"
|
||||
msgstr "Cuenta del sistema dedicada para el servidor OpenERP:"
|
||||
|
||||
#. Type: string
|
||||
#. Description
|
||||
@@ -31,7 +32,7 @@ msgid ""
|
||||
"the system's security is not compromised by running it with superuser "
|
||||
"privileges."
|
||||
msgstr ""
|
||||
"El servidor de Open ERP debe utilizar una cuenta dedicada para su "
|
||||
"El servidor OpenERP debe utilizar una cuenta dedicada para su "
|
||||
"funcionamiento, de tal modo que la seguridad del sistema no se vea "
|
||||
"comprometida por su utilización con privilegios de administración."
|
||||
|
||||
|
||||
Vendored
+41
@@ -0,0 +1,41 @@
|
||||
# Polish translation for openobject-server
|
||||
# Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009
|
||||
# This file is distributed under the same license as the openobject-server package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, 2009.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: openobject-server\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2009-08-24 22:41+0300\n"
|
||||
"PO-Revision-Date: 2009-12-08 06:13+0000\n"
|
||||
"Last-Translator: Fabien (Open ERP) <fp@tinyerp.com>\n"
|
||||
"Language-Team: Polish <pl@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-09 04:31+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. Type: string
|
||||
#. Description
|
||||
#: ../openerp-server.templates:1001
|
||||
msgid "Dedicated system account for the Open ERP server:"
|
||||
msgstr "Konto dedykowane serwerowi OpenERP"
|
||||
|
||||
#. Type: string
|
||||
#. Description
|
||||
#: ../openerp-server.templates:1001
|
||||
msgid ""
|
||||
"The Open ERP server must use a dedicated account for its operation so that "
|
||||
"the system's security is not compromised by running it with superuser "
|
||||
"privileges."
|
||||
msgstr ""
|
||||
"Serwer OpenERP musi używać dedykowanego konta do swoich operacji, aby nie "
|
||||
"obniżać bezpieczeństwa systemu przez stosowanie uprawnień superusera."
|
||||
|
||||
#. Type: string
|
||||
#. Description
|
||||
#: ../openerp-server.templates:1001
|
||||
msgid "Please choose that account's username."
|
||||
msgstr "Wybierz nazę użytkownika dla konta."
|
||||
Vendored
+7
-7
@@ -7,20 +7,20 @@ msgstr ""
|
||||
"Project-Id-Version: openerp-server 5.0.1-0-2\n"
|
||||
"Report-Msgid-Bugs-To: openerp-server@packages.debian.org\n"
|
||||
"POT-Creation-Date: 2009-08-24 22:41+0300\n"
|
||||
"PO-Revision-Date: 2009-11-26 07:45+0000\n"
|
||||
"Last-Translator: Américo Monteiro <Unknown>\n"
|
||||
"PO-Revision-Date: 2009-12-09 23:39+0000\n"
|
||||
"Last-Translator: Paulino <Unknown>\n"
|
||||
"Language-Team: Portuguese <traduz@debianpt.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2009-11-27 04:51+0000\n"
|
||||
"X-Launchpad-Export-Date: 2009-12-10 04:34+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. Type: string
|
||||
#. Description
|
||||
#: ../openerp-server.templates:1001
|
||||
msgid "Dedicated system account for the Open ERP server:"
|
||||
msgstr "Conta dedicada do sistema para o servidor Open ERP:"
|
||||
msgstr "Conta de sistema dedicada para o servidor Open ERP:"
|
||||
|
||||
#. Type: string
|
||||
#. Description
|
||||
@@ -30,12 +30,12 @@ msgid ""
|
||||
"the system's security is not compromised by running it with superuser "
|
||||
"privileges."
|
||||
msgstr ""
|
||||
"O servidor Open ERP tem que usar uma conta dedicada para as suas operações, "
|
||||
"isto para que a segurança do sistema não seja comprometida ao corrê-lo com "
|
||||
"O servidor Open ERP tem de usar uma conta dedicada para as suas operações, "
|
||||
"para que a segurança do sistema não seja comprometida ao corrê-lo com "
|
||||
"privilégios de superutilizador."
|
||||
|
||||
#. Type: string
|
||||
#. Description
|
||||
#: ../openerp-server.templates:1001
|
||||
msgid "Please choose that account's username."
|
||||
msgstr "Por favor escolha o nome dessa conta."
|
||||
msgstr "Por favor escolha o nome de utilizador para essa conta."
|
||||
|
||||
Reference in New Issue
Block a user