From: zuber Date: Fri, 28 Aug 2009 08:46:04 +0000 (+0200) Subject: Merge branch 'master' of git@stigma.nowoczesnapolska.org.pl:platforma X-Git-Url: https://git.mdrn.pl/redakcja.git/commitdiff_plain/161c28b8083a89516b04082d5eee1a9a9e944fa6?hp=0e6a1823931e3a2bad3b20ca479308978da7b0a8 Merge branch 'master' of git@stigma.nowoczesnapolska.org.pl:platforma --- diff --git a/project/static/js/editor.js b/project/static/js/editor.js index b732810e..8d755254 100644 --- a/project/static/js/editor.js +++ b/project/static/js/editor.js @@ -106,11 +106,11 @@ Editor.prototype.setupUI = function() { var panelRoot = $('#panels'); self.rootDiv = panelRoot; - // Set panel widths from options.panelRatios - if (self.options && self.options.panelRatios) { + // Set panel widths from options.panels + if (self.options && self.options.panels) { var totalWidth = 0; $('.panel-wrap', panelRoot).each(function(index) { - var panelWidth = self.options.panelRatios[index] * panelRoot.width(); + var panelWidth = self.options.panels[index].ratio * panelRoot.width(); if ($(this).hasClass('last-panel')) { $(this).css({ left: totalWidth, @@ -123,6 +123,9 @@ Editor.prototype.setupUI = function() { }); totalWidth += panelWidth; } + $('.panel-toolbar select', this).val( + $('.panel-toolbar option[name=' + self.options.panels[index].name + ']', this).attr('value') + ) }); } @@ -132,21 +135,37 @@ Editor.prototype.setupUI = function() { $('#panels > *.panel-wrap').each(function() { var panelWrap = $(this); $.log('wrap: ', panelWrap); - panelWrap.data('ctrl', new Panel(panelWrap)); // attach controllers to wraps - + panel = new Panel(panelWrap); + panelWrap.data('ctrl', panel); // attach controllers to wraps + panel.load($('.panel-toolbar select', panelWrap).val()); + $('.panel-toolbar select', panelWrap).change(function() { - panelWrap.data('ctrl').load( $(this).val() ); + var url = $(this).val(); + panelWrap.data('ctrl').load(url); + var panels = []; + $('.panel-wrap', panelRoot).not('.panel-content-overlay').each(function(index) { + panels.push({ + name: $('.panel-toolbar option:selected', this).attr('name'), + ratio: $(this).width() / panelRoot.width() + }) + }); + self.options.panels = panels; + $.log($.toJSON(self.options)); + $.cookie('options', $.toJSON(self.options), { expires: 7, path: '/'}); }); }); - + $('#toolbar-button-save').click( function (event, data) { self.saveToBranch(); } ); panelRoot.bind('stopResize', function() { - var panelRatios = []; - $('.panel-wrap', panelRoot).each(function() { - panelRatios.push($(this).width() / panelRoot.width()); + var panels = []; + $('.panel-wrap', panelRoot).not('.panel-content-overlay').each(function() { + panels.push({ + name: $('.panel-toolbar option:selected', this).attr('name'), + ratio: $(this).width() / panelRoot.width() + }) }); - self.options.panelRatios = panelRatios; + self.options.panels = panels; $.log($.toJSON(self.options)); $.cookie('options', $.toJSON(self.options), { expires: 7, path: '/'}); }); @@ -154,13 +173,18 @@ Editor.prototype.setupUI = function() { Editor.prototype.loadConfig = function() { // Load options from cookie - var cookie = $.cookie('options') - if (cookie) { + try { + var cookie = $.cookie('options'); this.options = $.secureEvalJSON(cookie); - } else { - // Default options - this.options = {panelRatios: [0.5, 0.5]} + } catch (e) { + this.options = { + panels: [ + {name: 'htmleditor', ratio: 0.5}, + {name: 'gallery', ratio: 0.5} + ] + } } + $.log(this.options); } Editor.prototype.saveToBranch = function() { diff --git a/project/templates/explorer/editor.html b/project/templates/explorer/editor.html index 1e0cf30b..dd5c736f 100644 --- a/project/templates/explorer/editor.html +++ b/project/templates/explorer/editor.html @@ -22,10 +22,10 @@
@@ -36,10 +36,10 @@