| Server IP : 213.186.33.4 / Your IP : 216.73.216.146 Web Server : Apache System : Linux webm005.cluster103.gra.hosting.ovh.net 6.18.39-ovh-vps-grsec-zfs+ #1 SMP PREEMPT_DYNAMIC Tue Jul 21 12:03:15 CEST 2026 x86_64 User : karinebmkh ( 644538) PHP Version : 8.4.22 Disable Function : _dyuweyrj4,_dyuweyrj4r,dl MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/karinebmkh/www2/wp-content/plugins/jetpack/modules/widgets/ |
Upload File : |
/* global wp, gapi, FB, twttr, PaypalExpressCheckout */
/**
* Utilities to work with widgets in Customizer.
*/
/**
* Checks whether this Customizer supports partial widget refresh.
* @returns {boolean}
*/
wp.customizerHasPartialWidgetRefresh = function() {
return 'object' === typeof wp && 'function' === typeof wp.customize && 'object' === typeof wp.customize.selectiveRefresh && 'object' === typeof wp.customize.widgetsPreview && 'function' === typeof wp.customize.widgetsPreview.WidgetPartial;
};
/**
* Verifies that the placed widget ID contains the widget name.
* @param {object} placement
* @param {string} widgetName
* @returns {*|boolean}
*/
wp.isJetpackWidgetPlaced = function( placement, widgetName ) {
return placement.partial.widgetId && 0 === placement.partial.widgetId.indexOf( widgetName );
};
/**
* Bind events for selective refresh in Customizer.
*/
(function($){
$( document ).ready( function() {
if ( wp && wp.customize && wp.customizerHasPartialWidgetRefresh() ) {
// Refresh widget contents when a partial is rendered.
wp.customize.selectiveRefresh.bind( 'partial-content-rendered', function ( placement ) {
if ( placement.container ) {
// Refresh Google+
if ( wp.isJetpackWidgetPlaced( placement, 'googleplus-badge' ) && 'object' === typeof gapi && gapi.person && 'function' === typeof gapi.person.go ) {
gapi.person.go( placement.container[0] );
}
// Refresh Facebook XFBML
else if ( wp.isJetpackWidgetPlaced( placement, 'facebook-likebox' ) && 'object' === typeof FB && 'object' === typeof FB.XFBML && 'function' === typeof FB.XFBML.parse ) {
FB.XFBML.parse( placement.container[0], function() {
var $fbContainer = $( placement.container[0] ).find( '.fb_iframe_widget' ),
fbWidth = $fbContainer.data( 'width' ),
fbHeight = $fbContainer.data( 'height' );
$fbContainer.find( 'span' ).css( { 'width': fbWidth, 'height': fbHeight } );
setTimeout( function() {
$fbContainer.find( 'iframe' ).css( { 'width': fbWidth, 'height': fbHeight, 'position': 'relative' } );
}, 1 );
} );
}
// Refresh Twitter
else if ( wp.isJetpackWidgetPlaced( placement, 'twitter_timeline' ) && 'object' === typeof twttr && 'object' === typeof twttr.widgets && 'function' === typeof twttr.widgets.load ) {
twttr.widgets.load( placement.container[0] );
} else if ( wp.isJetpackWidgetPlaced( placement, 'eu_cookie_law_widget' ) ) {
// Refresh EU Cookie Law
if ( $( '#eu-cookie-law' ).hasClass( 'top' ) ) {
$( '.widget_eu_cookie_law_widget' ).addClass( 'top' );
} else {
$( '.widget_eu_cookie_law_widget' ).removeClass( 'top' );
}
placement.container.fadeIn();
} else if ( wp.isJetpackWidgetPlaced( placement, 'jetpack_simple_payments_widget' ) ) {
// Refresh Simple Payments Widget
try {
var buttonId = $( '.jetpack-simple-payments-button', placement.container ).attr( 'id' ).replace( '_button', '' );
PaypalExpressCheckout.renderButton( null, null, buttonId, null );
} catch ( e ) {
// PaypalExpressCheckout may fail.
// For the same usage, see also:
// https://github.com/Automattic/jetpack/blob/6c1971e6bed7d3df793392a7a58ffe0afaeeb5fe/modules/simple-payments/simple-payments.php#L111
}
}
}
} );
// Refresh widgets when they're moved.
wp.customize.selectiveRefresh.bind( 'partial-content-moved', function( placement ) {
if ( placement.container ) {
// Refresh Twitter timeline iframe, since it has to be re-built.
if ( wp.isJetpackWidgetPlaced( placement, 'twitter_timeline' ) && placement.container.find( 'iframe.twitter-timeline:not([src]):first' ).length ) {
placement.partial.refresh();
} else if ( wp.isJetpackWidgetPlaced( placement, 'jetpack_simple_payments_widget' ) ) {
// Refresh Simple Payments Widget
placement.partial.refresh();
}
}
} );
}
} );
} )( jQuery );