{
this.scriptlets = {};
+ this.scriptlets['insert_text'] = function(context, params, text, move_forward, move_up, done)
+ {
+ done(params.text, move_forward, move_up);
+ }.bind(this);
+
this.scriptlets['insert_tag'] = function(context, params, text, move_forward, move_up, done)
{
var padding_top = '';
done(output, move_forward, move_up);
}.bind(this);
+
+ this.scriptlets['slugify'] = function(context, params, text, move_forward, move_up, done)
+ {
+ done(slugify(text.replace(/_/g, '-')), move_forward, move_up);
+ }.bind(this);
+
}
ScriptletCenter.prototype.callInteractive = function(opts) {
$.blockUI({message: $progress, showOverlay: false});
+ $('#save-button').attr('disabled', true);
var input = self.XMLEditorSelectedText(opts.context);
- self.scriptlets[opts.action](opts.context, opts.extra, input, 0, 0, function(output, move_forward, move_up){
- /*if(timer)
- clearTimeout(timer);
- else */
- if (input != output) {
- self.XMLEditorReplaceSelectedText(opts.context, output)
- }
- if (move_forward || move_up) {
- try {
- self.XMLEditorMoveCursorForward(opts.context, move_forward, move_up)
+ window.setTimeout(function() {
+ self.scriptlets[opts.action](opts.context, opts.extra, input, 0, 0, function(output, move_forward, move_up){
+ /*if(timer)
+ clearTimeout(timer);
+ else */
+ if (input != output) {
+ self.XMLEditorReplaceSelectedText(opts.context, output)
}
- catch(e) {}
- }
- $.unblockUI(); // done
- });
+ if (move_forward || move_up) {
+ try {
+ self.XMLEditorMoveCursorForward(opts.context, move_forward, move_up)
+ }
+ catch(e) {}
+ }
+ $.unblockUI({onUnblock: function() { $('#save-button').attr('disabled', null)}}); // done
+ });
+ }, 0);
+
}
ScriptletCenter.prototype.XMLEditorSelectedText = function(editor) {
$(function() {
scriptletCenter = new ScriptletCenter();
-});
\ No newline at end of file
+});