diff --git a/addons/web/__openerp__.py b/addons/web/__openerp__.py index 8c2a8fa0909..38e3328bf8b 100644 --- a/addons/web/__openerp__.py +++ b/addons/web/__openerp__.py @@ -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', ], } diff --git a/addons/web/common/session.py b/addons/web/common/session.py index 5906ee6314e..45bbb32f64c 100644 --- a/addons/web/common/session.py +++ b/addons/web/common/session.py @@ -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) diff --git a/addons/web/controllers/main.py b/addons/web/controllers/main.py index ed32b2239c3..f9c36a1f0c0 100644 --- a/addons/web/controllers/main.py +++ b/addons/web/controllers/main.py @@ -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 diff --git a/addons/web/i18n/ar.po b/addons/web/i18n/ar.po index 498c78516be..3ba35d1dc59 100644 --- a/addons/web/i18n/ar.po +++ b/addons/web/i18n/ar.po @@ -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 diff --git a/addons/web/i18n/bg.po b/addons/web/i18n/bg.po index 775314cd39e..0c949bcbd8e 100644 --- a/addons/web/i18n/bg.po +++ b/addons/web/i18n/bg.po @@ -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 diff --git a/addons/web/i18n/bn.po b/addons/web/i18n/bn.po index 96aff0694c1..5302f0c2475 100644 --- a/addons/web/i18n/bn.po +++ b/addons/web/i18n/bn.po @@ -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 diff --git a/addons/web/i18n/bs.po b/addons/web/i18n/bs.po index e2aff2f0b09..98f7b651e81 100644 --- a/addons/web/i18n/bs.po +++ b/addons/web/i18n/bs.po @@ -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 diff --git a/addons/web/i18n/ca.po b/addons/web/i18n/ca.po index 6c5cce42b4a..0d6025bf82c 100644 --- a/addons/web/i18n/ca.po +++ b/addons/web/i18n/ca.po @@ -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 diff --git a/addons/web/i18n/cs.po b/addons/web/i18n/cs.po index e03171f930f..1ba20c822b9 100644 --- a/addons/web/i18n/cs.po +++ b/addons/web/i18n/cs.po @@ -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 diff --git a/addons/web/i18n/da.po b/addons/web/i18n/da.po index d4a5cc6efad..71f548415c2 100644 --- a/addons/web/i18n/da.po +++ b/addons/web/i18n/da.po @@ -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 diff --git a/addons/web/i18n/de.po b/addons/web/i18n/de.po index bd7f20ec818..a5eb33b65f8 100644 --- a/addons/web/i18n/de.po +++ b/addons/web/i18n/de.po @@ -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 diff --git a/addons/web/i18n/en_AU.po b/addons/web/i18n/en_AU.po index 6d7490923f6..c6212e2ad88 100644 --- a/addons/web/i18n/en_AU.po +++ b/addons/web/i18n/en_AU.po @@ -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 diff --git a/addons/web/i18n/en_GB.po b/addons/web/i18n/en_GB.po index 83c3325e793..3e4a554b400 100644 --- a/addons/web/i18n/en_GB.po +++ b/addons/web/i18n/en_GB.po @@ -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 diff --git a/addons/web/i18n/es.po b/addons/web/i18n/es.po index 74e77381873..16e92bb71b0 100644 --- a/addons/web/i18n/es.po +++ b/addons/web/i18n/es.po @@ -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 diff --git a/addons/web/i18n/es_CL.po b/addons/web/i18n/es_CL.po index 5e65aad781f..a66db88bbe2 100644 --- a/addons/web/i18n/es_CL.po +++ b/addons/web/i18n/es_CL.po @@ -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 diff --git a/addons/web/i18n/es_CR.po b/addons/web/i18n/es_CR.po index 953aacbfb3d..7c01a2104c4 100644 --- a/addons/web/i18n/es_CR.po +++ b/addons/web/i18n/es_CR.po @@ -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 diff --git a/addons/web/i18n/es_EC.po b/addons/web/i18n/es_EC.po index 7eb680fc806..5683e05fd95 100644 --- a/addons/web/i18n/es_EC.po +++ b/addons/web/i18n/es_EC.po @@ -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 diff --git a/addons/web/i18n/et.po b/addons/web/i18n/et.po index 96c99115ff1..d8cac4ed68f 100644 --- a/addons/web/i18n/et.po +++ b/addons/web/i18n/et.po @@ -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 diff --git a/addons/web/i18n/eu.po b/addons/web/i18n/eu.po index 38dc8244b97..901df5e6f3a 100644 --- a/addons/web/i18n/eu.po +++ b/addons/web/i18n/eu.po @@ -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 diff --git a/addons/web/i18n/fi.po b/addons/web/i18n/fi.po index c4d36e63a43..e95a6471d81 100644 --- a/addons/web/i18n/fi.po +++ b/addons/web/i18n/fi.po @@ -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 diff --git a/addons/web/i18n/fr.po b/addons/web/i18n/fr.po index 9e0a92f76cf..a7e6e4140d7 100644 --- a/addons/web/i18n/fr.po +++ b/addons/web/i18n/fr.po @@ -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 diff --git a/addons/web/i18n/fr_CA.po b/addons/web/i18n/fr_CA.po index bfd81ef9938..594a27bce2d 100644 --- a/addons/web/i18n/fr_CA.po +++ b/addons/web/i18n/fr_CA.po @@ -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 diff --git a/addons/web/i18n/gl.po b/addons/web/i18n/gl.po index 6471ce44d60..19483531a48 100644 --- a/addons/web/i18n/gl.po +++ b/addons/web/i18n/gl.po @@ -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 diff --git a/addons/web/i18n/gu.po b/addons/web/i18n/gu.po index 778e78b55b2..b334ecb0bb0 100644 --- a/addons/web/i18n/gu.po +++ b/addons/web/i18n/gu.po @@ -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 diff --git a/addons/web/i18n/hi.po b/addons/web/i18n/hi.po index 21c023f5560..d80dd1c4fc7 100644 --- a/addons/web/i18n/hi.po +++ b/addons/web/i18n/hi.po @@ -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 diff --git a/addons/web/i18n/hr.po b/addons/web/i18n/hr.po index da768b45e9e..b95e832c834 100644 --- a/addons/web/i18n/hr.po +++ b/addons/web/i18n/hr.po @@ -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 diff --git a/addons/web/i18n/hu.po b/addons/web/i18n/hu.po index 8a3b6507d5d..b6af9f9bd9e 100644 --- a/addons/web/i18n/hu.po +++ b/addons/web/i18n/hu.po @@ -8,14 +8,14 @@ msgstr "" "Project-Id-Version: openerp-web\n" "Report-Msgid-Bugs-To: FULL NAME \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 \n" +"PO-Revision-Date: 2012-08-24 09:16+0000\n" +"Last-Translator: Herczeg Péter \n" "Language-Team: Hungarian \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" diff --git a/addons/web/i18n/id.po b/addons/web/i18n/id.po index f1bd452b6bd..f374b325afa 100644 --- a/addons/web/i18n/id.po +++ b/addons/web/i18n/id.po @@ -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 diff --git a/addons/web/i18n/it.po b/addons/web/i18n/it.po index ee0f096eda7..1cfd2637a61 100644 --- a/addons/web/i18n/it.po +++ b/addons/web/i18n/it.po @@ -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 diff --git a/addons/web/i18n/ja.po b/addons/web/i18n/ja.po index affb27e9acf..772832fb034 100644 --- a/addons/web/i18n/ja.po +++ b/addons/web/i18n/ja.po @@ -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 diff --git a/addons/web/i18n/ka.po b/addons/web/i18n/ka.po index f875f727a4f..1a8ee713848 100644 --- a/addons/web/i18n/ka.po +++ b/addons/web/i18n/ka.po @@ -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 diff --git a/addons/web/i18n/mk.po b/addons/web/i18n/mk.po index c1504ec7ae4..cd2aa466809 100644 --- a/addons/web/i18n/mk.po +++ b/addons/web/i18n/mk.po @@ -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 diff --git a/addons/web/i18n/mn.po b/addons/web/i18n/mn.po index 25bc63906da..a171aed6be2 100644 --- a/addons/web/i18n/mn.po +++ b/addons/web/i18n/mn.po @@ -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 diff --git a/addons/web/i18n/nb.po b/addons/web/i18n/nb.po index ca269b242b0..e0107459add 100644 --- a/addons/web/i18n/nb.po +++ b/addons/web/i18n/nb.po @@ -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 diff --git a/addons/web/i18n/nl.po b/addons/web/i18n/nl.po index b04df56f3dd..eec0a770d12 100644 --- a/addons/web/i18n/nl.po +++ b/addons/web/i18n/nl.po @@ -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 diff --git a/addons/web/i18n/nl_BE.po b/addons/web/i18n/nl_BE.po index 416ef765127..ccfe3ccedbe 100644 --- a/addons/web/i18n/nl_BE.po +++ b/addons/web/i18n/nl_BE.po @@ -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 diff --git a/addons/web/i18n/pl.po b/addons/web/i18n/pl.po index 0110ed205f5..b637c93321e 100644 --- a/addons/web/i18n/pl.po +++ b/addons/web/i18n/pl.po @@ -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 diff --git a/addons/web/i18n/pt.po b/addons/web/i18n/pt.po index 8166d9e0f22..c0333fcd8ac 100644 --- a/addons/web/i18n/pt.po +++ b/addons/web/i18n/pt.po @@ -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 diff --git a/addons/web/i18n/pt_BR.po b/addons/web/i18n/pt_BR.po index 3d0b5dd72ae..1c096ca1c99 100644 --- a/addons/web/i18n/pt_BR.po +++ b/addons/web/i18n/pt_BR.po @@ -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 diff --git a/addons/web/i18n/ro.po b/addons/web/i18n/ro.po index 7f32fc3db44..9b4542c91e2 100644 --- a/addons/web/i18n/ro.po +++ b/addons/web/i18n/ro.po @@ -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 diff --git a/addons/web/i18n/ru.po b/addons/web/i18n/ru.po index abc6f64d863..1f7b96ab0e2 100644 --- a/addons/web/i18n/ru.po +++ b/addons/web/i18n/ru.po @@ -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 diff --git a/addons/web/i18n/sk.po b/addons/web/i18n/sk.po index dddf69edd89..3f3a14c89fb 100644 --- a/addons/web/i18n/sk.po +++ b/addons/web/i18n/sk.po @@ -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 diff --git a/addons/web/i18n/sl.po b/addons/web/i18n/sl.po index 6953dfae170..a90e26131ba 100644 --- a/addons/web/i18n/sl.po +++ b/addons/web/i18n/sl.po @@ -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 diff --git a/addons/web/i18n/sq.po b/addons/web/i18n/sq.po index abec3f0edee..f7a00d31e3f 100644 --- a/addons/web/i18n/sq.po +++ b/addons/web/i18n/sq.po @@ -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 diff --git a/addons/web/i18n/sr@latin.po b/addons/web/i18n/sr@latin.po index 8ca06c6cdf9..5656116c127 100644 --- a/addons/web/i18n/sr@latin.po +++ b/addons/web/i18n/sr@latin.po @@ -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 diff --git a/addons/web/i18n/sv.po b/addons/web/i18n/sv.po index 31db2f2f6d7..f3231e32bc8 100644 --- a/addons/web/i18n/sv.po +++ b/addons/web/i18n/sv.po @@ -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 diff --git a/addons/web/i18n/tr.po b/addons/web/i18n/tr.po index 5aeb203510d..87199089e33 100644 --- a/addons/web/i18n/tr.po +++ b/addons/web/i18n/tr.po @@ -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 diff --git a/addons/web/i18n/uk.po b/addons/web/i18n/uk.po index cb04d046af5..dd0aa2b2f4c 100644 --- a/addons/web/i18n/uk.po +++ b/addons/web/i18n/uk.po @@ -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 diff --git a/addons/web/i18n/zh_CN.po b/addons/web/i18n/zh_CN.po index 4c8b46ec72a..a117e3e4119 100644 --- a/addons/web/i18n/zh_CN.po +++ b/addons/web/i18n/zh_CN.po @@ -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 diff --git a/addons/web/i18n/zh_TW.po b/addons/web/i18n/zh_TW.po index 8c6a6cb74e9..fe15b8da8f3 100644 --- a/addons/web/i18n/zh_TW.po +++ b/addons/web/i18n/zh_TW.po @@ -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 diff --git a/addons/web/static/src/css/base.css b/addons/web/static/src/css/base.css index 2276bb2445e..06a37a54727 100644 --- a/addons/web/static/src/css/base.css +++ b/addons/web/static/src/css/base.css @@ -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; +} diff --git a/addons/web/static/src/css/base.sass b/addons/web/static/src/css/base.sass index 653adad7813..c238ef6ee07 100644 --- a/addons/web/static/src/css/base.sass +++ b/addons/web/static/src/css/base.sass @@ -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 > "%:p:r.css" // vim:tabstop=4:shiftwidth=4:softtabstop=4:fdm=marker: diff --git a/addons/web/static/src/js/chrome.js b/addons/web/static/src/js/chrome.js index ff066c9f425..736e10875f6 100644 --- a/addons/web/static/src/js/chrome.js +++ b/addons/web/static/src/js/chrome.js @@ -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(' - %s', 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'}); } } diff --git a/addons/web/static/src/js/corelib.js b/addons/web/static/src/js/corelib.js index 5da12043994..8a28c0a8a4d 100644 --- a/addons/web/static/src/js/corelib.js +++ b/addons/web/static/src/js/corelib.js @@ -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 diff --git a/addons/web/static/src/js/coresetup.js b/addons/web/static/src/js/coresetup.js index 229a82a1784..38cf57387d1 100644 --- a/addons/web/static/src/js/coresetup.js +++ b/addons/web/static/src/js/coresetup.js @@ -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 = '
'; - $.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 = '
'; + $.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...
Please be patient.")], + [120, _t("Don't leave yet,
it's still loading...")], + [300, _t("You may not believe it,
but the application is actually loading...")], + [600, _t("You know, sometimes,
OpenERP can be a little bit slow,
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 */ diff --git a/addons/web/static/src/js/data_export.js b/addons/web/static/src/js/data_export.js index f8e669e1b4a..29aea6362f7 100644 --- a/addons/web/static/src/js/data_export.js +++ b/addons/web/static/src/js/data_export.js @@ -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(); } }); diff --git a/addons/web/static/src/js/data_import.js b/addons/web/static/src/js/data_import.js index 620878569ce..3c677b0ec26 100644 --- a/addons/web/static/src/js/data_import.js +++ b/addons/web/static/src/js/data_import.js @@ -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 = $('
'+_t("Destination fields should only be selected once, some fields are selected more than once:")+'
').insertBefore(this.$element.find('#result')); + var $err = $('
'+_t("Destination fields should only be selected once, some fields are selected more than once:")+'
').insertBefore(this.$el.find('#result')); var $dupes = $('
').appendTo($err); _(duplicates).each(function(elements, value) { $('
').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('
' + _t("*Required Fields are not selected :") + missing_fields + '.
'); + this.$el.find("#result").before('
' + _t("*Required Fields are not selected :") + missing_fields + '.
'); return false; } return true; }, destroy: function() { - this.$element.remove(); + this.$el.remove(); this._super(); } }); diff --git a/addons/web/static/src/js/search.js b/addons/web/static/src/js/search.js index a7625631aa5..8e9a31922b8 100644 --- a/addons/web/static/src/js/search.js +++ b/addons/web/static/src/js/search.js @@ -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] = $('
  • ') - .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, $('
    ').appendTo(this.$element)), - this.render_column(col2, $('
    ').appendTo(this.$element))); + this.render_column(col1, $('
    ').appendTo(this.$el)), + this.render_column(col2, $('
    ').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) { $('