test
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

48 lines
1.1 KiB

tinymce.PluginManager.add('image', function(editor) {
function handleImageDialog() {
var dom = editor.dom;
var imgElm = editor.selection.getNode();
require(['util'], function(u){
var v = '';
if (imgElm && imgElm.tagName.toLowerCase() == 'img') {
v = imgElm.src;
}
u.image(v, function(val){
data = {
src: val.url,
alt: val.filename,
title: val.filename
};
if (!data["class"]) {
delete data["class"];
}
if (!imgElm || imgElm.tagName.toLowerCase() != 'img') {
data.id = '__mcenew';
editor.focus();
editor.selection.setContent(dom.createHTML('img', data));
imgElm = dom.get('__mcenew');
dom.setAttrib(imgElm, 'id', null);
} else {
dom.setAttribs(imgElm, data);
}
},'', {direct: true, multi : false} );
});
}
editor.addButton('image', {
icon: 'image',
tooltip: 'Insert/edit image',
onclick: handleImageDialog,
stateSelector: 'img:not([data-mce-object],[data-mce-placeholder])'
});
editor.addMenuItem('image', {
icon: 'image',
text: 'Insert image',
onclick: handleImageDialog,
context: 'insert',
prependToContext: true
});
});