tinymce.PluginManager.add( 'wpeditimage', function( editor ) {
var toolbar, serializer,
each = tinymce.each,
+ trim = tinymce.trim,
iOS = tinymce.Env.iOS;
function isPlaceholder( node ) {
function parseShortcode( content ) {
return content.replace( /(?:<p>)?\[(?:wp_)?caption([^\]]+)\]([\s\S]+?)\[\/(?:wp_)?caption\](?:<\/p>)?/g, function( a, b, c ) {
- var id, align, classes, caption, img, width,
- trim = tinymce.trim;
+ var id, align, classes, caption, img, width;
id = b.match( /id=['"]([^'"]*)['"] ?/ );
if ( id ) {
}
function removeImage( node ) {
- var wrap;
+ var wrap = editor.dom.getParent( node, 'div.mceTemp' );
- if ( node.nodeName === 'DIV' && editor.dom.hasClass( node, 'mceTemp' ) ) {
- wrap = node;
- } else if ( node.nodeName === 'IMG' || node.nodeName === 'DT' || node.nodeName === 'A' ) {
- wrap = editor.dom.getParent( node, 'div.mceTemp' );
+ if ( ! wrap && node.nodeName === 'IMG' ) {
+ wrap = editor.dom.getParent( node, 'a' );
}
if ( wrap ) {
replacement = ' ' + align;
}
- node.className = node.className.replace( / ?align(left|center|right|none)/g, '' ) + replacement;
+ node.className = trim( node.className.replace( / ?align(left|center|right|none)/g, '' ) + replacement );
editor.nodeChanged();
event.preventDefault();