[MERGE] Merged latest trunk.
bzr revid: vta@openerp.com-20120830070501-qy3am8pj7q3xm0oi
This commit is contained in:
@@ -1,16 +1,16 @@
|
||||
{
|
||||
"name" : "Web",
|
||||
"category": "Hidden",
|
||||
"description":
|
||||
'name': 'Web',
|
||||
'category': 'Hidden',
|
||||
'description':
|
||||
"""
|
||||
OpenERP Web core module.
|
||||
========================
|
||||
|
||||
This module provides the core of the OpenERP Web Client.
|
||||
""",
|
||||
"depends" : [],
|
||||
'depends': [],
|
||||
'auto_install': True,
|
||||
'post_load' : 'wsgi_postload',
|
||||
'post_load': 'wsgi_postload',
|
||||
'js' : [
|
||||
"static/lib/datejs/globalization/en-US.js",
|
||||
"static/lib/datejs/core.js",
|
||||
@@ -68,5 +68,60 @@ This module provides the core of the OpenERP Web Client.
|
||||
],
|
||||
'qweb' : [
|
||||
"static/src/xml/*.xml",
|
||||
'static/lib/datejs/globalization/en-US.js',
|
||||
'static/lib/datejs/core.js',
|
||||
'static/lib/datejs/parser.js',
|
||||
'static/lib/datejs/sugarpak.js',
|
||||
'static/lib/datejs/extras.js',
|
||||
'static/lib/jquery/jquery-1.7.2.js',
|
||||
'static/lib/jquery.MD5/jquery.md5.js',
|
||||
'static/lib/jquery.form/jquery.form.js',
|
||||
'static/lib/jquery.validate/jquery.validate.js',
|
||||
'static/lib/jquery.ba-bbq/jquery.ba-bbq.js',
|
||||
'static/lib/spinjs/spin.js',
|
||||
'static/lib/jquery.blockUI/jquery.blockUI.js',
|
||||
'static/lib/jquery.ui/js/jquery-ui-1.8.17.custom.min.js',
|
||||
'static/lib/jquery.ui.timepicker/js/jquery-ui-timepicker-addon.js',
|
||||
'static/lib/jquery.ui.notify/js/jquery.notify.js',
|
||||
'static/lib/jquery.deferred-queue/jquery.deferred-queue.js',
|
||||
'static/lib/jquery.scrollTo/jquery.scrollTo-min.js',
|
||||
'static/lib/jquery.tipsy/jquery.tipsy.js',
|
||||
'static/lib/jquery.textext/jquery.textext.js',
|
||||
'static/lib/jquery.timeago/jquery.timeago.js',
|
||||
'static/lib/qweb/qweb2.js',
|
||||
'static/lib/underscore/underscore.js',
|
||||
'static/lib/underscore/underscore.string.js',
|
||||
'static/lib/backbone/backbone.js',
|
||||
'static/lib/cleditor/jquery.cleditor.js',
|
||||
'static/lib/py.js/lib/py.js',
|
||||
'static/src/js/boot.js',
|
||||
'static/src/js/corelib.js',
|
||||
'static/src/js/coresetup.js',
|
||||
'static/src/js/dates.js',
|
||||
'static/src/js/formats.js',
|
||||
'static/src/js/chrome.js',
|
||||
'static/src/js/views.js',
|
||||
'static/src/js/data.js',
|
||||
'static/src/js/data_export.js',
|
||||
'static/src/js/data_import.js',
|
||||
'static/src/js/search.js',
|
||||
'static/src/js/view_form.js',
|
||||
'static/src/js/view_list.js',
|
||||
'static/src/js/view_list_editable.js',
|
||||
'static/src/js/view_tree.js',
|
||||
],
|
||||
'css': [
|
||||
'static/lib/jquery.ui.bootstrap/css/custom-theme/jquery-ui-1.8.16.custom.css',
|
||||
'static/lib/jquery.ui.timepicker/css/jquery-ui-timepicker-addon.css',
|
||||
'static/lib/jquery.ui.notify/css/ui.notify.css',
|
||||
'static/lib/jquery.tipsy/tipsy.css',
|
||||
'static/lib/jquery.textext/jquery.textext.css',
|
||||
'static/src/css/base.css',
|
||||
'static/src/css/data_export.css',
|
||||
'static/src/css/data_import.css',
|
||||
'static/lib/cleditor/jquery.cleditor.css',
|
||||
],
|
||||
'qweb': [
|
||||
'static/src/xml/*.xml',
|
||||
],
|
||||
}
|
||||
|
||||
@@ -104,12 +104,6 @@ class OpenERPSession(object):
|
||||
del state['config']
|
||||
return state
|
||||
|
||||
def openerp_entreprise(self):
|
||||
if not self._uid:
|
||||
return False
|
||||
else:
|
||||
return self.model('publisher_warranty.contract').status()['status'] == 'full'
|
||||
|
||||
def build_connection(self):
|
||||
conn = openerplib.Connection(self.config.connector, database=self._db, login=self._login,
|
||||
user_id=self._uid, password=self._password)
|
||||
|
||||
@@ -806,7 +806,6 @@ class Session(openerpweb.Controller):
|
||||
"context": req.session.get_context() if req.session._uid else {},
|
||||
"db": req.session._db,
|
||||
"login": req.session._login,
|
||||
"openerp_entreprise": req.session.openerp_entreprise(),
|
||||
}
|
||||
|
||||
@openerpweb.jsonrequest
|
||||
|
||||
@@ -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: 2012-08-15 04:49+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:22+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:49+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:22+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:49+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:22+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:49+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:22+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:49+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:22+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:49+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:22+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
"X-Poedit-Language: Czech\n"
|
||||
|
||||
#. openerp-web
|
||||
|
||||
@@ -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: 2012-08-15 04:49+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:22+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:49+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:22+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:49+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
"Language: es\n"
|
||||
|
||||
#. openerp-web
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:49+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:22+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:49+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:22+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:49+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:22+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:49+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:22+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:49+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:22+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:49+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:22+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:49+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:22+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:49+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
+98
-67
@@ -8,14 +8,14 @@ msgstr ""
|
||||
"Project-Id-Version: openerp-web\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-07-02 09:06+0200\n"
|
||||
"PO-Revision-Date: 2012-06-04 12:04+0000\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"PO-Revision-Date: 2012-08-24 09:16+0000\n"
|
||||
"Last-Translator: Herczeg Péter <herczegp@gmail.com>\n"
|
||||
"Language-Team: Hungarian <hu@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: 2012-08-15 04:49+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
@@ -124,7 +124,7 @@ msgstr "Névjegy"
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:1052
|
||||
msgid "OpenERP - Unsupported/Community Version"
|
||||
msgstr ""
|
||||
msgstr "OpenERP - Támogatás nélküli / Közösségi verzió"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/coresetup.js:619
|
||||
@@ -189,7 +189,7 @@ msgstr ""
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/data_export.js:6
|
||||
msgid "Export Data"
|
||||
msgstr ""
|
||||
msgstr "Adatok exportálása"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/data_export.js:19
|
||||
@@ -200,12 +200,12 @@ msgstr ""
|
||||
#: addons/web/static/src/js/view_form.js:3298
|
||||
#: addons/web/static/src/js/views.js:968
|
||||
msgid "Close"
|
||||
msgstr ""
|
||||
msgstr "Bezárás"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/data_export.js:20
|
||||
msgid "Export To File"
|
||||
msgstr ""
|
||||
msgstr "Exportálás fájlba"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/data_export.js:126
|
||||
@@ -220,17 +220,17 @@ msgstr ""
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/data_export.js:375
|
||||
msgid "Please select fields to export..."
|
||||
msgstr ""
|
||||
msgstr "Kérjük válassza ki az exportálandó mezőket..."
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/data_import.js:34
|
||||
msgid "Import Data"
|
||||
msgstr ""
|
||||
msgstr "Adatok importálása"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/data_import.js:71
|
||||
msgid "Import File"
|
||||
msgstr ""
|
||||
msgstr "Fájl importálása"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/data_import.js:106
|
||||
@@ -247,7 +247,7 @@ msgstr ""
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/data_import.js:383
|
||||
msgid "*Required Fields are not selected :"
|
||||
msgstr ""
|
||||
msgstr "*Szükséges mezők nincsennek kiválasztva:"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/formats.js:139
|
||||
@@ -298,12 +298,12 @@ msgstr ""
|
||||
#: addons/web/static/src/js/search.js:1108
|
||||
#, python-format
|
||||
msgid "Group by: %s"
|
||||
msgstr ""
|
||||
msgstr "Csoportosítás: %s"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/search.js:1132
|
||||
msgid "GroupBy"
|
||||
msgstr ""
|
||||
msgstr "Csoportosítás"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/search.js:1267
|
||||
@@ -357,12 +357,12 @@ msgstr ""
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/search.js:1341
|
||||
msgid "contains"
|
||||
msgstr ""
|
||||
msgstr "tartalmazza"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/search.js:1342
|
||||
msgid "doesn't contain"
|
||||
msgstr ""
|
||||
msgstr "nem tartalmazza"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/search.js:1343
|
||||
@@ -371,7 +371,7 @@ msgstr ""
|
||||
#: addons/web/static/src/js/search.js:1401
|
||||
#: addons/web/static/src/js/search.js:1424
|
||||
msgid "is equal to"
|
||||
msgstr ""
|
||||
msgstr "egyenlő"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/search.js:1344
|
||||
@@ -380,7 +380,7 @@ msgstr ""
|
||||
#: addons/web/static/src/js/search.js:1402
|
||||
#: addons/web/static/src/js/search.js:1425
|
||||
msgid "is not equal to"
|
||||
msgstr ""
|
||||
msgstr "nem egyenlő"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/search.js:1345
|
||||
@@ -389,7 +389,7 @@ msgstr ""
|
||||
#: addons/web/static/src/js/search.js:1403
|
||||
#: addons/web/static/src/js/search.js:1426
|
||||
msgid "greater than"
|
||||
msgstr ""
|
||||
msgstr "nagyobb, mint"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/search.js:1346
|
||||
@@ -398,7 +398,7 @@ msgstr ""
|
||||
#: addons/web/static/src/js/search.js:1404
|
||||
#: addons/web/static/src/js/search.js:1427
|
||||
msgid "less than"
|
||||
msgstr ""
|
||||
msgstr "kisebb, mint"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/search.js:1347
|
||||
@@ -407,7 +407,7 @@ msgstr ""
|
||||
#: addons/web/static/src/js/search.js:1405
|
||||
#: addons/web/static/src/js/search.js:1428
|
||||
msgid "greater or equal than"
|
||||
msgstr ""
|
||||
msgstr "nagyobb vagy egyenlő, mint"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/search.js:1348
|
||||
@@ -416,28 +416,28 @@ msgstr ""
|
||||
#: addons/web/static/src/js/search.js:1406
|
||||
#: addons/web/static/src/js/search.js:1429
|
||||
msgid "less or equal than"
|
||||
msgstr ""
|
||||
msgstr "kisebb vagy egyenlő, mint"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/search.js:1419
|
||||
#: addons/web/static/src/js/search.js:1444
|
||||
msgid "is"
|
||||
msgstr ""
|
||||
msgstr "egyenlő"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/search.js:1445
|
||||
msgid "is not"
|
||||
msgstr ""
|
||||
msgstr "nem egyenlő"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/search.js:1459
|
||||
msgid "is true"
|
||||
msgstr ""
|
||||
msgstr "igaz"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/search.js:1460
|
||||
msgid "is false"
|
||||
msgstr ""
|
||||
msgstr "hamis"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/view_editor.js:20
|
||||
@@ -538,7 +538,7 @@ msgstr "Duplikálás"
|
||||
#: addons/web/static/src/js/view_form.js:133
|
||||
#: addons/web/static/src/js/view_form.js:728
|
||||
msgid "Set Default"
|
||||
msgstr "Alapértelmezés beállítása"
|
||||
msgstr "Alapértelmezett értékek beállítása"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/view_page.js:59
|
||||
@@ -549,7 +549,7 @@ msgstr "Biztos, hogy törölni akarja ezt a rekordot?"
|
||||
#: addons/web/static/src/js/view_form.js:508
|
||||
msgid ""
|
||||
"Warning, the record has been modified, your changes will be discarded."
|
||||
msgstr ""
|
||||
msgstr "Figyelem, a rekord tartalma megváltozott, a változások elvesznek."
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/view_form.js:735
|
||||
@@ -640,18 +640,18 @@ msgstr ""
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/view_list.js:8
|
||||
msgid "List"
|
||||
msgstr ""
|
||||
msgstr "Lista"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/view_list.js:277
|
||||
msgid "Unlimited"
|
||||
msgstr ""
|
||||
msgstr "Korlátlan"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/views.js:819
|
||||
#: addons/web/static/src/xml/base.xml:1742
|
||||
msgid "Import"
|
||||
msgstr ""
|
||||
msgstr "Import"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/views.js:822
|
||||
@@ -662,7 +662,7 @@ msgstr ""
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/view_list.js:374
|
||||
msgid "Group"
|
||||
msgstr ""
|
||||
msgstr "Csoport"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/view_list.js:549
|
||||
@@ -672,7 +672,7 @@ msgstr "Biztos, hogy törölni akarja ezeket a rekordokat?"
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/views.js:925
|
||||
msgid "Warning"
|
||||
msgstr ""
|
||||
msgstr "Figyelmeztetés"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/view_list.js:716
|
||||
@@ -725,17 +725,17 @@ msgstr ""
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/views.js:716
|
||||
msgid "Print"
|
||||
msgstr ""
|
||||
msgstr "Nyomtatás"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/views.js:717
|
||||
msgid "Attachment"
|
||||
msgstr ""
|
||||
msgstr "Melléklet"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/views.js:718 addons/web/static/src/xml/base.xml:276
|
||||
msgid "More"
|
||||
msgstr ""
|
||||
msgstr "Egyebek"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/views.js:810
|
||||
@@ -760,7 +760,7 @@ msgstr ""
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/views.js:885
|
||||
msgid "Do you really want to delete this attachment ?"
|
||||
msgstr ""
|
||||
msgstr "Valóban törölni szeretné ezt a mellékletet?"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/views.js:962
|
||||
@@ -770,7 +770,7 @@ msgstr ""
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:52
|
||||
msgid "Loading..."
|
||||
msgstr ""
|
||||
msgstr "Betöltés…"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:251
|
||||
@@ -956,12 +956,12 @@ msgstr ""
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:325
|
||||
msgid "About OpenERP"
|
||||
msgstr ""
|
||||
msgstr "OpenERP - Névjegy"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:327
|
||||
msgid "Log out"
|
||||
msgstr ""
|
||||
msgstr "Kijelentkezés"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:333
|
||||
@@ -1111,7 +1111,7 @@ msgstr ""
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:518
|
||||
msgid "Delete this attachment"
|
||||
msgstr ""
|
||||
msgstr "Melléklet törlése"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:523
|
||||
@@ -1132,7 +1132,7 @@ msgstr ""
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:687
|
||||
msgid "Discard"
|
||||
msgstr ""
|
||||
msgstr "Elvetés"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:806
|
||||
@@ -1142,17 +1142,17 @@ msgstr "Alapértelmezett:"
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:823
|
||||
msgid "Condition:"
|
||||
msgstr ""
|
||||
msgstr "Feltétel:"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:842
|
||||
msgid "Only you"
|
||||
msgstr ""
|
||||
msgstr "csak saját"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:849
|
||||
msgid "All users"
|
||||
msgstr ""
|
||||
msgstr "Minden felhasználó"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:856
|
||||
@@ -1208,7 +1208,7 @@ msgstr ""
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:973
|
||||
msgid "Change default:"
|
||||
msgstr ""
|
||||
msgstr "Alapértelmezett megváltoztatása:"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:977
|
||||
@@ -1228,7 +1228,7 @@ msgstr ""
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:1040
|
||||
msgid "Open this resource"
|
||||
msgstr ""
|
||||
msgstr "Erőforrás megnyitása"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:1063
|
||||
@@ -1259,7 +1259,7 @@ msgstr "Törlés"
|
||||
#: addons/web/static/src/xml/base.xml:1179
|
||||
#: addons/web/static/src/xml/base.xml:1230
|
||||
msgid "Uploading ..."
|
||||
msgstr ""
|
||||
msgstr "Feltöltés..."
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:1066
|
||||
@@ -1316,7 +1316,7 @@ msgstr ""
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:1205
|
||||
msgid "Advanced Search..."
|
||||
msgstr ""
|
||||
msgstr "Részletes keresés…"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:1287
|
||||
@@ -1341,7 +1341,7 @@ msgstr "Szűrő mentése"
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:1305
|
||||
msgid "Filter Name:"
|
||||
msgstr ""
|
||||
msgstr "Szűrő neve:"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:1307
|
||||
@@ -1351,12 +1351,12 @@ msgstr ""
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:1376
|
||||
msgid "Custom Filters"
|
||||
msgstr ""
|
||||
msgstr "Egyedi szűrők"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:1379
|
||||
msgid "Save current filter"
|
||||
msgstr ""
|
||||
msgstr "Aktuális szűrés mentése"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:1381
|
||||
@@ -1366,13 +1366,13 @@ msgstr ""
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:1383
|
||||
msgid "Share with all users"
|
||||
msgstr ""
|
||||
msgstr "Mindenkinek elérhető"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/search.js:298
|
||||
#: addons/web/static/src/xml/base.xml:1299
|
||||
msgid "Add to Dashboard"
|
||||
msgstr ""
|
||||
msgstr "Hozzáadás vezérlőpulthoz"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:1394
|
||||
@@ -1392,7 +1392,7 @@ msgstr ""
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:1406
|
||||
msgid "Advanced Search"
|
||||
msgstr ""
|
||||
msgstr "Részletes Keresés"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:1411
|
||||
@@ -1402,7 +1402,7 @@ msgstr ""
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:1412
|
||||
msgid "Apply"
|
||||
msgstr ""
|
||||
msgstr "Alkalmazás"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:1509
|
||||
@@ -1422,36 +1422,40 @@ msgid ""
|
||||
" You can export all data or only the fields that can be "
|
||||
"reimported after modification."
|
||||
msgstr ""
|
||||
"Ez a varázsló exportálja az aktuális keresési feltételeknek megfelelő összes "
|
||||
"adatot egy CSV fájlba.\n"
|
||||
" Lehetőség van valamennyi adat exportálására vagy csak azon "
|
||||
"mezőkére, amelyek változtatások után visszaimportálásra kerülnek."
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:1624
|
||||
msgid "Export Type:"
|
||||
msgstr ""
|
||||
msgstr "Exportálás típusa"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:1626
|
||||
msgid "Import Compatible Export"
|
||||
msgstr ""
|
||||
msgstr "Import/export kompatibilis"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:1627
|
||||
msgid "Export all Data"
|
||||
msgstr ""
|
||||
msgstr "Összes adat exportálása"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:1630
|
||||
msgid "Export Formats"
|
||||
msgstr ""
|
||||
msgstr "Export formátumok"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:1636
|
||||
msgid "Available fields"
|
||||
msgstr ""
|
||||
msgstr "Elérhető mezők"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:1638
|
||||
msgid "Fields to export"
|
||||
msgstr ""
|
||||
msgstr "Exportálandó mezők:"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:1640
|
||||
@@ -1466,7 +1470,7 @@ msgstr "Összes eltávolítása"
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:1666
|
||||
msgid "Name"
|
||||
msgstr ""
|
||||
msgstr "Név"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:1699
|
||||
@@ -1476,12 +1480,12 @@ msgstr "Mentés mint:"
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:1706
|
||||
msgid "Saved exports:"
|
||||
msgstr ""
|
||||
msgstr "Mentett exportálások:"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:1748
|
||||
msgid "1. Import a .CSV file"
|
||||
msgstr ""
|
||||
msgstr ".CSV fájl importálása"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:1749
|
||||
@@ -1503,7 +1507,7 @@ msgstr ""
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:1759
|
||||
msgid "Import Options"
|
||||
msgstr ""
|
||||
msgstr "Importálási beállítások"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:1763
|
||||
@@ -1560,7 +1564,7 @@ msgstr ""
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/xml/base.xml:1811
|
||||
msgid "Here is a preview of the file we could not import:"
|
||||
msgstr ""
|
||||
msgstr "Itt van a fájlnak az előnézete, amit nem tudunk importálni:"
|
||||
|
||||
#~ msgid "Create..."
|
||||
#~ msgstr "Létrehozás…"
|
||||
@@ -1603,3 +1607,30 @@ msgstr ""
|
||||
|
||||
#~ msgid "More…"
|
||||
#~ msgstr "Több..."
|
||||
|
||||
#~ msgid "Any of the following conditions must match"
|
||||
#~ msgstr "Bármelyik feltétel igaz"
|
||||
|
||||
#~ msgid "All the following conditions must match"
|
||||
#~ msgstr "Midegyik feltétel igaz"
|
||||
|
||||
#~ msgid "None of the following conditions must match"
|
||||
#~ msgstr "Egyik feltétel sem igaz"
|
||||
|
||||
#~ msgid "Links"
|
||||
#~ msgstr "Hivatkozások"
|
||||
|
||||
#~ msgid "Add condition"
|
||||
#~ msgstr "Feltétel hozzáadása"
|
||||
|
||||
#~ msgid "Unfold menu"
|
||||
#~ msgstr "Menü kibontása"
|
||||
|
||||
#~ msgid "Fold menu"
|
||||
#~ msgstr "Menü elrejtése"
|
||||
|
||||
#~ msgid "Disable all tips"
|
||||
#~ msgstr "Minden tipp tiltása"
|
||||
|
||||
#~ msgid "Hide this tip"
|
||||
#~ msgstr "Tii elrejtése"
|
||||
|
||||
@@ -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: 2012-08-15 04:49+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:49+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:49+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:49+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:22+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:49+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:49+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:49+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:49+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:22+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:49+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:49+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:49+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:49+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:49+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:49+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:49+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:49+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:22+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:49+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:49+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:49+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web/static/src/js/chrome.js:176
|
||||
|
||||
@@ -69,6 +69,7 @@
|
||||
display: none !important;
|
||||
}
|
||||
}
|
||||
|
||||
.openerp.openerp_webclient_container {
|
||||
height: 100%;
|
||||
position: relative;
|
||||
@@ -84,7 +85,7 @@
|
||||
text-shadow: 0 1px 1px rgba(255, 255, 255, 0.5);
|
||||
/* http://www.quirksmode.org/dom/inputfile.html
|
||||
* http://stackoverflow.com/questions/2855589/replace-input-type-file-by-an-image
|
||||
*/
|
||||
*/ */
|
||||
}
|
||||
.openerp :-moz-placeholder {
|
||||
color: #afafb6 !important;
|
||||
@@ -234,21 +235,9 @@
|
||||
cursor: default;
|
||||
text-shadow: 0 1px 1px white !important;
|
||||
}
|
||||
.openerp .ui-widget {
|
||||
font-family: "Lucida Grande", Helvetica, Verdana, Arial, sans-serif;
|
||||
font-size: 13px;
|
||||
}
|
||||
.openerp .ui-widget-content a {
|
||||
color: #7c7bad;
|
||||
}
|
||||
.openerp .ui-menu .ui-menu-item {
|
||||
margin: 0 8px 0 0;
|
||||
padding: 0 0 0 12px;
|
||||
width: auto;
|
||||
}
|
||||
.openerp .ui-menu .ui-menu-item a.ui-state-active {
|
||||
background: #f0f0fa;
|
||||
}
|
||||
.openerp.ui-dialog {
|
||||
display: none;
|
||||
padding: 6px;
|
||||
@@ -505,8 +494,8 @@
|
||||
margin: 4px;
|
||||
}
|
||||
.openerp .oe_avatar > img {
|
||||
height: 90px;
|
||||
max-width: 100px;
|
||||
max-height: 90px;
|
||||
max-width: 90px;
|
||||
-moz-border-radius: 3px;
|
||||
-webkit-border-radius: 3px;
|
||||
border-radius: 3px;
|
||||
@@ -1012,7 +1001,7 @@
|
||||
.openerp .oe_topbar {
|
||||
width: 100%;
|
||||
height: 31px;
|
||||
border-top: solid 1px lightgrey;
|
||||
border-top: solid 1px #d3d3d3;
|
||||
background-color: #646060;
|
||||
background-image: -webkit-gradient(linear, left top, left bottom, from(#646060), to(#262626));
|
||||
background-image: -webkit-linear-gradient(top, #646060, #262626);
|
||||
@@ -1037,14 +1026,6 @@
|
||||
-webkit-box-shadow: 0 1px 2px rgba(255, 255, 255, 0.3) inset;
|
||||
box-shadow: 0 1px 2px rgba(255, 255, 255, 0.3) inset;
|
||||
}
|
||||
.openerp .oe_topbar .oe_topbar_item .oe_active {
|
||||
background: #303030;
|
||||
font-weight: bold;
|
||||
color: white;
|
||||
-moz-box-shadow: 0 1px 2px rgba(255, 255, 255, 0.3) inset;
|
||||
-webkit-box-shadow: 0 1px 2px rgba(255, 255, 255, 0.3) inset;
|
||||
box-shadow: 0 1px 2px rgba(255, 255, 255, 0.3) inset;
|
||||
}
|
||||
.openerp .oe_topbar .oe_topbar_avatar {
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
@@ -1155,10 +1136,10 @@
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
.openerp .oe_menu li {
|
||||
.openerp .oe_menu > li {
|
||||
float: left;
|
||||
}
|
||||
.openerp .oe_menu a {
|
||||
.openerp .oe_menu > li > a {
|
||||
display: block;
|
||||
padding: 5px 10px 7px;
|
||||
line-height: 20px;
|
||||
@@ -1167,14 +1148,14 @@
|
||||
vertical-align: top;
|
||||
text-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
|
||||
}
|
||||
.openerp .oe_menu a:hover {
|
||||
.openerp .oe_menu > li > a:hover {
|
||||
background: #303030;
|
||||
color: white;
|
||||
-moz-box-shadow: 0 1px 2px rgba(255, 255, 255, 0.3) inset;
|
||||
-webkit-box-shadow: 0 1px 2px rgba(255, 255, 255, 0.3) inset;
|
||||
box-shadow: 0 1px 2px rgba(255, 255, 255, 0.3) inset;
|
||||
}
|
||||
.openerp .oe_menu .oe_active {
|
||||
.openerp .oe_menu > li > .oe_active {
|
||||
background: #303030;
|
||||
font-weight: bold;
|
||||
color: white;
|
||||
@@ -1211,7 +1192,7 @@
|
||||
color: white;
|
||||
padding: 2px 4px;
|
||||
margin: 1px 6px 0 0;
|
||||
border: 1px solid lightgrey;
|
||||
border: 1px solid lightGray;
|
||||
text-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
|
||||
-moz-border-radius: 4px;
|
||||
-webkit-border-radius: 4px;
|
||||
@@ -1226,10 +1207,17 @@
|
||||
margin: 0px;
|
||||
padding: 1px 4px;
|
||||
}
|
||||
.openerp .oe_secondary_submenu .oe_menu_counter:hover {
|
||||
cursor: pointer;
|
||||
border: 1px solid #c81010;
|
||||
-moz-box-shadow: 0 0 2px #c81010;
|
||||
-webkit-box-shadow: 0 0 2px #c81010;
|
||||
box-shadow: 0 0 2px #c81010;
|
||||
}
|
||||
.openerp .oe_secondary_submenu .oe_active {
|
||||
background: #7c7bad;
|
||||
border-top: 1px solid lightgrey;
|
||||
border-bottom: 1px solid lightgrey;
|
||||
border-top: 1px solid lightGray;
|
||||
border-bottom: 1px solid lightGray;
|
||||
text-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
|
||||
-moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.2);
|
||||
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.2);
|
||||
@@ -1321,6 +1309,9 @@
|
||||
.openerp .oe_view_manager table.oe_view_manager_header h2 a {
|
||||
color: #7c7bad;
|
||||
}
|
||||
.openerp .oe_view_manager table.oe_view_manager_header .oe_dropdown_menu {
|
||||
line-height: normal;
|
||||
}
|
||||
.openerp .oe_view_manager table.oe_view_manager_header .oe_button_group {
|
||||
display: inline-block;
|
||||
border: 1px solid #ababab;
|
||||
@@ -1959,8 +1950,10 @@
|
||||
margin: 0 auto;
|
||||
padding: 16px 0 48px;
|
||||
}
|
||||
.openerp .oe_form div.oe_form_configuration div.oe_horizontal_separator {
|
||||
margin: 25px 0 10px 0;
|
||||
.openerp .oe_form .oe_grey {
|
||||
color: #aaaaaa;
|
||||
max-width: 650px;
|
||||
margin: 0 0 10px 0;
|
||||
}
|
||||
.openerp .oe_form div.oe_form_configuration p {
|
||||
color: #aaaaaa;
|
||||
@@ -1969,6 +1962,12 @@
|
||||
.openerp .oe_form div.oe_form_configuration label {
|
||||
min-width: 150px;
|
||||
}
|
||||
.openerp .oe_form div.oe_form_configuration .oe_form_group_cell_label {
|
||||
padding: 2px 0;
|
||||
}
|
||||
.openerp .oe_form div.oe_form_configuration .oe_form_group_cell div div {
|
||||
padding: 1px 0;
|
||||
}
|
||||
.openerp ul.oe_form_steps, .openerp ul.oe_form_steps_clickable {
|
||||
display: inline-block;
|
||||
padding-right: 18px;
|
||||
@@ -2005,7 +2004,6 @@
|
||||
padding-left: 24px;
|
||||
margin: 0;
|
||||
position: relative;
|
||||
z-index: 10;
|
||||
}
|
||||
.openerp ul.oe_form_steps li .arrow, .openerp ul.oe_form_steps_clickable li .arrow {
|
||||
width: 17px;
|
||||
@@ -2016,7 +2014,6 @@
|
||||
}
|
||||
.openerp ul.oe_form_steps li .arrow span, .openerp ul.oe_form_steps_clickable li .arrow span {
|
||||
position: relative;
|
||||
z-index: 11;
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
display: inline-block;
|
||||
@@ -2160,7 +2157,7 @@
|
||||
.openerp .oe_form td.oe_form_group_cell_label label {
|
||||
line-height: 18px;
|
||||
display: block;
|
||||
min-width: 120px;
|
||||
min-width: 160px;
|
||||
}
|
||||
.openerp .oe_form td.oe_form_group_cell + .oe_form_group_cell {
|
||||
padding-left: 6px;
|
||||
@@ -2179,7 +2176,7 @@
|
||||
}
|
||||
.openerp .oe_form .oe_form_label_help[for] span, .openerp .oe_form .oe_form_label[for] span {
|
||||
font-size: 80%;
|
||||
color: darkgreen;
|
||||
color: darkGreen;
|
||||
vertical-align: top;
|
||||
position: relative;
|
||||
top: -4px;
|
||||
@@ -2191,8 +2188,8 @@
|
||||
.openerp .oe_horizontal_separator {
|
||||
font-weight: bold;
|
||||
font-size: 20px;
|
||||
margin: 8px 0px 8px 0px;
|
||||
color: #53637e;
|
||||
margin: 15px 0px 10px 0px;
|
||||
color: #7c7bad;
|
||||
}
|
||||
.openerp .oe_horizontal_separator:empty {
|
||||
height: 5px;
|
||||
@@ -2405,6 +2402,13 @@
|
||||
float: right;
|
||||
padding-left: 2px;
|
||||
}
|
||||
.openerp.ui-autocomplete li.oe_m2o_dropdown_option a {
|
||||
font-style: italic;
|
||||
padding-left: 2em;
|
||||
}
|
||||
.openerp.ui-autocomplete li:not(.oe_m2o_dropdown_option) + li.oe_m2o_dropdown_option {
|
||||
margin-top: 10px;
|
||||
}
|
||||
.openerp .oe_form .oe_form_field_one2many > .oe_view_manager .oe_list_pager_single_page {
|
||||
display: none;
|
||||
}
|
||||
@@ -2729,6 +2733,16 @@
|
||||
float: right;
|
||||
color: #333333;
|
||||
}
|
||||
.openerp .oe_semantic_html li {
|
||||
list-style-type: disc;
|
||||
display: list-item;
|
||||
}
|
||||
.openerp .oe_semantic_html ul {
|
||||
padding-left: 1em;
|
||||
}
|
||||
.openerp .oe_semantic_html p {
|
||||
color: #4c4c4c !important;
|
||||
}
|
||||
|
||||
.kitten-mode-activated {
|
||||
background-image: url(http://placekitten.com/g/1365/769);
|
||||
@@ -2744,3 +2758,42 @@ div.ui-widget-overlay {
|
||||
filter: alpha(opacity=30);
|
||||
opacity: 0.3;
|
||||
}
|
||||
|
||||
.ui-widget {
|
||||
font-family: "Lucida Grande", Helvetica, Verdana, Arial, sans-serif;
|
||||
color: #4c4c4c;
|
||||
font-size: 13px;
|
||||
}
|
||||
|
||||
.ui-menu {
|
||||
padding: 2px 0;
|
||||
-moz-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3);
|
||||
-webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3);
|
||||
box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3);
|
||||
margin-top: 4px;
|
||||
border: 1px solid #afafb6;
|
||||
}
|
||||
.ui-menu .ui-menu-item {
|
||||
width: 100%;
|
||||
padding: 0;
|
||||
}
|
||||
.ui-menu .ui-menu-item a {
|
||||
padding: 1px 16px;
|
||||
}
|
||||
.ui-menu .ui-menu-item a.ui-corner-all {
|
||||
-moz-border-radius: 0;
|
||||
-webkit-border-radius: 0;
|
||||
border-radius: 0;
|
||||
}
|
||||
.ui-menu .ui-menu-item a.ui-state-active {
|
||||
background: #f0f0fa;
|
||||
}
|
||||
.ui-menu .ui-menu-item a.ui-state-hover, .ui-menu .ui-menu-item a.ui-state-active {
|
||||
background: #7c7bad;
|
||||
}
|
||||
|
||||
.ui-corner-all {
|
||||
-moz-border-radius: 3px;
|
||||
-webkit-border-radius: 3px;
|
||||
border-radius: 3px;
|
||||
}
|
||||
|
||||
@@ -249,18 +249,8 @@ $sheet-max-width: 860px
|
||||
text-shadow: 0 1px 1px #fff !important
|
||||
// }}}
|
||||
// Jquery ui Overrides {{{
|
||||
.ui-widget
|
||||
font-family: "Lucida Grande", Helvetica, Verdana, Arial, sans-serif
|
||||
font-size: 13px
|
||||
.ui-widget-content a
|
||||
color: $link-color
|
||||
.ui-menu
|
||||
.ui-menu-item
|
||||
margin: 0 8px 0 0
|
||||
padding: 0 0 0 12px
|
||||
width: auto
|
||||
a.ui-state-active
|
||||
background: #f0f0fa
|
||||
|
||||
// Modal box
|
||||
&.ui-dialog
|
||||
@@ -400,6 +390,7 @@ $sheet-max-width: 860px
|
||||
@include vertical-gradient(#DF6B66, #BF3A33)
|
||||
//@include vertical-gradient(lighten(#dc5f59, 3%), lighten(#b33630, 3%))
|
||||
@include box-shadow(0 0 1px rgba(0, 0, 0, 0.2))
|
||||
|
||||
.oe_form_dirty
|
||||
.oe_highlight_on_dirty
|
||||
color: white
|
||||
@@ -426,8 +417,8 @@ $sheet-max-width: 860px
|
||||
margin: 4px
|
||||
.oe_avatar
|
||||
> img
|
||||
height: 90px
|
||||
max-width: 100px
|
||||
max-height: 90px
|
||||
max-width: 90px
|
||||
@include radius(3px)
|
||||
@include box-shadow(0 1px 3px rgba(0, 0, 0, 0.3))
|
||||
border: none
|
||||
@@ -814,11 +805,6 @@ $sheet-max-width: 860px
|
||||
background: #303030
|
||||
color: white
|
||||
@include box-shadow(0 1px 2px rgba(255,255,255,0.3) inset)
|
||||
.oe_active
|
||||
background: #303030
|
||||
font-weight: bold
|
||||
color: white
|
||||
@include box-shadow(0 1px 2px rgba(255,255,255,0.3) inset)
|
||||
|
||||
.oe_topbar_avatar
|
||||
width: 24px
|
||||
@@ -906,25 +892,25 @@ $sheet-max-width: 860px
|
||||
float: left
|
||||
padding: 0
|
||||
margin: 0
|
||||
li
|
||||
> li
|
||||
float: left
|
||||
a
|
||||
display: block
|
||||
padding: 5px 10px 7px
|
||||
line-height: 20px
|
||||
height: 20px
|
||||
color: #eee
|
||||
vertical-align: top
|
||||
text-shadow: 0 1px 1px rgba(0,0,0,0.2)
|
||||
&:hover
|
||||
> a
|
||||
display: block
|
||||
padding: 5px 10px 7px
|
||||
line-height: 20px
|
||||
height: 20px
|
||||
color: #eee
|
||||
vertical-align: top
|
||||
text-shadow: 0 1px 1px rgba(0,0,0,0.2)
|
||||
&:hover
|
||||
background: #303030
|
||||
color: white
|
||||
@include box-shadow(0 1px 2px rgba(255,255,255,0.3) inset)
|
||||
> .oe_active
|
||||
background: #303030
|
||||
font-weight: bold
|
||||
color: white
|
||||
@include box-shadow(0 1px 2px rgba(255,255,255,0.3) inset)
|
||||
.oe_active
|
||||
background: #303030
|
||||
font-weight: bold
|
||||
color: white
|
||||
@include box-shadow(0 1px 2px rgba(255,255,255,0.3) inset)
|
||||
.oe_secondary_menu_section
|
||||
font-weight: bold
|
||||
margin-left: 8px
|
||||
@@ -959,6 +945,10 @@ $sheet-max-width: 860px
|
||||
text-shadow: 0 1px 1px rgba(0,0,0,0.2)
|
||||
margin: 0px
|
||||
padding: 1px 4px
|
||||
&:hover
|
||||
cursor: pointer
|
||||
border: 1px solid #C81010
|
||||
@include box-shadow(0 0 2px #C81010)
|
||||
.oe_active
|
||||
background: $link-color
|
||||
border-top: 1px solid lightGray
|
||||
@@ -1039,6 +1029,8 @@ $sheet-max-width: 860px
|
||||
float: left
|
||||
a
|
||||
color: $link-color
|
||||
.oe_dropdown_menu
|
||||
line-height: normal
|
||||
.oe_button_group
|
||||
display: inline-block
|
||||
border: 1px solid #ababab
|
||||
@@ -1524,14 +1516,20 @@ $sheet-max-width: 860px
|
||||
max-width: $sheet-max-width
|
||||
margin: 0 auto
|
||||
padding: 16px 0 48px
|
||||
.oe_grey
|
||||
color: #aaa
|
||||
max-width: 650px
|
||||
margin: 0 0 10px 0
|
||||
div.oe_form_configuration
|
||||
div.oe_horizontal_separator
|
||||
margin: 25px 0 10px 0
|
||||
p
|
||||
color: #aaa
|
||||
max-width: 650px
|
||||
label
|
||||
min-width: 150px
|
||||
.oe_form_group_cell_label
|
||||
padding: 2px 0
|
||||
.oe_form_group_cell div div
|
||||
padding: 1px 0
|
||||
|
||||
|
||||
ul.oe_form_steps, ul.oe_form_steps_clickable
|
||||
@@ -1558,7 +1556,6 @@ $sheet-max-width: 860px
|
||||
padding-left: 24px
|
||||
margin: 0
|
||||
position: relative
|
||||
z-index: 10
|
||||
.arrow
|
||||
width: 17px
|
||||
display: inline-block
|
||||
@@ -1567,7 +1564,6 @@ $sheet-max-width: 860px
|
||||
margin-left: -5px
|
||||
span
|
||||
position: relative
|
||||
z-index: 11
|
||||
width: 24px
|
||||
height: 24px
|
||||
display: inline-block
|
||||
@@ -1654,7 +1650,7 @@ $sheet-max-width: 860px
|
||||
label
|
||||
line-height: 18px
|
||||
display: block
|
||||
min-width: 120px
|
||||
min-width: 160px
|
||||
td.oe_form_group_cell + .oe_form_group_cell
|
||||
padding-left: 6px
|
||||
.oe_form_group
|
||||
@@ -1683,8 +1679,8 @@ $sheet-max-width: 860px
|
||||
.oe_horizontal_separator
|
||||
font-weight: bold
|
||||
font-size: 20px
|
||||
margin: 8px 0px 8px 0px
|
||||
color: #53637e
|
||||
margin: 15px 0px 10px 0px
|
||||
color: $section-title-color
|
||||
.oe_horizontal_separator:empty
|
||||
height: 5px
|
||||
.oe_vertical_separator
|
||||
@@ -1857,6 +1853,12 @@ $sheet-max-width: 860px
|
||||
line-height: 14px
|
||||
float: right
|
||||
padding-left: 2px
|
||||
&.ui-autocomplete
|
||||
li.oe_m2o_dropdown_option a
|
||||
font-style: italic
|
||||
padding-left: 2em
|
||||
li:not(.oe_m2o_dropdown_option) + li.oe_m2o_dropdown_option
|
||||
margin-top: 10px
|
||||
// }}}
|
||||
// FormView.one2many {{{
|
||||
.oe_form .oe_form_field_one2many > .oe_view_manager
|
||||
@@ -2130,6 +2132,15 @@ $sheet-max-width: 860px
|
||||
float: right
|
||||
color: #333
|
||||
// }}}
|
||||
.oe_semantic_html // a style to use normal html
|
||||
li
|
||||
list-style-type: disc
|
||||
display: list-item
|
||||
ul
|
||||
padding-left: 1em
|
||||
p
|
||||
color: #4C4C4C !important
|
||||
|
||||
// Kitten Mode {{{
|
||||
.kitten-mode-activated
|
||||
background-image: url(http://placekitten.com/g/1365/769)
|
||||
@@ -2140,10 +2151,37 @@ $sheet-max-width: 860px
|
||||
|
||||
// }}}
|
||||
|
||||
// The jQuery-ui overlay is outside the .openerp div, please don't add indentation !!!
|
||||
// The jQuery-ui overlay and Autocomplete are outside the .openerp div, please don't add indentation !!!
|
||||
div.ui-widget-overlay
|
||||
background: black
|
||||
@include opacity(0.3)
|
||||
|
||||
.ui-widget
|
||||
font-family: "Lucida Grande", Helvetica, Verdana, Arial, sans-serif
|
||||
color: #4c4c4c
|
||||
font-size: 13px
|
||||
|
||||
.ui-menu
|
||||
padding: 2px 0
|
||||
@include box-shadow(0 1px 4px rgba(0,0,0,0.3))
|
||||
margin-top: 4px
|
||||
border: 1px solid $tag-border
|
||||
.ui-menu-item
|
||||
width: 100%
|
||||
padding: 0
|
||||
a
|
||||
padding: 1px 16px
|
||||
a.ui-corner-all
|
||||
@include radius(0)
|
||||
a.ui-state-active
|
||||
background: #f0f0fa
|
||||
.ui-menu-item a.ui-state-hover, .ui-menu-item a.ui-state-active
|
||||
background: $tag-bg-dark
|
||||
//color: #4c4c4c
|
||||
//@include vertical-gradient(#f0f0fa, #eeeef6)
|
||||
|
||||
.ui-corner-all
|
||||
@include radius(3px)
|
||||
|
||||
// au BufWritePost,FileWritePost *.sass :!sass --style expanded --line-numbers <afile> > "%:p:r.css"
|
||||
// vim:tabstop=4:shiftwidth=4:softtabstop=4:fdm=marker:
|
||||
|
||||
@@ -13,7 +13,7 @@ instance.web.Notification = instance.web.Widget.extend({
|
||||
},
|
||||
start: function() {
|
||||
this._super.apply(this, arguments);
|
||||
this.$element.notify({
|
||||
this.$el.notify({
|
||||
speed: 500,
|
||||
expires: 2500
|
||||
});
|
||||
@@ -24,7 +24,7 @@ instance.web.Notification = instance.web.Widget.extend({
|
||||
if (sticky) {
|
||||
opts.expires = false;
|
||||
}
|
||||
this.$element.notify('create', {
|
||||
this.$el.notify('create', {
|
||||
title: title,
|
||||
text: text
|
||||
}, opts);
|
||||
@@ -35,7 +35,7 @@ instance.web.Notification = instance.web.Widget.extend({
|
||||
if (sticky) {
|
||||
opts.expires = false;
|
||||
}
|
||||
this.$element.notify('create', 'oe_notification_alert', {
|
||||
this.$el.notify('create', 'oe_notification_alert', {
|
||||
title: title,
|
||||
text: text
|
||||
}, opts);
|
||||
@@ -123,22 +123,22 @@ instance.web.Dialog = instance.web.Widget.extend({
|
||||
if (! this.dialog_inited)
|
||||
this.init_dialog();
|
||||
var o = this.get_options(options);
|
||||
instance.web.dialog(this.$element, o).dialog('open');
|
||||
instance.web.dialog(this.$el, o).dialog('open');
|
||||
if (o.height === 'auto' && o.max_height) {
|
||||
this.$element.css({ 'max-height': o.max_height, 'overflow-y': 'auto' });
|
||||
this.$el.css({ 'max-height': o.max_height, 'overflow-y': 'auto' });
|
||||
}
|
||||
return this;
|
||||
},
|
||||
init_dialog: function(options) {
|
||||
this.renderElement();
|
||||
var o = this.get_options(options);
|
||||
instance.web.dialog(this.$element, o);
|
||||
instance.web.dialog(this.$el, o);
|
||||
var res = this.start();
|
||||
this.dialog_inited = true;
|
||||
return res;
|
||||
},
|
||||
close: function() {
|
||||
this.$element.dialog('close');
|
||||
this.$el.dialog('close');
|
||||
},
|
||||
on_close: function() {
|
||||
if (this.__tmp_dialog_destroying)
|
||||
@@ -161,7 +161,7 @@ instance.web.Dialog = instance.web.Widget.extend({
|
||||
this.__tmp_dialog_destroying = undefined;
|
||||
}
|
||||
if (! this.isDestroyed()) {
|
||||
this.$element.dialog('destroy');
|
||||
this.$el.dialog('destroy');
|
||||
}
|
||||
this._super();
|
||||
}
|
||||
@@ -193,29 +193,9 @@ instance.web.CrashManager = instance.web.CallbackEnabled.extend({
|
||||
on_traceback: function(error) {
|
||||
var self = this;
|
||||
var buttons = {};
|
||||
if (instance.session.openerp_entreprise) {
|
||||
buttons[_t("Send OpenERP Enterprise Report")] = function() {
|
||||
var $this = $(this);
|
||||
var issuename = $('#issuename').val();
|
||||
var explanation = $('#explanation').val();
|
||||
var remark = $('#remark').val();
|
||||
// Call the send method from server to send mail with details
|
||||
new instance.web.DataSet(self, 'publisher_warranty.contract').call_and_eval('send', [error.data,explanation,remark,issuename]).then(function(result){
|
||||
if (result === false) {
|
||||
alert('There was a communication error.');
|
||||
} else {
|
||||
$this.dialog('close');
|
||||
}
|
||||
});
|
||||
};
|
||||
buttons[_t("Dont send")] = function() {
|
||||
$(this).dialog("close");
|
||||
};
|
||||
} else {
|
||||
buttons[_t("Ok")] = function() {
|
||||
$(this).dialog("close");
|
||||
};
|
||||
}
|
||||
buttons[_t("Ok")] = function() {
|
||||
$(this).dialog("close");
|
||||
};
|
||||
var dialog = new instance.web.Dialog(this, {
|
||||
title: "OpenERP " + _.str.capitalize(error.type),
|
||||
width: '80%',
|
||||
@@ -224,7 +204,7 @@ instance.web.CrashManager = instance.web.CallbackEnabled.extend({
|
||||
min_height: '600px',
|
||||
buttons: buttons
|
||||
}).open();
|
||||
dialog.$element.html(QWeb.render('CrashManager.error', {session: instance.session, error: error}));
|
||||
dialog.$el.html(QWeb.render('CrashManager.error', {session: instance.session, error: error}));
|
||||
},
|
||||
on_javascript_exception: function(exception) {
|
||||
this.on_traceback({
|
||||
@@ -270,12 +250,12 @@ instance.web.Loading = instance.web.Widget.extend({
|
||||
this.count += increment;
|
||||
if (this.count > 0) {
|
||||
if (instance.session.debug) {
|
||||
this.$element.text(_.str.sprintf( _t("Loading (%d)"), this.count));
|
||||
this.$el.text(_.str.sprintf( _t("Loading (%d)"), this.count));
|
||||
} else {
|
||||
this.$element.text(_t("Loading"));
|
||||
this.$el.text(_t("Loading"));
|
||||
}
|
||||
this.$element.show();
|
||||
this.getParent().$element.addClass('oe_wait');
|
||||
this.$el.show();
|
||||
this.getParent().$el.addClass('oe_wait');
|
||||
} else {
|
||||
this.count = 0;
|
||||
clearTimeout(this.long_running_timer);
|
||||
@@ -284,8 +264,8 @@ instance.web.Loading = instance.web.Widget.extend({
|
||||
this.blocked_ui = false;
|
||||
instance.web.unblockUI();
|
||||
}
|
||||
this.$element.fadeOut();
|
||||
this.getParent().$element.removeClass('oe_wait');
|
||||
this.$el.fadeOut();
|
||||
this.getParent().$el.removeClass('oe_wait');
|
||||
}
|
||||
}
|
||||
});
|
||||
@@ -317,7 +297,7 @@ instance.web.DatabaseManager = instance.web.Widget.extend({
|
||||
do_render: function() {
|
||||
var self = this;
|
||||
instance.webclient.toggle_bars(true);
|
||||
self.$element.html(QWeb.render("DatabaseManager", { widget : self }));
|
||||
self.$el.html(QWeb.render("DatabaseManager", { widget : self }));
|
||||
$('.oe_user_menu_placeholder').append(QWeb.render("DatabaseManager.user_menu",{ widget : self }));
|
||||
$('.oe_secondary_menus_container').append(QWeb.render("DatabaseManager.menu",{ widget : self }));
|
||||
$('ul.oe_secondary_submenu > li:first').addClass('oe_active')
|
||||
@@ -329,14 +309,14 @@ instance.web.DatabaseManager = instance.web.Widget.extend({
|
||||
event.preventDefault();
|
||||
});
|
||||
$('#back-to-login').click(self.do_exit);
|
||||
self.$element.find("td").addClass("oe_form_group_cell");
|
||||
self.$element.find("tr td:first-child").addClass("oe_form_group_cell_label");
|
||||
self.$element.find("label").addClass("oe_form_label");
|
||||
self.$element.find("form[name=create_db_form]").validate({ submitHandler: self.do_create });
|
||||
self.$element.find("form[name=drop_db_form]").validate({ submitHandler: self.do_drop });
|
||||
self.$element.find("form[name=backup_db_form]").validate({ submitHandler: self.do_backup });
|
||||
self.$element.find("form[name=restore_db_form]").validate({ submitHandler: self.do_restore });
|
||||
self.$element.find("form[name=change_pwd_form]").validate({
|
||||
self.$el.find("td").addClass("oe_form_group_cell");
|
||||
self.$el.find("tr td:first-child").addClass("oe_form_group_cell_label");
|
||||
self.$el.find("label").addClass("oe_form_label");
|
||||
self.$el.find("form[name=create_db_form]").validate({ submitHandler: self.do_create });
|
||||
self.$el.find("form[name=drop_db_form]").validate({ submitHandler: self.do_drop });
|
||||
self.$el.find("form[name=backup_db_form]").validate({ submitHandler: self.do_backup });
|
||||
self.$el.find("form[name=restore_db_form]").validate({ submitHandler: self.do_restore });
|
||||
self.$el.find("form[name=change_pwd_form]").validate({
|
||||
messages: {
|
||||
old_pwd: "Please enter your previous password",
|
||||
new_pwd: "Please enter your new password",
|
||||
@@ -349,7 +329,7 @@ instance.web.DatabaseManager = instance.web.Widget.extend({
|
||||
});
|
||||
},
|
||||
destroy: function () {
|
||||
this.$element.find('#db-create, #db-drop, #db-backup, #db-restore, #db-change-password, #back-to-login').unbind('click').end().empty();
|
||||
this.$el.find('#db-create, #db-drop, #db-backup, #db-restore, #db-change-password, #back-to-login').unbind('click').end().empty();
|
||||
this._super();
|
||||
},
|
||||
/**
|
||||
@@ -411,7 +391,7 @@ instance.web.DatabaseManager = instance.web.Widget.extend({
|
||||
'login': 'admin',
|
||||
'password': form_obj['create_admin_pwd'],
|
||||
'login_successful': function() {
|
||||
instance.webclient.show_application();
|
||||
self.do_action("reload");
|
||||
},
|
||||
},
|
||||
};
|
||||
@@ -500,7 +480,7 @@ instance.web.DatabaseManager = instance.web.Widget.extend({
|
||||
});
|
||||
},
|
||||
do_exit: function () {
|
||||
this.$element.remove();
|
||||
this.$el.remove();
|
||||
instance.webclient.toggle_bars(false);
|
||||
this.do_action('login');
|
||||
}
|
||||
@@ -533,8 +513,8 @@ instance.web.Login = instance.web.Widget.extend({
|
||||
},
|
||||
start: function() {
|
||||
var self = this;
|
||||
self.$element.find("form").submit(self.on_submit);
|
||||
self.$element.find('.oe_login_manage_db').click(function() {
|
||||
self.$el.find("form").submit(self.on_submit);
|
||||
self.$el.find('.oe_login_manage_db').click(function() {
|
||||
self.do_action("database_manager");
|
||||
});
|
||||
var d;
|
||||
@@ -584,7 +564,7 @@ instance.web.Login = instance.web.Widget.extend({
|
||||
*/
|
||||
do_login: function (db, login, password) {
|
||||
var self = this;
|
||||
this.$element.removeClass('oe_login_invalid');
|
||||
this.$el.removeClass('oe_login_invalid');
|
||||
self.$(".oe_login_pane").fadeOut("slow");
|
||||
return this.session.session_authenticate(db, login, password).pipe(function() {
|
||||
if (self.has_local_storage) {
|
||||
@@ -603,7 +583,7 @@ instance.web.Login = instance.web.Widget.extend({
|
||||
self.trigger('login_successful');
|
||||
},function () {
|
||||
self.$(".oe_login_pane").fadeIn("fast", function() {
|
||||
self.$element.addClass("oe_login_invalid");
|
||||
self.$el.addClass("oe_login_invalid");
|
||||
});
|
||||
});
|
||||
},
|
||||
@@ -663,7 +643,7 @@ instance.web.ChangePassword = instance.web.Widget.extend({
|
||||
template: "ChangePassword",
|
||||
start: function() {
|
||||
var self = this;
|
||||
self.$element.validate({
|
||||
self.$el.validate({
|
||||
submitHandler: function (form) {
|
||||
self.rpc("/web/session/change_password",{
|
||||
'fields': $(form).serializeArray()
|
||||
@@ -700,7 +680,7 @@ instance.web.Menu = instance.web.Widget.extend({
|
||||
},
|
||||
start: function() {
|
||||
this._super.apply(this, arguments);
|
||||
this.$secondary_menus = this.getParent().$element.find('.oe_secondary_menus_container');
|
||||
this.$secondary_menus = this.getParent().$el.find('.oe_secondary_menus_container');
|
||||
this.$secondary_menus.on('click', 'a[data-menu]', this.on_menu_click);
|
||||
return this.do_reload();
|
||||
},
|
||||
@@ -712,8 +692,13 @@ instance.web.Menu = instance.web.Widget.extend({
|
||||
this.data = data;
|
||||
this.renderElement();
|
||||
this.limit_entries();
|
||||
// Hide toplevel item if there is only one
|
||||
var $toplevel = this.$("li")
|
||||
if($toplevel.length == 1) {
|
||||
$toplevel.hide();
|
||||
}
|
||||
this.$secondary_menus.html(QWeb.render("Menu.secondary", { widget : this }));
|
||||
this.$element.on('click', 'a[data-menu]', this.on_menu_click);
|
||||
this.$el.on('click', 'a[data-menu]', this.on_menu_click);
|
||||
// Hide second level submenus
|
||||
this.$secondary_menus.find('.oe_menu_toggler').siblings('.oe_secondary_submenu').hide();
|
||||
if (self.current_menu) {
|
||||
@@ -728,8 +713,9 @@ instance.web.Menu = instance.web.Widget.extend({
|
||||
}
|
||||
if (maximum_visible_links < this.data.data.children.length) {
|
||||
var $more = $(QWeb.render('Menu.more')),
|
||||
$index = this.$element.find('li').eq(maximum_visible_links - 1);
|
||||
$index = this.$el.find('li').eq(maximum_visible_links - 1);
|
||||
$index.after($more);
|
||||
//$('.oe_topbar').append($more);
|
||||
$more.find('.oe_menu_more').append($index.next().nextAll());
|
||||
}
|
||||
},
|
||||
@@ -746,19 +732,19 @@ instance.web.Menu = instance.web.Widget.extend({
|
||||
*/
|
||||
open_menu: function (id) {
|
||||
var $clicked_menu, $sub_menu, $main_menu;
|
||||
$clicked_menu = this.$element.add(this.$secondary_menus).find('a[data-menu=' + id + ']');
|
||||
$clicked_menu = this.$el.add(this.$secondary_menus).find('a[data-menu=' + id + ']');
|
||||
this.trigger('open_menu', id, $clicked_menu);
|
||||
|
||||
if (this.$secondary_menus.has($clicked_menu).length) {
|
||||
$sub_menu = $clicked_menu.parents('.oe_secondary_menu');
|
||||
$main_menu = this.$element.find('a[data-menu=' + $sub_menu.data('menu-parent') + ']');
|
||||
$main_menu = this.$el.find('a[data-menu=' + $sub_menu.data('menu-parent') + ']');
|
||||
} else {
|
||||
$sub_menu = this.$secondary_menus.find('.oe_secondary_menu[data-menu-parent=' + $clicked_menu.attr('data-menu') + ']');
|
||||
$main_menu = $clicked_menu;
|
||||
}
|
||||
|
||||
// Activate current main menu
|
||||
this.$element.find('.oe_active').removeClass('oe_active');
|
||||
this.$el.find('.oe_active').removeClass('oe_active');
|
||||
$main_menu.addClass('oe_active');
|
||||
|
||||
// Show current sub menu
|
||||
@@ -785,7 +771,7 @@ instance.web.Menu = instance.web.Widget.extend({
|
||||
* @param {Number} id the action_id to match
|
||||
*/
|
||||
open_action: function (id) {
|
||||
var $menu = this.$element.add(this.$secondary_menus).find('a[data-action-id="' + id + '"]');
|
||||
var $menu = this.$el.add(this.$secondary_menus).find('a[data-action-id="' + id + '"]');
|
||||
var menu_id = $menu.data('menu');
|
||||
if (menu_id) {
|
||||
this.open_menu(menu_id);
|
||||
@@ -801,14 +787,14 @@ instance.web.Menu = instance.web.Widget.extend({
|
||||
if (!id) { return; }
|
||||
|
||||
// find back the menuitem in dom to get the action
|
||||
var $item = this.$element.find('a[data-menu=' + id + ']');
|
||||
var $item = this.$el.find('a[data-menu=' + id + ']');
|
||||
if (!$item.length) {
|
||||
$item = this.$secondary_menus.find('a[data-menu=' + id + ']');
|
||||
}
|
||||
var action_id = $item.data('action-id');
|
||||
// If first level menu doesnt have action trigger first leaf
|
||||
if (!action_id) {
|
||||
if(this.$element.has($item).length) {
|
||||
if(this.$el.has($item).length) {
|
||||
var $sub_menu = this.$secondary_menus.find('.oe_secondary_menu[data-menu-parent=' + id + ']');
|
||||
var $items = $sub_menu.find('a[data-action-id]').filter('[data-action-id!=""]');
|
||||
if($items.length) {
|
||||
@@ -849,7 +835,7 @@ instance.web.UserMenu = instance.web.Widget.extend({
|
||||
start: function() {
|
||||
var self = this;
|
||||
this._super.apply(this, arguments);
|
||||
this.$element.on('click', '.oe_dropdown_menu li a[data-menu]', function(ev) {
|
||||
this.$el.on('click', '.oe_dropdown_menu li a[data-menu]', function(ev) {
|
||||
ev.preventDefault();
|
||||
var f = self['on_menu_' + $(this).data('menu')];
|
||||
if (f) {
|
||||
@@ -860,7 +846,7 @@ instance.web.UserMenu = instance.web.Widget.extend({
|
||||
do_update: function () {
|
||||
var self = this;
|
||||
var fct = function() {
|
||||
var $avatar = self.$element.find('.oe_topbar_avatar');
|
||||
var $avatar = self.$el.find('.oe_topbar_avatar');
|
||||
$avatar.attr('src', $avatar.data('default-src'));
|
||||
if (!self.session.uid)
|
||||
return;
|
||||
@@ -871,7 +857,7 @@ instance.web.UserMenu = instance.web.Widget.extend({
|
||||
topbar_name = _.str.sprintf("%s (%s)", topbar_name, instance.session.db);
|
||||
if(res.company_id[0] > 1)
|
||||
topbar_name = _.str.sprintf("%s (%s)", topbar_name, res.company_id[1]);
|
||||
self.$element.find('.oe_topbar_name').text(topbar_name);
|
||||
self.$el.find('.oe_topbar_name').text(topbar_name);
|
||||
var avatar_src = _.str.sprintf('%s/web/binary/image?session_id=%s&model=res.users&field=image_small&id=%s', self.session.prefix, self.session.session_id, self.session.uid);
|
||||
$avatar.attr('src', avatar_src);
|
||||
});
|
||||
@@ -921,10 +907,10 @@ instance.web.Client = instance.web.Widget.extend({
|
||||
},
|
||||
bind_events: function() {
|
||||
var self = this;
|
||||
this.$element.on('mouseenter', '.oe_systray > div:not([data-tipsy=true])', function() {
|
||||
this.$el.on('mouseenter', '.oe_systray > div:not([data-tipsy=true])', function() {
|
||||
$(this).attr('data-tipsy', 'true').tipsy().trigger('mouseenter');
|
||||
});
|
||||
this.$element.on('click', '.oe_dropdown_toggle', function(ev) {
|
||||
this.$el.on('click', '.oe_dropdown_toggle', function(ev) {
|
||||
ev.preventDefault();
|
||||
var $toggle = $(this);
|
||||
var $menu = $toggle.siblings('.oe_dropdown_menu');
|
||||
@@ -948,7 +934,7 @@ instance.web.Client = instance.web.Widget.extend({
|
||||
instance.web.bus.on('click', this, function(ev) {
|
||||
$.fn.tipsy.clear();
|
||||
if (!$(ev.target).is('input[type=file]')) {
|
||||
self.$element.find('.oe_dropdown_menu.oe_opened, .oe_dropdown_toggle.oe_opened').removeClass('oe_opened');
|
||||
self.$el.find('.oe_dropdown_menu.oe_opened, .oe_dropdown_toggle.oe_opened').removeClass('oe_opened');
|
||||
}
|
||||
});
|
||||
},
|
||||
@@ -957,9 +943,9 @@ instance.web.Client = instance.web.Widget.extend({
|
||||
this.crashmanager = new instance.web.CrashManager();
|
||||
instance.session.on_rpc_error.add(this.crashmanager.on_rpc_error);
|
||||
self.notification = new instance.web.Notification(this);
|
||||
self.notification.appendTo(self.$element);
|
||||
self.notification.appendTo(self.$el);
|
||||
self.loading = new instance.web.Loading(self);
|
||||
self.loading.appendTo(self.$element);
|
||||
self.loading.appendTo(self.$el);
|
||||
self.action_manager = new instance.web.ActionManager(self);
|
||||
self.action_manager.appendTo(self.$('.oe_application'));
|
||||
},
|
||||
@@ -1029,25 +1015,21 @@ instance.web.WebClient = instance.web.Client.extend({
|
||||
var self = this;
|
||||
self.toggle_bars(true);
|
||||
self.menu = new instance.web.Menu(self);
|
||||
self.menu.replace(this.$element.find('.oe_menu_placeholder'));
|
||||
self.menu.replace(this.$el.find('.oe_menu_placeholder'));
|
||||
self.menu.on('menu_click', this, this.on_menu_action);
|
||||
self.user_menu = new instance.web.UserMenu(self);
|
||||
self.user_menu.replace(this.$element.find('.oe_user_menu_placeholder'));
|
||||
self.user_menu.replace(this.$el.find('.oe_user_menu_placeholder'));
|
||||
self.user_menu.on_menu_logout.add(this.proxy('on_logout'));
|
||||
self.user_menu.on_action.add(this.proxy('on_menu_action'));
|
||||
self.user_menu.do_update();
|
||||
self.bind_hashchange();
|
||||
if (!self.session.openerp_entreprise) {
|
||||
var version_label = _t("OpenERP - Unsupported/Community Version");
|
||||
self.$element.find('.oe_footer_powered').append(_.str.sprintf('<span> - <a href="http://www.openerp.com/support-or-publisher-warranty-contract" target="_blank">%s</a></span>', version_label));
|
||||
}
|
||||
self.set_title();
|
||||
},
|
||||
destroy_content: function() {
|
||||
_.each(_.clone(this.getChildren()), function(el) {
|
||||
el.destroy();
|
||||
});
|
||||
this.$element.children().remove();
|
||||
this.$el.children().remove();
|
||||
},
|
||||
do_reload: function() {
|
||||
var self = this;
|
||||
@@ -1079,7 +1061,7 @@ instance.web.WebClient = instance.web.Client.extend({
|
||||
var state = $.bbq.getState(true);
|
||||
if (_.isEmpty(state) || state.action == "login") {
|
||||
self.menu.has_been_loaded.then(function() {
|
||||
var first_menu_id = self.menu.$element.find("a:first").data("menu");
|
||||
var first_menu_id = self.menu.$el.find("a:first").data("menu");
|
||||
if(first_menu_id) {
|
||||
self.menu.menu_click(first_menu_id);
|
||||
}
|
||||
@@ -1134,10 +1116,10 @@ instance.web.WebClient = instance.web.Client.extend({
|
||||
},
|
||||
set_content_full_screen: function(fullscreen) {
|
||||
if (fullscreen) {
|
||||
$(".oe_webclient", this.$element).addClass("oe_content_full_screen");
|
||||
$(".oe_webclient", this.$el).addClass("oe_content_full_screen");
|
||||
$("body").css({'overflow-y':'hidden'});
|
||||
} else {
|
||||
$(".oe_webclient", this.$element).removeClass("oe_content_full_screen");
|
||||
$(".oe_webclient", this.$el).removeClass("oe_content_full_screen");
|
||||
$("body").css({'overflow-y':'scroll'});
|
||||
}
|
||||
}
|
||||
|
||||
@@ -525,8 +525,8 @@ instance.web.WidgetMixin = _.extend({},instance.web.CallbackEnabledMixin, {
|
||||
_.each(this.getChildren(), function(el) {
|
||||
el.destroy();
|
||||
});
|
||||
if(this.$element) {
|
||||
this.$element.remove();
|
||||
if(this.$el) {
|
||||
this.$el.remove();
|
||||
}
|
||||
instance.web.PropertiesMixin.destroy.call(this);
|
||||
},
|
||||
@@ -538,7 +538,7 @@ instance.web.WidgetMixin = _.extend({},instance.web.CallbackEnabledMixin, {
|
||||
appendTo: function(target) {
|
||||
var self = this;
|
||||
return this.__widgetRenderAndInsert(function(t) {
|
||||
self.$element.appendTo(t);
|
||||
self.$el.appendTo(t);
|
||||
}, target);
|
||||
},
|
||||
/**
|
||||
@@ -549,7 +549,7 @@ instance.web.WidgetMixin = _.extend({},instance.web.CallbackEnabledMixin, {
|
||||
prependTo: function(target) {
|
||||
var self = this;
|
||||
return this.__widgetRenderAndInsert(function(t) {
|
||||
self.$element.prependTo(t);
|
||||
self.$el.prependTo(t);
|
||||
}, target);
|
||||
},
|
||||
/**
|
||||
@@ -560,7 +560,7 @@ instance.web.WidgetMixin = _.extend({},instance.web.CallbackEnabledMixin, {
|
||||
insertAfter: function(target) {
|
||||
var self = this;
|
||||
return this.__widgetRenderAndInsert(function(t) {
|
||||
self.$element.insertAfter(t);
|
||||
self.$el.insertAfter(t);
|
||||
}, target);
|
||||
},
|
||||
/**
|
||||
@@ -571,7 +571,7 @@ instance.web.WidgetMixin = _.extend({},instance.web.CallbackEnabledMixin, {
|
||||
insertBefore: function(target) {
|
||||
var self = this;
|
||||
return this.__widgetRenderAndInsert(function(t) {
|
||||
self.$element.insertBefore(t);
|
||||
self.$el.insertBefore(t);
|
||||
}, target);
|
||||
},
|
||||
/**
|
||||
@@ -581,7 +581,7 @@ instance.web.WidgetMixin = _.extend({},instance.web.CallbackEnabledMixin, {
|
||||
*/
|
||||
replace: function(target) {
|
||||
return this.__widgetRenderAndInsert(_.bind(function(t) {
|
||||
this.$element.replaceAll(t);
|
||||
this.$el.replaceAll(t);
|
||||
}, this), target);
|
||||
},
|
||||
__widgetRenderAndInsert: function(insertion, target) {
|
||||
@@ -640,8 +640,8 @@ instance.web.CallbackEnabled = instance.web.Class.extend(instance.web.CallbackEn
|
||||
* // stuff that you want to init before the rendering
|
||||
* },
|
||||
* start: function() {
|
||||
* // stuff you want to make after the rendering, `this.$element` holds a correct value
|
||||
* this.$element.find(".my_button").click(/* an example of event binding * /);
|
||||
* // stuff you want to make after the rendering, `this.$el` holds a correct value
|
||||
* this.$el.find(".my_button").click(/* an example of event binding * /);
|
||||
*
|
||||
* // if you have some asynchronous operations, it's a good idea to return
|
||||
* // a promise in start()
|
||||
@@ -718,15 +718,15 @@ instance.web.Widget = instance.web.Class.extend(instance.web.WidgetMixin, {
|
||||
* @returns {*} this
|
||||
*/
|
||||
replaceElement: function ($el) {
|
||||
var $oldel = this.$element;
|
||||
var $oldel = this.$el;
|
||||
this.setElement($el);
|
||||
if ($oldel && !$oldel.is(this.$element)) {
|
||||
$oldel.replaceWith(this.$element);
|
||||
if ($oldel && !$oldel.is(this.$el)) {
|
||||
$oldel.replaceWith(this.$el);
|
||||
}
|
||||
return this;
|
||||
},
|
||||
/**
|
||||
* Re-sets the widget's root element (el/$el/$element).
|
||||
* Re-sets the widget's root element (el/$el/$el).
|
||||
*
|
||||
* Includes:
|
||||
* * re-delegating events
|
||||
@@ -738,14 +738,14 @@ instance.web.Widget = instance.web.Class.extend(instance.web.WidgetMixin, {
|
||||
* @return {*} this
|
||||
*/
|
||||
setElement: function (element) {
|
||||
// NB: completely useless, as WidgetMixin#init creates a $element
|
||||
// NB: completely useless, as WidgetMixin#init creates a $el
|
||||
// always
|
||||
if (this.$element) {
|
||||
if (this.$el) {
|
||||
this.undelegateEvents();
|
||||
}
|
||||
|
||||
this.$element = (element instanceof $) ? element : $(element);
|
||||
this.el = this.$element[0];
|
||||
this.$el = (element instanceof $) ? element : $(element);
|
||||
this.el = this.$el[0];
|
||||
|
||||
this.delegateEvents();
|
||||
|
||||
@@ -797,23 +797,23 @@ instance.web.Widget = instance.web.Class.extend(instance.web.WidgetMixin, {
|
||||
|
||||
event += '.widget_events';
|
||||
if (!selector) {
|
||||
this.$element.on(event, method);
|
||||
this.$el.on(event, method);
|
||||
} else {
|
||||
this.$element.on(event, selector, method);
|
||||
this.$el.on(event, selector, method);
|
||||
}
|
||||
}
|
||||
},
|
||||
undelegateEvents: function () {
|
||||
this.$element.off('.widget_events');
|
||||
this.$el.off('.widget_events');
|
||||
},
|
||||
/**
|
||||
* Shortcut for ``this.$element.find(selector)``
|
||||
* Shortcut for ``this.$el.find(selector)``
|
||||
*
|
||||
* @param {String} selector CSS selector, rooted in $el
|
||||
* @returns {jQuery} selector match
|
||||
*/
|
||||
$: function(selector) {
|
||||
return this.$element.find(selector);
|
||||
return this.$el.find(selector);
|
||||
},
|
||||
/**
|
||||
* Informs the action manager to do an action. This supposes that
|
||||
|
||||
@@ -35,7 +35,6 @@ instance.web.Session = instance.web.JsonRPC.extend( /** @lends instance.web.Sess
|
||||
this.username = false;
|
||||
this.user_context= {};
|
||||
this.db = false;
|
||||
this.openerp_entreprise = false;
|
||||
this.module_list = instance._modules.slice();
|
||||
this.module_loaded = {};
|
||||
_(this.module_list).each(function (mod) {
|
||||
@@ -78,8 +77,7 @@ instance.web.Session = instance.web.JsonRPC.extend( /** @lends instance.web.Sess
|
||||
db: result.db,
|
||||
username: result.login,
|
||||
uid: result.uid,
|
||||
user_context: result.context,
|
||||
openerp_entreprise: result.openerp_entreprise
|
||||
user_context: result.context
|
||||
});
|
||||
});
|
||||
},
|
||||
@@ -103,8 +101,7 @@ instance.web.Session = instance.web.JsonRPC.extend( /** @lends instance.web.Sess
|
||||
db: result.db,
|
||||
username: result.login,
|
||||
uid: result.uid,
|
||||
user_context: result.context,
|
||||
openerp_entreprise: result.openerp_entreprise
|
||||
user_context: result.context
|
||||
});
|
||||
if (!_volatile) {
|
||||
self.set_cookie('session_id', self.session_id);
|
||||
@@ -520,57 +517,6 @@ $.async_when = function() {
|
||||
return old_async_when.apply(this, arguments);
|
||||
};
|
||||
|
||||
/** Setup blockui */
|
||||
if ($.blockUI) {
|
||||
$.blockUI.defaults.baseZ = 1100;
|
||||
$.blockUI.defaults.message = '<div class="oe_blockui_spin_container">';
|
||||
$.blockUI.defaults.css.border = '0';
|
||||
$.blockUI.defaults.css["background-color"] = '';
|
||||
}
|
||||
|
||||
instance.web.Throbber = instance.web.Widget.extend({
|
||||
template: "Throbber",
|
||||
start: function() {
|
||||
var opts = {
|
||||
lines: 13, // The number of lines to draw
|
||||
length: 7, // The length of each line
|
||||
width: 4, // The line thickness
|
||||
radius: 10, // The radius of the inner circle
|
||||
rotate: 0, // The rotation offset
|
||||
color: '#FFF', // #rgb or #rrggbb
|
||||
speed: 1, // Rounds per second
|
||||
trail: 60, // Afterglow percentage
|
||||
shadow: false, // Whether to render a shadow
|
||||
hwaccel: false, // Whether to use hardware acceleration
|
||||
className: 'spinner', // The CSS class to assign to the spinner
|
||||
zIndex: 2e9, // The z-index (defaults to 2000000000)
|
||||
top: 'auto', // Top position relative to parent in px
|
||||
left: 'auto' // Left position relative to parent in px
|
||||
};
|
||||
this.spin = new Spinner(opts).spin(this.$element[0]);
|
||||
},
|
||||
destroy: function() {
|
||||
if (this.spin)
|
||||
this.spin.stop();
|
||||
this._super();
|
||||
},
|
||||
});
|
||||
instance.web.Throbber.throbbers = [];
|
||||
|
||||
instance.web.blockUI = function() {
|
||||
var tmp = $.blockUI.apply($, arguments);
|
||||
var throbber = new instance.web.Throbber();
|
||||
instance.web.Throbber.throbbers.push(throbber);
|
||||
throbber.appendTo($(".oe_blockui_spin_container"));
|
||||
return tmp;
|
||||
}
|
||||
instance.web.unblockUI = function() {
|
||||
_.each(instance.web.Throbber.throbbers, function(el) {
|
||||
el.destroy();
|
||||
});
|
||||
return $.unblockUI.apply($, arguments);
|
||||
}
|
||||
|
||||
/** Setup default session */
|
||||
instance.session = new instance.web.Session();
|
||||
|
||||
@@ -654,6 +600,86 @@ instance.session.on('module_loaded', this, function () {
|
||||
$.timeago.settings.translator = instance.web._t;
|
||||
});
|
||||
|
||||
/** Setup blockui */
|
||||
if ($.blockUI) {
|
||||
$.blockUI.defaults.baseZ = 1100;
|
||||
$.blockUI.defaults.message = '<div class="oe_blockui_spin_container">';
|
||||
$.blockUI.defaults.css.border = '0';
|
||||
$.blockUI.defaults.css["background-color"] = '';
|
||||
}
|
||||
|
||||
var messages_by_seconds = function() {
|
||||
return [
|
||||
[0, _t("Loading...")],
|
||||
[30, _t("Still loading...")],
|
||||
[60, _t("Still loading...<br />Please be patient.")],
|
||||
[120, _t("Don't leave yet,<br />it's still loading...")],
|
||||
[300, _t("You may not believe it,<br />but the application is actually loading...")],
|
||||
[600, _t("You know, sometimes,<br />OpenERP can be a little bit slow,<br />because it's loading...")],
|
||||
[3600, _t("Maybe you should consider pressing F5...")],
|
||||
];
|
||||
};
|
||||
|
||||
instance.web.Throbber = instance.web.Widget.extend({
|
||||
template: "Throbber",
|
||||
start: function() {
|
||||
var opts = {
|
||||
lines: 13, // The number of lines to draw
|
||||
length: 7, // The length of each line
|
||||
width: 4, // The line thickness
|
||||
radius: 10, // The radius of the inner circle
|
||||
rotate: 0, // The rotation offset
|
||||
color: '#FFF', // #rgb or #rrggbb
|
||||
speed: 1, // Rounds per second
|
||||
trail: 60, // Afterglow percentage
|
||||
shadow: false, // Whether to render a shadow
|
||||
hwaccel: false, // Whether to use hardware acceleration
|
||||
className: 'spinner', // The CSS class to assign to the spinner
|
||||
zIndex: 2e9, // The z-index (defaults to 2000000000)
|
||||
top: 'auto', // Top position relative to parent in px
|
||||
left: 'auto' // Left position relative to parent in px
|
||||
};
|
||||
this.spin = new Spinner(opts).spin(this.$el[0]);
|
||||
this.start_time = new Date().getTime();
|
||||
this.act_message();
|
||||
},
|
||||
act_message: function() {
|
||||
var self = this;
|
||||
setTimeout(function() {
|
||||
if (self.isDestroyed())
|
||||
return;
|
||||
var seconds = (new Date().getTime() - self.start_time) / 1000;
|
||||
var mes;
|
||||
_.each(messages_by_seconds(), function(el) {
|
||||
if (seconds >= el[0])
|
||||
mes = el[1];
|
||||
});
|
||||
self.$(".oe_throbber_message").html(mes);
|
||||
self.act_message();
|
||||
}, 1000);
|
||||
},
|
||||
destroy: function() {
|
||||
if (this.spin)
|
||||
this.spin.stop();
|
||||
this._super();
|
||||
},
|
||||
});
|
||||
instance.web.Throbber.throbbers = [];
|
||||
|
||||
instance.web.blockUI = function() {
|
||||
var tmp = $.blockUI.apply($, arguments);
|
||||
var throbber = new instance.web.Throbber();
|
||||
instance.web.Throbber.throbbers.push(throbber);
|
||||
throbber.appendTo($(".oe_blockui_spin_container"));
|
||||
return tmp;
|
||||
}
|
||||
instance.web.unblockUI = function() {
|
||||
_.each(instance.web.Throbber.throbbers, function(el) {
|
||||
el.destroy();
|
||||
});
|
||||
return $.unblockUI.apply($, arguments);
|
||||
}
|
||||
|
||||
/**
|
||||
* Registry for all the client actions key: tag value: widget
|
||||
*/
|
||||
|
||||
@@ -21,31 +21,31 @@ instance.web.DataExport = instance.web.Dialog.extend({
|
||||
],
|
||||
close: function(event, ui){ self.close();}
|
||||
});
|
||||
self.$element.removeClass('ui-dialog-content ui-widget-content');
|
||||
self.$element.find('#add_field').click(function() {
|
||||
self.$el.removeClass('ui-dialog-content ui-widget-content');
|
||||
self.$el.find('#add_field').click(function() {
|
||||
if ($('#field-tree-structure tr.ui-selected')) {
|
||||
var fld = self.$element.find('#field-tree-structure tr.ui-selected').find('a');
|
||||
var fld = self.$el.find('#field-tree-structure tr.ui-selected').find('a');
|
||||
for (var i = 0; i < fld.length; i++) {
|
||||
var id = $(fld[i]).attr('id').split('-')[1];
|
||||
var string = $(fld[i]).attr('string');
|
||||
self.add_field(id, string);
|
||||
}
|
||||
self.$element.find('#field-tree-structure tr').removeClass('ui-selected');
|
||||
self.$el.find('#field-tree-structure tr').removeClass('ui-selected');
|
||||
}
|
||||
});
|
||||
self.$element.find('#remove_field').click(function() {
|
||||
self.$element.find('#fields_list option:selected').remove();
|
||||
self.$el.find('#remove_field').click(function() {
|
||||
self.$el.find('#fields_list option:selected').remove();
|
||||
});
|
||||
self.$element.find('#remove_all_field').click(function() {
|
||||
self.$element.find('#fields_list').empty();
|
||||
self.$el.find('#remove_all_field').click(function() {
|
||||
self.$el.find('#fields_list').empty();
|
||||
});
|
||||
this.$element.find('#export_new_list').click(this.on_show_save_list);
|
||||
this.$el.find('#export_new_list').click(this.on_show_save_list);
|
||||
|
||||
var got_fields = new $.Deferred();
|
||||
this.$element.find('#import_compat').change(function() {
|
||||
self.$element.find('#fields_list').empty();
|
||||
self.$element.find('#field-tree-structure').remove();
|
||||
var import_comp = self.$element.find("#import_compat").val();
|
||||
this.$el.find('#import_compat').change(function() {
|
||||
self.$el.find('#fields_list').empty();
|
||||
self.$el.find('#field-tree-structure').remove();
|
||||
var import_comp = self.$el.find("#import_compat").val();
|
||||
self.rpc("/web/export/get_fields", {
|
||||
model: self.dataset.model,
|
||||
import_compat: Boolean(import_comp)
|
||||
@@ -61,7 +61,7 @@ instance.web.DataExport = instance.web.Dialog.extend({
|
||||
this.show_exports_list());
|
||||
},
|
||||
do_setup_export_formats: function (formats) {
|
||||
var $fmts = this.$element.find('#export_format');
|
||||
var $fmts = this.$el.find('#export_format');
|
||||
_(formats).each(function (format) {
|
||||
var opt = new Option(format.label, format.tag);
|
||||
if (format.error) {
|
||||
@@ -76,8 +76,8 @@ instance.web.DataExport = instance.web.Dialog.extend({
|
||||
},
|
||||
show_exports_list: function() {
|
||||
var self = this;
|
||||
if (self.$element.find('#saved_export_list').is(':hidden')) {
|
||||
self.$element.find('#ExistsExportList').show();
|
||||
if (self.$el.find('#saved_export_list').is(':hidden')) {
|
||||
self.$el.find('#ExistsExportList').show();
|
||||
return;
|
||||
}
|
||||
return this.exports.read_slice(['name'], {
|
||||
@@ -86,35 +86,35 @@ instance.web.DataExport = instance.web.Dialog.extend({
|
||||
if (!export_list.length) {
|
||||
return;
|
||||
}
|
||||
self.$element.find('#ExistsExportList').append(QWeb.render('Exists.ExportList', {'existing_exports': export_list}));
|
||||
self.$element.find('#saved_export_list').change(function() {
|
||||
self.$element.find('#fields_list option').remove();
|
||||
var export_id = self.$element.find('#saved_export_list option:selected').val();
|
||||
self.$el.find('#ExistsExportList').append(QWeb.render('Exists.ExportList', {'existing_exports': export_list}));
|
||||
self.$el.find('#saved_export_list').change(function() {
|
||||
self.$el.find('#fields_list option').remove();
|
||||
var export_id = self.$el.find('#saved_export_list option:selected').val();
|
||||
if (export_id) {
|
||||
self.rpc('/web/export/namelist', {'model': self.dataset.model, export_id: parseInt(export_id)}, self.do_load_export_field);
|
||||
}
|
||||
});
|
||||
self.$element.find('#delete_export_list').click(function() {
|
||||
var select_exp = self.$element.find('#saved_export_list option:selected');
|
||||
self.$el.find('#delete_export_list').click(function() {
|
||||
var select_exp = self.$el.find('#saved_export_list option:selected');
|
||||
if (select_exp.val()) {
|
||||
self.exports.unlink([parseInt(select_exp.val(), 10)]);
|
||||
select_exp.remove();
|
||||
if (self.$element.find('#saved_export_list option').length <= 1) {
|
||||
self.$element.find('#ExistsExportList').hide();
|
||||
if (self.$el.find('#saved_export_list option').length <= 1) {
|
||||
self.$el.find('#ExistsExportList').hide();
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
},
|
||||
do_load_export_field: function(field_list) {
|
||||
var export_node = this.$element.find("#fields_list");
|
||||
var export_node = this.$el.find("#fields_list");
|
||||
_(field_list).each(function (field) {
|
||||
export_node.append(new Option(field.label, field.name));
|
||||
});
|
||||
},
|
||||
on_show_save_list: function() {
|
||||
var self = this;
|
||||
var current_node = self.$element.find("#savenewlist");
|
||||
var current_node = self.$el.find("#savenewlist");
|
||||
if (!(current_node.find("label")).length) {
|
||||
current_node.append(QWeb.render('ExportNewList'));
|
||||
current_node.find("#add_export_list").click(function() {
|
||||
@@ -150,14 +150,14 @@ instance.web.DataExport = instance.web.Dialog.extend({
|
||||
if (!export_list_id.result) {
|
||||
return;
|
||||
}
|
||||
self.$element.find("#saved_export_list").append(
|
||||
self.$el.find("#saved_export_list").append(
|
||||
new Option(value, export_list_id.result));
|
||||
if (self.$element.find("#saved_export_list").is(":hidden")) {
|
||||
if (self.$el.find("#saved_export_list").is(":hidden")) {
|
||||
self.show_exports_list();
|
||||
}
|
||||
});
|
||||
this.on_show_save_list();
|
||||
this.$element.find("#fields_list option").remove();
|
||||
this.$el.find("#fields_list option").remove();
|
||||
},
|
||||
on_click: function(id, record) {
|
||||
var self = this;
|
||||
@@ -173,7 +173,7 @@ instance.web.DataExport = instance.web.Dialog.extend({
|
||||
}
|
||||
|
||||
if (!record.loaded) {
|
||||
var import_comp = self.$element.find("#import_compat").val();
|
||||
var import_comp = self.$el.find("#import_compat").val();
|
||||
self.rpc("/web/export/get_fields", {
|
||||
model: model,
|
||||
prefix: prefix,
|
||||
@@ -191,44 +191,44 @@ instance.web.DataExport = instance.web.Dialog.extend({
|
||||
},
|
||||
on_show_data: function(result, after) {
|
||||
var self = this;
|
||||
var imp_cmpt = Boolean(self.$element.find("#import_compat").val());
|
||||
var imp_cmpt = Boolean(self.$el.find("#import_compat").val());
|
||||
|
||||
if (after) {
|
||||
var current_tr = self.$element.find("tr[id='treerow-" + after + "']");
|
||||
var current_tr = self.$el.find("tr[id='treerow-" + after + "']");
|
||||
current_tr.addClass('open');
|
||||
current_tr.find('img').attr('src','/web/static/src/img/collapse.gif');
|
||||
current_tr.after(QWeb.render('ExportTreeView-Secondary.children', {'fields': result}));
|
||||
} else {
|
||||
self.$element.find('#left_field_panel').append(QWeb.render('ExportTreeView-Secondary', {'fields': result}));
|
||||
self.$el.find('#left_field_panel').append(QWeb.render('ExportTreeView-Secondary', {'fields': result}));
|
||||
}
|
||||
_.each(result, function(record) {
|
||||
self.records[record.id] = record.value;
|
||||
if (record.required) {
|
||||
var required_fld = self.$element.find("tr[id='treerow-" + record.id + "']").find('#tree-column');
|
||||
var required_fld = self.$el.find("tr[id='treerow-" + record.id + "']").find('#tree-column');
|
||||
required_fld.addClass("oe_export_requiredfield");
|
||||
}
|
||||
self.$element.find("img[id='parentimg-" + record.id +"']").click(function() {
|
||||
self.$el.find("img[id='parentimg-" + record.id +"']").click(function() {
|
||||
self.on_click(this.id, record);
|
||||
});
|
||||
|
||||
self.$element.find("tr[id='treerow-" + record.id + "']").click(function(e) {
|
||||
self.$el.find("tr[id='treerow-" + record.id + "']").click(function(e) {
|
||||
if (e.shiftKey) {
|
||||
var frst_click, scnd_click = '';
|
||||
if (self.row_index == 0) {
|
||||
self.row_index = this.rowIndex;
|
||||
frst_click = self.$element.find("tr[id^='treerow-']")[self.row_index-1];
|
||||
frst_click = self.$el.find("tr[id^='treerow-']")[self.row_index-1];
|
||||
$(frst_click).addClass("ui-selected");
|
||||
} else {
|
||||
if (this.rowIndex >=self.row_index) {
|
||||
for (var i = (self.row_index-1); i < this.rowIndex; i++) {
|
||||
scnd_click = self.$element.find("tr[id^='treerow-']")[i];
|
||||
scnd_click = self.$el.find("tr[id^='treerow-']")[i];
|
||||
if (!$(scnd_click).find('#tree-column').hasClass("oe_export_readonlyfield")) {
|
||||
$(scnd_click).addClass("ui-selected");
|
||||
}
|
||||
}
|
||||
} else {
|
||||
for (var i = (self.row_index-1); i >= (this.rowIndex-1); i--) {
|
||||
scnd_click = self.$element.find("tr[id^='treerow-']")[i];
|
||||
scnd_click = self.$el.find("tr[id^='treerow-']")[i];
|
||||
if (!$(scnd_click).find('#tree-column').hasClass("oe_export_readonlyfield")) {
|
||||
$(scnd_click).addClass("ui-selected");
|
||||
}
|
||||
@@ -238,10 +238,10 @@ instance.web.DataExport = instance.web.Dialog.extend({
|
||||
}
|
||||
self.row_index = this.rowIndex;
|
||||
|
||||
self.$element.find("tr[id='treerow-" + record.id + "']").keyup(function() {
|
||||
self.$el.find("tr[id='treerow-" + record.id + "']").keyup(function() {
|
||||
self.row_index = 0;
|
||||
});
|
||||
var o2m_selection = self.$element.find("tr[id='treerow-" + record.id + "']").find('#tree-column');
|
||||
var o2m_selection = self.$el.find("tr[id='treerow-" + record.id + "']").find('#tree-column');
|
||||
if ($(o2m_selection).hasClass("oe_export_readonlyfield")) {
|
||||
return false;
|
||||
}
|
||||
@@ -252,14 +252,14 @@ instance.web.DataExport = instance.web.Dialog.extend({
|
||||
$(this).addClass('ui-selected').find('a').focus();
|
||||
}
|
||||
} else if (!e.shiftKey) {
|
||||
self.$element.find("tr.ui-selected")
|
||||
self.$el.find("tr.ui-selected")
|
||||
.removeClass("ui-selected").find('a').blur();
|
||||
$(this).addClass("ui-selected").find('a').focus();
|
||||
}
|
||||
return false;
|
||||
});
|
||||
|
||||
self.$element.find("tr[id='treerow-" + record.id + "']").keydown(function(e) {
|
||||
self.$el.find("tr[id='treerow-" + record.id + "']").keydown(function(e) {
|
||||
var keyCode = e.keyCode || e.which;
|
||||
var arrow = {left: 37, up: 38, right: 39, down: 40 };
|
||||
switch (keyCode) {
|
||||
@@ -297,19 +297,19 @@ instance.web.DataExport = instance.web.Dialog.extend({
|
||||
break;
|
||||
}
|
||||
});
|
||||
self.$element.find("tr[id='treerow-" + record.id + "']").dblclick(function() {
|
||||
var $o2m_selection = self.$element.find("tr[id^='treerow-" + record.id + "']").find('#tree-column');
|
||||
self.$el.find("tr[id='treerow-" + record.id + "']").dblclick(function() {
|
||||
var $o2m_selection = self.$el.find("tr[id^='treerow-" + record.id + "']").find('#tree-column');
|
||||
if (!$o2m_selection.hasClass("oe_export_readonlyfield")) {
|
||||
self.add_field(record.id, $(this).find("a").attr("string"));
|
||||
}
|
||||
});
|
||||
});
|
||||
self.$element.find('#fields_list').mouseover(function(event) {
|
||||
self.$el.find('#fields_list').mouseover(function(event) {
|
||||
if (event.relatedTarget) {
|
||||
if (event.relatedTarget.attributes['id'] && event.relatedTarget.attributes['string']) {
|
||||
var field_id = event.relatedTarget.attributes["id"]["value"];
|
||||
if (field_id && field_id.split("-")[0] === 'export') {
|
||||
if (!self.$element.find("tr[id='treerow-" + field_id.split("-")[1] + "']").find('#tree-column').hasClass("oe_export_readonlyfield")) {
|
||||
if (!self.$el.find("tr[id='treerow-" + field_id.split("-")[1] + "']").find('#tree-column').hasClass("oe_export_readonlyfield")) {
|
||||
self.add_field(field_id.split("-")[1], event.relatedTarget.attributes["string"]["value"]);
|
||||
}
|
||||
}
|
||||
@@ -319,7 +319,7 @@ instance.web.DataExport = instance.web.Dialog.extend({
|
||||
},
|
||||
showcontent: function(id) {
|
||||
// show & hide the contents
|
||||
var $this = this.$element.find("tr[id='treerow-" + id + "']");
|
||||
var $this = this.$el.find("tr[id='treerow-" + id + "']");
|
||||
var is_open = $this.hasClass('open');
|
||||
$this.toggleClass('open');
|
||||
|
||||
@@ -329,7 +329,7 @@ instance.web.DataExport = instance.web.Dialog.extend({
|
||||
} else {
|
||||
first_child.attr('src', '/web/static/src/img/collapse.gif');
|
||||
}
|
||||
var child_field = this.$element.find("tr[id^='treerow-" + id +"/']");
|
||||
var child_field = this.$el.find("tr[id^='treerow-" + id +"/']");
|
||||
var child_len = (id.split("/")).length + 1;
|
||||
for (var i = 0; i < child_field.length; i++) {
|
||||
var $child = $(child_field[i]);
|
||||
@@ -345,15 +345,15 @@ instance.web.DataExport = instance.web.Dialog.extend({
|
||||
}
|
||||
},
|
||||
add_field: function(field_id, string) {
|
||||
var field_list = this.$element.find('#fields_list');
|
||||
if (this.$element.find("#fields_list option[value='" + field_id + "']")
|
||||
&& !this.$element.find("#fields_list option[value='" + field_id + "']").length) {
|
||||
var field_list = this.$el.find('#fields_list');
|
||||
if (this.$el.find("#fields_list option[value='" + field_id + "']")
|
||||
&& !this.$el.find("#fields_list option[value='" + field_id + "']").length) {
|
||||
field_list.append(new Option(string, field_id));
|
||||
}
|
||||
},
|
||||
get_fields: function() {
|
||||
var export_field = [];
|
||||
this.$element.find("#fields_list option").each(function() {
|
||||
this.$el.find("#fields_list option").each(function() {
|
||||
export_field.push($(this).val());
|
||||
});
|
||||
if (!export_field.length) {
|
||||
@@ -363,7 +363,7 @@ instance.web.DataExport = instance.web.Dialog.extend({
|
||||
},
|
||||
on_click_export_data: function() {
|
||||
var self = this;
|
||||
var exported_fields = this.$element.find('#fields_list option').map(function () {
|
||||
var exported_fields = this.$el.find('#fields_list option').map(function () {
|
||||
// DOM property is textContent, but IE8 only knows innerText
|
||||
return {name: self.records[this.value] || this.value,
|
||||
label: this.textContent || this.innerText};
|
||||
@@ -375,7 +375,7 @@ instance.web.DataExport = instance.web.Dialog.extend({
|
||||
}
|
||||
|
||||
exported_fields.unshift({name: 'id', label: 'External ID'});
|
||||
var export_format = this.$element.find("#export_format").val();
|
||||
var export_format = this.$el.find("#export_format").val();
|
||||
instance.web.blockUI();
|
||||
this.session.get_file({
|
||||
url: '/web/export/' + export_format,
|
||||
@@ -385,13 +385,13 @@ instance.web.DataExport = instance.web.Dialog.extend({
|
||||
ids: this.dataset.ids,
|
||||
domain: this.dataset.domain,
|
||||
import_compat: Boolean(
|
||||
this.$element.find("#import_compat").val())
|
||||
this.$el.find("#import_compat").val())
|
||||
})},
|
||||
complete: instance.web.unblockUI
|
||||
});
|
||||
},
|
||||
close: function() {
|
||||
this.$element.remove();
|
||||
this.$el.remove();
|
||||
this._super();
|
||||
}
|
||||
});
|
||||
|
||||
@@ -75,9 +75,9 @@ instance.web.DataImport = instance.web.Dialog.extend({
|
||||
}
|
||||
});
|
||||
this.toggle_import_button(false);
|
||||
this.$element.find('#csvfile').change(this.on_autodetect_data);
|
||||
this.$element.find('fieldset').change(this.on_autodetect_data);
|
||||
this.$element.delegate('fieldset legend', 'click', function() {
|
||||
this.$el.find('#csvfile').change(this.on_autodetect_data);
|
||||
this.$el.find('fieldset').change(this.on_autodetect_data);
|
||||
this.$el.delegate('fieldset legend', 'click', function() {
|
||||
$(this).parent().toggleClass('oe_closed');
|
||||
});
|
||||
this.ready.push(new instance.web.DataSet(this, this.model).call(
|
||||
@@ -156,19 +156,19 @@ instance.web.DataImport = instance.web.Dialog.extend({
|
||||
});
|
||||
},
|
||||
toggle_import_button: function (newstate) {
|
||||
instance.web.dialog(this.$element, 'widget')
|
||||
instance.web.dialog(this.$el, 'widget')
|
||||
.find('.oe_import_dialog_button')
|
||||
.button('option', 'disabled', !newstate);
|
||||
},
|
||||
do_import: function() {
|
||||
if(!this.$element.find('#csvfile').val()) { return; }
|
||||
var lines_to_skip = parseInt(this.$element.find('#csv_skip').val(), 10);
|
||||
var with_headers = this.$element.find('#file_has_headers').prop('checked');
|
||||
if(!this.$el.find('#csvfile').val()) { return; }
|
||||
var lines_to_skip = parseInt(this.$el.find('#csv_skip').val(), 10);
|
||||
var with_headers = this.$el.find('#file_has_headers').prop('checked');
|
||||
if (!lines_to_skip && with_headers) {
|
||||
lines_to_skip = 1;
|
||||
}
|
||||
var indices = [], fields = [];
|
||||
this.$element.find(".sel_fields").each(function(index, element) {
|
||||
this.$el.find(".sel_fields").each(function(index, element) {
|
||||
var val = element.value;
|
||||
if (!val) {
|
||||
return;
|
||||
@@ -177,7 +177,7 @@ instance.web.DataImport = instance.web.Dialog.extend({
|
||||
fields.push(val);
|
||||
});
|
||||
|
||||
jsonp(this.$element.find('#import_data'), {
|
||||
jsonp(this.$el.find('#import_data'), {
|
||||
url: '/web/import/import_data',
|
||||
data: {
|
||||
model: this.model,
|
||||
@@ -190,19 +190,19 @@ instance.web.DataImport = instance.web.Dialog.extend({
|
||||
}, this.on_import_results);
|
||||
},
|
||||
on_autodetect_data: function() {
|
||||
if(!this.$element.find('#csvfile').val()) { return; }
|
||||
jsonp(this.$element.find('#import_data'), {
|
||||
if(!this.$el.find('#csvfile').val()) { return; }
|
||||
jsonp(this.$el.find('#import_data'), {
|
||||
url: '/web/import/detect_data'
|
||||
}, this.on_import_results);
|
||||
},
|
||||
on_import_results: function(results) {
|
||||
this.$element.find('#result').empty();
|
||||
var headers, result_node = this.$element.find("#result");
|
||||
this.$el.find('#result').empty();
|
||||
var headers, result_node = this.$el.find("#result");
|
||||
|
||||
if (results['error']) {
|
||||
result_node.append(QWeb.render('ImportView.error', {
|
||||
'error': results['error']}));
|
||||
this.$element.find('fieldset').removeClass('oe_closed');
|
||||
this.$el.find('fieldset').removeClass('oe_closed');
|
||||
return;
|
||||
}
|
||||
if (results['success']) {
|
||||
@@ -214,8 +214,8 @@ instance.web.DataImport = instance.web.Dialog.extend({
|
||||
}
|
||||
|
||||
if (results['records']) {
|
||||
var lines_to_skip = parseInt(this.$element.find('#csv_skip').val(), 10),
|
||||
with_headers = this.$element.find('#file_has_headers').prop('checked');
|
||||
var lines_to_skip = parseInt(this.$el.find('#csv_skip').val(), 10),
|
||||
with_headers = this.$el.find('#file_has_headers').prop('checked');
|
||||
headers = with_headers ? results.records[0] : null;
|
||||
|
||||
result_node.append(QWeb.render('ImportView.result', {
|
||||
@@ -224,17 +224,17 @@ instance.web.DataImport = instance.web.Dialog.extend({
|
||||
: with_headers ? results.records.slice(1)
|
||||
: results.records
|
||||
}));
|
||||
this.$element.find('fieldset').addClass('oe_closed');
|
||||
this.$el.find('fieldset').addClass('oe_closed');
|
||||
}
|
||||
this.$element.find('form').removeClass('oe_import_no_result');
|
||||
this.$el.find('form').removeClass('oe_import_no_result');
|
||||
|
||||
this.$element.delegate('.oe_m2o_drop_down_button', 'click', function () {
|
||||
this.$el.delegate('.oe_m2o_drop_down_button', 'click', function () {
|
||||
$(this).prev('input').focus();
|
||||
});
|
||||
|
||||
var self = this;
|
||||
this.ready.then(function () {
|
||||
var $fields = self.$element.find('.sel_fields').bind('blur', function () {
|
||||
var $fields = self.$el.find('.sel_fields').bind('blur', function () {
|
||||
if (this.value && !_(self.all_fields).contains(this.value)) {
|
||||
this.value = '';
|
||||
}
|
||||
@@ -315,9 +315,9 @@ instance.web.DataImport = instance.web.Dialog.extend({
|
||||
find_duplicate_fields: function() {
|
||||
// Maps values to DOM nodes, in order to discover duplicates
|
||||
var values = {}, duplicates = {};
|
||||
this.$element.find(".sel_fields").each(function(index, element) {
|
||||
this.$el.find(".sel_fields").each(function(index, element) {
|
||||
var value = element.value;
|
||||
var $element = $(element).removeClass('duplicate_fld');
|
||||
var $el = $(element).removeClass('duplicate_fld');
|
||||
if (!value) { return; }
|
||||
|
||||
if (!(value in values)) {
|
||||
@@ -329,13 +329,13 @@ instance.web.DataImport = instance.web.Dialog.extend({
|
||||
} else {
|
||||
duplicates[value] = [same_valued_field, element];
|
||||
}
|
||||
$element.add(same_valued_field).addClass('duplicate_fld');
|
||||
$el.add(same_valued_field).addClass('duplicate_fld');
|
||||
}
|
||||
});
|
||||
return duplicates;
|
||||
},
|
||||
on_check_field_values: function () {
|
||||
this.$element.find("#message, #msg").remove();
|
||||
this.$el.find("#message, #msg").remove();
|
||||
|
||||
var required_valid = this.check_required();
|
||||
|
||||
@@ -343,7 +343,7 @@ instance.web.DataImport = instance.web.Dialog.extend({
|
||||
if (_.isEmpty(duplicates)) {
|
||||
this.toggle_import_button(required_valid);
|
||||
} else {
|
||||
var $err = $('<div id="msg" style="color: red;">'+_t("Destination fields should only be selected once, some fields are selected more than once:")+'</div>').insertBefore(this.$element.find('#result'));
|
||||
var $err = $('<div id="msg" style="color: red;">'+_t("Destination fields should only be selected once, some fields are selected more than once:")+'</div>').insertBefore(this.$el.find('#result'));
|
||||
var $dupes = $('<dl>').appendTo($err);
|
||||
_(duplicates).each(function(elements, value) {
|
||||
$('<dt>').text(value).appendTo($dupes);
|
||||
@@ -372,7 +372,7 @@ instance.web.DataImport = instance.web.Dialog.extend({
|
||||
return f.id;
|
||||
};
|
||||
|
||||
var selected_fields = _(this.$element.find('.sel_fields').get()).chain()
|
||||
var selected_fields = _(this.$el.find('.sel_fields').get()).chain()
|
||||
.pluck('value')
|
||||
.compact()
|
||||
.map(resolve_field_id)
|
||||
@@ -380,13 +380,13 @@ instance.web.DataImport = instance.web.Dialog.extend({
|
||||
|
||||
var missing_fields = _.difference(this.required_fields, selected_fields);
|
||||
if (missing_fields.length) {
|
||||
this.$element.find("#result").before('<div id="message" style="color:red">' + _t("*Required Fields are not selected :") + missing_fields + '.</div>');
|
||||
this.$el.find("#result").before('<div id="message" style="color:red">' + _t("*Required Fields are not selected :") + missing_fields + '.</div>');
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
},
|
||||
destroy: function() {
|
||||
this.$element.remove();
|
||||
this.$el.remove();
|
||||
this._super();
|
||||
}
|
||||
});
|
||||
|
||||
@@ -126,21 +126,21 @@ my.InputView = instance.web.Widget.extend({
|
||||
template: 'SearchView.InputView',
|
||||
start: function () {
|
||||
var p = this._super.apply(this, arguments);
|
||||
this.$element.on('focus', this.proxy('onFocus'));
|
||||
this.$element.on('blur', this.proxy('onBlur'));
|
||||
this.$element.on('keydown', this.proxy('onKeydown'));
|
||||
this.$el.on('focus', this.proxy('onFocus'));
|
||||
this.$el.on('blur', this.proxy('onBlur'));
|
||||
this.$el.on('keydown', this.proxy('onKeydown'));
|
||||
return p;
|
||||
},
|
||||
onFocus: function () {
|
||||
this.trigger('focused', this);
|
||||
},
|
||||
onBlur: function () {
|
||||
this.$element.text('');
|
||||
this.$el.text('');
|
||||
this.trigger('blurred', this);
|
||||
},
|
||||
getSelection: function () {
|
||||
// get Text node
|
||||
var root = this.$element[0].childNodes[0];
|
||||
var root = this.$el[0].childNodes[0];
|
||||
if (!root || !root.textContent) {
|
||||
// if input does not have a child node, or the child node is an
|
||||
// empty string, then the selection can only be (0, 0)
|
||||
@@ -202,7 +202,7 @@ my.InputView = instance.web.Widget.extend({
|
||||
break;
|
||||
case $.ui.keyCode.RIGHT:
|
||||
sel = this.getSelection();
|
||||
var len = this.$element.text().length;
|
||||
var len = this.$el.text().length;
|
||||
if (sel.start !== len || sel.start !== sel.end) {
|
||||
e.stopPropagation();
|
||||
}
|
||||
@@ -223,17 +223,17 @@ my.FacetView = instance.web.Widget.extend({
|
||||
},
|
||||
start: function () {
|
||||
var self = this;
|
||||
this.$element.on('focus', function () { self.trigger('focused', self); });
|
||||
this.$element.on('blur', function () { self.trigger('blurred', self); });
|
||||
this.$element.on('click', function (e) {
|
||||
this.$el.on('focus', function () { self.trigger('focused', self); });
|
||||
this.$el.on('blur', function () { self.trigger('blurred', self); });
|
||||
this.$el.on('click', function (e) {
|
||||
if ($(e.target).is('.oe_facet_remove')) {
|
||||
self.model.destroy();
|
||||
return false;
|
||||
}
|
||||
self.$element.focus();
|
||||
self.$el.focus();
|
||||
e.stopPropagation();
|
||||
});
|
||||
this.$element.on('keydown', function (e) {
|
||||
this.$el.on('keydown', function (e) {
|
||||
var keys = $.ui.keyCode;
|
||||
switch (e.which) {
|
||||
case keys.BACKSPACE:
|
||||
@@ -242,7 +242,7 @@ my.FacetView = instance.web.Widget.extend({
|
||||
return false;
|
||||
}
|
||||
});
|
||||
var $e = self.$element.find('> span:last-child');
|
||||
var $e = self.$el.find('> span:last-child');
|
||||
var q = $.when(this._super());
|
||||
return q.pipe(function () {
|
||||
var values = self.model.values.map(function (value) {
|
||||
@@ -253,7 +253,7 @@ my.FacetView = instance.web.Widget.extend({
|
||||
});
|
||||
},
|
||||
model_changed: function () {
|
||||
this.$element.text(this.$element.text() + '*');
|
||||
this.$el.text(this.$el.text() + '*');
|
||||
}
|
||||
});
|
||||
my.FacetValueView = instance.web.Widget.extend({
|
||||
@@ -268,7 +268,7 @@ my.FacetValueView = instance.web.Widget.extend({
|
||||
this._super();
|
||||
},
|
||||
model_changed: function () {
|
||||
this.$element.text(this.$element.text() + '*');
|
||||
this.$el.text(this.$el.text() + '*');
|
||||
}
|
||||
});
|
||||
|
||||
@@ -313,7 +313,7 @@ instance.web.SearchView = instance.web.Widget.extend(/** @lends instance.web.Sea
|
||||
.on('add change reset remove', this.proxy('renderFacets'));
|
||||
|
||||
if (this.hidden) {
|
||||
this.$element.hide();
|
||||
this.$el.hide();
|
||||
}
|
||||
if (this.headless) {
|
||||
this.ready.resolve();
|
||||
@@ -331,12 +331,12 @@ instance.web.SearchView = instance.web.Widget.extend(/** @lends instance.web.Sea
|
||||
}
|
||||
|
||||
// Launch a search on clicking the oe_searchview_search button
|
||||
this.$element.on('click', 'button.oe_searchview_search', function (e) {
|
||||
this.$el.on('click', 'button.oe_searchview_search', function (e) {
|
||||
e.stopImmediatePropagation();
|
||||
self.do_search();
|
||||
});
|
||||
|
||||
this.$element.on('keydown',
|
||||
this.$el.on('keydown',
|
||||
'.oe_searchview_input, .oe_searchview_facet', function (e) {
|
||||
switch(e.which) {
|
||||
case $.ui.keyCode.LEFT:
|
||||
@@ -350,31 +350,31 @@ instance.web.SearchView = instance.web.Widget.extend(/** @lends instance.web.Sea
|
||||
}
|
||||
});
|
||||
|
||||
this.$element.on('click', '.oe_searchview_clear', function (e) {
|
||||
this.$el.on('click', '.oe_searchview_clear', function (e) {
|
||||
e.stopImmediatePropagation();
|
||||
self.query.reset();
|
||||
});
|
||||
this.$element.on('click', '.oe_searchview_unfold_drawer', function (e) {
|
||||
this.$el.on('click', '.oe_searchview_unfold_drawer', function (e) {
|
||||
e.stopImmediatePropagation();
|
||||
self.$element.toggleClass('oe_searchview_open_drawer');
|
||||
self.$el.toggleClass('oe_searchview_open_drawer');
|
||||
});
|
||||
instance.web.bus.on('click', this, function(ev) {
|
||||
if ($(ev.target).parents('.oe_searchview').length === 0) {
|
||||
self.$element.removeClass('oe_searchview_open_drawer');
|
||||
self.$el.removeClass('oe_searchview_open_drawer');
|
||||
}
|
||||
});
|
||||
// Focus last input if the view itself is clicked (empty section of
|
||||
// facets element)
|
||||
this.$element.on('click', function (e) {
|
||||
if (e.target === self.$element.find('.oe_searchview_facets')[0]) {
|
||||
self.$element.find('.oe_searchview_input:last').focus();
|
||||
this.$el.on('click', function (e) {
|
||||
if (e.target === self.$el.find('.oe_searchview_facets')[0]) {
|
||||
self.$el.find('.oe_searchview_input:last').focus();
|
||||
}
|
||||
});
|
||||
// when the completion list opens/refreshes, automatically select the
|
||||
// first completion item so if the user just hits [RETURN] or [TAB] it
|
||||
// automatically selects it
|
||||
this.$element.on('autocompleteopen', function () {
|
||||
var menu = self.$element.data('autocomplete').menu;
|
||||
this.$el.on('autocompleteopen', function () {
|
||||
var menu = self.$el.data('autocomplete').menu;
|
||||
menu.activate(
|
||||
$.Event({ type: "mouseenter" }),
|
||||
menu.element.children().first());
|
||||
@@ -383,15 +383,15 @@ instance.web.SearchView = instance.web.Widget.extend(/** @lends instance.web.Sea
|
||||
return $.when(p, this.ready);
|
||||
},
|
||||
show: function () {
|
||||
this.$element.show();
|
||||
this.$el.show();
|
||||
},
|
||||
hide: function () {
|
||||
this.$element.hide();
|
||||
this.$el.hide();
|
||||
},
|
||||
|
||||
subviewForRoot: function (subview_root) {
|
||||
return _(this.input_subviews).detect(function (subview) {
|
||||
return subview.$element[0] === subview_root;
|
||||
return subview.$el[0] === subview_root;
|
||||
});
|
||||
},
|
||||
siblingSubview: function (subview, direction, wrap_around) {
|
||||
@@ -406,12 +406,12 @@ instance.web.SearchView = instance.web.Widget.extend(/** @lends instance.web.Sea
|
||||
focusPreceding: function (subview_root) {
|
||||
return this.siblingSubview(
|
||||
this.subviewForRoot(subview_root), -1, true)
|
||||
.$element.focus();
|
||||
.$el.focus();
|
||||
},
|
||||
focusFollowing: function (subview_root) {
|
||||
return this.siblingSubview(
|
||||
this.subviewForRoot(subview_root), +1, true)
|
||||
.$element.focus();
|
||||
.$el.focus();
|
||||
},
|
||||
|
||||
/**
|
||||
@@ -430,19 +430,19 @@ instance.web.SearchView = instance.web.Widget.extend(/** @lends instance.web.Sea
|
||||
|
||||
// autocomplete only correctly handles being initialized on the actual
|
||||
// editable element (and only an element with a @value in 1.8 e.g.
|
||||
// input or textarea), cheat by setting val() on $element
|
||||
this.$element.on('keydown', function () {
|
||||
// input or textarea), cheat by setting val() on $el
|
||||
this.$el.on('keydown', function () {
|
||||
// keydown is triggered *before* the element's value is set, so
|
||||
// delay this. Pray that setTimeout are executed in FIFO (if they
|
||||
// have the same delay) as autocomplete uses the exact same trick.
|
||||
// FIXME: brittle as fuck
|
||||
setTimeout(function () {
|
||||
self.$element.val(self.currentInputValue());
|
||||
self.$el.val(self.currentInputValue());
|
||||
}, 0);
|
||||
|
||||
});
|
||||
|
||||
this.$element.autocomplete({
|
||||
this.$el.autocomplete({
|
||||
source: this.proxy('complete_global_search'),
|
||||
select: this.proxy('select_completion'),
|
||||
focus: function (e) { e.preventDefault(); },
|
||||
@@ -479,7 +479,7 @@ instance.web.SearchView = instance.web.Widget.extend(/** @lends instance.web.Sea
|
||||
* div[contenteditable].oe_searchview_input)
|
||||
*/
|
||||
currentInputValue: function () {
|
||||
return this.$element.find('div.oe_searchview_input:focus').text();
|
||||
return this.$el.find('div.oe_searchview_input:focus').text();
|
||||
},
|
||||
/**
|
||||
* Provide auto-completion result for req.term (an array to `resp`)
|
||||
@@ -509,22 +509,22 @@ instance.web.SearchView = instance.web.Widget.extend(/** @lends instance.web.Sea
|
||||
|
||||
var input_index = _(this.input_subviews).indexOf(
|
||||
this.subviewForRoot(
|
||||
this.$element.find('div.oe_searchview_input:focus')[0]));
|
||||
this.$el.find('div.oe_searchview_input:focus')[0]));
|
||||
this.query.add(ui.item.facet, {at: input_index / 2});
|
||||
},
|
||||
childFocused: function () {
|
||||
this.$element.addClass('oe_focused');
|
||||
this.$el.addClass('oe_focused');
|
||||
},
|
||||
childBlurred: function () {
|
||||
var val = this.$element.val();
|
||||
this.$element.val('');
|
||||
var complete = this.$element.data('autocomplete');
|
||||
var val = this.$el.val();
|
||||
this.$el.val('');
|
||||
var complete = this.$el.data('autocomplete');
|
||||
if ((val && complete.term === undefined) || complete.previous !== undefined) {
|
||||
throw new Error("new jquery.ui version altering implementation" +
|
||||
" details relied on");
|
||||
}
|
||||
delete complete.term;
|
||||
this.$element.removeClass('oe_focused')
|
||||
this.$el.removeClass('oe_focused')
|
||||
.trigger('blur');
|
||||
},
|
||||
/**
|
||||
@@ -538,7 +538,7 @@ instance.web.SearchView = instance.web.Widget.extend(/** @lends instance.web.Sea
|
||||
// _2: undefined if event=change, otherwise model
|
||||
var self = this;
|
||||
var started = [];
|
||||
var $e = this.$element.find('div.oe_searchview_facets');
|
||||
var $e = this.$el.find('div.oe_searchview_facets');
|
||||
_.invoke(this.input_subviews, 'destroy');
|
||||
this.input_subviews = [];
|
||||
|
||||
@@ -569,7 +569,7 @@ instance.web.SearchView = instance.web.Widget.extend(/** @lends instance.web.Sea
|
||||
input_to_focus = self.input_subviews[(options.at + 1) * 2];
|
||||
}
|
||||
|
||||
input_to_focus.$element.focus();
|
||||
input_to_focus.$el.focus();
|
||||
});
|
||||
},
|
||||
|
||||
@@ -664,7 +664,7 @@ instance.web.SearchView = instance.web.Widget.extend(/** @lends instance.web.Sea
|
||||
// build drawer
|
||||
var drawer_started = $.when.apply(
|
||||
null, _(this.select_for_drawer()).invoke(
|
||||
'appendTo', this.$element.find('.oe_searchview_drawer')));
|
||||
'appendTo', this.$el.find('.oe_searchview_drawer')));
|
||||
|
||||
// load defaults
|
||||
var defaults_fetched = $.when.apply(null, _(this.inputs).invoke(
|
||||
@@ -680,7 +680,7 @@ instance.web.SearchView = instance.web.Widget.extend(/** @lends instance.web.Sea
|
||||
*/
|
||||
on_filters_management: function(e) {
|
||||
var self = this;
|
||||
var select = this.$element.find(".oe_search-view-filters-management");
|
||||
var select = this.$el.find(".oe_search-view-filters-management");
|
||||
var val = select.val();
|
||||
switch(val) {
|
||||
case 'advanced_filter':
|
||||
@@ -989,7 +989,7 @@ instance.web.search.FilterGroup = instance.web.search.Input.extend(/** @lends in
|
||||
this.view.query.on('add remove change reset', this.proxy('search_change'));
|
||||
},
|
||||
start: function () {
|
||||
this.$element.on('click', 'li', this.proxy('toggle_filter'));
|
||||
this.$el.on('click', 'li', this.proxy('toggle_filter'));
|
||||
return $.when(null);
|
||||
},
|
||||
/**
|
||||
@@ -998,7 +998,7 @@ instance.web.search.FilterGroup = instance.web.search.Input.extend(/** @lends in
|
||||
*/
|
||||
search_change: function () {
|
||||
var self = this;
|
||||
var $filters = this.$element.find('> li').removeClass('oe_selected');
|
||||
var $filters = this.$el.find('> li').removeClass('oe_selected');
|
||||
var facet = this.view.query.find(_.bind(this.match_facet, this));
|
||||
if (!facet) { return; }
|
||||
facet.values.each(function (v) {
|
||||
@@ -1299,17 +1299,17 @@ instance.web.search.CharField = instance.web.search.Field.extend( /** @lends ins
|
||||
});
|
||||
instance.web.search.NumberField = instance.web.search.Field.extend(/** @lends instance.web.search.NumberField# */{
|
||||
value_from: function () {
|
||||
if (!this.$element.val()) {
|
||||
if (!this.$el.val()) {
|
||||
return null;
|
||||
}
|
||||
var val = this.parse(this.$element.val()),
|
||||
check = Number(this.$element.val());
|
||||
var val = this.parse(this.$el.val()),
|
||||
check = Number(this.$el.val());
|
||||
if (isNaN(val) || val !== check) {
|
||||
this.$element.addClass('error');
|
||||
this.$el.addClass('error');
|
||||
throw new instance.web.search.Invalid(
|
||||
this.attrs.name, this.$element.val(), this.error_message);
|
||||
this.attrs.name, this.$el.val(), this.error_message);
|
||||
}
|
||||
this.$element.removeClass('error');
|
||||
this.$el.removeClass('error');
|
||||
return val;
|
||||
}
|
||||
});
|
||||
@@ -1542,9 +1542,9 @@ instance.web.search.CustomFilters = instance.web.search.Input.extend({
|
||||
self.clear_selection();
|
||||
})
|
||||
.on('reset', this.proxy('clear_selection'));
|
||||
this.$element.on('submit', 'form', this.proxy('save_current'));
|
||||
this.$element.on('click', 'h4', function () {
|
||||
self.$element.toggleClass('oe_opened');
|
||||
this.$el.on('submit', 'form', this.proxy('save_current'));
|
||||
this.$el.on('click', 'h4', function () {
|
||||
self.$el.toggleClass('oe_opened');
|
||||
});
|
||||
// FIXME: local eval of domain and context to get rid of special endpoint
|
||||
return this.rpc('/web/searchview/get_filters', {
|
||||
@@ -1552,7 +1552,7 @@ instance.web.search.CustomFilters = instance.web.search.Input.extend({
|
||||
}).pipe(this.proxy('set_filters'));
|
||||
},
|
||||
clear_selection: function () {
|
||||
this.$element.find('li.oe_selected').removeClass('oe_selected');
|
||||
this.$el.find('li.oe_selected').removeClass('oe_selected');
|
||||
},
|
||||
append_filter: function (filter) {
|
||||
var self = this;
|
||||
@@ -1564,7 +1564,7 @@ instance.web.search.CustomFilters = instance.web.search.Input.extend({
|
||||
} else {
|
||||
var id = filter.id;
|
||||
$filter = this.filters[key] = $('<li></li>')
|
||||
.appendTo(this.$element.find('.oe_searchview_custom_list'))
|
||||
.appendTo(this.$el.find('.oe_searchview_custom_list'))
|
||||
.addClass(filter.user_id ? 'oe_searchview_custom_private'
|
||||
: 'oe_searchview_custom_public')
|
||||
.text(filter.name);
|
||||
@@ -1599,8 +1599,8 @@ instance.web.search.CustomFilters = instance.web.search.Input.extend({
|
||||
},
|
||||
save_current: function () {
|
||||
var self = this;
|
||||
var $name = this.$element.find('input:first');
|
||||
var private_filter = !this.$element.find('input:last').prop('checked');
|
||||
var $name = this.$el.find('input:first');
|
||||
var private_filter = !this.$el.find('input:last').prop('checked');
|
||||
|
||||
var search = this.view.build_search_data();
|
||||
this.rpc('/web/session/eval_domain_and_context', {
|
||||
@@ -1622,7 +1622,7 @@ instance.web.search.CustomFilters = instance.web.search.Input.extend({
|
||||
return self.model.call('create_or_replace', [filter]).then(function (id) {
|
||||
filter.id = id;
|
||||
self.append_filter(filter);
|
||||
self.$element
|
||||
self.$el
|
||||
.removeClass('oe_opened')
|
||||
.find('form')[0].reset();
|
||||
});
|
||||
@@ -1667,8 +1667,8 @@ instance.web.search.Filters = instance.web.search.Input.extend({
|
||||
}
|
||||
|
||||
return $.when(
|
||||
this.render_column(col1, $('<div>').appendTo(this.$element)),
|
||||
this.render_column(col2, $('<div>').appendTo(this.$element)));
|
||||
this.render_column(col1, $('<div>').appendTo(this.$el)),
|
||||
this.render_column(col2, $('<div>').appendTo(this.$el)));
|
||||
},
|
||||
render_column: function (column, $el) {
|
||||
return $.when.apply(null, _(column).map(function (group) {
|
||||
@@ -1684,10 +1684,10 @@ instance.web.search.Advanced = instance.web.search.Input.extend({
|
||||
_in_drawer: true,
|
||||
start: function () {
|
||||
var self = this;
|
||||
this.$element
|
||||
this.$el
|
||||
.on('keypress keydown keyup', function (e) { e.stopPropagation(); })
|
||||
.on('click', 'h4', function () {
|
||||
self.$element.toggleClass('oe_opened');
|
||||
self.$el.toggleClass('oe_opened');
|
||||
}).on('click', 'button.oe_add_condition', function () {
|
||||
self.append_proposition();
|
||||
}).on('submit', 'form', function (e) {
|
||||
@@ -1706,7 +1706,7 @@ instance.web.search.Advanced = instance.web.search.Input.extend({
|
||||
},
|
||||
append_proposition: function () {
|
||||
return (new instance.web.search.ExtendedSearchProposition(this, this.fields))
|
||||
.appendTo(this.$element.find('ul'));
|
||||
.appendTo(this.$el.find('ul'));
|
||||
},
|
||||
commit_search: function () {
|
||||
var self = this;
|
||||
@@ -1733,7 +1733,7 @@ instance.web.search.Advanced = instance.web.search.Input.extend({
|
||||
// add new empty proposition
|
||||
this.append_proposition();
|
||||
// TODO: API on searchview
|
||||
this.view.$element.removeClass('oe_searchview_open_drawer');
|
||||
this.view.$el.removeClass('oe_searchview_open_drawer');
|
||||
}
|
||||
});
|
||||
|
||||
@@ -1757,16 +1757,16 @@ instance.web.search.ExtendedSearchProposition = instance.web.Widget.extend(/** @
|
||||
},
|
||||
start: function () {
|
||||
var _this = this;
|
||||
this.$element.find(".searchview_extended_prop_field").change(function() {
|
||||
this.$el.find(".searchview_extended_prop_field").change(function() {
|
||||
_this.changed();
|
||||
});
|
||||
this.$element.find('.searchview_extended_delete_prop').click(function () {
|
||||
this.$el.find('.searchview_extended_delete_prop').click(function () {
|
||||
_this.destroy();
|
||||
});
|
||||
this.changed();
|
||||
},
|
||||
changed: function() {
|
||||
var nval = this.$element.find(".searchview_extended_prop_field").val();
|
||||
var nval = this.$el.find(".searchview_extended_prop_field").val();
|
||||
if(this.attrs.selected == null || nval != this.attrs.selected.name) {
|
||||
this.select_field(_.detect(this.fields, function(x) {return x.name == nval;}));
|
||||
}
|
||||
@@ -1781,7 +1781,7 @@ instance.web.search.ExtendedSearchProposition = instance.web.Widget.extend(/** @
|
||||
if(this.attrs.selected != null) {
|
||||
this.value.destroy();
|
||||
this.value = null;
|
||||
this.$element.find('.searchview_extended_prop_op').html('');
|
||||
this.$el.find('.searchview_extended_prop_op').html('');
|
||||
}
|
||||
this.attrs.selected = field;
|
||||
if(field == null) {
|
||||
@@ -1797,9 +1797,9 @@ instance.web.search.ExtendedSearchProposition = instance.web.Widget.extend(/** @
|
||||
_.each(this.value.operators, function(operator) {
|
||||
$('<option>', {value: operator.value})
|
||||
.text(String(operator.text))
|
||||
.appendTo(self.$element.find('.searchview_extended_prop_op'));
|
||||
.appendTo(self.$el.find('.searchview_extended_prop_op'));
|
||||
});
|
||||
var $value_loc = this.$element.find('.searchview_extended_prop_value').empty();
|
||||
var $value_loc = this.$el.find('.searchview_extended_prop_value').empty();
|
||||
this.value.appendTo($value_loc);
|
||||
|
||||
},
|
||||
@@ -1807,7 +1807,7 @@ instance.web.search.ExtendedSearchProposition = instance.web.Widget.extend(/** @
|
||||
if ( this.attrs.selected == null)
|
||||
return null;
|
||||
var field = this.attrs.selected;
|
||||
var op = this.$element.find('.searchview_extended_prop_op')[0];
|
||||
var op = this.$el.find('.searchview_extended_prop_op')[0];
|
||||
var operator = op.options[op.selectedIndex];
|
||||
return {
|
||||
label: _.str.sprintf(_t('%(field)s %(operator)s "%(value)s"'), {
|
||||
@@ -1851,7 +1851,7 @@ instance.web.search.ExtendedSearchProposition.Char = instance.web.search.Extende
|
||||
{value: "!=", text: _lt("is not equal to")}
|
||||
],
|
||||
get_value: function() {
|
||||
return this.$element.val();
|
||||
return this.$el.val();
|
||||
}
|
||||
});
|
||||
instance.web.search.ExtendedSearchProposition.DateTime = instance.web.search.ExtendedSearchProposition.Field.extend({
|
||||
@@ -1875,7 +1875,7 @@ instance.web.search.ExtendedSearchProposition.DateTime = instance.web.search.Ext
|
||||
start: function() {
|
||||
var ready = this._super();
|
||||
this.datewidget = new (this.widget())(this);
|
||||
this.datewidget.appendTo(this.$element);
|
||||
this.datewidget.appendTo(this.$el);
|
||||
return ready;
|
||||
}
|
||||
});
|
||||
@@ -1893,11 +1893,11 @@ instance.web.search.ExtendedSearchProposition.Integer = instance.web.search.Exte
|
||||
{value: "<=", text: _lt("less or equal than")}
|
||||
],
|
||||
toString: function () {
|
||||
return this.$element.val();
|
||||
return this.$el.val();
|
||||
},
|
||||
get_value: function() {
|
||||
try {
|
||||
return instance.web.parse_value(this.$element.val(), {'widget': 'integer'});
|
||||
return instance.web.parse_value(this.$el.val(), {'widget': 'integer'});
|
||||
} catch (e) {
|
||||
return "";
|
||||
}
|
||||
@@ -1917,11 +1917,11 @@ instance.web.search.ExtendedSearchProposition.Float = instance.web.search.Extend
|
||||
{value: "<=", text: _lt("less or equal than")}
|
||||
],
|
||||
toString: function () {
|
||||
return this.$element.val();
|
||||
return this.$el.val();
|
||||
},
|
||||
get_value: function() {
|
||||
try {
|
||||
return instance.web.parse_value(this.$element.val(), {'widget': 'float'});
|
||||
return instance.web.parse_value(this.$el.val(), {'widget': 'float'});
|
||||
} catch (e) {
|
||||
return "";
|
||||
}
|
||||
@@ -1934,12 +1934,12 @@ instance.web.search.ExtendedSearchProposition.Selection = instance.web.search.Ex
|
||||
{value: "!=", text: _lt("is not")}
|
||||
],
|
||||
toString: function () {
|
||||
var select = this.$element[0];
|
||||
var select = this.$el[0];
|
||||
var option = select.options[select.selectedIndex];
|
||||
return option.label || option.text;
|
||||
},
|
||||
get_value: function() {
|
||||
return this.$element.val();
|
||||
return this.$el.val();
|
||||
}
|
||||
});
|
||||
instance.web.search.ExtendedSearchProposition.Boolean = instance.web.search.ExtendedSearchProposition.Field.extend({
|
||||
|
||||
@@ -12,7 +12,6 @@ openerp.test_support = {
|
||||
username: false,
|
||||
user_context: {},
|
||||
db: false,
|
||||
openerp_entreprise: false,
|
||||
// this.module_list = openerp._modules.slice();
|
||||
// this.module_loaded = {};
|
||||
// _(this.module_list).each(function (mod) {
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -145,7 +145,7 @@ instance.web.ListView = instance.web.View.extend( /** @lends instance.web.ListVi
|
||||
* @returns {$.Deferred} loading promise
|
||||
*/
|
||||
start: function() {
|
||||
this.$element.addClass('oe_list');
|
||||
this.$el.addClass('oe_list');
|
||||
return this.reload_view(null, null, true);
|
||||
},
|
||||
/**
|
||||
@@ -248,20 +248,20 @@ instance.web.ListView = instance.web.View.extend( /** @lends instance.web.ListVi
|
||||
|
||||
this.setup_columns(this.fields_view.fields, grouped);
|
||||
|
||||
this.$element.html(QWeb.render(this._template, this));
|
||||
this.$element.addClass(this.fields_view.arch.attrs['class']);
|
||||
this.$el.html(QWeb.render(this._template, this));
|
||||
this.$el.addClass(this.fields_view.arch.attrs['class']);
|
||||
// Head hook
|
||||
// Selecting records
|
||||
this.$element.find('.oe_list_record_selector').click(function(){
|
||||
self.$element.find('.oe_list_record_selector input').prop('checked',
|
||||
self.$element.find('.oe_list_record_selector').prop('checked') || false);
|
||||
this.$el.find('.oe_list_record_selector').click(function(){
|
||||
self.$el.find('.oe_list_record_selector input').prop('checked',
|
||||
self.$el.find('.oe_list_record_selector').prop('checked') || false);
|
||||
var selection = self.groups.get_selection();
|
||||
$(self.groups).trigger(
|
||||
'selected', [selection.ids, selection.records]);
|
||||
});
|
||||
|
||||
// Sorting columns
|
||||
this.$element.find('thead').delegate('th.oe_sortable[data-id]', 'click', function (e) {
|
||||
this.$el.find('thead').delegate('th.oe_sortable[data-id]', 'click', function (e) {
|
||||
e.stopPropagation();
|
||||
var $this = $(this);
|
||||
self.dataset.sort($this.data('id'));
|
||||
@@ -281,7 +281,7 @@ instance.web.ListView = instance.web.View.extend( /** @lends instance.web.ListVi
|
||||
if (this.options.$buttons) {
|
||||
this.$buttons.appendTo(this.options.$buttons);
|
||||
} else {
|
||||
this.$element.find('.oe_list_buttons').replaceWith(this.$buttons);
|
||||
this.$el.find('.oe_list_buttons').replaceWith(this.$buttons);
|
||||
}
|
||||
this.$buttons.find('.oe_list_add')
|
||||
.click(this.proxy('do_add_record'))
|
||||
@@ -298,7 +298,7 @@ instance.web.ListView = instance.web.View.extend( /** @lends instance.web.ListVi
|
||||
if (this.options.$buttons) {
|
||||
this.$pager.appendTo(this.options.$pager);
|
||||
} else {
|
||||
this.$element.find('.oe_list_pager').replaceWith(this.$pager);
|
||||
this.$el.find('.oe_list_pager').replaceWith(this.$pager);
|
||||
}
|
||||
|
||||
this.$pager
|
||||
@@ -357,7 +357,7 @@ instance.web.ListView = instance.web.View.extend( /** @lends instance.web.ListVi
|
||||
{ label: _t('Delete'), callback: this.do_delete_selected }
|
||||
]);
|
||||
this.sidebar.add_toolbar(this.fields_view.toolbar);
|
||||
this.sidebar.$element.hide();
|
||||
this.sidebar.$el.hide();
|
||||
}
|
||||
},
|
||||
/**
|
||||
@@ -450,7 +450,7 @@ instance.web.ListView = instance.web.View.extend( /** @lends instance.web.ListVi
|
||||
},
|
||||
do_hide: function () {
|
||||
if (this.sidebar) {
|
||||
this.sidebar.$element.hide();
|
||||
this.sidebar.$el.hide();
|
||||
}
|
||||
if (this.$buttons) {
|
||||
this.$buttons.hide();
|
||||
@@ -490,10 +490,10 @@ instance.web.ListView = instance.web.View.extend( /** @lends instance.web.ListVi
|
||||
*/
|
||||
reload_content: function () {
|
||||
var self = this;
|
||||
self.$element.find('.oe_list_record_selector').prop('checked', false);
|
||||
self.$el.find('.oe_list_record_selector').prop('checked', false);
|
||||
this.records.reset();
|
||||
var reloaded = $.Deferred();
|
||||
this.$element.find('.oe_list_content').append(
|
||||
this.$el.find('.oe_list_content').append(
|
||||
this.groups.render(function () {
|
||||
if (self.dataset.index == null) {
|
||||
var has_one = false;
|
||||
@@ -595,7 +595,7 @@ instance.web.ListView = instance.web.View.extend( /** @lends instance.web.ListVi
|
||||
if (!ids.length) {
|
||||
this.dataset.index = 0;
|
||||
if (this.sidebar) {
|
||||
this.sidebar.$element.hide();
|
||||
this.sidebar.$el.hide();
|
||||
}
|
||||
this.compute_aggregates();
|
||||
return;
|
||||
@@ -603,7 +603,7 @@ instance.web.ListView = instance.web.View.extend( /** @lends instance.web.ListVi
|
||||
|
||||
this.dataset.index = _(this.dataset.ids).indexOf(ids[0]);
|
||||
if (this.sidebar) {
|
||||
this.sidebar.$element.show();
|
||||
this.sidebar.$el.show();
|
||||
}
|
||||
|
||||
this.compute_aggregates(_(records).map(function (record) {
|
||||
@@ -763,7 +763,7 @@ instance.web.ListView = instance.web.View.extend( /** @lends instance.web.ListVi
|
||||
},
|
||||
display_aggregates: function (aggregation) {
|
||||
var self = this;
|
||||
var $footer_cells = this.$element.find('.oe_list_footer');
|
||||
var $footer_cells = this.$el.find('.oe_list_footer');
|
||||
_(this.aggregate_columns).each(function (column) {
|
||||
if (!column['function']) {
|
||||
return;
|
||||
@@ -789,7 +789,7 @@ instance.web.ListView = instance.web.View.extend( /** @lends instance.web.ListVi
|
||||
pad_columns: function (count, options) {
|
||||
options = options || {};
|
||||
// padding for action/pager header
|
||||
var $first_header = this.$element.find('thead tr:first th');
|
||||
var $first_header = this.$el.find('thead tr:first th');
|
||||
var colspan = $first_header.attr('colspan');
|
||||
if (colspan) {
|
||||
if (!this.previous_colspan) {
|
||||
@@ -798,7 +798,7 @@ instance.web.ListView = instance.web.View.extend( /** @lends instance.web.ListVi
|
||||
$first_header.attr('colspan', parseInt(colspan, 10) + count);
|
||||
}
|
||||
// Padding for column titles, footer and data rows
|
||||
var $rows = this.$element
|
||||
var $rows = this.$el
|
||||
.find('.oe_list_header_columns, tr:not(thead tr)')
|
||||
.not(options['except']);
|
||||
var newcols = new Array(count+1).join('<td class="oe_list_padding"></td>');
|
||||
@@ -812,23 +812,23 @@ instance.web.ListView = instance.web.View.extend( /** @lends instance.web.ListVi
|
||||
* Removes all padding columns of the table
|
||||
*/
|
||||
unpad_columns: function () {
|
||||
this.$element.find('.oe_list_padding').remove();
|
||||
this.$el.find('.oe_list_padding').remove();
|
||||
if (this.previous_colspan) {
|
||||
this.$element
|
||||
this.$el
|
||||
.find('thead tr:first th')
|
||||
.attr('colspan', this.previous_colspan);
|
||||
this.previous_colspan = null;
|
||||
}
|
||||
},
|
||||
no_result: function () {
|
||||
this.$element.find('.oe_view_nocontent').remove();
|
||||
this.$el.find('.oe_view_nocontent').remove();
|
||||
if (this.groups.group_by
|
||||
|| !this.options.action
|
||||
|| !this.options.action.help) {
|
||||
return;
|
||||
}
|
||||
this.$element.find('table:first').hide();
|
||||
this.$element.prepend(
|
||||
this.$el.find('table:first').hide();
|
||||
this.$el.prepend(
|
||||
$('<div class="oe_view_nocontent">').html(this.options.action.help)
|
||||
);
|
||||
}
|
||||
@@ -1478,27 +1478,27 @@ instance.web.ListView.Groups = instance.web.Class.extend( /** @lends instance.we
|
||||
},
|
||||
render: function (post_render) {
|
||||
var self = this;
|
||||
var $element = $('<tbody>');
|
||||
this.elements = [$element[0]];
|
||||
var $el = $('<tbody>');
|
||||
this.elements = [$el[0]];
|
||||
|
||||
this.datagroup.list(
|
||||
_(this.view.visible_columns).chain()
|
||||
.filter(function (column) { return column.tag === 'field' })
|
||||
.pluck('name').value(),
|
||||
function (groups) {
|
||||
$element[0].appendChild(
|
||||
$el[0].appendChild(
|
||||
self.render_groups(groups));
|
||||
if (post_render) { post_render(); }
|
||||
}, function (dataset) {
|
||||
self.render_dataset(dataset).then(function (list) {
|
||||
self.children[null] = list;
|
||||
self.elements =
|
||||
[list.$current.replaceAll($element)[0]];
|
||||
[list.$current.replaceAll($el)[0]];
|
||||
self.setup_resequence_rows(list, dataset);
|
||||
if (post_render) { post_render(); }
|
||||
});
|
||||
});
|
||||
return $element;
|
||||
return $el;
|
||||
},
|
||||
/**
|
||||
* Returns the ids of all selected records for this group, and the records
|
||||
|
||||
@@ -45,10 +45,10 @@ openerp.web.list_editable = function (instance) {
|
||||
}
|
||||
});
|
||||
this.on('edit:after', this, function () {
|
||||
self.$element.add(self.$buttons).addClass('oe_editing');
|
||||
self.$el.add(self.$buttons).addClass('oe_editing');
|
||||
});
|
||||
this.on('save:after cancel:after', this, function () {
|
||||
self.$element.add(self.$buttons).removeClass('oe_editing');
|
||||
self.$el.add(self.$buttons).removeClass('oe_editing');
|
||||
});
|
||||
},
|
||||
destroy: function () {
|
||||
@@ -87,8 +87,8 @@ openerp.web.list_editable = function (instance) {
|
||||
*/
|
||||
do_add_record: function () {
|
||||
if (this.editable()) {
|
||||
this.$element.find('table:first').show();
|
||||
this.$element.find('.oe_view_nocontent').remove();
|
||||
this.$el.find('table:first').show();
|
||||
this.$el.find('.oe_view_nocontent').remove();
|
||||
this.start_edition();
|
||||
} else {
|
||||
this._super();
|
||||
@@ -99,7 +99,7 @@ openerp.web.list_editable = function (instance) {
|
||||
// tree/@editable takes priority on everything else if present.
|
||||
var result = this._super(data, grouped);
|
||||
if (this.editable()) {
|
||||
this.$element.addClass('oe_list_editable');
|
||||
this.$el.addClass('oe_list_editable');
|
||||
// FIXME: any hook available to ensure this is only done once?
|
||||
this.$buttons
|
||||
.off('click', '.oe_list_save')
|
||||
@@ -109,7 +109,7 @@ openerp.web.list_editable = function (instance) {
|
||||
e.preventDefault();
|
||||
self.cancel_edition();
|
||||
});
|
||||
this.$element
|
||||
this.$el
|
||||
.off('click', 'tbody td:not(.oe_list_field_cell)')
|
||||
.on('click', 'tbody td:not(.oe_list_field_cell)', function () {
|
||||
if (!self.editor.is_editing()) {
|
||||
@@ -120,12 +120,12 @@ openerp.web.list_editable = function (instance) {
|
||||
// Editor is not restartable due to formview not being
|
||||
// restartable
|
||||
this.editor = this.make_editor();
|
||||
var editor_ready = this.editor.prependTo(this.$element)
|
||||
var editor_ready = this.editor.prependTo(this.$el)
|
||||
.then(this.proxy('setup_events'));
|
||||
|
||||
return $.when(result, editor_ready);
|
||||
} else {
|
||||
this.$element.removeClass('oe_list_editable');
|
||||
this.$el.removeClass('oe_list_editable');
|
||||
}
|
||||
|
||||
return result;
|
||||
@@ -203,7 +203,7 @@ openerp.web.list_editable = function (instance) {
|
||||
}
|
||||
|
||||
// FIXME: need better way to get the field back from bubbling (delegated) DOM events somehow
|
||||
field.$element.attr('data-fieldname', field_name);
|
||||
field.$el.attr('data-fieldname', field_name);
|
||||
self.fields_for_resize.push({field: field, cell: cell});
|
||||
}, options).pipe(function () {
|
||||
$recordRow.addClass('oe_edition');
|
||||
@@ -249,8 +249,8 @@ openerp.web.list_editable = function (instance) {
|
||||
var position = $cell.position();
|
||||
|
||||
// jquery does not understand !important
|
||||
field.$element.attr('style', 'width: '+$cell.outerWidth()+'px !important')
|
||||
field.$element.css({
|
||||
field.$el.attr('style', 'width: '+$cell.outerWidth()+'px !important')
|
||||
field.$el.css({
|
||||
top: position.top,
|
||||
left: position.left,
|
||||
minHeight: $cell.outerHeight()
|
||||
@@ -391,7 +391,7 @@ openerp.web.list_editable = function (instance) {
|
||||
},
|
||||
setup_events: function () {
|
||||
var self = this;
|
||||
this.editor.$element.on('keyup keydown', function (e) {
|
||||
this.editor.$el.on('keyup keydown', function (e) {
|
||||
if (!self.editor.is_editing()) { return; }
|
||||
var key = _($.ui.keyCode).chain()
|
||||
.map(function (v, k) { return {name: k, code: v}; })
|
||||
@@ -540,7 +540,7 @@ openerp.web.list_editable = function (instance) {
|
||||
if (--field_index < 0) { return $.when(); }
|
||||
|
||||
field = fields[fields_order[field_index]];
|
||||
} while (!field.$element.is(':visible'));
|
||||
} while (!field.$el.is(':visible'));
|
||||
|
||||
// and focus it
|
||||
field.focus();
|
||||
@@ -563,7 +563,7 @@ openerp.web.list_editable = function (instance) {
|
||||
if (++field_index >= fields_order.length) { return $.when(); }
|
||||
|
||||
field = fields[fields_order[field_index]];
|
||||
} while (!field.$element.is(':visible'));
|
||||
} while (!field.$el.is(':visible'));
|
||||
|
||||
field.focus();
|
||||
return $.when();
|
||||
@@ -572,11 +572,11 @@ openerp.web.list_editable = function (instance) {
|
||||
var form = this.editor.form;
|
||||
var last_field = _(form.fields_order).chain()
|
||||
.map(function (name) { return form.fields[name]; })
|
||||
.filter(function (field) { return field.$element.is(':visible'); })
|
||||
.filter(function (field) { return field.$el.is(':visible'); })
|
||||
.last()
|
||||
.value();
|
||||
// tabbed from last field in form
|
||||
if (last_field && last_field.$element.has(e.target).length) {
|
||||
if (last_field && last_field.$el.has(e.target).length) {
|
||||
e.preventDefault();
|
||||
return this._next();
|
||||
}
|
||||
@@ -620,7 +620,7 @@ openerp.web.list_editable = function (instance) {
|
||||
var _super = this._super();
|
||||
this.form.embedded_view = this._validate_view(
|
||||
this.delegate.edition_view(this));
|
||||
var form_ready = this.form.appendTo(this.$element).then(
|
||||
var form_ready = this.form.appendTo(this.$el).then(
|
||||
self.form.proxy('do_hide'));
|
||||
return $.when(_super, form_ready);
|
||||
},
|
||||
@@ -678,7 +678,7 @@ openerp.web.list_editable = function (instance) {
|
||||
// Is actually in the form
|
||||
&& (field = form.fields[focus_field])
|
||||
// And is visible
|
||||
&& field.$element.is(':visible')) {
|
||||
&& field.$el.is(':visible')) {
|
||||
// focus it
|
||||
field.focus();
|
||||
return;
|
||||
@@ -687,7 +687,7 @@ openerp.web.list_editable = function (instance) {
|
||||
_(form.fields_order).detect(function (name) {
|
||||
// look for first visible field in fields_order, focus it
|
||||
var field = form.fields[name];
|
||||
if (!field.$element.is(':visible')) {
|
||||
if (!field.$el.is(':visible')) {
|
||||
return false;
|
||||
}
|
||||
// Stop as soon as a field got focused
|
||||
@@ -716,7 +716,7 @@ openerp.web.list_editable = function (instance) {
|
||||
save: function () {
|
||||
var self = this;
|
||||
return this.form
|
||||
.do_save(null, this.delegate.prepends_on_create())
|
||||
.do_save(this.delegate.prepends_on_create())
|
||||
.pipe(function (result) {
|
||||
var created = result.created && !self.record.id;
|
||||
if (created) {
|
||||
|
||||
@@ -84,13 +84,13 @@ instance.web.TreeView = instance.web.View.extend(/** @lends instance.web.TreeVie
|
||||
});
|
||||
this.fields = fields_view.fields;
|
||||
this.hook_row_click();
|
||||
this.$element.html(QWeb.render('TreeView', {
|
||||
this.$el.html(QWeb.render('TreeView', {
|
||||
'title': this.fields_view.arch.attrs.string,
|
||||
'fields_view': this.fields_view.arch.children,
|
||||
'fields': this.fields,
|
||||
'toolbar': has_toolbar
|
||||
}));
|
||||
this.$element.addClass(this.fields_view.arch.attrs['class']);
|
||||
this.$el.addClass(this.fields_view.arch.attrs['class']);
|
||||
|
||||
this.dataset.read_slice(this.fields_list()).then(function(records) {
|
||||
self.store_record(records);
|
||||
@@ -102,7 +102,7 @@ instance.web.TreeView = instance.web.View.extend(/** @lends instance.web.TreeVie
|
||||
return;
|
||||
}
|
||||
|
||||
var $select = self.$element.find('select')
|
||||
var $select = self.$el.find('select')
|
||||
.change(function () {
|
||||
var $option = $(this).find(':selected');
|
||||
self.getdata($option.val());
|
||||
@@ -120,10 +120,10 @@ instance.web.TreeView = instance.web.View.extend(/** @lends instance.web.TreeVie
|
||||
$select.change();
|
||||
}
|
||||
});
|
||||
this.$element.find("#tree_view_expand").click(function(){
|
||||
this.$el.find("#tree_view_expand").click(function(){
|
||||
self.expand_all();
|
||||
});
|
||||
this.$element.find("#tree_view_collapse").click(function(){
|
||||
this.$el.find("#tree_view_collapse").click(function(){
|
||||
self.collpase_all();
|
||||
});
|
||||
// TODO store open nodes in url ?...
|
||||
@@ -143,14 +143,14 @@ instance.web.TreeView = instance.web.View.extend(/** @lends instance.web.TreeVie
|
||||
},
|
||||
expand_all: function(){
|
||||
var self = this;
|
||||
var tr = this.$element.find(".oe-treeview-table tbody tr[id^='treerow_']");
|
||||
var tr = this.$el.find(".oe-treeview-table tbody tr[id^='treerow_']");
|
||||
_.each(tr,function(rec){
|
||||
self.showcontent($(rec).attr('data-id'),true);
|
||||
});
|
||||
},
|
||||
collpase_all: function(){
|
||||
var self = this;
|
||||
var root_tr = this.$element.find(".oe-treeview-table tbody tr[data-level='"+1+"']");
|
||||
var root_tr = this.$el.find(".oe-treeview-table tbody tr[data-level='"+1+"']");
|
||||
_.each(root_tr,function(rec){
|
||||
if($(rec).hasClass('oe_open')){
|
||||
self.showcontent($(rec).attr('data-id'),false);
|
||||
@@ -187,12 +187,12 @@ instance.web.TreeView = instance.web.View.extend(/** @lends instance.web.TreeVie
|
||||
*/
|
||||
hook_row_click: function () {
|
||||
var self = this;
|
||||
this.$element.delegate('.treeview-td span, .treeview-tr span', 'click', function (e) {
|
||||
this.$el.delegate('.treeview-td span, .treeview-tr span', 'click', function (e) {
|
||||
e.stopImmediatePropagation();
|
||||
self.activate($(this).closest('tr').data('id'));
|
||||
});
|
||||
|
||||
this.$element.delegate('.treeview-tr', 'click', function () {
|
||||
this.$el.delegate('.treeview-tr', 'click', function () {
|
||||
var $this = $(this),
|
||||
record_id = $this.data('id'),
|
||||
bool = $this.parent().hasClass('oe_open');
|
||||
@@ -220,7 +220,7 @@ instance.web.TreeView = instance.web.View.extend(/** @lends instance.web.TreeVie
|
||||
render_data: function(groupby){
|
||||
var self = this;
|
||||
_.each(_.keys(groupby),function(key){
|
||||
var $curr_node = self.$element.find('#treerow_' + key);
|
||||
var $curr_node = self.$el.find('#treerow_' + key);
|
||||
var record = groupby[key];
|
||||
var children_rows = QWeb.render('TreeView.rows', {
|
||||
'records': record,
|
||||
@@ -235,7 +235,7 @@ instance.web.TreeView = instance.web.View.extend(/** @lends instance.web.TreeVie
|
||||
$curr_node.addClass('oe_open');
|
||||
$curr_node.after(children_rows);
|
||||
} else {
|
||||
self.$element.find('tbody').html(children_rows);
|
||||
self.$el.find('tbody').html(children_rows);
|
||||
}
|
||||
});
|
||||
self.collpase_all();
|
||||
@@ -272,11 +272,11 @@ instance.web.TreeView = instance.web.View.extend(/** @lends instance.web.TreeVie
|
||||
|
||||
// show & hide the contents
|
||||
showcontent: function (record_id, show) {
|
||||
this.$element.find('#treerow_' + record_id)
|
||||
this.$el.find('#treerow_' + record_id)
|
||||
.toggleClass('oe_open', show);
|
||||
|
||||
_(this.records[record_id][this.children_field]).each(function (child_id) {
|
||||
var $child_row = this.$element.find('#treerow_' + child_id);
|
||||
var $child_row = this.$el.find('#treerow_' + child_id);
|
||||
if ($child_row.hasClass('oe_open')) {
|
||||
this.showcontent(child_id, false);
|
||||
}
|
||||
|
||||
@@ -20,7 +20,7 @@ instance.web.ActionManager = instance.web.Widget.extend({
|
||||
},
|
||||
start: function() {
|
||||
this._super.apply(this, arguments);
|
||||
this.$element.on('click', '.oe_breadcrumb_item', this.on_breadcrumb_clicked);
|
||||
this.$el.on('click', '.oe_breadcrumb_item', this.on_breadcrumb_clicked);
|
||||
},
|
||||
dialog_stop: function () {
|
||||
if (this.dialog) {
|
||||
@@ -53,10 +53,10 @@ instance.web.ActionManager = instance.web.Widget.extend({
|
||||
}
|
||||
var item = _.extend({
|
||||
show: function(index) {
|
||||
this.widget.$element.show();
|
||||
this.widget.$el.show();
|
||||
},
|
||||
hide: function() {
|
||||
this.widget.$element.hide();
|
||||
this.widget.$el.hide();
|
||||
},
|
||||
destroy: function() {
|
||||
this.widget.destroy();
|
||||
@@ -277,14 +277,14 @@ instance.web.ActionManager = instance.web.Widget.extend({
|
||||
}
|
||||
this.dialog.dialog_title = action.name;
|
||||
this.dialog_widget = widget;
|
||||
this.dialog_widget.appendTo(this.dialog.$element);
|
||||
this.dialog_widget.appendTo(this.dialog.$el);
|
||||
this.dialog.open();
|
||||
} else {
|
||||
this.dialog_stop();
|
||||
this.inner_action = action;
|
||||
this.inner_widget = widget;
|
||||
post_process();
|
||||
this.inner_widget.appendTo(this.$element);
|
||||
this.inner_widget.appendTo(this.$el);
|
||||
}
|
||||
},
|
||||
ir_actions_act_window: function (action, on_close) {
|
||||
@@ -376,7 +376,7 @@ instance.web.ViewManager = instance.web.Widget.extend({
|
||||
start: function() {
|
||||
this._super();
|
||||
var self = this;
|
||||
this.$element.find('.oe_view_manager_switch a').click(function() {
|
||||
this.$el.find('.oe_view_manager_switch a').click(function() {
|
||||
self.on_mode_switch($(this).data('view-type'));
|
||||
}).tipsy();
|
||||
var views_ids = {};
|
||||
@@ -385,9 +385,9 @@ instance.web.ViewManager = instance.web.Widget.extend({
|
||||
deferred : $.Deferred(),
|
||||
controller : null,
|
||||
options : _.extend({
|
||||
$buttons : self.$element.find('.oe_view_manager_buttons'),
|
||||
$sidebar : self.flags.sidebar ? self.$element.find('.oe_view_manager_sidebar') : undefined,
|
||||
$pager : self.$element.find('.oe_view_manager_pager'),
|
||||
$buttons : self.$el.find('.oe_view_manager_buttons'),
|
||||
$sidebar : self.flags.sidebar ? self.$el.find('.oe_view_manager_sidebar') : undefined,
|
||||
$pager : self.$el.find('.oe_view_manager_pager'),
|
||||
action : self.action,
|
||||
action_views_ids : views_ids
|
||||
}, self.flags, self.flags[view.view_type] || {}, view.options || {})
|
||||
@@ -395,7 +395,7 @@ instance.web.ViewManager = instance.web.Widget.extend({
|
||||
views_ids[view.view_type] = view.view_id;
|
||||
});
|
||||
if (this.flags.views_switcher === false) {
|
||||
this.$element.find('.oe_view_manager_switch').hide();
|
||||
this.$el.find('.oe_view_manager_switch').hide();
|
||||
}
|
||||
// If no default view defined, switch to the first one in sequence
|
||||
var default_view = this.flags.default_view || this.views_src[0].view_type;
|
||||
@@ -432,9 +432,9 @@ instance.web.ViewManager = instance.web.Widget.extend({
|
||||
this.searchview[(view.controller.searchable === false || this.searchview.hidden) ? 'hide' : 'show']();
|
||||
}
|
||||
|
||||
this.$element
|
||||
this.$el
|
||||
.find('.oe_view_manager_switch a').parent().removeClass('active');
|
||||
this.$element
|
||||
this.$el
|
||||
.find('.oe_view_manager_switch a').filter('[data-view-type="' + view_type + '"]')
|
||||
.parent().addClass('active');
|
||||
|
||||
@@ -442,7 +442,7 @@ instance.web.ViewManager = instance.web.Widget.extend({
|
||||
_.each(_.keys(self.views), function(view_name) {
|
||||
var controller = self.views[view_name].controller;
|
||||
if (controller) {
|
||||
var container = self.$element.find(".oe_view_manager_view_" + view_name + ":first");
|
||||
var container = self.$el.find(".oe_view_manager_view_" + view_name + ":first");
|
||||
if (view_name === view_type) {
|
||||
container.show();
|
||||
controller.do_show(view_options || {});
|
||||
@@ -451,10 +451,10 @@ instance.web.ViewManager = instance.web.Widget.extend({
|
||||
controller.do_hide();
|
||||
}
|
||||
// put the <footer> in the dialog's buttonpane
|
||||
if (self.$element.parent('.ui-dialog-content') && self.$element.find('footer')) {
|
||||
self.$element.parent('.ui-dialog-content').parent().find('div.ui-dialog-buttonset').hide()
|
||||
self.$element.find('footer').appendTo(
|
||||
self.$element.parent('.ui-dialog-content').parent().find('div.ui-dialog-buttonpane')
|
||||
if (self.$el.parent('.ui-dialog-content') && self.$el.find('footer')) {
|
||||
self.$el.parent('.ui-dialog-content').parent().find('div.ui-dialog-buttonset').hide()
|
||||
self.$el.find('footer').appendTo(
|
||||
self.$el.parent('.ui-dialog-content').parent().find('div.ui-dialog-buttonpane')
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -491,7 +491,7 @@ instance.web.ViewManager = instance.web.Widget.extend({
|
||||
controller.do_switch_view.add_last(_.bind(this.switch_view, this));
|
||||
|
||||
controller.do_prev_view.add_last(this.on_prev_view);
|
||||
var container = this.$element.find(".oe_view_manager_view_" + view_type);
|
||||
var container = this.$el.find(".oe_view_manager_view_" + view_type);
|
||||
var view_promise = controller.appendTo(container);
|
||||
this.views[view_type].controller = controller;
|
||||
this.views[view_type].deferred.resolve(view_type);
|
||||
@@ -505,7 +505,7 @@ instance.web.ViewManager = instance.web.Widget.extend({
|
||||
});
|
||||
},
|
||||
set_title: function(title) {
|
||||
this.$element.find('.oe_view_title_text:first').text(title);
|
||||
this.$el.find('.oe_view_title_text:first').text(title);
|
||||
},
|
||||
add_breadcrumb: function() {
|
||||
var self = this;
|
||||
@@ -524,7 +524,7 @@ instance.web.ViewManager = instance.web.Widget.extend({
|
||||
action: this.action,
|
||||
show: function(index) {
|
||||
var view_to_select = views[index];
|
||||
self.$element.show();
|
||||
self.$el.show();
|
||||
if (self.active_view !== view_to_select) {
|
||||
self.on_mode_switch(view_to_select);
|
||||
}
|
||||
@@ -600,7 +600,7 @@ instance.web.ViewManager = instance.web.Widget.extend({
|
||||
this.searchview = new instance.web.SearchView(this, this.dataset, view_id, search_defaults, this.flags.search_view === false);
|
||||
|
||||
this.searchview.on_search.add(this.do_searchview_search);
|
||||
return this.searchview.appendTo(this.$element.find(".oe_view_manager_view_search"));
|
||||
return this.searchview.appendTo(this.$el.find(".oe_view_manager_view_search"));
|
||||
},
|
||||
do_searchview_search: function(domains, contexts, groupbys) {
|
||||
var self = this,
|
||||
@@ -717,8 +717,8 @@ instance.web.ViewManagerAction = instance.web.ViewManager.extend({
|
||||
|
||||
var manager_ready = $.when(searchview_loaded, main_view_loaded);
|
||||
|
||||
this.$element.find('.oe_debug_view').change(this.on_debug_changed);
|
||||
this.$element.addClass("oe_view_manager_" + (this.action.target || 'current'));
|
||||
this.$el.find('.oe_debug_view').change(this.on_debug_changed);
|
||||
this.$el.addClass("oe_view_manager_" + (this.action.target || 'current'));
|
||||
return manager_ready;
|
||||
},
|
||||
on_debug_changed: function (evt) {
|
||||
@@ -730,7 +730,7 @@ instance.web.ViewManagerAction = instance.web.ViewManager.extend({
|
||||
switch (val) {
|
||||
case 'fvg':
|
||||
var dialog = new instance.web.Dialog(this, { title: _t("Fields View Get"), width: '95%' }).open();
|
||||
$('<pre>').text(instance.web.json_node_to_xml(current_view.fields_view.arch, true)).appendTo(dialog.$element);
|
||||
$('<pre>').text(instance.web.json_node_to_xml(current_view.fields_view.arch, true)).appendTo(dialog.$el);
|
||||
break;
|
||||
case 'perm_read':
|
||||
var ids = current_view.get_selected_ids();
|
||||
@@ -828,7 +828,7 @@ instance.web.ViewManagerAction = instance.web.ViewManager.extend({
|
||||
var controller = self.views[self.active_view].controller,
|
||||
fvg = controller.fields_view,
|
||||
view_id = (fvg && fvg.view_id) || '--';
|
||||
self.$element.find('.oe_debug_view').html(QWeb.render('ViewManagerDebug', {
|
||||
self.$el.find('.oe_debug_view').html(QWeb.render('ViewManagerDebug', {
|
||||
view: controller,
|
||||
view_manager: self
|
||||
}));
|
||||
@@ -842,7 +842,7 @@ instance.web.ViewManagerAction = instance.web.ViewManager.extend({
|
||||
return r;
|
||||
},
|
||||
set_title: function(title) {
|
||||
this.$element.find('.oe_breadcrumb_title:first').html(this.getParent().get_title());
|
||||
this.$el.find('.oe_breadcrumb_title:first').html(this.getParent().get_title());
|
||||
},
|
||||
do_push_state: function(state) {
|
||||
if (this.getParent() && this.getParent().do_push_state) {
|
||||
@@ -874,7 +874,7 @@ instance.web.Sidebar = instance.web.Widget.extend({
|
||||
var view = this.getParent();
|
||||
this.sections = [
|
||||
{ 'name' : 'print', 'label' : _t('Print'), },
|
||||
{ 'name' : 'files', 'label' : _t('Attachment'), },
|
||||
{ 'name' : 'files', 'label' : _t('Attachment(s)'), },
|
||||
{ 'name' : 'other', 'label' : _t('More'), }
|
||||
];
|
||||
this.items = {
|
||||
@@ -901,7 +901,7 @@ instance.web.Sidebar = instance.web.Widget.extend({
|
||||
var self = this;
|
||||
this._super(this);
|
||||
this.redraw();
|
||||
this.$element.on('click','.oe_dropdown_menu li a', function(event) {
|
||||
this.$el.on('click','.oe_dropdown_menu li a', function(event) {
|
||||
var section = $(this).data('section');
|
||||
var index = $(this).data('index');
|
||||
var item = self.items[section][index];
|
||||
@@ -917,7 +917,7 @@ instance.web.Sidebar = instance.web.Widget.extend({
|
||||
},
|
||||
redraw: function() {
|
||||
var self = this;
|
||||
self.$element.html(QWeb.render('Sidebar', {widget: self}));
|
||||
self.$el.html(QWeb.render('Sidebar', {widget: self}));
|
||||
|
||||
// Hides Sidebar sections when item list is empty
|
||||
this.$('.oe_form_dropdown_section').each(function() {
|
||||
@@ -1024,12 +1024,12 @@ instance.web.Sidebar = instance.web.Widget.extend({
|
||||
self.items['files'] = attachments;
|
||||
self.redraw();
|
||||
this.$('.oe_sidebar_add_attachment .oe_form_binary_file').change(this.on_attachment_changed);
|
||||
this.$element.find('.oe_sidebar_delete_item').click(this.on_attachment_delete);
|
||||
this.$el.find('.oe_sidebar_delete_item').click(this.on_attachment_delete);
|
||||
},
|
||||
on_attachment_changed: function(e) {
|
||||
var $e = $(e.target);
|
||||
if ($e.val() !== '') {
|
||||
this.$element.find('form.oe_form_binary_form').submit();
|
||||
this.$el.find('form.oe_form_binary_form').submit();
|
||||
$e.parent().find('input[type=file]').prop('disabled', true);
|
||||
$e.parent().find('button').prop('disabled', true).find('img, span').toggle();
|
||||
this.$('.oe_sidebar_add_attachment span').text(_t('Uploading...'));
|
||||
@@ -1078,8 +1078,8 @@ instance.web.TranslateDialog = instance.web.Dialog.extend({
|
||||
var self = this;
|
||||
this._super();
|
||||
$.when(this.languages_loaded).then(function() {
|
||||
self.$element.html(instance.web.qweb.render('TranslateDialog', { widget: self }));
|
||||
self.$fields_form = self.$element.find('.oe_translation_form');
|
||||
self.$el.html(instance.web.qweb.render('TranslateDialog', { widget: self }));
|
||||
self.$fields_form = self.$el.find('.oe_translation_form');
|
||||
self.$fields_form.find('.oe_trad_field').change(function() {
|
||||
$(this).toggleClass('touched', ($(this).val() != $(this).attr('data-value')));
|
||||
});
|
||||
@@ -1125,8 +1125,8 @@ instance.web.TranslateDialog = instance.web.Dialog.extend({
|
||||
if (self.view.translatable_fields && self.view.translatable_fields.length) {
|
||||
self.do_load_fields_values(function() {
|
||||
if (field) {
|
||||
var $field_input = self.$element.find('tr[data-field="' + field.name + '"] td:nth-child(2) *:first-child');
|
||||
self.$element.scrollTo($field_input);
|
||||
var $field_input = self.$el.find('tr[data-field="' + field.name + '"] td:nth-child(2) *:first-child');
|
||||
self.$el.scrollTo($field_input);
|
||||
$field_input.focus();
|
||||
}
|
||||
});
|
||||
@@ -1302,10 +1302,10 @@ instance.web.View = instance.web.Widget.extend({
|
||||
this.embedded_view = embedded_view;
|
||||
},
|
||||
do_show: function () {
|
||||
this.$element.show();
|
||||
this.$el.show();
|
||||
},
|
||||
do_hide: function () {
|
||||
this.$element.hide();
|
||||
this.$el.hide();
|
||||
},
|
||||
do_push_state: function(state) {
|
||||
if (this.getParent() && this.getParent().do_push_state) {
|
||||
|
||||
@@ -51,29 +51,6 @@
|
||||
</table>
|
||||
</t>
|
||||
<t t-name="CrashManager.error">
|
||||
<t t-if="!session.openerp_entreprise">
|
||||
<span>Your version of OpenERP is unsupported. Support & maintenance services are available here: <a href="http://www.openerp.com/support-or-publisher-warranty-contract" target="_blank">OpenERP Entreprise</a>.</span>
|
||||
</t>
|
||||
<t t-if="session.openerp_entreprise">
|
||||
<div class="oe_error_send">
|
||||
<div>
|
||||
<div class="oe_centeralign"><b>OpenERP Enterprise Contract.</b></div>
|
||||
<div><br/>Your report will be sent to the OpenERP Enterprise team.<br/></div><br/>
|
||||
<div>
|
||||
<label>Summary:</label><br/>
|
||||
<input id="issuename" type="text" class="oe_fielddiv"/>
|
||||
</div><br/><br/>
|
||||
<div>
|
||||
<label>Description:</label><br/>
|
||||
<textarea id="explanation" rows="6"></textarea>
|
||||
</div><br/><br/>
|
||||
<div>
|
||||
<label>What you did:</label><br/>
|
||||
<textarea id="remark" rows="6" ></textarea>
|
||||
</div>
|
||||
</div>
|
||||
</div><br/>
|
||||
</t>
|
||||
<div class="oe_error_detail">
|
||||
<pre><t t-esc="error.message"/></pre>
|
||||
<hr/>
|
||||
@@ -563,6 +540,7 @@
|
||||
<t t-foreach="widget.sections" t-as="section">
|
||||
<div class="oe_form_dropdown_section">
|
||||
<button class="oe_dropdown_toggle oe_dropdown_arrow">
|
||||
<t t-if="section.name == 'files'" t-raw="widget.items[section.name].length || ''"/>
|
||||
<t t-esc="section.label"/>
|
||||
</button>
|
||||
<ul class="oe_dropdown_menu">
|
||||
@@ -1736,7 +1714,7 @@
|
||||
<div class="oe_blockui_spin" style="height: 50px">
|
||||
</div>
|
||||
<br />
|
||||
<div style="color:white">Loading...</div>
|
||||
<div class="oe_throbber_message" style="color:white"></div>
|
||||
</div>
|
||||
</t>
|
||||
</templates>
|
||||
|
||||
@@ -86,17 +86,17 @@ $(document).ready(function () {
|
||||
test('no template, default', function () {
|
||||
var w = new (instance.web.Widget.extend({ }));
|
||||
|
||||
var $original = w.$element;
|
||||
var $original = w.$el;
|
||||
ok($original, "should initially have a root element");
|
||||
w.renderElement();
|
||||
ok(w.$element, "should have generated a root element");
|
||||
ok($original !== w.$element, "should have generated a new root element");
|
||||
strictEqual(w.$element, w.$element, "should provide $element alias");
|
||||
ok(w.$element.is(w.el), "should provide raw DOM alias");
|
||||
ok(w.$el, "should have generated a root element");
|
||||
ok($original !== w.$el, "should have generated a new root element");
|
||||
strictEqual(w.$el, w.$el, "should provide $el alias");
|
||||
ok(w.$el.is(w.el), "should provide raw DOM alias");
|
||||
|
||||
equal(w.el.nodeName, 'DIV', "should have generated the default element");
|
||||
equal(w.el.attributes.length, 0, "should not have generated any attribute");
|
||||
ok(_.isEmpty(w.$element.html(), "should not have generated any content"));
|
||||
ok(_.isEmpty(w.$el.html(), "should not have generated any content"));
|
||||
});
|
||||
test('no template, custom tag', function () {
|
||||
var w = new (instance.web.Widget.extend({
|
||||
@@ -113,7 +113,7 @@ $(document).ready(function () {
|
||||
w.renderElement();
|
||||
|
||||
equal(w.el.attributes.length, 1, "should have one attribute");
|
||||
equal(w.$element.attr('id'), 'foo', "should have generated the id attribute");
|
||||
equal(w.$el.attr('id'), 'foo', "should have generated the id attribute");
|
||||
equal(w.el.id, 'foo', "should also be available via property");
|
||||
});
|
||||
test('no template, @className', function () {
|
||||
@@ -123,7 +123,7 @@ $(document).ready(function () {
|
||||
w.renderElement();
|
||||
|
||||
equal(w.el.className, 'oe_some_class', "should have the right property");
|
||||
equal(w.$element.attr('class'), 'oe_some_class', "should have the right attribute");
|
||||
equal(w.$el.attr('class'), 'oe_some_class', "should have the right attribute");
|
||||
});
|
||||
test('no template, bunch of attributes', function () {
|
||||
var w = new (instance.web.Widget.extend({
|
||||
@@ -140,16 +140,16 @@ $(document).ready(function () {
|
||||
equal(w.el.attributes.length, 5, "should have all the specified attributes");
|
||||
|
||||
equal(w.el.id, 'some_id');
|
||||
equal(w.$element.attr('id'), 'some_id');
|
||||
equal(w.$el.attr('id'), 'some_id');
|
||||
|
||||
equal(w.el.className, 'some_class');
|
||||
equal(w.$element.attr('class'), 'some_class');
|
||||
equal(w.$el.attr('class'), 'some_class');
|
||||
|
||||
equal(w.$element.attr('data-foo'), 'data attribute');
|
||||
equal(w.$element.data('foo'), 'data attribute');
|
||||
equal(w.$el.attr('data-foo'), 'data attribute');
|
||||
equal(w.$el.data('foo'), 'data attribute');
|
||||
|
||||
equal(w.$element.attr('clark'), 'gable');
|
||||
equal(w.$element.attr('spoiler'), 'snape kills dumbledore');
|
||||
equal(w.$el.attr('clark'), 'gable');
|
||||
equal(w.$el.attr('spoiler'), 'snape kills dumbledore');
|
||||
});
|
||||
|
||||
test('template', function () {
|
||||
@@ -159,7 +159,7 @@ $(document).ready(function () {
|
||||
w.renderElement();
|
||||
|
||||
equal(w.el.nodeName, 'OL');
|
||||
equal(w.$element.children().length, 5);
|
||||
equal(w.$el.children().length, 5);
|
||||
equal(w.el.textContent, '01234');
|
||||
});
|
||||
|
||||
@@ -170,7 +170,7 @@ $(document).ready(function () {
|
||||
}));
|
||||
w.renderElement();
|
||||
|
||||
ok(w.$('li:eq(3)').is(w.$element.find('li:eq(3)')),
|
||||
ok(w.$('li:eq(3)').is(w.$el.find('li:eq(3)')),
|
||||
"should do the same thing as calling find on the widget root");
|
||||
});
|
||||
|
||||
@@ -191,7 +191,7 @@ $(document).ready(function () {
|
||||
}));
|
||||
w.renderElement();
|
||||
|
||||
w.$element.click();
|
||||
w.$el.click();
|
||||
w.$('li:eq(3)').click();
|
||||
w.$('input:last').val('foo').change();
|
||||
|
||||
@@ -206,7 +206,7 @@ $(document).ready(function () {
|
||||
events: { 'click li': function () { clicked = true; } }
|
||||
}));
|
||||
w.renderElement();
|
||||
w.$element.on('click', 'li', function () { newclicked = true });
|
||||
w.$el.on('click', 'li', function () { newclicked = true });
|
||||
|
||||
w.$('li').click();
|
||||
ok(clicked, "should trigger bound events");
|
||||
@@ -229,11 +229,11 @@ $(document).ready(function () {
|
||||
.always(start)
|
||||
.done(function () {
|
||||
equal($fix.find('p').text(), '42', "DOM fixture should contain initial value");
|
||||
equal(w.$element.text(), '42', "should set initial value");
|
||||
equal(w.$el.text(), '42', "should set initial value");
|
||||
w.value = 36;
|
||||
w.renderElement();
|
||||
equal($fix.find('p').text(), '36', "DOM fixture should use new value");
|
||||
equal(w.$element.text(), '36', "should set new value");
|
||||
equal(w.$el.text(), '36', "should set new value");
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
@@ -39,5 +39,4 @@ class TestSession(Session):
|
||||
"context": CONTEXT,
|
||||
"db": req.session._db,
|
||||
"login": req.session._login,
|
||||
"openerp_entreprise": False,
|
||||
}
|
||||
|
||||
@@ -1,10 +1,14 @@
|
||||
{
|
||||
"name" : "OpenERP Web API",
|
||||
"category" : "Hidden",
|
||||
"description":"""Openerp Web API.""",
|
||||
"version" : "2.0",
|
||||
"depends" : ['web'],
|
||||
"installable" : True,
|
||||
'name': 'OpenERP Web API',
|
||||
'category': 'Hidden',
|
||||
'description': """
|
||||
Openerp Web API.
|
||||
================
|
||||
|
||||
""",
|
||||
'version': '2.0',
|
||||
'depends': ['web'],
|
||||
'installable': True,
|
||||
'auto_install': False,
|
||||
'js' : [
|
||||
],
|
||||
|
||||
@@ -1,20 +1,24 @@
|
||||
{
|
||||
"name": "Web Calendar",
|
||||
"category": "Hidden",
|
||||
"description":"""OpenERP Web Calendar view.""",
|
||||
"version": "2.0",
|
||||
"depends": ['web'],
|
||||
"js": [
|
||||
'name': 'Web Calendar',
|
||||
'category': 'Hidden',
|
||||
'description':"""
|
||||
OpenERP Web Calendar view.
|
||||
==========================
|
||||
|
||||
""",
|
||||
'version': '2.0',
|
||||
'depends': ['web'],
|
||||
'js': [
|
||||
'static/lib/dhtmlxScheduler/codebase/dhtmlxscheduler_debug.js',
|
||||
'static/lib/dhtmlxScheduler/sources/ext/ext_minical.js',
|
||||
'static/src/js/calendar.js'
|
||||
],
|
||||
"css": [
|
||||
'static/lib/dhtmlxScheduler/codebase/ext/dhtmlxscheduler_ext.css',
|
||||
'static/src/css/web_calendar.css'
|
||||
],
|
||||
'css': [
|
||||
'static/lib/dhtmlxScheduler/codebase/ext/dhtmlxscheduler_ext.css',
|
||||
'static/src/css/web_calendar.css'
|
||||
],
|
||||
'qweb' : [
|
||||
"static/src/xml/*.xml",
|
||||
'static/src/xml/*.xml',
|
||||
],
|
||||
'auto_install': True
|
||||
}
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web_calendar/static/src/js/calendar.js:11
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web_calendar/static/src/js/calendar.js:11
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web_calendar/static/src/js/calendar.js:11
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web_calendar/static/src/js/calendar.js:11
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web_calendar/static/src/js/calendar.js:11
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
"X-Poedit-Language: Czech\n"
|
||||
|
||||
#. openerp-web
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web_calendar/static/src/js/calendar.js:11
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web_calendar/static/src/js/calendar.js:11
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web_calendar/static/src/js/calendar.js:11
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web_calendar/static/src/js/calendar.js:11
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web_calendar/static/src/js/calendar.js:11
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web_calendar/static/src/js/calendar.js:11
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
"Language: es\n"
|
||||
|
||||
#. openerp-web
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web_calendar/static/src/js/calendar.js:11
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web_calendar/static/src/js/calendar.js:11
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web_calendar/static/src/js/calendar.js:11
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web_calendar/static/src/js/calendar.js:11
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web_calendar/static/src/js/calendar.js:11
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web_calendar/static/src/js/calendar.js:11
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web_calendar/static/src/js/calendar.js:11
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web_calendar/static/src/js/calendar.js:11
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web_calendar/static/src/js/calendar.js:11
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web_calendar/static/src/js/calendar.js:11
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web_calendar/static/src/js/calendar.js:11
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web_calendar/static/src/js/calendar.js:11
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web_calendar/static/src/js/calendar.js:11
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web_calendar/static/src/js/calendar.js:11
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web_calendar/static/src/js/calendar.js:11
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web_calendar/static/src/js/calendar.js:11
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web_calendar/static/src/js/calendar.js:11
|
||||
|
||||
@@ -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: 2012-08-15 04:50+0000\n"
|
||||
"X-Generator: Launchpad (build 15801)\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 07:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
|
||||
#. openerp-web
|
||||
#: addons/web_calendar/static/src/js/calendar.js:11
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user