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;
27 if( value != 'empty') {
28 this.contentView = new klass($('.content-view',
29 this.element.get(0)), this.model.contentModels[value], this);
30 $('.panel-main-toolbar .refresh', this.element.get(0)).attr('disabled', null);
34 refreshButtonClicked: function(event) {
35 if (this.contentView) {
36 console.log('refreshButtonClicked');
37 this.contentView.reload();
42 $('.panel-main-toolbar .refresh', this.element.get(0)).unbind('click.panel-container-view');
43 $('.panel-main-toolbar select', this.element.get(0)).unbind('change.panel-container-view');