X-Git-Url: https://git.mdrn.pl/redakcja.git/blobdiff_plain/392251a9a79eb96a0fd51438c64606d70ade3395..759c804d6c3b8db0ad99dcd5d155396b29ebedd7:/project/static/js/views/panel_container.js

diff --git a/project/static/js/views/panel_container.js b/project/static/js/views/panel_container.js
index e4950ba8..6dbddd98 100644
--- a/project/static/js/views/panel_container.js
+++ b/project/static/js/views/panel_container.js
@@ -1,33 +1,47 @@
 /*globals View render_template panels*/
 
 var PanelContainerView = View.extend({
+  _className: 'PanelContainerView',
   element: null,
   model: null,
   template: 'panel-container-view-template',
   contentView: null,
   
   init: function(element, model, template) {
-    this.element = $(element);
-    this.model = model;
-    this.template = template || this.template;
-    
-    this.element.html(render_template(this.template, {panels: panels}));
-    $('select', this.element.get(0)).bind('change.panel-container-view', this.selectChanged.bind(this));
+    this._super(element, model, template);
+
+    $('.panel-main-toolbar select', this.element.get(0)).bind('change.panel-container-view', this.selectChanged.bind(this));
+    $('.panel-main-toolbar .refresh', this.element.get(0))
+      .bind('click.panel-container-view', this.refreshButtonClicked.bind(this))
+      .attr('disabled', 'disabled');
   },
   
   selectChanged: function(event) {
     var value = $('select', this.element.get(0)).val();
     var klass = panels[value];
+
     if (this.contentView) {
       this.contentView.dispose();
       this.contentView = null;
     }
+
+    if( value != 'empty') {
     this.contentView = new klass($('.content-view', 
-      this.element.get(0)), this.model.contentModels[value]);
+      this.element.get(0)), this.model.contentModels[value], this);
+    $('.panel-main-toolbar .refresh', this.element.get(0)).attr('disabled', null);    
+    }
+  },
+  
+  refreshButtonClicked: function(event) {
+    if (this.contentView) {
+      console.log('refreshButtonClicked');
+      this.contentView.reload();
+    }
   },
   
   dispose: function() {
-    $('select', this.element.get(0)).unbind('change.panel-container-view');
+    $('.panel-main-toolbar .refresh', this.element.get(0)).unbind('click.panel-container-view');
+    $('.panel-main-toolbar select', this.element.get(0)).unbind('change.panel-container-view');
     this._super();
   }
 });