1 /*globals View render_template panels*/
3 var PanelContainerView = View.extend({
4 _className: 'PanelContainerView',
7 template: 'panel-container-view-template',
10 init: function(element, model, template) {
11 this._super(element, model, template);
13 $('.panel-main-toolbar select', this.element.get(0)).bind('change.panel-container-view', this.selectChanged.bind(this));
14 $('.panel-main-toolbar .refresh', this.element.get(0))
15 .bind('click.panel-container-view', this.refreshButtonClicked.bind(this))
16 .attr('disabled', 'disabled');
19 selectChanged: function(event) {
20 var value = $('select', this.element.get(0)).val();
21 var klass = panels[value];
22 if (this.contentView) {
23 this.contentView.dispose();
24 this.contentView = null;
26 this.contentView = new klass($('.content-view',
27 this.element.get(0)), this.model.contentModels[value], this);
28 $('.panel-main-toolbar .refresh', this.element.get(0)).attr('disabled', null);
31 refreshButtonClicked: function(event) {
32 if (this.contentView) {
33 this.contentView.reload();
38 $('.panel-main-toolbar .refresh', this.element.get(0)).unbind('click.panel-container-view');
39 $('.panel-main-toolbar select', this.element.get(0)).unbind('change.panel-container-view');