[MERGE] merged trunk-server-development branch

bzr revid: hmo@tinyerp.com-20110225075326-qv35g149vegd30h1
This commit is contained in:
Harry (OpenERP)
2011-02-25 13:23:26 +05:30
94 changed files with 559803 additions and 115 deletions
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+2 -2
View File
@@ -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: 2010-09-29 04:47+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"X-Launchpad-Export-Date: 2011-02-16 04:59+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. Type: string
#. Description
+2 -2
View File
@@ -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: 2010-09-29 04:47+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"X-Launchpad-Export-Date: 2011-02-16 04:59+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. Type: string
#. Description
+2 -2
View File
@@ -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: 2010-09-29 04:47+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"X-Launchpad-Export-Date: 2011-02-16 04:59+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. Type: string
#. Description
+2 -2
View File
@@ -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: 2010-09-29 04:47+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"X-Launchpad-Export-Date: 2011-02-16 04:59+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. Type: string
#. Description
+2 -2
View File
@@ -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: 2010-09-29 04:47+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"X-Launchpad-Export-Date: 2011-02-16 04:59+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. Type: string
#. Description
+2 -2
View File
@@ -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: 2010-09-29 04:47+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"X-Launchpad-Export-Date: 2011-02-16 05:00+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. Type: string
#. Description
+4 -4
View File
@@ -9,14 +9,14 @@ msgstr ""
"Report-Msgid-Bugs-To: openerp-server@packages.debian.org\n"
"POT-Creation-Date: 2009-08-24 22:41+0300\n"
"PO-Revision-Date: 2009-12-14 06:11+0000\n"
"Last-Translator: Jordi Esteve (www.zikzakmedia.com) <jesteve@zikzakmedia."
"com>\n"
"Last-Translator: Jordi Esteve (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: 2010-09-29 04:47+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"X-Launchpad-Export-Date: 2011-02-16 05:00+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. Type: string
#. Description
+2 -2
View File
@@ -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: 2011-01-20 04:50+0000\n"
"X-Generator: Launchpad (build 12177)\n"
"X-Launchpad-Export-Date: 2011-02-16 05:00+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. Type: string
#. Description
+3 -3
View File
@@ -9,13 +9,13 @@ msgstr ""
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2009-08-24 22:41+0300\n"
"PO-Revision-Date: 2009-12-27 00:29+0000\n"
"Last-Translator: Cristian Salamea (GnuThink) <ovnicraft@gmail.com>\n"
"Last-Translator: Cristian Salamea (Gnuthink) <ovnicraft@gmail.com>\n"
"Language-Team: Spanish (Ecuador) <es_EC@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: 2010-09-29 04:47+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"X-Launchpad-Export-Date: 2011-02-16 05:00+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. Type: string
#. Description
+3 -3
View File
@@ -9,13 +9,13 @@ msgstr ""
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2009-08-24 22:41+0300\n"
"PO-Revision-Date: 2010-04-11 04:52+0000\n"
"Last-Translator: Sadegh Ismael Nattaj <nat@sethack.com>\n"
"Last-Translator: avion <nat@sethack.com>\n"
"Language-Team: Persian <fa@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: 2010-09-29 04:47+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"X-Launchpad-Export-Date: 2011-02-16 04:59+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. Type: string
#. Description
+2 -2
View File
@@ -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: 2010-09-29 04:47+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"X-Launchpad-Export-Date: 2011-02-16 04:59+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. Type: string
#. Description
+2 -2
View File
@@ -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: 2010-10-14 04:44+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"X-Launchpad-Export-Date: 2011-02-16 04:59+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. Type: string
#. Description
+2 -2
View File
@@ -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: 2010-09-29 04:47+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"X-Launchpad-Export-Date: 2011-02-16 04:59+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. Type: string
#. Description
+39
View File
@@ -0,0 +1,39 @@
# Hebrew translation for openobject-server
# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
# This file is distributed under the same license as the openobject-server package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
#
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: 2011-02-22 19:39+0000\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: Hebrew <he@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: 2011-02-23 04:36+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. Type: string
#. Description
#: ../openerp-server.templates:1001
msgid "Dedicated system account for the Open ERP server:"
msgstr ""
#. 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 ""
#. Type: string
#. Description
#: ../openerp-server.templates:1001
msgid "Please choose that account's username."
msgstr ""
+2 -2
View File
@@ -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: 2010-09-29 04:47+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"X-Launchpad-Export-Date: 2011-02-16 05:00+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. Type: string
#. Description
+2 -2
View File
@@ -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: 2011-01-13 04:40+0000\n"
"X-Generator: Launchpad (build 12177)\n"
"X-Launchpad-Export-Date: 2011-02-16 04:59+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. Type: string
#. Description
+2 -2
View File
@@ -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: 2010-09-29 04:47+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"X-Launchpad-Export-Date: 2011-02-16 04:59+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. Type: string
#. Description
+3 -4
View File
@@ -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: 2010-09-29 04:47+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"X-Launchpad-Export-Date: 2011-02-16 04:59+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. Type: string
#. Description
@@ -30,8 +30,7 @@ msgid ""
"the system's security is not compromised by running it with superuser "
"privileges."
msgstr ""
"Open ERP サーバはその動作について専用のアカウントを使うようになっているため、"
"管理者特権で動作していてもシステムのセキュリティは侵害されません。"
"Open ERP サーバはその動作について専用のアカウントを使うようになっているため、管理者特権で動作していてもシステムのセキュリティは侵害されません。"
#. Type: string
#. Description
+2 -2
View File
@@ -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: 2010-09-30 04:38+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"X-Launchpad-Export-Date: 2011-02-16 04:59+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. Type: string
#. Description
+2 -2
View File
@@ -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: 2010-12-20 04:49+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"X-Launchpad-Export-Date: 2011-02-16 04:59+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. Type: string
#. Description
+2 -2
View File
@@ -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: 2010-09-30 04:38+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"X-Launchpad-Export-Date: 2011-02-16 04:59+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. Type: string
#. Description
+2 -2
View File
@@ -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: 2010-09-29 04:47+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"X-Launchpad-Export-Date: 2011-02-16 04:59+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. Type: string
#. Description
+2 -2
View File
@@ -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: 2010-09-29 04:47+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"X-Launchpad-Export-Date: 2011-02-16 04:59+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. Type: string
#. Description
+2 -2
View File
@@ -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: 2010-09-29 04:47+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"X-Launchpad-Export-Date: 2011-02-16 04:59+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. Type: string
#. Description
+2 -2
View File
@@ -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: 2010-09-29 04:47+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"X-Launchpad-Export-Date: 2011-02-16 05:00+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. Type: string
#. Description
+2 -2
View File
@@ -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: 2010-11-08 05:11+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"X-Launchpad-Export-Date: 2011-02-16 05:00+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. Type: string
#. Description
+2 -2
View File
@@ -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: 2010-12-08 04:48+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"X-Launchpad-Export-Date: 2011-02-16 05:00+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. Type: string
#. Description
+2 -2
View File
@@ -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: 2010-10-22 04:38+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"X-Launchpad-Export-Date: 2011-02-16 05:00+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. Type: string
#. Description
+3269 -2
View File
File diff suppressed because it is too large Load Diff
+2 -2
View File
@@ -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: 2010-11-16 05:05+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"X-Launchpad-Export-Date: 2011-02-16 05:00+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. Type: string
#. Description
+2 -2
View File
@@ -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: 2010-09-29 04:47+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"X-Launchpad-Export-Date: 2011-02-16 05:00+0000\n"
"X-Generator: Launchpad (build 12351)\n"
"X-Poedit-Language: Swedish\n"
#. Type: string
+2 -2
View File
@@ -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: 2010-09-29 04:47+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"X-Launchpad-Export-Date: 2011-02-16 05:00+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. Type: string
#. Description
+2 -2
View File
@@ -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: 2010-09-29 04:47+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"X-Launchpad-Export-Date: 2011-02-16 05:00+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. Type: string
#. Description
+2 -2
View File
@@ -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: 2010-12-15 04:38+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"X-Launchpad-Export-Date: 2011-02-16 05:00+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. Type: string
#. Description
+3 -5
View File
@@ -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: 2010-09-29 04:47+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
"X-Launchpad-Export-Date: 2011-02-16 05:00+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. Type: string
#. Description
@@ -29,9 +29,7 @@ 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 ""
"Open ERP 服务器必须使用一个专用的账户来进行操作,这样就不会因为使用超级用户权"
"限运行而破坏系统的安全。"
msgstr "Open ERP 服务器必须使用一个专用的账户来进行操作,这样就不会因为使用超级用户权限运行而破坏系统的安全。"
#. Type: string
#. Description
+2 -2
View File
@@ -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: 2011-01-27 04:34+0000\n"
"X-Generator: Launchpad (build 12177)\n"
"X-Launchpad-Export-Date: 2011-02-16 05:00+0000\n"
"X-Generator: Launchpad (build 12351)\n"
"X-Poedit-Country: TAIWAN\n"
"X-Poedit-Language: Chinese\n"
"X-Poedit-SourceCharset: utf-8\n"
+7 -7
View File
@@ -1086,7 +1086,7 @@
</record>
<record id="VEB" model="res.currency">
<field name="name">Bs</field>
<field name="name">VEB</field>
<field name="symbol">Bs</field>
<field name="rounding">2.95</field>
<field name="accuracy">4</field>
@@ -1166,7 +1166,7 @@
</record>
<record id="CZK" model="res.currency">
<field name="name">Kč</field>
<field name="name">CZK</field>
<field name="symbol">Kč</field>
<field name="rounding">0.01</field>
<field name="accuracy">4</field>
@@ -1193,7 +1193,7 @@
<record id="HUF" model="res.currency">
<field name="name">Ft</field>
<field name="name">HUF</field>
<field name="symbol">Ft</field>
<field name="rounding">0.01</field>
<field name="accuracy">4</field>
@@ -1206,7 +1206,7 @@
</record>
<record id="IDR" model="res.currency">
<field name="name">Rp</field>
<field name="name">IDR</field>
<field name="symbol">Rp</field>
<field name="rounding">0.01</field>
<field name="accuracy">4</field>
@@ -1224,7 +1224,7 @@
</record>
<record id="LVL" model="res.currency">
<field name="name">Ls</field>
<field name="name">LVL</field>
<field name="symbol">Ls</field>
<field name="rounding">0.01</field>
<field name="accuracy">4</field>
@@ -1277,7 +1277,7 @@
</record>
<record id="PLN" model="res.currency">
<field name="name">zł</field>
<field name="name">PLN</field>
<field name="symbol">zł</field>
<field name="rounding">0.01</field>
<field name="accuracy">4</field>
@@ -1329,7 +1329,7 @@
</record>
<record id="INR" model="res.currency">
<field name="name">Rs</field>
<field name="name">INR</field>
<field name="symbol">Rs</field>
<field name="rounding">0.01</field>
<field name="accuracy">4</field>
+34 -14
View File
@@ -19,6 +19,8 @@
#
##############################################################################
import itertools
from osv import fields,osv
from osv.orm import except_orm
import tools
@@ -40,17 +42,17 @@ class ir_attachment(osv.osv):
for rmod, rid in cr.fetchall():
if not (rmod and rid):
continue
res_ids.setdefault(rmod,[]).append(rid)
res_ids.setdefault(rmod,set()).add(rid)
if values:
if 'res_model' in values and 'res_id' in values:
res_ids.setdefault(values['res_model'],[]).append(values['res_id'])
res_ids.setdefault(values['res_model'],set()).add(values['res_id'])
for model, mids in res_ids.items():
# ignore attachments that are not attached to a resource anymore when checking access rights
# (resource was deleted but attachment was not)
cr.execute('select id from '+self.pool.get(model)._table+' where id in %s', (tuple(mids),))
mids = [x[0] for x in cr.fetchall()]
ima.check(cr, uid, model, mode, context=context)
self.pool.get(model).check_access_rule(cr, uid, mids, mode, context=context)
def search(self, cr, uid, args, offset=0, limit=None, order=None,
@@ -62,17 +64,35 @@ class ir_attachment(osv.osv):
if count:
return 0
return []
models = super(ir_attachment,self).read(cr, uid, ids, ['id', 'res_model'])
cache = {}
ima = self.pool.get('ir.model.access')
for m in models:
if m['res_model']:
if m['res_model'] not in cache:
cache[m['res_model']] = ima.check(cr, uid, m['res_model'], 'read',
raise_exception=False, context=context)
if not cache[m['res_model']]:
ids.remove(m['id'])
# For attachments, the permissions of the document they are attached to
# apply, so we must remove attachments for which the user cannot access
# the linked document.
targets = super(ir_attachment,self).read(cr, uid, ids, ['id', 'res_model', 'res_id'])
model_attachments = {}
for target_dict in targets:
if not (target_dict['res_id'] and target_dict['res_model']):
continue
# model_attachments = { 'model': { 'res_id': [id1,id2] } }
model_attachments.setdefault(target_dict['res_model'],{}).setdefault(target_dict['res_id'],set()).add(target_dict['id'])
# To avoid multiple queries for each attachment found, checks are
# performed in batch as much as possible.
ima = self.pool.get('ir.model.access')
for model, targets in model_attachments.iteritems():
if not ima.check(cr, uid, model, 'read', raise_exception=False, context=context):
# remove all corresponding attachment ids
for attach_id in itertools.chain(*targets.values()):
ids.remove(attach_id)
continue # skip ir.rule processing, these ones are out already
# filter ids according to what access rules permit
target_ids = targets.keys()
allowed_ids = self.pool.get(model).search(cr, uid, [('id', 'in', target_ids)], context=context)
disallowed_ids = set(target_ids).difference(allowed_ids)
for res_id in disallowed_ids:
for attach_id in targets[res_id]:
ids.remove(attach_id)
if count:
return len(ids)
return ids
@@ -135,7 +155,7 @@ class ir_attachment(osv.osv):
'create_uid': fields.many2one('res.users', 'Owner', readonly=True),
'company_id': fields.many2one('res.company', 'Company', change_default=True),
}
_defaults = {
'type': 'binary',
'company_id': lambda s,cr,uid,c: s.pool.get('res.company')._company_default_get(cr, uid, 'ir.attachment', context=c),
+15 -6
View File
@@ -149,22 +149,31 @@ class ir_cron(osv.osv, netsvc.Agent):
# Reschedule cron processing job asap, but not in the current thread
self.setAlarm(self._poolJobs, time.time(), dbname, dbname)
def update_running_cron(self, cr):
# Verify whether the server is already started and thus whether we need to commit
# immediately our changes and restart the cron agent in order to apply the change
# immediately. The commit() is needed because as soon as the cron is (re)started it
# will query the database with its own cursor, possibly before the end of the
# current transaction.
# This commit() is not an issue in most cases, but we must absolutely avoid it
# when the server is only starting or loading modules (hence the test on pool._init).
if not self.pool._init:
cr.commit()
self.restart(cr.dbname)
def create(self, cr, uid, vals, context=None):
res = super(ir_cron, self).create(cr, uid, vals, context=context)
cr.commit()
self.restart(cr.dbname)
self.update_running_cron(cr)
return res
def write(self, cr, user, ids, vals, context=None):
res = super(ir_cron, self).write(cr, user, ids, vals, context=context)
cr.commit()
self.restart(cr.dbname)
self.update_running_cron(cr)
return res
def unlink(self, cr, uid, ids, context=None):
res = super(ir_cron, self).unlink(cr, uid, ids, context=context)
cr.commit()
self.restart(cr.dbname)
self.update_running_cron(cr)
return res
ir_cron()
+3 -2
View File
@@ -47,8 +47,9 @@ class res_currency(osv.osv):
_name = "res.currency"
_description = "Currency"
_columns = {
'name': fields.char('Currency', size=32, required=True),
'symbol': fields.char('Symbol', size=3),
# Note: 'code' column was removed as of v6.0, the 'name' should now hold the ISO code.
'name': fields.char('Currency', size=32, required=True, help="Currency Code (ISO 4217)"),
'symbol': fields.char('Symbol', size=3, help="Currency sign, to be used when printing amounts"),
'rate': fields.function(_current_rate, method=True, string='Current Rate', digits=(12,6),
help='The rate of the currency to the currency of rate 1'),
'rate_ids': fields.one2many('res.currency.rate', 'currency_id', 'Rates'),
+11 -7
View File
@@ -240,6 +240,13 @@ class browse_record(object):
# testing to be sure we got the right
# object and not the parent one.
if not isinstance(value, browse_record):
if obj is None:
# In some cases the target model is not available yet, so we must ignore it,
# which is safe in most cases, this value will just be loaded later when needed.
# This situation can be caused by custom fields that connect objects with m2o without
# respecting module dependencies, causing relationships to be connected to soon when
# the target is not loaded yet.
continue
new_data[field_name] = browse_record(self._cr,
self._uid, value, obj, self._cache,
context=self._context,
@@ -272,7 +279,7 @@ class browse_record(object):
self._data[result_line['id']].update(new_data)
if not name in self._data[self._id]:
#how did this happen?
# How did this happen? Could be a missing model due to custom fields used too soon, see above.
self.logger.notifyChannel("browse_record", netsvc.LOG_ERROR,
"Fields to fetch: %s, Field values: %s"%(field_names, field_values))
self.logger.notifyChannel("browse_record", netsvc.LOG_ERROR,
@@ -1546,12 +1553,9 @@ class orm_template(object):
view_id = view_ref_res[0]
if view_id:
query = "SELECT arch,name,field_parent,id,type,inherit_id,model FROM ir_ui_view WHERE id=%s"
params = (view_id,)
if model:
query += " AND model=%s"
params += (self._name,)
cr.execute(query, params)
cr.execute("""SELECT arch,name,field_parent,id,type,inherit_id,model
FROM ir_ui_view
WHERE id=%s""", (view_id,))
else:
cr.execute('''SELECT
arch,name,field_parent,id,type,inherit_id,model