Embeds: Remove `&` characters from the inline embed JS.
Older versions of WordPress will convert those `&` characters to `&`, which makes for some non-functional JS. If folks are running an older release, let's not make their lives more difficult than it already is. Props pento, peterwilsoncc. See #34698. Built from https://develop.svn.wordpress.org/trunk@35708 git-svn-id: http://core.svn.wordpress.org/trunk@35672 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
parent
8951e37f8f
commit
603d3c0013
|
@ -478,7 +478,7 @@ function get_post_embed_html( $width, $height, $post = null ) {
|
||||||
* and edit wp-embed.js directly.
|
* and edit wp-embed.js directly.
|
||||||
*/
|
*/
|
||||||
$output .=<<<JS
|
$output .=<<<JS
|
||||||
!function(a,b){"use strict";function c(){if(!e){e=!0;var a,c,d,f,g=-1!==navigator.appVersion.indexOf("MSIE 10"),h=!!navigator.userAgent.match(/Trident.*rv:11\./),i=b.querySelectorAll("iframe.wp-embedded-content"),j=b.querySelectorAll("blockquote.wp-embedded-content");for(c=0;c<j.length;c++)j[c].style.display="none";for(c=0;c<i.length;c++)d=i[c],d.style.display="",d.getAttribute("data-secret")||(f=Math.random().toString(36).substr(2,10),d.src+="#?secret="+f,d.setAttribute("data-secret",f)),(g||h)&&d.getAttribute("security")&&(a=d.cloneNode(!0),a.removeAttribute("security"),d.parentNode.replaceChild(a,d))}}var d=b.querySelector&&a.addEventListener,e=!1;a.wp=a.wp||{},a.wp.receiveEmbedMessage||(a.wp.receiveEmbedMessage=function(c){var d=c.data;if(d.secret||d.message||d.value){var e,f,g,h,i,j=b.querySelectorAll('iframe[data-secret="'+d.secret+'"]'),k=b.querySelectorAll('blockquote[data-secret="'+d.secret+'"]');for(e=0;e<k.length;e++)k[e].style.display="none";for(e=0;e<j.length;e++)f=j[e],f.style.display="","height"===d.message&&(g=parseInt(d.value,10),g>1e3?g=1e3:200>~~g&&(g=200),f.height=g),"link"===d.message&&(h=b.createElement("a"),i=b.createElement("a"),h.href=f.getAttribute("src"),i.href=d.value,i.host===h.host&&b.activeElement===f&&(a.top.location.href=d.value))}},d&&(a.addEventListener("message",a.wp.receiveEmbedMessage,!1),b.addEventListener("DOMContentLoaded",c,!1),a.addEventListener("load",c,!1)))}(window,document);
|
!function(a,b){"use strict";function c(){if(!e){e=!0;var a,c,d,f,g=-1!==navigator.appVersion.indexOf("MSIE 10"),h=!!navigator.userAgent.match(/Trident.*rv:11\./),i=b.querySelectorAll("iframe.wp-embedded-content"),j=b.querySelectorAll("blockquote.wp-embedded-content");for(c=0;c<j.length;c++)j[c].style.display="none";for(c=0;c<i.length;c++)if(d=i[c],d.style.display="",!d.getAttribute("data-secret")){if(f=Math.random().toString(36).substr(2,10),d.src+="#?secret="+f,d.setAttribute("data-secret",f),g||h)a=d.cloneNode(!0),a.removeAttribute("security"),d.parentNode.replaceChild(a,d)}else;}}var d=!1,e=!1;if(b.querySelector)if(a.addEventListener)d=!0;if(a.wp=a.wp||{},!a.wp.receiveEmbedMessage)if(a.wp.receiveEmbedMessage=function(c){var d=c.data;if(d.secret||d.message||d.value){var e,f,g,h,i,j=b.querySelectorAll('iframe[data-secret="'+d.secret+'"]'),k=b.querySelectorAll('blockquote[data-secret="'+d.secret+'"]');for(e=0;e<k.length;e++)k[e].style.display="none";for(e=0;e<j.length;e++){if(f=j[e],f.style.display="","height"===d.message){if(g=parseInt(d.value,10),g>1e3)g=1e3;else if(200>~~g)g=200;f.height=g}if("link"===d.message)if(h=b.createElement("a"),i=b.createElement("a"),h.href=f.getAttribute("src"),i.href=d.value,i.host===h.host)if(b.activeElement===f)a.top.location.href=d.value}}},d)a.addEventListener("message",a.wp.receiveEmbedMessage,!1),b.addEventListener("DOMContentLoaded",c,!1),a.addEventListener("load",c,!1)}(window,document);
|
||||||
JS;
|
JS;
|
||||||
}
|
}
|
||||||
$output .= "\n//--><!]]>";
|
$output .= "\n//--><!]]>";
|
||||||
|
|
|
@ -1,9 +1,15 @@
|
||||||
(function ( window, document ) {
|
(function ( window, document ) {
|
||||||
'use strict';
|
'use strict';
|
||||||
|
|
||||||
var supportedBrowser = ( document.querySelector && window.addEventListener ),
|
var supportedBrowser = false,
|
||||||
loaded = false;
|
loaded = false;
|
||||||
|
|
||||||
|
if ( document.querySelector ) {
|
||||||
|
if ( window.addEventListener ) {
|
||||||
|
supportedBrowser = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
window.wp = window.wp || {};
|
window.wp = window.wp || {};
|
||||||
|
|
||||||
if ( !! window.wp.receiveEmbedMessage ) {
|
if ( !! window.wp.receiveEmbedMessage ) {
|
||||||
|
@ -50,11 +56,13 @@
|
||||||
targetURL.href = data.value;
|
targetURL.href = data.value;
|
||||||
|
|
||||||
/* Only continue if link hostname matches iframe's hostname. */
|
/* Only continue if link hostname matches iframe's hostname. */
|
||||||
if ( targetURL.host === sourceURL.host && document.activeElement === source ) {
|
if ( targetURL.host === sourceURL.host ) {
|
||||||
|
if ( document.activeElement === source ) {
|
||||||
window.top.location.href = data.value;
|
window.top.location.href = data.value;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
function onLoad() {
|
function onLoad() {
|
||||||
|
@ -77,15 +85,17 @@
|
||||||
source = iframes[ i ];
|
source = iframes[ i ];
|
||||||
source.style.display = '';
|
source.style.display = '';
|
||||||
|
|
||||||
if ( !source.getAttribute( 'data-secret' ) ) {
|
if ( source.getAttribute( 'data-secret' ) ) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
/* Add secret to iframe */
|
/* Add secret to iframe */
|
||||||
secret = Math.random().toString( 36 ).substr( 2, 10 );
|
secret = Math.random().toString( 36 ).substr( 2, 10 );
|
||||||
source.src += '#?secret=' + secret;
|
source.src += '#?secret=' + secret;
|
||||||
source.setAttribute( 'data-secret', secret );
|
source.setAttribute( 'data-secret', secret );
|
||||||
}
|
|
||||||
|
|
||||||
/* Remove security attribute from iframes in IE10 and IE11. */
|
/* Remove security attribute from iframes in IE10 and IE11. */
|
||||||
if ( ( isIE10 || isIE11 ) && !!source.getAttribute( 'security' ) ) {
|
if ( ( isIE10 || isIE11 ) ) {
|
||||||
iframeClone = source.cloneNode( true );
|
iframeClone = source.cloneNode( true );
|
||||||
iframeClone.removeAttribute( 'security' );
|
iframeClone.removeAttribute( 'security' );
|
||||||
source.parentNode.replaceChild( iframeClone, source );
|
source.parentNode.replaceChild( iframeClone, source );
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
!function(a,b){"use strict";function c(){if(!e){e=!0;var a,c,d,f,g=-1!==navigator.appVersion.indexOf("MSIE 10"),h=!!navigator.userAgent.match(/Trident.*rv:11\./),i=b.querySelectorAll("iframe.wp-embedded-content"),j=b.querySelectorAll("blockquote.wp-embedded-content");for(c=0;c<j.length;c++)j[c].style.display="none";for(c=0;c<i.length;c++)d=i[c],d.style.display="",d.getAttribute("data-secret")||(f=Math.random().toString(36).substr(2,10),d.src+="#?secret="+f,d.setAttribute("data-secret",f)),(g||h)&&d.getAttribute("security")&&(a=d.cloneNode(!0),a.removeAttribute("security"),d.parentNode.replaceChild(a,d))}}var d=b.querySelector&&a.addEventListener,e=!1;a.wp=a.wp||{},a.wp.receiveEmbedMessage||(a.wp.receiveEmbedMessage=function(c){var d=c.data;if(d.secret||d.message||d.value){var e,f,g,h,i,j=b.querySelectorAll('iframe[data-secret="'+d.secret+'"]'),k=b.querySelectorAll('blockquote[data-secret="'+d.secret+'"]');for(e=0;e<k.length;e++)k[e].style.display="none";for(e=0;e<j.length;e++)f=j[e],f.style.display="","height"===d.message&&(g=parseInt(d.value,10),g>1e3?g=1e3:200>~~g&&(g=200),f.height=g),"link"===d.message&&(h=b.createElement("a"),i=b.createElement("a"),h.href=f.getAttribute("src"),i.href=d.value,i.host===h.host&&b.activeElement===f&&(a.top.location.href=d.value))}},d&&(a.addEventListener("message",a.wp.receiveEmbedMessage,!1),b.addEventListener("DOMContentLoaded",c,!1),a.addEventListener("load",c,!1)))}(window,document);
|
!function(a,b){"use strict";function c(){if(!e){e=!0;var a,c,d,f,g=-1!==navigator.appVersion.indexOf("MSIE 10"),h=!!navigator.userAgent.match(/Trident.*rv:11\./),i=b.querySelectorAll("iframe.wp-embedded-content"),j=b.querySelectorAll("blockquote.wp-embedded-content");for(c=0;c<j.length;c++)j[c].style.display="none";for(c=0;c<i.length;c++)if(d=i[c],d.style.display="",!d.getAttribute("data-secret")){if(f=Math.random().toString(36).substr(2,10),d.src+="#?secret="+f,d.setAttribute("data-secret",f),g||h)a=d.cloneNode(!0),a.removeAttribute("security"),d.parentNode.replaceChild(a,d)}else;}}var d=!1,e=!1;if(b.querySelector)if(a.addEventListener)d=!0;if(a.wp=a.wp||{},!a.wp.receiveEmbedMessage)if(a.wp.receiveEmbedMessage=function(c){var d=c.data;if(d.secret||d.message||d.value){var e,f,g,h,i,j=b.querySelectorAll('iframe[data-secret="'+d.secret+'"]'),k=b.querySelectorAll('blockquote[data-secret="'+d.secret+'"]');for(e=0;e<k.length;e++)k[e].style.display="none";for(e=0;e<j.length;e++){if(f=j[e],f.style.display="","height"===d.message){if(g=parseInt(d.value,10),g>1e3)g=1e3;else if(200>~~g)g=200;f.height=g}if("link"===d.message)if(h=b.createElement("a"),i=b.createElement("a"),h.href=f.getAttribute("src"),i.href=d.value,i.host===h.host)if(b.activeElement===f)a.top.location.href=d.value}}},d)a.addEventListener("message",a.wp.receiveEmbedMessage,!1),b.addEventListener("DOMContentLoaded",c,!1),a.addEventListener("load",c,!1)}(window,document);
|
|
@ -4,7 +4,7 @@
|
||||||
*
|
*
|
||||||
* @global string $wp_version
|
* @global string $wp_version
|
||||||
*/
|
*/
|
||||||
$wp_version = '4.4-beta4-35707';
|
$wp_version = '4.4-beta4-35708';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.
|
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.
|
||||||
|
|
Loading…
Reference in New Issue