From fac99bef8212b572a81e25984ec32d9f0af628cf Mon Sep 17 00:00:00 2001 From: Holger Brunn Date: Fri, 29 Nov 2013 11:57:19 +0100 Subject: [PATCH 1/8] [ADD] web_ir_actions_act_window_scroll --- web_ir_actions_act_window_scroll/__init__.py | 20 ++++++ .../__openerp__.py | 57 ++++++++++++++++++ .../static/src/img/icon.png | Bin 0 -> 7939 bytes .../js/web_ir_actions_act_window_scroll.js | 44 ++++++++++++++ 4 files changed, 121 insertions(+) create mode 100644 web_ir_actions_act_window_scroll/__init__.py create mode 100644 web_ir_actions_act_window_scroll/__openerp__.py create mode 100644 web_ir_actions_act_window_scroll/static/src/img/icon.png create mode 100644 web_ir_actions_act_window_scroll/static/src/js/web_ir_actions_act_window_scroll.js diff --git a/web_ir_actions_act_window_scroll/__init__.py b/web_ir_actions_act_window_scroll/__init__.py new file mode 100644 index 00000000..f6974117 --- /dev/null +++ b/web_ir_actions_act_window_scroll/__init__.py @@ -0,0 +1,20 @@ +# -*- coding: utf-8 -*- +############################################################################## +# +# OpenERP, Open Source Management Solution +# This module copyright (C) 2013 Therp BV (). +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +############################################################################## diff --git a/web_ir_actions_act_window_scroll/__openerp__.py b/web_ir_actions_act_window_scroll/__openerp__.py new file mode 100644 index 00000000..c7b6a238 --- /dev/null +++ b/web_ir_actions_act_window_scroll/__openerp__.py @@ -0,0 +1,57 @@ +# -*- coding: utf-8 -*- +############################################################################## +# +# OpenERP, Open Source Management Solution +# This module copyright (C) 2013 Therp BV (). +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +############################################################################## +{ + "name" : "Window actions for client side scrolling", + "version" : "1.0", + "author" : "Therp BV", + "complexity": "normal", + "description": """ +Client side scrolling +===================== + +This addon enables buttons to return:: + +{'type': 'ir.actions.act_window.scroll.next'} + +or:: + +{'type': 'ir.actions.act_window.scroll.prev'} + +which trigger the form's controller to scroll into the requested direction. + """, + "category" : "Dependency", + "depends" : [ + ], + "data" : [ + ], + "js": [ + 'static/src/js/web_ir_actions_act_window_scroll.js', + ], + "css": [ + ], + "qweb": [ + ], + "auto_install": False, + "installable": True, + "external_dependencies" : { + 'python' : [], + }, +} diff --git a/web_ir_actions_act_window_scroll/static/src/img/icon.png b/web_ir_actions_act_window_scroll/static/src/img/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..f1006195e0220e5b38e4a1b8f17870ec9359f7bb GIT binary patch literal 7939 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 literal 0 HcmV?d00001 diff --git a/web_ir_actions_act_window_scroll/static/src/js/web_ir_actions_act_window_scroll.js b/web_ir_actions_act_window_scroll/static/src/js/web_ir_actions_act_window_scroll.js new file mode 100644 index 00000000..1e0d3080 --- /dev/null +++ b/web_ir_actions_act_window_scroll/static/src/js/web_ir_actions_act_window_scroll.js @@ -0,0 +1,44 @@ +//-*- coding: utf-8 -*- +//############################################################################ +// +// OpenERP, Open Source Management Solution +// This module copyright (C) 2013 Therp BV (). +// +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU Affero General Public License as +// published by the Free Software Foundation, either version 3 of the +// License, or (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU Affero General Public License for more details. +// +// You should have received a copy of the GNU Affero General Public License +// along with this program. If not, see . +// +//############################################################################ + +openerp.web_ir_actions_act_window_scroll = function(openerp) +{ + openerp.web.ActionManager.include({ + ir_actions_act_window_scroll_prev: function(action, options) + { + if(this.inner_widget && this.inner_widget.active_view == 'form' && + this.inner_widget.views[this.inner_widget.active_view]) + { + this.inner_widget.views[this.inner_widget.active_view] + .controller.execute_pager_action('previous'); + } + }, + ir_actions_act_window_scroll_next: function(action, options) + { + if(this.inner_widget && this.inner_widget.active_view == 'form' && + this.inner_widget.views[this.inner_widget.active_view]) + { + this.inner_widget.views[this.inner_widget.active_view] + .controller.execute_pager_action('next'); + } + }, + }); +} From 8809bfca8e693f267a5c4b9c3c0e51d4fdb0b730 Mon Sep 17 00:00:00 2001 From: Holger Brunn Date: Fri, 29 Nov 2013 17:14:34 +0100 Subject: [PATCH 2/8] [ADD] web_tree_many2one_clickable --- web_tree_many2one_clickable/__init__.py | 20 +++++++ web_tree_many2one_clickable/__openerp__.py | 53 ++++++++++++++++++ .../static/src/img/icon.png | Bin 0 -> 7939 bytes .../src/js/web_tree_many2one_clickable.js | 45 +++++++++++++++ 4 files changed, 118 insertions(+) create mode 100644 web_tree_many2one_clickable/__init__.py create mode 100644 web_tree_many2one_clickable/__openerp__.py create mode 100644 web_tree_many2one_clickable/static/src/img/icon.png create mode 100644 web_tree_many2one_clickable/static/src/js/web_tree_many2one_clickable.js diff --git a/web_tree_many2one_clickable/__init__.py b/web_tree_many2one_clickable/__init__.py new file mode 100644 index 00000000..f6974117 --- /dev/null +++ b/web_tree_many2one_clickable/__init__.py @@ -0,0 +1,20 @@ +# -*- coding: utf-8 -*- +############################################################################## +# +# OpenERP, Open Source Management Solution +# This module copyright (C) 2013 Therp BV (). +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +############################################################################## diff --git a/web_tree_many2one_clickable/__openerp__.py b/web_tree_many2one_clickable/__openerp__.py new file mode 100644 index 00000000..5dacac43 --- /dev/null +++ b/web_tree_many2one_clickable/__openerp__.py @@ -0,0 +1,53 @@ +# -*- coding: utf-8 -*- +############################################################################## +# +# OpenERP, Open Source Management Solution +# This module copyright (C) 2013 Therp BV (). +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +############################################################################## +{ + "name" : "Clickable many2one widget for tree views", + "version" : "1.0", + "author" : "Therp BV", + "complexity": "normal", + "description": """ +This addon provides a widget to have many2one fields in a tree view open the +linked resource:: + + + +will open the linked partner in a form view. + """, + "category" : "Dependency", + "depends" : [ + 'web', + ], + "data" : [ + 'security/ir.model.access.csv', + ], + "js": [ + 'static/src/js/web_tree_many2one_clickable.js', + ], + "css": [ + ], + "qweb": [ + ], + "auto_install": False, + "installable": True, + "external_dependencies" : { + 'python' : [], + }, +} diff --git a/web_tree_many2one_clickable/static/src/img/icon.png b/web_tree_many2one_clickable/static/src/img/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..f1006195e0220e5b38e4a1b8f17870ec9359f7bb GIT binary patch literal 7939 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 literal 0 HcmV?d00001 diff --git a/web_tree_many2one_clickable/static/src/js/web_tree_many2one_clickable.js b/web_tree_many2one_clickable/static/src/js/web_tree_many2one_clickable.js new file mode 100644 index 00000000..4203e34e --- /dev/null +++ b/web_tree_many2one_clickable/static/src/js/web_tree_many2one_clickable.js @@ -0,0 +1,45 @@ +//-*- coding: utf-8 -*- +//############################################################################ +// +// OpenERP, Open Source Management Solution +// This module copyright (C) 2013 Therp BV (). +// +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU Affero General Public License as +// published by the Free Software Foundation, either version 3 of the +// License, or (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU Affero General Public License for more details. +// +// You should have received a copy of the GNU Affero General Public License +// along with this program. If not, see . +// +//############################################################################ + +openerp.web_tree_many2one_clickable = function(openerp) +{ + openerp.web.list.columns.add( + 'field.many2one_clickable', + 'instance.web_tree_many2one_clickable.Many2OneClickable'); + openerp.web_tree_many2one_clickable.Many2OneClickable = openerp.web.list.Column.extend({ + _format: function (row_data, options) + { + var link = _.escape(row_data[this.id].value[1] || options.value_if_empty); + var code = "_.each(openerp.instances, function(instance) {\n" + + "instance.webclient.action_manager.do_action({" + + "type: 'ir.actions.act_window', \n" + + _.str.sprintf("res_model: '%s',\n", this.relation) + + _.str.sprintf("res_id: %s,\n", row_data[this.id].value[0]) + + "views: [[false, 'form']],\n" + + "target: 'current'\n" + + "})})"; + link = _.str.sprintf('%s', + code, + link) + return link; + }, + }); +} From c7e3f40610b26f27fe0e22b9b65a1bd4c958f7e6 Mon Sep 17 00:00:00 2001 From: Holger Brunn Date: Fri, 29 Nov 2013 17:18:06 +0100 Subject: [PATCH 3/8] [FIX] remove default file --- web_tree_many2one_clickable/__openerp__.py | 1 - 1 file changed, 1 deletion(-) diff --git a/web_tree_many2one_clickable/__openerp__.py b/web_tree_many2one_clickable/__openerp__.py index 5dacac43..03ce21cd 100644 --- a/web_tree_many2one_clickable/__openerp__.py +++ b/web_tree_many2one_clickable/__openerp__.py @@ -36,7 +36,6 @@ will open the linked partner in a form view. 'web', ], "data" : [ - 'security/ir.model.access.csv', ], "js": [ 'static/src/js/web_tree_many2one_clickable.js', From 029b87261bb9fd284020fc7edfc5a7d08877c451 Mon Sep 17 00:00:00 2001 From: Stefan Rijnhart Date: Mon, 2 Dec 2013 11:30:01 +0100 Subject: [PATCH 4/8] [IMP] Terminology --- .../__init__.py | 0 .../__openerp__.py | 12 ++++++------ .../static/src/img/icon.png | Bin .../static/src/js/web_ir_actions_act_window_page.js | 6 +++--- 4 files changed, 9 insertions(+), 9 deletions(-) rename {web_ir_actions_act_window_scroll => web_ir_actions_act_window_page}/__init__.py (100%) rename {web_ir_actions_act_window_scroll => web_ir_actions_act_window_page}/__openerp__.py (82%) rename {web_ir_actions_act_window_scroll => web_ir_actions_act_window_page}/static/src/img/icon.png (100%) rename web_ir_actions_act_window_scroll/static/src/js/web_ir_actions_act_window_scroll.js => web_ir_actions_act_window_page/static/src/js/web_ir_actions_act_window_page.js (89%) diff --git a/web_ir_actions_act_window_scroll/__init__.py b/web_ir_actions_act_window_page/__init__.py similarity index 100% rename from web_ir_actions_act_window_scroll/__init__.py rename to web_ir_actions_act_window_page/__init__.py diff --git a/web_ir_actions_act_window_scroll/__openerp__.py b/web_ir_actions_act_window_page/__openerp__.py similarity index 82% rename from web_ir_actions_act_window_scroll/__openerp__.py rename to web_ir_actions_act_window_page/__openerp__.py index c7b6a238..31054808 100644 --- a/web_ir_actions_act_window_scroll/__openerp__.py +++ b/web_ir_actions_act_window_page/__openerp__.py @@ -19,23 +19,23 @@ # ############################################################################## { - "name" : "Window actions for client side scrolling", + "name" : "Window actions for client side paging", "version" : "1.0", "author" : "Therp BV", "complexity": "normal", "description": """ -Client side scrolling +Client side paging ===================== This addon enables buttons to return:: -{'type': 'ir.actions.act_window.scroll.next'} +{'type': 'ir.actions.act_window.page.next'} or:: -{'type': 'ir.actions.act_window.scroll.prev'} +{'type': 'ir.actions.act_window.page.prev'} -which trigger the form's controller to scroll into the requested direction. +which trigger the form's controller to page into the requested direction. """, "category" : "Dependency", "depends" : [ @@ -43,7 +43,7 @@ which trigger the form's controller to scroll into the requested direction. "data" : [ ], "js": [ - 'static/src/js/web_ir_actions_act_window_scroll.js', + 'static/src/js/web_ir_actions_act_window_page.js', ], "css": [ ], diff --git a/web_ir_actions_act_window_scroll/static/src/img/icon.png b/web_ir_actions_act_window_page/static/src/img/icon.png similarity index 100% rename from web_ir_actions_act_window_scroll/static/src/img/icon.png rename to web_ir_actions_act_window_page/static/src/img/icon.png diff --git a/web_ir_actions_act_window_scroll/static/src/js/web_ir_actions_act_window_scroll.js b/web_ir_actions_act_window_page/static/src/js/web_ir_actions_act_window_page.js similarity index 89% rename from web_ir_actions_act_window_scroll/static/src/js/web_ir_actions_act_window_scroll.js rename to web_ir_actions_act_window_page/static/src/js/web_ir_actions_act_window_page.js index 1e0d3080..8210df92 100644 --- a/web_ir_actions_act_window_scroll/static/src/js/web_ir_actions_act_window_scroll.js +++ b/web_ir_actions_act_window_page/static/src/js/web_ir_actions_act_window_page.js @@ -19,10 +19,10 @@ // //############################################################################ -openerp.web_ir_actions_act_window_scroll = function(openerp) +openerp.web_ir_actions_act_window_page = function(openerp) { openerp.web.ActionManager.include({ - ir_actions_act_window_scroll_prev: function(action, options) + ir_actions_act_window_page_prev: function(action, options) { if(this.inner_widget && this.inner_widget.active_view == 'form' && this.inner_widget.views[this.inner_widget.active_view]) @@ -31,7 +31,7 @@ openerp.web_ir_actions_act_window_scroll = function(openerp) .controller.execute_pager_action('previous'); } }, - ir_actions_act_window_scroll_next: function(action, options) + ir_actions_act_window_page_next: function(action, options) { if(this.inner_widget && this.inner_widget.active_view == 'form' && this.inner_widget.views[this.inner_widget.active_view]) From bcf05349073375243b7768869c7d5a0938bc8f12 Mon Sep 17 00:00:00 2001 From: Holger Brunn Date: Mon, 6 Jan 2014 18:55:59 +0100 Subject: [PATCH 5/8] [ADD] web_ckeditor4 --- web_ckeditor4/__init__.py | 22 ++ web_ckeditor4/__openerp__.py | 114 +++++++++ .../static/src/css/web_ckeditor4.css | 6 + web_ckeditor4/static/src/img/icon.png | Bin 0 -> 8279 bytes .../static/src/js/ckeditor_basepath.js | 1 + web_ckeditor4/static/src/js/web_ckeditor4.js | 217 ++++++++++++++++++ 6 files changed, 360 insertions(+) create mode 100644 web_ckeditor4/__init__.py create mode 100644 web_ckeditor4/__openerp__.py create mode 100644 web_ckeditor4/static/src/css/web_ckeditor4.css create mode 100644 web_ckeditor4/static/src/img/icon.png create mode 100644 web_ckeditor4/static/src/js/ckeditor_basepath.js create mode 100644 web_ckeditor4/static/src/js/web_ckeditor4.js diff --git a/web_ckeditor4/__init__.py b/web_ckeditor4/__init__.py new file mode 100644 index 00000000..a97ee816 --- /dev/null +++ b/web_ckeditor4/__init__.py @@ -0,0 +1,22 @@ +# -*- encoding: utf-8 -*- +############################################################################## +# +# OpenERP, Open Source Management Solution +# This module copyright (C) 2013 Therp BV () +# All Rights Reserved +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +############################################################################## + diff --git a/web_ckeditor4/__openerp__.py b/web_ckeditor4/__openerp__.py new file mode 100644 index 00000000..6465c7e7 --- /dev/null +++ b/web_ckeditor4/__openerp__.py @@ -0,0 +1,114 @@ +# -*- encoding: utf-8 -*- +############################################################################## +# +# OpenERP, Open Source Management Solution +# This module copyright (C) 2013 Therp BV () +# All Rights Reserved +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +############################################################################## + +{ + 'name': 'CKEditor 4.x widget', + 'version': '1.0', + 'description': """ + This addon provides a widget for editing html fields via CKEditor 4.x + + Use widget="text_html" if you need just html display. In the unlikely case + you need specific features of ckeditor, use widget="text_ckeditor4". + """, + 'author': 'Therp BV', + 'website': 'http://www.therp.nl', + "category": "Tools", + "depends": [ + 'web', + ], + 'css': [ + 'static/src/css/web_ckeditor4.css', + ], + 'data': [ + ], + 'js': [ + 'static/src/js/ckeditor_basepath.js', + 'static/lib/ckeditor/ckeditor.js', + 'static/lib/ckeditor/config.js', + #to debug ckeditor, comment the lines above, + #do a + #cd static/lib + #git clone https://github.com/ckeditor/ckeditor-dev.git trunk + #cd trunk + #git checkout remotes/origin/release/4.1.x + #and uncomment the lines below +# 'static/lib/trunk/ckeditor.js', +# 'static/lib/trunk/core/event.js', +# 'static/lib/trunk/core/editor_basic.js', +# 'static/lib/trunk/core/env.js', +# 'static/lib/trunk/core/ckeditor_basic.js', +# 'static/lib/trunk/core/dom.js', +# 'static/lib/trunk/core/tools.js', +# 'static/lib/trunk/core/dtd.js', +# 'static/lib/trunk/core/dom/event.js', +# 'static/lib/trunk/core/dom/domobject.js', +# 'static/lib/trunk/core/dom/node.js', +# 'static/lib/trunk/core/dom/window.js', +# 'static/lib/trunk/core/dom/document.js', +# 'static/lib/trunk/core/dom/nodelist.js', +# 'static/lib/trunk/core/dom/element.js', +# 'static/lib/trunk/core/dom/documentfragment.js', +# 'static/lib/trunk/core/dom/walker.js', +# 'static/lib/trunk/core/dom/range.js', +# 'static/lib/trunk/core/dom/iterator.js', +# 'static/lib/trunk/core/command.js', +# 'static/lib/trunk/core/ckeditor_base.js', +# 'static/lib/trunk/core/config.js', +# 'static/lib/trunk/core/filter.js', +# 'static/lib/trunk/core/focusmanager.js', +# 'static/lib/trunk/core/keystrokehandler.js', +# 'static/lib/trunk/core/lang.js', +# 'static/lib/trunk/core/scriptloader.js', +# 'static/lib/trunk/core/resourcemanager.js', +# 'static/lib/trunk/core/plugins.js', +# 'static/lib/trunk/core/ui.js', +# 'static/lib/trunk/core/editor.js', +# 'static/lib/trunk/core/htmlparser.js', +# 'static/lib/trunk/core/htmlparser/basicwriter.js', +# 'static/lib/trunk/core/htmlparser/node.js', +# 'static/lib/trunk/core/htmlparser/comment.js', +# 'static/lib/trunk/core/htmlparser/text.js', +# 'static/lib/trunk/core/htmlparser/cdata.js', +# 'static/lib/trunk/core/htmlparser/fragment.js', +# 'static/lib/trunk/core/htmlparser/filter.js', +# 'static/lib/trunk/core/htmldataprocessor.js', +# 'static/lib/trunk/core/htmlparser/element.js', +# 'static/lib/trunk/core/template.js', +# 'static/lib/trunk/core/ckeditor.js', +# 'static/lib/trunk/core/creators/inline.js', +# 'static/lib/trunk/core/creators/themedui.js', +# 'static/lib/trunk/core/editable.js', +# 'static/lib/trunk/core/selection.js', +# 'static/lib/trunk/core/style.js', +# 'static/lib/trunk/core/dom/comment.js', +# 'static/lib/trunk/core/dom/elementpath.js', +# 'static/lib/trunk/core/dom/text.js', +# 'static/lib/trunk/core/dom/rangelist.js', +# 'static/lib/trunk/core/skin.js', +# 'static/lib/trunk/core/_bootstrap.js', + #end of ckeditor debug + 'static/src/js/web_ckeditor4.js', + ], + 'installable': True, + 'auto_install': False, + 'certificate': '', +} diff --git a/web_ckeditor4/static/src/css/web_ckeditor4.css b/web_ckeditor4/static/src/css/web_ckeditor4.css new file mode 100644 index 00000000..6bfad78b --- /dev/null +++ b/web_ckeditor4/static/src/css/web_ckeditor4.css @@ -0,0 +1,6 @@ +.openerp .oe_form_field_text_ckeditor4.disabled, .openerp td.oe_form_field_text_ckeditor4, .openerp .oe_form_field_text_ckeditor4_raw.disabled.openerp, .openerp td.oe_form_field_text_ckeditor4_raw { + /* here we need to reset openerp's styles to + * have the HTML display as (probably) intended + */ + white-space: normal; +} diff --git a/web_ckeditor4/static/src/img/icon.png b/web_ckeditor4/static/src/img/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..841a7ed04536b2295e2ba16824ebf56c99e51c9a GIT binary patch literal 8279 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 VkH3+o14;k@002ovPDHLkV1h_Hb?g8D literal 0 HcmV?d00001 diff --git a/web_ckeditor4/static/src/js/ckeditor_basepath.js b/web_ckeditor4/static/src/js/ckeditor_basepath.js new file mode 100644 index 00000000..930a6c40 --- /dev/null +++ b/web_ckeditor4/static/src/js/ckeditor_basepath.js @@ -0,0 +1 @@ +CKEDITOR_BASEPATH='/web_ckeditor4/static/lib/ckeditor/' diff --git a/web_ckeditor4/static/src/js/web_ckeditor4.js b/web_ckeditor4/static/src/js/web_ckeditor4.js new file mode 100644 index 00000000..3fc59675 --- /dev/null +++ b/web_ckeditor4/static/src/js/web_ckeditor4.js @@ -0,0 +1,217 @@ +/* -*- encoding: utf-8 -*- +############################################################################## +# +# OpenERP, Open Source Management Solution +# This module copyright (C) 2013 Therp BV () +# All Rights Reserved +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +############################################################################*/ + +openerp.web_ckeditor4 = function(openerp) +{ + var ckeditor_addFunction_org = CKEDITOR.tools.addFunction; + //this is a quite complicated way to kind of monkey patch the private + //method onDomReady of ckeditor's plugin wysiwigarea, which causes problems + //when the editor is about to be destroyed but because of OpenERP's + //architecture updated one last time with its current value + CKEDITOR.tools.addFunction = function(fn, scope) + { + if(scope && scope._ && scope._.attrChanges && scope._.detach) + { + var scope_reference = scope; + return ckeditor_addFunction_org(function() + { + var self = this, + self_arguments=arguments; + setTimeout(function() + { + if(CKEDITOR.instances[self.editor.name]) + { + fn.apply(self, self_arguments); + } + }, 0); + }, scope); + } + return ckeditor_addFunction_org(fn, scope); + }; + + CKEDITOR.on('dialogDefinition', function(e) + { + _.each(e.data.definition.contents, function(element) + { + if(element.filebrowser!='uploadButton') + { + return + } + _.each(element.elements, function(element) + { + if(!element.onClick || element.type!='fileButton') + { + return + } + var onClick_org = element.onClick; + element.onClick = function(e1) + { + onClick_org.apply(this, arguments); + _.each(jQuery('#'+this.domId).closest('table') + .find('iframe').contents().find(':file') + .get(0).files, + function(file) + { + var reader = new FileReader(); + reader.onload = function(load_event) + { + CKEDITOR.tools.callFunction( + e.editor._.filebrowserFn, + load_event.target.result, + ''); + } + reader.readAsDataURL(file); + }); + return false; + } + }); + }); + }); + + openerp.web.form.widgets.add('text_ckeditor4', + 'openerp.web_ckeditor4.FieldCKEditor4'); + openerp.web.form.widgets.add('text_ckeditor4_raw', + 'openerp.web_ckeditor4.FieldCKEditor4Raw'); + openerp.web.form.widgets.add('text_html', + 'openerp.web_ckeditor4.FieldCKEditor4'); + openerp.web.form.widgets.add('html', + 'openerp.web_ckeditor4.FieldCKEditor4'); + + function filter_html(value, ckeditor_filter, ckeditor_writer) + { + var fragment = CKEDITOR.htmlParser.fragment.fromHtml(value); + ckeditor_filter.applyTo(fragment); + ckeditor_writer.reset(); + fragment.writeHtml(ckeditor_writer); + return ckeditor_writer.getHtml(); + }; + + default_ckeditor_filter = new CKEDITOR.filter( + { + '*': + { + attributes: 'href,src,style,alt,width,height,dir', + styles: '*', + classes: '*', + }, + 'html head title meta style body p div span a h1 h2 h3 h4 h5 img br hr table tr th td ul ol li dd dt strong pre b i': true, + }); + default_ckeditor_writer = new CKEDITOR.htmlParser.basicWriter(); + + openerp.web_ckeditor4.FieldCKEditor4 = openerp.web.form.FieldText.extend({ + ckeditor_config: { + removePlugins: 'iframe,flash,forms,smiley,pagebreak,stylescombo', + filebrowserImageUploadUrl: 'dummy', + extraPlugins: 'filebrowser', + }, + ckeditor_filter: default_ckeditor_filter, + ckeditor_writer: default_ckeditor_writer, + start: function() + { + this._super.apply(this, arguments); + + CKEDITOR.lang.load(openerp.session.user_context.lang.split('_')[0], 'en', function() {}); + }, + initialize_content: function() + { + var self = this; + this._super.apply(this, arguments); + if(!this.$textarea) + { + return; + } + this.editor = CKEDITOR.replace(this.$textarea.get(0), + _.extend( + { + language: openerp.session.user_context.lang.split('_')[0], + on: + { + 'change': function() + { + self.store_dom_value(); + }, + }, + }, + this.ckeditor_config)); + }, + store_dom_value: function() + { + this.internal_set_value(this.editor ? this.editor.getData() : openerp.web.parse_value(this.get('value'), this)); + }, + filter_html: function(value) + { + return filter_html(value, this.ckeditor_filter, this.ckeditor_writer); + }, + render_value: function() + { + if(this.get("effective_readonly")) + { + this.$el.html(this.filter_html(this.get('value'))); + } + else + { + if(this.editor) + { + var self = this; + if(this.editor.status != 'ready') + { + var instanceReady = function() + { + self.editor.setData(self.get('value') || ''); + self.editor.removeListener('instanceReady', instanceReady); + }; + this.editor.on('instanceReady', instanceReady); + } + else + { + self.editor.setData(self.get('value') || ''); + } + } + } + }, + undelegateEvents: function() + { + this._cleanup_editor(); + return this._super.apply(this, arguments); + }, + _cleanup_editor: function() + { + if(this.editor) + { + CKEDITOR.remove(this.editor); + this.editor.removeAllListeners(); + this.editor = null; + } + }, + destroy_content: function() + { + this._cleanup_editor(); + } + }); + openerp.web_ckeditor4.FieldCKEditor4Raw = openerp.web_ckeditor4.FieldCKEditor4.extend({ + filter_html: function(value) + { + return value; + } + }); +} + From 6987ff9812330644a87c38c4c7f9590d148eb547 Mon Sep 17 00:00:00 2001 From: "Serpent Consulting Services Pvt. Ltd." Date: Mon, 20 Jan 2014 21:13:26 +0530 Subject: [PATCH 6/8] [ADD] Added the module for letting the end user search basd on alphabets --- web_search_alphabetic/__init__.py | 23 +++++ web_search_alphabetic/__openerp__.py | 49 +++++++++++ .../static/src/css/web_search.css | 44 ++++++++++ web_search_alphabetic/static/src/img/icon.png | Bin 0 -> 16349 bytes .../static/src/js/web_search.js | 80 ++++++++++++++++++ .../static/src/xml/web_search.xml | 49 +++++++++++ 6 files changed, 245 insertions(+) create mode 100644 web_search_alphabetic/__init__.py create mode 100644 web_search_alphabetic/__openerp__.py create mode 100644 web_search_alphabetic/static/src/css/web_search.css create mode 100644 web_search_alphabetic/static/src/img/icon.png create mode 100644 web_search_alphabetic/static/src/js/web_search.js create mode 100644 web_search_alphabetic/static/src/xml/web_search.xml diff --git a/web_search_alphabetic/__init__.py b/web_search_alphabetic/__init__.py new file mode 100644 index 00000000..26f88456 --- /dev/null +++ b/web_search_alphabetic/__init__.py @@ -0,0 +1,23 @@ +# -*- coding: utf-8 -*- +############################################################################## +# +# OpenERP, Open Source Management Solution +# Copyright (C) 2004-2010 Tiny SPRL (). +# Copyright (C) 2011-2014 Serpent Consulting Services () +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +############################################################################ + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/web_search_alphabetic/__openerp__.py b/web_search_alphabetic/__openerp__.py new file mode 100644 index 00000000..818d0057 --- /dev/null +++ b/web_search_alphabetic/__openerp__.py @@ -0,0 +1,49 @@ +# -*- coding: utf-8 -*- +############################################################################## +# +# OpenERP, Open Source Management Solution +# Copyright (C) 2004-2010 Tiny SPRL (). +# Copyright (C) 2011-2014 Serpent Consulting Services () +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +############################################################################ + +{ + 'name': 'Web Alphabetical Search', + 'author' : 'Serpent Consulting Services Pvt. Ltd.', + 'category' : 'Web', + 'website': 'http://www.serpentcs.com', + 'description': """ +OpenERP Web Search Extended. +============================ + +This module used for search record base on alphabetical character be default it will search on name field. +User also is able to change search field name instead of name field. + """, + 'version': '1.0', + 'depends': ['web'], + 'js': [ + 'static/src/js/web_search.js' + ], + 'css': [ + 'static/src/css/web_search.css' + ], + 'qweb' : [ + 'static/src/xml/web_search.xml', + ], + 'auto_install': False +} + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/web_search_alphabetic/static/src/css/web_search.css b/web_search_alphabetic/static/src/css/web_search.css new file mode 100644 index 00000000..741a071c --- /dev/null +++ b/web_search_alphabetic/static/src/css/web_search.css @@ -0,0 +1,44 @@ +.openerp .search_filter { + background: #F0F0F0; + width: 100%; + border: 1px solid #999; + background: -moz-linear-gradient(top, #F0F0F0 0%, #C0C0C0 100%); + background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#F0F0F0), color-stop(100%,#C0C0C0)); +} + +.openerp .oe_filter_label { + background: #F0F0F0; + width: 3.35%; + border: 1px solid #999; + background: -moz-linear-gradient(top, #F0F0F0 0%, #C0C0C0 100%); + background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#F0F0F0), color-stop(100%,#C0C0C0)); + filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#F0F0F0', endColorstr='#C0C0C0',GradientType=0 ); +} +.openerp .oe_filter_label:hover { + background: #F0F0F0; + background: -moz-linear-gradient(top, #F0F0F0 0%, #A1A7CE 100%); + background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#F0F0F0), color-stop(100%,#A1A7CE)); + filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#F0F0F0', endColorstr='#A1A7CE',GradientType=0 ); +} +.openerp .oe_filter_label:active { + background: #aaa; + background: -moz-linear-gradient(top, #999999 0%, #EEEEEE 100%); + background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#999999), color-stop(100%,#EEEEEE)); + filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#999999', endColorstr='#EEEEEE',GradientType=0 ); +} +.openerp .oe_filter_label.enabled { + background: #aaa; + filter: none; + -moz-box-shadow: none; + -webkit-box-shadow: none; + -o-box-shadow: none; + box-shadow: none; +} +.openerp .oe_filter_label { + font-weight: bold; + text-transform: uppercase; + text-shadow: #EEE 0 1px 0; + color: #4C4C4C; + white-space: nowrap; + margin: 0; +} \ No newline at end of file diff --git a/web_search_alphabetic/static/src/img/icon.png b/web_search_alphabetic/static/src/img/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..53dd30d963540cd1eee217c8db5ee89277fab319 GIT binary patch literal 16349 zcmV<3KO(@1P)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2i*c0 z4hJzIq*c=Z03ZNKL_t(|+U&h~n59=$@BdkA@Ap*ooPkIN5HCq*gfJwKDEc!AgQ6m$ zR$nK6ipV55T<^V3S2=aAB3HdXCmuxfI-oe*u17)Sf=D0%FJx8((;1mU1|($avFf~g zul4(5@AuTH4w9zRojO&0-aO|?b#--Bo&A2_HGJ1v-zDzOv3>~%fI~S98L0R-s>>xA zKztxBeaCST5ieiq0^$NV{s=!n#=k}ws0+Z@_v~(jl;5R%|A9L5fZMt}_bK@5K?vgY zrjLU~K%9dBau9GwpnW88OLyoM=z??~kA4n_%bzDohkHd8ji&@zs_aG0w)bG1(0M-}xVs24~ zJhGDGxb%Y_fGPOa8~ApFzn5#y4(#1xgmayxtxNb5dNijwSp>bf0>e9R@s$F?LA3rG zLnI&=?oQsV=uJyt8;ScfyFb3fCL&9_dd%!;Pq_ci7vAT0PQiB+-QFmuuJP6YQGh;x z%!Bt$Ah=-T?rJ^w&=QrPDBIjaqSMZ_?7GD44P2r=9h z6@j}z?{xO>5_%5}*?09Owtnt1e(WB+Z{vy3a?;dyAK@Mbz&!JelBdqF9+VI*$H5}F zuQ<=Kf1`Ny4x{rOh|^#3Ib7u5OPD4Cd>v?3W}M4_diVi}?f^LtypJyj^S40BJ z5F;RTN0pFW4f)PYx-k=PiiBO?;`iOvo#!Z->M-T_JR<#yfC3N@+`IEH8F}Bk%==5- zlk)!puF=QhzT)fo_t}8SuzUki=Er{N3b2I*WNyy$%BODp%`QKI-QQg+Uv<&_q!%Re zvm1Kn0>R1FAmj>i!#!g(h}#(OSL-qYJxms{91#^}R9MQXy6Xr8M246Z3yB9}2$;7R z0mX2SAcX4KhoQw+KTHTM3t@xsVqMEQ(KZFLMCAku?F7F@<1goY)GATziI67wc zvP-pt2`5x@lW>oOkTC14rV>S97jTo1Zd5kydY<2Tb$8})aH1tL0Q%y~7I4}61+TCa zToAF2iV_jUm#yez$9(mvac2}CEc0qL9vp~D-+f+?zGIimDLW3Z`?(FX-vnNRcenb$ zcGk=V2@2-*a~aDH(x6h}tL#p1Ro!kPSwka&V`PfeLL*M9Y*<9qa2N36lCwvIjFu-8 z2tY3P`(Y0n1TowctJYr~M6^(xH#upSGjk&xxcY_cxv2x%z(vMGn-T}kk7B!(?zp<@ zLnPoQCgB(W^U_&rynxYtIc^YnuW&YO`(YuxK#^@3OA%=t&&53nOPB?Wh-!-vP%?&s zje(MK6H%D}8lwOtXvT?f*O2|crObXVlecXooRg6A94-=UTP9dTP@}c-V5(Q^Cjk{J z4;V(u5F{cZsAO6Xh(pvCGX*VPK|Fy+kRglKppxk^1J^E*ubN@zmM5|8qj%2VzWeNVTl20t{r7!MXc;Wahh+O+Os4a||caXu@4^67Gsg zIW+O&ZbSkiX%v8zniy?hoBt8#(Yq4TTz|2OWn&Jqt#K*Ka0j=@jh%%CdGmB!NhFd@+m!yLRA=UE@ zxC(sMN!Mlc#lJ%Pux2xiKmo15-*Nbevm(4#Y z^jLC^q_p}8M{%jyTKrF5 z=zHJLB~<0Tj%A`U5PY6;Mgw{0%>3C~hR6MI#-EpvEwP?~kxWqqB^U5WcP?K4JS3YC zT!_(F%7Hj`R**>+kb1sRGAS3=?o!S^?sM{u#zR+S&bWTF-+tYt%v-g9D@gNIPB=uD z)A)lpy|F-69DV-@vN=Dn^<^MGB;+l}LIp76-UDs%-}+|uylLPfT}C=^k@0|kfM`dN zbfL-RC&;$p16$r6N$0|>KsIP46Fs6@5>FK;dnS1#XgODPCsRJxsN)_{O(e^hLr)^@ zO_`ZJu}*FONGz|a$M*SGisFY4l{9Z1-T=P!S_1AQ;Q zvpJA|P0$x~8F2Z_AcC#1@|luP2i%v)(xbsKaUu@8TKwuB&CLf0yI$<~>;hni1ld{c zR~HtE_m{cCWyaE0uoK>Sl~pB~MMZGtU3|V$DwU-ixX8t_^~V$ZV1sQnq6c!NNqR9O z7O-^y3QF8=mLye`x$+ov)tbZ)E!uP9#3@em;B3M(l~k%(DXeRAabN zQ5AwD%w{UhQmopHblH9_5Lt`JCYrmJ*nfGZxoYFrJapY9pY{irnFeGB$WCz^^Gvu5 z1p0KcT`7=gz$nGSA7y`1c z!Dj@VLJm9?tyLvV0*WG%z)F4_BvyPWLc+{J%Gp)+3bhu$ zIk5OQ#>_P@^gX+}d%>vMv0R-HAInb08XOA8S7W*orOO!Ze7rp8Uj|_Du__;RInRYi z^H$h+pFHl@XW4zJ(9?vtl0D%lVoD0d)i!aAqFcw;k~aiRkQG-51mwI(v{XWm>UtFi z6~uCZlq(_)JzXMaFv*x3!7KIT=b1V2e*|S)X2^S(YYO6Tt3#nF%FpWZ)8P-0n7c0Bc66u z-7d&`n+J`^QL#x3A#WLHF5@a{n@ zUnTXSOdbk#qRa4g1U~2R{sXy0pdhM8z z7}eBkvhXl#H~zI>q8)2gn?Hog(GdY(N2Qb}rC-WE)x7_`Z28U}_WB_{3lhQv(k6y@ zz!{RMe3uELGS+ZV>Z&sOyX6vHLg`6oofVN>6G25K5a=GB@^ds~ED0W#e-7SOYd3yA z=S%f#%_u%?V90n*FE3w zzH3C{ir_BltnC?yBNy{kzUZCDvvu=>8-B(K-)*=>Vi=FvmdVb^d16bf*@~eigb;8P zDBvzs0osX06Ev#RA_b?i#J7P?mB^`>psiL`Ct6g*RPDLy5wM`iyR>OwHrB2 z51et@r~LLCUI}@WeU8Uc1JvhP!NYa!PRBU-3KM^WoWAXgeEw|#KbKmzIT&PqP+L4bR`BO*5-tkTw-f=+#)l3jp0AE^gi%-PQ3O4|KvlF%e%<>aY!pOPQ5OBa*o589UhOtUmaZ zH0mrd3l(?~bE8pcuMQk|(`D}0vVwIT=)mV$CT_bKh&uKql`wl`MT1b1;qk$TfxwO8 zEOZ4Tdsu(mmmzSE8Ss5Tnx8i|zD!wiry=7Wv0568T7vMgnqQ57Y8B&QfPC!jUh>kr z21ck>dC8m&`;`3C&t>liM)gnJR*l4&GyAayNCg8s^7 zzV}Z+Voe6}6e>sKzI+8%uQT%w{w{gkCga{;3oLD!^fzg^wR;u9Ax!FZ>PP94D zgp9I}jX!%Cd*24Iu)q{}NAWsjl6k%xNvsp@JvRTu5ZN9GDia=eBodLRMyT;<87P9D zHbiY{4T49)fBPoC@0~?J3M~WcV{QM_>#+x4iHJ*Q1dhK)nrF|DU+M($GA$~T{U*gD z$|A`lLW@gNes4=GnGnQS{L>eB``2S+WH%%+1>S0cZ&{Y2+=w3WjY2l5)I?lmt&>L% z8H_TUY7RjHp?tv5B8byo`#jPcYj!DDy6Eqgw{7EHyVGkmV!j0lP$s9|EgN6wq?4VX zZ7sr2`sKKHBzKtAQd+&GOiG0b?=;TdO>K3*Yi7}uO#zmE<+%+1bR^}qAc2uM(KOzBOx*7HgcM^P zvdeWx&$mW-ZIfoV2zVHg$YsEIlHX+akO)x|tp!v9jb!|D&-dZms(ma^;oSJB;uLsC z-|Y%z{&LW14!f1|P|-X9(RU%I#5D6#Pzwcf?s(2cG07+SRRD5}vKLK~aMwruzzh0Q z3%B|)-?F&NmC?B*jrWVace`wzy?w(661rJfGKgXft;jA+{$N=^7?#ASPI(zh?^iG3 zzy8^>bnNt6y==D(S$WFp9h+c&+$$(sVLD=Lc75aV(_GU4e4Mu}5JauuPy z=7N3i#OJ37SZ&L%Jde<)Z za!wPDRi#==M(ZZt^`aGiYv+P!yLa~6og_dGh(eD<$^o>;tQhT@pqUl1PF%a$FuccCL61t?RHb`mDlTJ%&w5;a*$Kj^qZ^^ts*kS?|i-wU$C6fuip(nYsBp?KmA?o z*BAHyGb85&!YPx^<2}+VSC#gRcT@AUlWC+hFus4Va>-DqnQzSV8hb&Wd>}Z?(PGZ zspVTu@RfEwAGx3^xaQEiNK06>#$R5Q1>nR3U%j_v^kt=Je~N+Cce_RDyx(QKyib}7 zXKDkVtnq-nn;jM!{RY3|=7U3xDGXLS=Bp!lop84hwkO=c>awM^9rIaP1oJ@IU^#Nf zxVTJ-=2gvhJKkk^P-uqcyoMmE>q3)OW{7GV(x>Wou+g)w9J18|>ukm+MNRF969?9{q-B%|- znG~5h(45*?dPePJ(`)s>*JpVplHGgZsqh4s?wW`Y}e*t8eA6yc+;iFOKuRRmvI zV_8IiN??v?70VG{`z3(jcoV(rY`GA}=ea_sWwi;2`Ra$-ZLj{n=pVS)g;|i`xP-O6 zZ8;gPp{(*w3SamuE|{B2VoZkREA&HG-EhXLP`>utsSqu(gLot~ik`S*^EY;zFpCu5 z^jbBlr6`mFukHT95f^fKi$V zGNwI_yC(9j7bX6-N~2BTw`x>N1s;yOKy!lK0eH`F>9XE6{6Zls+H?lqumdxEhje@T zrq?Qiugm;gB;U^$nn*}mCEI0f|0h;Jm>PoC_oayoKNRIfCCf(&5JkJON}>DQ^g7Bs zU$?fj=<+FeD%)mltv8Yez!hm6Cy~_(s)AvS@-y$<&gL>JS`NXPFPi&OnoS4O3dm8m zd|o@42dIOGE!-O&vq-ZZ-ee=lQZCld1aIn=2;KN zzRGotx;qkg}_f9EJWZHOe z6z@yH9qN5nED`=_BOfzGf}+?O=lK*htyPYMX{_7Mhh&Ka48z&8sJ#5ci`+I}sh7I5 zbeatxRm(SDbB@|x4j>J;bsXSYzua(FLNHt+q6t$2?-8Mg)9rS=mV`C0Q2j)4E1yQ2hy*^;lYf?odRpHDHnGrrk{eVr zlDs4(V%#l}|8((Qzj?IgUfg9KpD=$5I(J4ZpQ_8Xa~CAwp4r0faf#E@I)AoP zB(TU3B_xnuLueC80;kvk-g?E1yy8;)76EyyOLWL%tJkM)_fb(TtP}zVQ4#zfXZR_U zAJBEachMuNis}+sBDA^qSyh55c*5F^%wO_=zq6J;M9L7l%UDy;^g0a7_wd7W!;viV z;h9-}(Bk?&gpe?8Ak7dN($a+agdOw6TLv(OY7>TSs!cdF8OOi5m8HTi3!6N7E+j!s3 zk8YF8WGe1=BrG2yj=JDGTx6%XRn4?;UF3!B48PQMGh4=kB5oz-se7f?^-VCtw3ZnS zXd-c#NgEP>?x*ql7ktWhkN7`2!nDW?10yz}By>pGbutoX^J5!)W6NK(BxF#|b>~6}Wfm4B%+v9NXqAZ(=hCuN`&f6o%d}Oc4i+Q~=J39_ zU$;>%w8$TaOirC^F|rCFHK?p}5?U1X+SwzDir|t;V`>&u1;xlgxOH(8uP;`xTQE%> zNQHS9>35%Bk=PyMZg*h;nVZAAC$VcZ*x{wi<)=3AE>TXEW_jE)3lf)Ty+=GI4y(G% zTzNp05Cm@(;t}^2mYcFo5+ z_;w&+XV*m85vX;b#=-yT1bJ;TUJa!x;KlV4*27TwBV4T&iYXYF7UEeGSsk$+0mDNg zryem_X+uauQfP=Nv&+usr=Rl?zr&FLo~jEDi05N9_FDm(op`RLHSe-N58j2kzJF3dg*>K z0k?>%VGeGNYeR5wiJa5>1b=b$@$v&AC2KAV2R(KCU^h41%@HGmQC56xxZN)wZ3`}P z%{E@Gf!BCTE*)(IZ%Mrk{FgRyVT2!8GAt-6Lz2%Dp^Pd@#&fRq(m3J=b-lYC5!4ci z8G5?NM_Z%+b^HBpXSq#l^uP-$l(vQSelB`wxT{o*%ya)&@%CWs4UVXmsz~e+?E#*4 z(S!bLt?>&{OHl4TA}u)$X*H3(%mRlxN0C!LHabFbCJ_iMG0cIBdy)Tr?FsVz-H<-O zl}N1fGmblRofTZi({qPt`DzO}g#^6e1o_cyyb48hNG77Kao5GW`BredW~;n7D8Jm5 zO|l}vmw7D%Owqr^-vH=UczN9{ga9uirTW;B&|OPy=DY^RD-Y_HN_1 zV!%aFS5Sd4yZ_S8MPHES-}B%i-{q0LQWKE2oNL+P>(~%X8+6^zh}3lw)+;SqYGgGm zfrredjr$o~b3DKC5jkm#aAmv#35DG6uj@_dhvasJ9ie07g&o0Vr{Vb3$IBlpJW~V- zhKO>-Gw$anN7G)oU45#Y!vX$R6t-k9E=L*^5Vf-9$k#bfSbG6;7Cbm2fsh5lB1^eP zBPBzY5ZND>`1$kq_y>hjU+=Hu&X+@r`Nms?1|rP6<02n9iIZnDf6b6t+dyLpyXXNw zf4Np%0C?3#IV~!`5ob6rXR;b%if6+^T>l)QIo>ECWvojd)XHKS(UR_)0ESybl!th) zK9OH4ty=3>HQ~@=J_i^Sa=rjBfZKEK^}C0Ww_A@85~dEZBw4AXsFSWQcxW*nWphRCb_P7LqX6t{zu<4y%*|HGP_*XQ|2W&>AOtnJ=DP03Kq@x4aBm92g+;eWAYt zVW;PhZ8S6oDqDd>#PbbbB`?+`<}DJM<9XrvxBFc?T=YEfetlZUdj+q5Io~Ed zei=${pg1Cm=1iuzBw>-{8;PX#oseXQC}rD|3D6_DVKO9#K*$Xe_LK4^{*ur0d+&Dk z%!|9%J?SH@or4CN28d2_!g9#vwS(VC_hgk79>uaQjD3FnihI)~C7q`cckvzCF%xSVe4`9@tk6Ahk$$yk z0N0-`TWv3YL}u5szv!>uxgfe@hnu@dM^P_p-bn;cACXO`ZvLwMZ%WQ~h8PMc!JHf; z(HxU?KH*>u+APwx4M7v;hIj2+GDFW>T6#nblRD-ZjJG`Fi~g3;Y{(AL!A^W72q(Kj zqK9hrF1l`3Djwi3qIw$bKn=W$3;F6nXAA9H?IR*70KEO@I1%&fBx>R zyiAo3HKDj(0S|&o!qvOLK<=zP>n@Tv7ttK5o7sbe&PM%YDAeC<1)#J$^F>c;gLk?PE3#QlZ0`R-?Y-hZqW{xXdBwi?Ng0Ul5i9t>AQ!V(EBAB&N4OR68^ z3L%qI=_v9DXXPapK6Z+{7RP00p|-ls0^>By+IG8#^3BTD4jkt~PTg=luUdruR}}F6 z(^h$r_V_t68^>e5u6tN(H?bJml@KZ=b1YxcAw_Qex0CtF7ygUiSz^G0lDx6Th0;G* zwyX;S?X;*T(()ZD@Vs6CKf~8A9V+k^7K%#;xL^MxaUGnD(a?yINZ@fQSqXTI8wC5`TT&K zzOUfd&?`YN5zifOI2x=5Zkdr6?cd7JxU!XmheXP~(nqMWJkWj2TE2jWB~ors@$zRG zl45CMy>ba&fARh7aePeteIWQeGVtZ)KgS~Y#`k}$;Hc{71>_%RW&6gh{7%fAQle~> zgk{IZ2icF+OUiJT2FFV;ewmL6jwRTw$MK)fzs;{5=W4HX374$m^xQW9C>M`+06f+GE{c_2CP?j3OIF(44Ym7)Iz?1|JhCj|oXQ9yuWaw}k}>b35F+7OmU2%hreP=QmV&Rwv*+ zlA}n415A#`V_ZSh3|B?WF&v4C;M~01`N^-p*Y6ptd$K$N(S5wmW4=QSsEe49cQZ($ zXWZtyFSw6as_+*&L(jpp7R7)z6wB9}nIFoTzW)3z@jzGh+wYVntHtaf=~JGP88~~SZ=d6ZcKSZTp;W~ z!op6`5%R#L`i&pIdVcRyAMjVE%yqIya(@=fsac{nh>< zpD$eNXh!4+$AQNL_z>h1r^s1B`K9cf6{V~-CE?ZW5DaqN$JEjO9?+1B!qj>`9xtxB z%!agBnql$$JD>Ct_{_i6el0JggB(%r@7Mrey{k5e)l0$9O4X9*H0>N9}{FHnAErsfu=Sa8PA2V+E;3E1* z&Xz65?c-NWxWqH=4PhpcTL%IX>MX4*VZE>S(jm!bXsm!wIq%NCx$Qimd;R8EJ@?$&$zc@KP1> zq)5*h_%{|t;YdsL9y9E}gZC>>)2(wAhx0$ryYoiog78nFM~GfBJ^|NE4t8ubB?Lu$ zmZlvR-JB?B45;)t_n%+E_ZD@0AMIi8_RCG(?jg9{PF$=Y`lh*i6PnMVFCH^xt z2?>E<)pD-qW})_${a}_x2J!Gx1@)d18x>@X6T^=52YpDBC*LN zJq98|bqEfdHt{;Ac!PzVQ_FY6t{af1^d`9PKmy|aj@{gL_MLp6ZR8I`Ff**F^0fgh zH^mAZ3t>xE+>CGk_;z^$Qr6>66OJQrm4%0%53XTKdEhgGe0+ zA)qmlbL5_LKJ71jv`wc|%Qt5IR{oKZ$Wi$#H<58!;2rwp*YH>OedclB72pN|C)AQ0 zI6WeDenes+Y`d>Pai1XuMTv+^_{%|vNGu$nAe{D*=g4`5Wj_3@cWU_#{ppwS!J6{t zGV>tr{;@OUl8r5IK-l6Su_X-yLPUd<^;b)Z#R6!<$yv`al=Xo$fex1=^8P2H{G z5fLGTMOrA0tdsnr6W|07idtD)cG25PSs-lK%XfYDUOsuLkPiodQ}7*z z`z;x8nWig;IKG4hK=hWA*u-XjR5IUZwN*a~q6r^1s5@B$jVIEi_Y00@UWAan^!a&2 zY(H;0`)>Z=a4DCm+x-dvH@;dxyy#7rtpf+|C~-UMi@x{czsCREzm*>euvZ#FYHQ52 z$WR>dMTSi-ndBtD#K@+^(L)kY0|^_rxFlkSmvl@m-=lKD19AFR_7N}CEkSeA?I!M& z7Vg_FTkeHFVu>>-*`rF2sEL#fR42PRL53uqr5QSeOv<5b0kA|m`!ie!o~D-Xv2wX} zp@`GBVhwkeW#TfA%gz=1FC6?$x3Txc+j&_I+)AX^2r#7Wvfhbjp(2t5(VD3@WlNHU z9?dPMar%^MnQYjq;C}N-ve~!t$I@~}oTX_UkEy6fWyeBUI_$Zq?PsfdhgVzlTpf~Q zQsz6#-dn?xfNbD5&$^Mf9ZuXgwS14!H803n_xhfF@N(b8y(y8UsEHQq642D6NrHry zRvejSGSv1>$_T0YX!&3V9uGqvKTS9$+i_Xnu>qnNe9Cvn{rm*V-Y5lJCJ=|TO(I)B zb0By?+B!=z5o}Azw8ZK*Pz!}T_a)9eY>PSt#$y&R%6!$>KjX999PZ=iq3m5li`8?W z8PbNfZl1IfV@<^4GxmFQ-P>7^969rF_q$EO_t+#VVWcpPn{b7m@qk~MmA{~el4u*l z36L6kqL>Npbra=8Dc_g(XgsSMjoK<(DOu;va=);A9&dqu5W*{itA+mHY zzkp$(p>Yr$);$`D)@w;?wJ)v1^y+|?KbinaAY*&e6nqnV4G)5*~fXe3tL?2 zRtN_amo*^Pp$#wp4>$U?Q_HsoudjKBKj_Av`7BK+9WwzSu92DGyvX*c+g-ynj7R=5 zv^$?G6-y-^eUifo&LZw+7DZ}UAY@i)C%QZq-@NxBB2qR<>3j;7$7fNNo= zs3WrPN&HpnN>_rJ5KW3E?=aC`En{Q6G!FWO|>BQK)pbw0d26sbmeS>ORZygemT z@J+xqlIf+)f`o?KyYibUo~7L6)p}`dTNznkMWWUrc;NhJ^4Tf)*67u#rjAy7?d3iN zPfZc0oPe;PYoQ|7J+net5#eC+H-7&VeCvR65fI zEL!7X0z}89v{4bN3w9mJrMbXOc$KS~TD~=#?z+q)I4o}EM4>1gbS`gl>@%uXR2E|4 zAa9ey+^Idae3O8?BDI0{MTL3Wl-NE5T16zU{%o%sriy6Bx{hWuJP4w~-F}#>P^aa! z$??5{O8`%IJVpLQ63=igH+llV=N=09h%_YHwud%L_!DpO^AGp?PTlT=#C(IIf10JV zsGs5ujbxHH6JVLc^1c!CGTs?7qz!!R(R|-2_$I~e0$vMgVw{R#771!)USc(0s;Gwo zzHW{~9GOX6{b=6zH0GO#Yakub{KaR=Ir|TQkNJEcE@c@_P|mS{1}*CE zvb6f+ljG&JC@2}z9v?njX|$>3o1~bJzTvPF{Bw)^KXC?I5`rd{=+To^=K374fHq(b z?wR(%miM1}m=wztd=r@QesUY9_nyRYtz*4Rn;IH2$yR&ebVLJq&bS6d0|(B%kt^Zw zDjQSqJ@()VF4(wkGvZ!#cHO~0eHt&7gf)Qlh+&adBhgk_E?fk4#|UU}yj9*+-qZY} zGRaf$J$7`;XfyYymRrPjL>#&KB-uQB3eT5>=ZK2oGDFW>605Dz*ODxvA(1o4mZ$KS zNZma2D9|@eI36?0SGFUIl-(6Lekl^W+qdpNCUew<$&k$ByDx)b@Pc)!0 za^>+m{SFvB>NA;w@3DcNx_eon>h3#S6hW>K&t*9l_>dn#P-&Q%F*0@8O3zonrLS!W z&5)LWENeM5J@)~kBdIiT!|}2@%JXL~lfm@Ajzu|fFhnJ z;n6``P!q2Inya`DK|Tc5^&d{bH{n;G0=Us`UqK!G_A_KlGvq&uk#$IlLxv-j0z+Dz z4Dd;Wc9yqL`VQ&KJn|^X?U@*4XX7Tm`^1lO&!gQgKDB&DA(dV6|1rP~s6#p_Ji|Ard6f3(pG-I`X>W?MxvXz}6W_V7etmh!nc=L%@`P~J0HOUyWpn)#mZcOV>&c zn6>0!b#_E~@WA7EefRr=TOT*^BU5Xhg6{~qT@m->%ZBiUJXGDW>67YV0FARr-O?JV=#ukgD-;`orz9CAc(Gfg;-z%@X$KX#%;eID7l zAi8U=xZZnDl1;6f zkN>#;&5vA3rZ+AXbeqeTnpUnxg zhzcm3@Q+o?7m2L47?2_)vMaZqvY#K~X5Z7b^)qT1?Ub|z>hx_2z9WX4ftERn>OI{@ zE9<43S#Z=LmqempKql_)W$k#^sRE+6oXyFbH}K06xHz_?)pn~Lz>*`;vDWb>pyDtz ztTFJ&t)JY-4?X7=--~yZi;mZGJ37D8^g_H}r7FAtk5N=pK_%jlZ$KLHeq9DNKN3r< zJAy<&?l_MhIc}D}?nS;f8kQoVy0F!IWh^_)8b-!LDE)%&_y!PWx&5;ZFMH0Pv)H-W z&ee9c+>SOH(MMCucck)#FXc)~Tr&XX@e!fA%-zjtS#Mt~d3D>Oa;ecOhDC#1d*8J|&H3BMU+X{DRbk3|Tef^6#l9b%hkgn^7$1a@F3A28 zF^|lH_pMMX#T7kxp?t?scpY%E24WtPv_adJ)C9y0MOQbb%MQ_T8hW%0%@GM;i@f>d zPxxC#TxAI{gsz9M``l5I>zIPCUOSL*9(cbi{C7B9aX_Mi`)%80%k1$yZzl0dQJ#>k z#8l!CASWTHV@c4NjHS5hbGKrdWHaLW6LDhM>$*kg%26E3cIqUPt_v>aZ^~AQcf!HjOP(;d2&Dju* z1%Sb!twT4fYWV~_5Oj%QZusZ8mmmAbUt<3pZeF^o%j__?@S}?CG`tKrb-#H{t&S)F zryIaVmkr?U$%rW5#nVpOXf4!?0Rvg{!EjeZ6!kE%p%t-^fHS2kPCjMDaX&6AKb#t}3rn`LWUR;DNgIy=#m+_{~c< z{>A7AbO#u^I^!r~JLqs%1kUwi7>HB&mAjuR7o@<2TY5Za(Ro^g=#bqgJju}>T{Ns) zXYZ6X@(v#}iG1jfxaB)h zw*Ko=IPD3_J;z_+d&;1+$Z}v?fjW9DD`3Y++6q4(@w+mRLhK%tnI81#0iu1G=SrW~ zODV%G%k%;MnU~0M&4ZlX?Bz^xwktdZIKv|i8LLl&bn+Cw{Dd6cgrPQ+qNsau*$#q{ z)u9z+*05G-RLMD2cODQm#2gEe;EtGK;(RV|;;pay5P#bZE3ISji3%=`xC|Wn_0S^h!fxBdhKfC)Gy!+{Y%x-G) z>d~rDOa}M_-Qgk&xUJxcDyZ(ekTVgUl{3#3;h9;B=3JC+WiSU`5nxiLVzF9>sjESNj;;H7N6Z#U08(Ydq@JX@3})Ii-) zJO?y7#0;%G{H8ld^m3X>%e;dG8WqfQEr->w>#Ub#ELY1Bio*MsbfYG?dWp3FaeIs^ z6BXdy&pX)Cx)8+4Az=nij|L-SeDHze_>1lD_iILk_)gK49%X_Py(0p?+Bms#h`2s+ z2L=1giL%pkS0%Xb>*TaBS?VZnR z97hnwf7Ly^8-$5sgZxjIBoJ&2&L!yJ+*b#TD|`f_-v^82Qh+^q)G)eIvOWdw#fxzEH)yUZJe{>CTTp$ARuLQ z9qkc>Et>B4Oo66RjD5xPi+aA8E%VLlS3DIoq{Zw|LB@)15X%KWpNCU!^Oa|v-3~MX zu?sQJuLH9v5pOP-d4xpicFAnnBJ$}6oLf21+OFd|${KJT$FdnqDaFts1XLm+HVh>& zLkvjir8_Y{J4jv1Db+YrP5m98Eu9h= zJ1;`FF}vecCW;cdE1q=?rxtw2;slm?4#8(PxD?*u#%RRN@RFMhc`pPm=2y0=8e27j zn>u0>3fn3%OLoIZAnJf7Zz|N%(6qa+g&N*Z#`!{U8SK&HT_C6urJ)hf5Y4u1B)R1R zVaM@gC~U=DewalzuRP$9Bxj2*0Pa*d_urTk4zXGlZ4TU|^b6XGfBuQw(jBhE8CPB8 zn(VN|kXvfDn?#@77nb9wD8WHPBy_C2XzW{c#r>IMKqE5?kxz`Q>aBc$<}juaji2#{ zQ?^ui>Xl#rfggV#^7FNC_0L7uRkvy5=%Px_z;_7X?N#k#8Ec!8v5S)uHe#)Y?l-!8 z``u?Bv%+&Ok6yA8&oOku>duf={};QAXb4==T`ms>45H-TG=!FH7Kbg%tSEqeDvw-i__ z_Es^KR&lN3>|X2ae(UOfIJ9+&N**JBw!XOXyX%Ta?S9qhxz^ik%=}D}tUAGGSrv7t z$*-!=syq1jr?0&kf==+g*LxJ=j@-8`fZYpv zT30Tn957M?x#)iezSr3HOj2Twl%g={17~r~POS1IX2w(-hdBsp034>-I2lkB@@Ak- zCU#(rFQp#GJ~gLGXqn7t##Gs9+ix$KdjnaWXt+_xNad7a%R~| z);%b@pMmcZ|cGs~IRO f)lU1rvH|}EKNQpXfDjwV00000NkvXXu0mjf+?Lpg literal 0 HcmV?d00001 diff --git a/web_search_alphabetic/static/src/js/web_search.js b/web_search_alphabetic/static/src/js/web_search.js new file mode 100644 index 00000000..9227c5fe --- /dev/null +++ b/web_search_alphabetic/static/src/js/web_search.js @@ -0,0 +1,80 @@ +openerp.web_search_alphabetic = function (instance) { + var QWeb = instance.web.qweb; + instance.web.SearchView.include({ + start: function() { + var result = this._super(); + var self = this; + self.search_on = "name"; + self.fields_selection = []; + this.dataset.call('fields_get', [false, {}]).done(function (fields) { + $.each(fields, function (value) { + if(fields[value].type == "char"){ + fields[value].id = value; + self.fields_selection.push(fields[value]); + } + }) + if(self.fields_selection.length){ + $('.field_selection_column').append((QWeb.render('field-selection', {widget: self}))); + $("#field_name_selection").change(function(){ + self.search_on = $(this).val() || false; + }) + } + }); + $('.oe_filter_label').click(function (e) { + $(this).toggleClass('enabled'); + self.do_search(); + }); + return result; + }, + search_filter: function(){ + var filter_domain = []; + var self = this; + _.each($('.oe_filter_label'), function(value) { + if ($(value).hasClass('enabled') && $(value).attr('id') && self.search_on) { + filter_domain.push("[('" + self.search_on + "', '=ilike', '" + $(value).attr('id').split('_')[1] + "%')]") + } + }); + if (filter_domain.length) { + var filter_or_domain = []; + for (i = 0; i < filter_domain.length-1; i++) { + filter_or_domain.push("['|']"); + } + return filter_or_domain.concat(filter_domain || []); + } + return false; + }, + build_search_data: function () { + var result = this._super(); + filter_domain = this.search_filter(); + if (filter_domain) + result['domains'] = filter_domain.concat(result.domains || []); + return result; + }, + }); + + instance.web.ViewManager.include({ + switch_mode: function(view_type, no_store, view_options) { + var view = this.views[view_type]; + var result = this._super(view_type, no_store, view_options); + if (this.searchview && this.active_view != "form") { + if ((view.controller.searchable === false || this.searchview.options.hidden) || this.active_view == "form"){ + $('.search_filter').live().hide(); + }else + $('.search_filter').show(); + } + else{ + $('.search_filter').live().hide(); + } + return result; + }, + }); + instance.web.FormView.include({ + load_defaults: function () { + if($('.search_filter')) + $('.search_filter').hide(); + return this._super(); + }, + }); +}; + +// vim:et fdc=0 fdl=0 foldnestmax=3 fdm=syntax: diff --git a/web_search_alphabetic/static/src/xml/web_search.xml b/web_search_alphabetic/static/src/xml/web_search.xml new file mode 100644 index 00000000..4b71d90d --- /dev/null +++ b/web_search_alphabetic/static/src/xml/web_search.xml @@ -0,0 +1,49 @@ + From f7824ab974e269a7cb1572d215bdc91a13f34e5c Mon Sep 17 00:00:00 2001 From: Holger Brunn Date: Fri, 31 Jan 2014 17:56:13 +0100 Subject: [PATCH 7/8] [FIX] accessing undefined variable --- web_ckeditor4/static/src/js/web_ckeditor4.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web_ckeditor4/static/src/js/web_ckeditor4.js b/web_ckeditor4/static/src/js/web_ckeditor4.js index 3fc59675..c72b36a3 100644 --- a/web_ckeditor4/static/src/js/web_ckeditor4.js +++ b/web_ckeditor4/static/src/js/web_ckeditor4.js @@ -52,7 +52,7 @@ openerp.web_ckeditor4 = function(openerp) { _.each(e.data.definition.contents, function(element) { - if(element.filebrowser!='uploadButton') + if(!element || element.filebrowser!='uploadButton') { return } From 981dc8e902da760b07b888c0327812e2bf12e542 Mon Sep 17 00:00:00 2001 From: Launchpad Translations on behalf of webaddons-core-editors Date: Fri, 21 Feb 2014 06:37:48 +0000 Subject: [PATCH 8/8] Launchpad automatic translations update. --- web_export_view/i18n/es.po | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 web_export_view/i18n/es.po diff --git a/web_export_view/i18n/es.po b/web_export_view/i18n/es.po new file mode 100644 index 00000000..2b29d548 --- /dev/null +++ b/web_export_view/i18n/es.po @@ -0,0 +1,32 @@ +# Spanish translation for web-addons +# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014 +# This file is distributed under the same license as the web-addons package. +# FIRST AUTHOR , 2014. +# +msgid "" +msgstr "" +"Project-Id-Version: web-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2013-10-21 11:59+0000\n" +"PO-Revision-Date: 2014-02-20 23:18+0000\n" +"Last-Translator: Pedro Manuel Baeza \n" +"Language-Team: Spanish \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2014-02-21 06:37+0000\n" +"X-Generator: Launchpad (build 16916)\n" + +#. module: web_export_view +#. openerp-web +#: code:addons/web_export_view/static/xml/web_advanced_export.xml:7 +#, python-format +msgid "Export Current View" +msgstr "Exportar vista actual" + +#. module: web_export_view +#. openerp-web +#: code:addons/web_export_view/static/xml/web_advanced_export.xml:9 +#, python-format +msgid "Excel" +msgstr "Excel"