|
|
@ -0,0 +1,44 @@ |
|
|
|
"use strict"; |
|
|
|
openerp.web_group_expand = function(openerp) { |
|
|
|
var QWeb = openerp.web.qweb; |
|
|
|
openerp.web.ViewManager.include({ |
|
|
|
switch_mode: function(view_type, no_store, view_options) { |
|
|
|
if (view_type != 'list' && view_type != 'tree' ) { |
|
|
|
this.$el.find("ul#oe_group_by").remove(); |
|
|
|
} |
|
|
|
if(view_type == 'tree'){ |
|
|
|
this.load_expand_buttons(); |
|
|
|
this.$ExpandButtons.find("a#oe_group_by_reset").click(function(){ |
|
|
|
$('.oe_open .treeview-tr.oe-treeview-first').filter(function(){return ($(this).parents('tr').attr('data-level') == 1)}).click() |
|
|
|
}); |
|
|
|
this.$ExpandButtons.find("a#oe_group_by_expand").click(function(){ |
|
|
|
$('.treeview-tr.oe-treeview-first').filter(function(){return (!$(this).parents().is('.oe_open')) & ($(this).parents().css( "display" ) != 'none')}).click(); |
|
|
|
}); |
|
|
|
} |
|
|
|
return this._super.apply(this, arguments); |
|
|
|
}, |
|
|
|
expand: function(domains, contexts, groupbys) { |
|
|
|
this.$el.find("ul#oe_group_by").remove(); |
|
|
|
if(groupbys.length && this.active_view == 'list') { |
|
|
|
this.load_expand_buttons(); |
|
|
|
this.$el.find("a#oe_group_by_reset").click(function(){ |
|
|
|
$('span.ui-icon-triangle-1-s').click() |
|
|
|
}); |
|
|
|
this.$el.find("a#oe_group_by_expand").click(function(){ |
|
|
|
$('span.ui-icon-triangle-1-e').click() |
|
|
|
}); |
|
|
|
} |
|
|
|
}, |
|
|
|
load_expand_buttons:function() { |
|
|
|
var self = this; |
|
|
|
this.$ExpandButtons = $(QWeb.render("GroupExpand.Buttons", {'widget':self})); |
|
|
|
this.$el.find("ul.oe_view_manager_switch.oe_button_group.oe_right").before(this.$ExpandButtons); |
|
|
|
}, |
|
|
|
setup_search_view: function(view_id, search_defaults) { |
|
|
|
var self = this; |
|
|
|
var res = this._super.apply(this, arguments); |
|
|
|
this.searchview.on('search_data', self, this.expand); |
|
|
|
return res |
|
|
|
}, |
|
|
|
}) |
|
|
|
} |