X-Git-Url: https://git.mdrn.pl/fnpeditor.git/blobdiff_plain/68c9d615c3b5f4d6fefcd721f0315fde89fc3328..dec5a3d8b3a4cc70a9b2bc7bc1305ba0ae11a369:/src/editor/plugins/core/templates.js diff --git a/src/editor/plugins/core/templates.js b/src/editor/plugins/core/templates.js index 1114258..bca8467 100644 --- a/src/editor/plugins/core/templates.js +++ b/src/editor/plugins/core/templates.js @@ -16,6 +16,8 @@ var insertTemplateAction = { icon: 'core.plus' }, getState: function(params) { + var description; + if(!(params.template && params.template.id)) { return { allowed: false, @@ -31,13 +33,22 @@ var insertTemplateAction = { description: gettext('Wrong node selected') }; } + + description = interpolate(gettext('Insert template %s'), [params.template.name]); return { allowed: true, - description: interpolate(gettext('Insert template %s after %s'), [params.template.name, params.fragment.node.getNearestElementNode().getTagName()]), - execute: function(params) { + description: description, + execute: function(callback, params) { var node = params.fragment.node.getNearestElementNode(); - var toAdd = node.document.createDocumentNode(params.template.content); - node.after(toAdd); + node.document.transaction(function() { + var toAdd = node.document.createDocumentNode(params.template.content); + node.after(toAdd); + }, { + metadata: { + description: description + }, + success: callback + }); } }; }