fnp
/
redakcja.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Poprawiony ostatni panel ("prawy").
[redakcja.git]
/
project
/
static
/
js
/
editor.js
diff --git
a/project/static/js/editor.js
b/project/static/js/editor.js
index
cde0460
..
f238e18
100644
(file)
--- a/
project/static/js/editor.js
+++ b/
project/static/js/editor.js
@@
-19,13
+19,19
@@
function Panel(panelWrap) {
});
}
});
}
-Panel.prototype.callHook = function(hookName) {
+Panel.prototype.callHook = function() {
+ args = $.makeArray(arguments)
+ var hookName = args.splice(0,1)[0]
+ var noHookAction = args.splice(0,1)[0]
+
+ $.log('calling hook: ', hookName, 'with args: ', args);
if(this.hooks && this.hooks[hookName])
if(this.hooks && this.hooks[hookName])
- {
-// arguments.shift();
- $.log('calling hook: ', hookName, 'with args: ', arguments);
- return this.hooks[hookName].apply(this, arguments);
+ {
+ return this.hooks[hookName].apply(this, args);
}
}
+ else if (noHookAction instanceof Function)
+ return noHookAction(args);
+ else return false;
}
Panel.prototype.load = function (url) {
}
Panel.prototype.load = function (url) {
@@
-63,16
+69,20
@@
Panel.prototype.unload = function(event, data) {
}
Panel.prototype.refresh = function(event, data) {
}
Panel.prototype.refresh = function(event, data) {
- $('.change-notification', this.wrap).fadeOut();
- $.log('refreshing view for panel ', this.current_url);
- this.load(this.current_url);
-// if( this.callHook('refresh') )
+ reload = function() {
+ $.log('hard reload for panel ', this.current_url);
+ this.load(this.current_url);
+ return true;
+ }
+
+ if( this.callHook('refresh', reload) )
+ $('.change-notification', this.wrap).fadeOut();
}
Panel.prototype.otherPanelChanged = function(other) {
$.log('panel ', other, ' changed.');
}
Panel.prototype.otherPanelChanged = function(other) {
$.log('panel ', other, ' changed.');
- $('.change-notification', this.wrap).fadeIn();
-
this.callHook('dirty'
);
+ if(!this.callHook('dirty'))
+
$('.change-notification', this.wrap).fadeIn(
);
}
Panel.prototype.markChanged = function () {
}
Panel.prototype.markChanged = function () {
@@
-90,7
+100,7
@@
Panel.prototype.unmarkChanged = function () {
Panel.prototype.saveInfo = function() {
var saveInfo = {};
Panel.prototype.saveInfo = function() {
var saveInfo = {};
- this.callHook('saveInfo', saveInfo);
+ this.callHook('saveInfo',
null,
saveInfo);
return saveInfo;
}
return saveInfo;
}
@@
-102,7
+112,7
@@
function Editor() {
Editor.prototype.setupUI = function() {
// set up the UI visually and attach callbacks
var self = this;
Editor.prototype.setupUI = function() {
// set up the UI visually and attach callbacks
var self = this;
-
+
self.rootDiv.makeHorizPanel({}); // TODO: this probably doesn't belong into jQuery
self.rootDiv.css('top', ($('#header').outerHeight() ) + 'px');
self.rootDiv.makeHorizPanel({}); // TODO: this probably doesn't belong into jQuery
self.rootDiv.css('top', ($('#header').outerHeight() ) + 'px');
@@
-118,10
+128,13
@@
Editor.prototype.setupUI = function() {
panelWrap.data('ctrl').load(url);
self.savePanelOptions();
});
panelWrap.data('ctrl').load(url);
self.savePanelOptions();
});
- });
+ });
+
+ $(document).bind('panel:contentChanged', function(event, data) {
+ $('#toolbar-button-save').removeAttr('disabled');
+ });
$('#toolbar-button-save').click( function (event, data) { self.saveToBranch(); } );
$('#toolbar-button-save').click( function (event, data) { self.saveToBranch(); } );
-
self.rootDiv.bind('stopResize', function() { self.savePanelOptions() });
}
self.rootDiv.bind('stopResize', function() { self.savePanelOptions() });
}
@@
-212,6
+225,7
@@
Editor.prototype.saveToBranch = function() {
$.log('save errors: ', data.errors)
else
self.refreshPanels(changed_panel);
$.log('save errors: ', data.errors)
else
self.refreshPanels(changed_panel);
+ $('#toolbar-button-save').attr('disabled', 'disabled');
},
error: function(rq, tstat, err) {
$.log('save error', rq, tstat, err);
},
error: function(rq, tstat, err) {
$.log('save error', rq, tstat, err);