diff options
| author | Vidhin Mehta (OpenERP) <vme@tinyerp.com> | 2012-06-05 14:45:51 +0530 |
|---|---|---|
| committer | Vidhin Mehta (OpenERP) <vme@tinyerp.com> | 2012-06-05 14:45:51 +0530 |
| commit | f38d0f6736f1d5e82aecbf70d64fee99f6ae0786 (patch) | |
| tree | bb1862715100e362fbd16c22537a3a2384125314 /addons/web/static/src | |
| parent | 91fbf8339064c3666796b481e6add7634f2a1ca1 (diff) | |
[IMP]create widget for add to dashboard.
bzr revid: vme@tinyerp.com-20120605091551-pecg3070vi94jxeu
Diffstat (limited to 'addons/web/static/src')
| -rw-r--r-- | addons/web/static/src/js/search.js | 66 | ||||
| -rw-r--r-- | addons/web/static/src/xml/base.xml | 9 |
2 files changed, 27 insertions, 48 deletions
diff --git a/addons/web/static/src/js/search.js b/addons/web/static/src/js/search.js index f9e737471ae..f7eff8cddd5 100644 --- a/addons/web/static/src/js/search.js +++ b/addons/web/static/src/js/search.js @@ -635,6 +635,7 @@ instance.web.SearchView = instance.web.Widget.extend(/** @lends instance.web.Sea (new instance.web.search.CustomFilters(this)); // add Advanced to this.inputs (new instance.web.search.Advanced(this)); + (new instance.web.search.AddToDashboard(this)); // build drawer var drawer_started = $.when.apply( @@ -692,53 +693,6 @@ instance.web.SearchView = instance.web.Widget.extend(/** @lends instance.web.Sea select.val(''); } }, - on_add_to_dashboard: function() { - this.$element.find(".oe_search-view-filters-management")[0].selectedIndex = 0; - var self = this, - menu = instance.webclient.menu, - $dialog = $(QWeb.render("SearchView.add_to_dashboard", { - dashboards : menu.data.data.children, - selected_menu_id : menu.$element.find('a.active').data('menu') - })); - $dialog.find('input').val(this.fields_view.name); - instance.web.dialog($dialog, { - modal: true, - title: _t("Add to Dashboard"), - buttons: [ - {text: _t("Cancel"), click: function() { - $(this).dialog("close"); - }}, - {text: _t("OK"), click: function() { - $(this).dialog("close"); - var menu_id = $(this).find("select").val(), - title = $(this).find("input").val(), - data = self.build_search_data(), - context = new instance.web.CompoundContext(), - domain = new instance.web.CompoundDomain(); - _.each(data.contexts, function(x) { - context.add(x); - }); - _.each(data.domains, function(x) { - domain.add(x); - }); - self.rpc('/web/searchview/add_to_dashboard', { - menu_id: menu_id, - action_id: self.getParent().action.id, - context_to_save: context, - domain: domain, - view_mode: self.getParent().active_view, - name: title - }, function(r) { - if (r === false) { - self.do_warn("Could not add filter to dashboard"); - } else { - self.do_notify("Filter added to dashboard", ''); - } - }); - }} - ] - }); - }, /** * Extract search data from the view's facets. * @@ -1671,6 +1625,24 @@ instance.web.search.Filters = instance.web.search.Input.extend({ })); } }); +instance.web.search.AddToDashboard = instance.web.search.Input.extend({ + template: 'SearchView.addtodashboard', + _in_drawer: true, + init: function(){ + var menu = instance.webclient.menu; + var menu_id = menu.$secondary_menus.find("li.oe_active a").data('menu') + this._super.apply(this, arguments); + }, + start: function () { + var self = this; + this.$element.on('click', 'h4', this.proxy('show_option')) + }, + show_option:function(){ + self.$element.toggleClass('oe_opened'); + console.log(this); + } + +}) instance.web.search.Advanced = instance.web.search.Input.extend({ template: 'SearchView.advanced', _in_drawer: true, diff --git a/addons/web/static/src/xml/base.xml b/addons/web/static/src/xml/base.xml index aaecd258412..2ca3aac9680 100644 --- a/addons/web/static/src/xml/base.xml +++ b/addons/web/static/src/xml/base.xml @@ -1264,7 +1264,6 @@ <optgroup label="-- Actions --"> <option value="advanced_filter">Add Advanced Filter</option> <option value="save_filter">Save Filter</option> - <option value="add_to_dashboard">Add to Dashboard</option> <option value="manage_filters">Manage Filters</option> </optgroup> </t> @@ -1423,6 +1422,14 @@ <div> </div> </div> +<div t-name="SearchView.addtodashboard" class=""> + <h4>Add to Dashboard</h4> + <ul> + <select class=""> + <t t-js="dict">console.warn('Unhandled widget', dict);</t> + </select> + </ul> +</div> <div t-name="SearchView.advanced" class="oe_searchview_advanced"> <h4>Advanced Search</h4> <form> |
