diff --git a/addons/base_dashboard/static/src/js/dashboard.js b/addons/base_dashboard/static/src/js/dashboard.js index 8f9884c4f8a..ec8cc535bd6 100644 --- a/addons/base_dashboard/static/src/js/dashboard.js +++ b/addons/base_dashboard/static/src/js/dashboard.js @@ -39,41 +39,19 @@ openerp.base.form.Dashbar = openerp.base.form.Widget.extend({ init: function(view, node, dashboard) { this._super(view, node, dashboard); this.dashboard = dashboard; + this.template = 'Portlet' }, start: function() { var $dashboard = this.dashboard; var children = this.node.children; - $dashboard.append( - jQuery('
',{ - 'class': 'column', - 'id': this.node.tag - }) - ) + $dashboard.append(QWeb.render(this.template, {widget: this, 'children': children})) + for(var chld=0; chld < children.length;chld++) { var child = children[chld]; var widget = new (openerp.base.form.widgets.get_object(child.tag)) (this.view, child); widget.start() - $dashboard.find('#'+this.node.tag).append( - jQuery('
',{ - 'class': 'portlet', - 'id': child.attrs.name - } - ).append( - jQuery('
',{ - 'class': 'portlet-header' - }).html(child.attrs.string).append( - jQuery('',{ - 'class': 'ui-icon ui-icon-minusthick' - }) - ), - jQuery('
',{ - 'class': 'portlet-content', - 'id': child.attrs.name+'-portlet-content' - }) - ) - ) } - + $( ".column" ).sortable({ connectWith: ".column" }); @@ -83,14 +61,14 @@ openerp.base.form.Dashbar = openerp.base.form.Widget.extend({ .addClass( "ui-widget-header ui-corner-all" ) .end() .find( ".portlet-content" ); - + $( ".portlet-header .ui-icon" ).click(function() { $( this ).toggleClass( "ui-icon-minusthick" ).toggleClass( "ui-icon-plusthick" ); $( this ).parents( ".portlet:first" ).find( ".portlet-content" ).toggle(); }); $( ".column" ).disableSelection(); - }, + } }) openerp.base.form.Action = openerp.base.form.Widget.extend({ @@ -113,7 +91,7 @@ openerp.base.form.Action = openerp.base.form.Widget.extend({ views_switcher : false } var node_attrs = this.node.attrs; - var content_id = jQuery('#'+node_attrs.name).find('.portlet-content').attr('id') + var content_id = 'portlet-content-'+node_attrs.name; var action_manager = new openerp.base.ActionManager(this.session, content_id); action_manager.start(); action_manager.do_action(action); diff --git a/addons/base_dashboard/static/src/xml/base_dashboard.xml b/addons/base_dashboard/static/src/xml/base_dashboard.xml index c019ee307b1..5d5b957e2ba 100644 --- a/addons/base_dashboard/static/src/xml/base_dashboard.xml +++ b/addons/base_dashboard/static/src/xml/base_dashboard.xml @@ -1,15 +1,17 @@ \ No newline at end of file