X-Git-Url: https://scripts.mit.edu/gitweb/autoinstalls/wordpress.git/blobdiff_plain/8f374b7233bc2815ccc387e448d208c5434eb961..00dbffaf1593b0ac719d98f00839221a9ca52133:/wp-includes/js/tinymce/plugins/media/editor_plugin_src.js diff --git a/wp-includes/js/tinymce/plugins/media/editor_plugin_src.js b/wp-includes/js/tinymce/plugins/media/editor_plugin_src.js index a0d4ef2a..2ca33ac0 100644 --- a/wp-includes/js/tinymce/plugins/media/editor_plugin_src.js +++ b/wp-includes/js/tinymce/plugins/media/editor_plugin_src.js @@ -28,6 +28,10 @@ ["Audio"] ]; + function normalizeSize(size) { + return typeof(size) == "string" ? size.replace(/[^0-9%]/g, '') : size; + } + function toArray(obj) { var undef, out, i; @@ -258,8 +262,8 @@ 'data-mce-json' : JSON.serialize(data, "'") }); - img.width = data.width || (data.type == 'audio' ? "300" : "320"); - img.height = data.height || (data.type == 'audio' ? "32" : "240"); + img.width = data.width = normalizeSize(data.width || (data.type == 'audio' ? "300" : "320")); + img.height = data.height = normalizeSize(data.height || (data.type == 'audio' ? "32" : "240")); return img; }, @@ -378,7 +382,7 @@ data = JSON.parse(data); typeItem = this.getType(node.attr('class')); - style = node.attr('data-mce-style') + style = node.attr('data-mce-style'); if (!style) { style = node.attr('style'); @@ -386,6 +390,10 @@ style = editor.dom.serializeStyle(editor.dom.parseStyle(style, 'img')); } + // Use node width/height to override the data width/height when the placeholder is resized + data.width = node.attr('width') || data.width; + data.height = node.attr('height') || data.height; + // Handle iframe if (typeItem.name === 'Iframe') { replacement = new Node('iframe', 1); @@ -434,8 +442,8 @@ // Create new object element video = new Node('video', 1).attr(tinymce.extend({ id : node.attr('id'), - width: node.attr('width'), - height: node.attr('height'), + width: normalizeSize(node.attr('width')), + height: normalizeSize(node.attr('height')), style : style }, data.video.attrs)); @@ -473,8 +481,8 @@ // Create new object element audio = new Node('audio', 1).attr(tinymce.extend({ id : node.attr('id'), - width: node.attr('width'), - height: node.attr('height'), + width: normalizeSize(node.attr('width')), + height: normalizeSize(node.attr('height')), style : style }, data.video.attrs)); @@ -502,8 +510,8 @@ embed.shortEnded = true; embed.attr({ id: node.attr('id'), - width: node.attr('width'), - height: node.attr('height'), + width: normalizeSize(node.attr('width')), + height: normalizeSize(node.attr('height')), style : style, type: node.attr('type') }); @@ -531,8 +539,8 @@ // Create new object element object = new Node('object', 1).attr({ id : node.attr('id'), - width: node.attr('width'), - height: node.attr('height'), + width: normalizeSize(node.attr('width')), + height: normalizeSize(node.attr('height')), style : style }); @@ -576,8 +584,8 @@ embed.shortEnded = true; embed.attr({ id: node.attr('id'), - width: node.attr('width'), - height: node.attr('height'), + width: normalizeSize(node.attr('width')), + height: normalizeSize(node.attr('height')), style : style, type: typeItem.mimes[0] }); @@ -793,8 +801,8 @@ if (iframe) { // Get width/height - width = iframe.attr('width'); - height = iframe.attr('height'); + width = normalizeSize(iframe.attr('width')); + height = normalizeSize(iframe.attr('height')); style = style || iframe.attr('style'); id = iframe.attr('id'); hspace = iframe.attr('hspace');