Fixed unsanited message/user description in document.invoke_and_commit
[redakcja.git] / project / static / js / views / panel_container.js
index c873574..332e83a 100644 (file)
@@ -1,30 +1,27 @@
 /*globals View render_template panels*/
 
 var PanelContainerView = View.extend({
 /*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) {
   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}));
+    this._super(element, model, template);
+
     $('select', this.element.get(0)).bind('change.panel-container-view', this.selectChanged.bind(this));
   },
   
   selectChanged: function(event) {
     $('select', this.element.get(0)).bind('change.panel-container-view', this.selectChanged.bind(this));
   },
   
   selectChanged: function(event) {
-    var view = panels[$('select', this.element.get(0)).val()];
-    var klass = view.klass;
-    console.log(view, klass);
+    var value = $('select', this.element.get(0)).val();
+    var klass = panels[value];
     if (this.contentView) {
       this.contentView.dispose();
       this.contentView = null;
     }
     if (this.contentView) {
       this.contentView.dispose();
       this.contentView = null;
     }
-    this.contentView = new klass($('.content-view', this.element.get(0)), this.model);
-    console.log(this.contentView);
+    this.contentView = new klass($('.content-view', 
+      this.element.get(0)), this.model.contentModels[value], this);
   },
   
   dispose: function() {
   },
   
   dispose: function() {