Edit File by line

Deprecated: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in /home/sportsfever/public_html/filemanger/function.php on line 93
/home/sportsfe.../httpdocs/wp-conte.../plugins/wp-smush.../_src/js/modules
File: bulk-smush.js
/* global WP_Smush */
[0] Fix | Delete
/* global ajaxurl */
[1] Fix | Delete
[2] Fix | Delete
/**
[3] Fix | Delete
* Bulk Smush functionality.
[4] Fix | Delete
*
[5] Fix | Delete
* @since 2.9.0 Moved from admin.js
[6] Fix | Delete
*/
[7] Fix | Delete
[8] Fix | Delete
import Smush from '../smush/smush';
[9] Fix | Delete
import Fetcher from '../utils/fetcher';
[10] Fix | Delete
import SmushProcess from '../common/progressbar';
[11] Fix | Delete
[12] Fix | Delete
( function( $ ) {
[13] Fix | Delete
'use strict';
[14] Fix | Delete
[15] Fix | Delete
WP_Smush.bulk = {
[16] Fix | Delete
init() {
[17] Fix | Delete
this.onClickBulkSmushNow();
[18] Fix | Delete
this.onClickIgnoreImage();
[19] Fix | Delete
this.onClickIgnoreAllImages();
[20] Fix | Delete
this.onScanCompleted();
[21] Fix | Delete
},
[22] Fix | Delete
onClickBulkSmushNow() {
[23] Fix | Delete
/**
[24] Fix | Delete
* Handle the Bulk Smush/Bulk re-Smush button click.
[25] Fix | Delete
*/
[26] Fix | Delete
$( '.wp-smush-all' ).on( 'click', function( e ) {
[27] Fix | Delete
const bulkSmushButton = $(this);
[28] Fix | Delete
if ( bulkSmushButton.hasClass('wp-smush-scan-and-bulk-smush') ) {
[29] Fix | Delete
return;
[30] Fix | Delete
}
[31] Fix | Delete
e.preventDefault();
[32] Fix | Delete
[33] Fix | Delete
WP_Smush.bulk.ajaxBulkSmushStart( bulkSmushButton );
[34] Fix | Delete
} );
[35] Fix | Delete
},
[36] Fix | Delete
ajaxBulkSmushStart( bulkSmushButton ) {
[37] Fix | Delete
bulkSmushButton = bulkSmushButton || $( '#wp-smush-bulk-content .wp-smush-all' );
[38] Fix | Delete
// Check for IDs, if there is none (unsmushed or lossless), don't call Smush function.
[39] Fix | Delete
/** @param {Array} wp_smushit_data.unsmushed */
[40] Fix | Delete
if (
[41] Fix | Delete
'undefined' === typeof window.wp_smushit_data ||
[42] Fix | Delete
( 0 === window.wp_smushit_data.unsmushed.length &&
[43] Fix | Delete
0 === window.wp_smushit_data.resmush.length )
[44] Fix | Delete
) {
[45] Fix | Delete
return false;
[46] Fix | Delete
}
[47] Fix | Delete
// Disable re-Smush and scan button.
[48] Fix | Delete
// TODO: refine what is disabled.
[49] Fix | Delete
$(
[50] Fix | Delete
'.wp-resmush.wp-smush-action, .wp-smush-scan, .wp-smush-all:not(.sui-progress-close), a.wp-smush-lossy-enable, button.wp-smush-resize-enable, button#save-settings-button'
[51] Fix | Delete
).prop( 'disabled', true );
[52] Fix | Delete
[53] Fix | Delete
if ( bulkSmushButton.hasClass('wp-smush-resume-bulk-smush') && this.bulkSmush ) {
[54] Fix | Delete
this.resumeBulkSmush();
[55] Fix | Delete
return;
[56] Fix | Delete
}
[57] Fix | Delete
[58] Fix | Delete
this.bulkSmush = new Smush( bulkSmushButton, true );
[59] Fix | Delete
SmushProcess.setOnCancelCallback( () => {
[60] Fix | Delete
this.bulkSmush.cancelAjax()
[61] Fix | Delete
}).update( 0, this.bulkSmush.ids.length ).show();
[62] Fix | Delete
[63] Fix | Delete
// Show upsell cdn.
[64] Fix | Delete
this.maybeShowCDNUpsellForPreSiteOnStart();
[65] Fix | Delete
[66] Fix | Delete
// Run bulk Smush.
[67] Fix | Delete
this.bulkSmush.run();
[68] Fix | Delete
},
[69] Fix | Delete
resumeBulkSmush() {
[70] Fix | Delete
SmushProcess.disableExceedLimitMode();
[71] Fix | Delete
SmushProcess.hideBulkSmushDescription();
[72] Fix | Delete
this.bulkSmush.onStart();
[73] Fix | Delete
this.bulkSmush.callAjax();
[74] Fix | Delete
},
[75] Fix | Delete
onClickIgnoreImage() {
[76] Fix | Delete
/**
[77] Fix | Delete
* Ignore file from bulk Smush.
[78] Fix | Delete
*
[79] Fix | Delete
* @since 2.9.0
[80] Fix | Delete
*/
[81] Fix | Delete
$( 'body' ).on( 'click', '.smush-ignore-image', function( e ) {
[82] Fix | Delete
e.preventDefault();
[83] Fix | Delete
[84] Fix | Delete
const self = $( this );
[85] Fix | Delete
[86] Fix | Delete
self.prop( 'disabled', true );
[87] Fix | Delete
self.attr( 'data-tooltip' );
[88] Fix | Delete
self.removeClass( 'sui-tooltip' );
[89] Fix | Delete
$.post( ajaxurl, {
[90] Fix | Delete
action: 'ignore_bulk_image',
[91] Fix | Delete
id: self.attr( 'data-id' ),
[92] Fix | Delete
_ajax_nonce: wp_smush_msgs.nonce,
[93] Fix | Delete
} ).done( ( response ) => {
[94] Fix | Delete
if ( self.is( 'a' ) && response.success && 'undefined' !== typeof response.data.html ) {
[95] Fix | Delete
if( self.closest('.smush-status-links') ) {
[96] Fix | Delete
self.closest('.smush-status-links').parent().html( response.data.html );
[97] Fix | Delete
} else if (e.target.closest( '.smush-bulk-error-row' ) ){
[98] Fix | Delete
self.addClass('disabled');
[99] Fix | Delete
e.target.closest( '.smush-bulk-error-row' ).style.opacity = 0.5;
[100] Fix | Delete
}
[101] Fix | Delete
}
[102] Fix | Delete
} );
[103] Fix | Delete
} );
[104] Fix | Delete
},
[105] Fix | Delete
onClickIgnoreAllImages() {
[106] Fix | Delete
/**
[107] Fix | Delete
* Ignore file from bulk Smush.
[108] Fix | Delete
*
[109] Fix | Delete
* @since 3.12.0
[110] Fix | Delete
*/
[111] Fix | Delete
const ignoreAll = document.querySelector('.wp_smush_ignore_all_failed_items');
[112] Fix | Delete
if ( ignoreAll ) {
[113] Fix | Delete
ignoreAll.onclick = (e) => {
[114] Fix | Delete
e.preventDefault();
[115] Fix | Delete
e.target.setAttribute('disabled','');
[116] Fix | Delete
e.target.style.cursor = 'progress';
[117] Fix | Delete
const type = e.target.dataset.type || null;
[118] Fix | Delete
e.target.classList.remove('sui-tooltip');
[119] Fix | Delete
Fetcher.smush.ignoreAll(type).then((res) => {
[120] Fix | Delete
if ( res.success ) {
[121] Fix | Delete
window.location.reload();
[122] Fix | Delete
} else {
[123] Fix | Delete
e.target.style.cursor = 'pointer';
[124] Fix | Delete
e.target.removeAttribute('disabled');
[125] Fix | Delete
WP_Smush.helpers.showNotice( res );
[126] Fix | Delete
}
[127] Fix | Delete
});
[128] Fix | Delete
}
[129] Fix | Delete
}
[130] Fix | Delete
},
[131] Fix | Delete
onScanCompleted() {
[132] Fix | Delete
document.addEventListener('ajaxBulkSmushOnScanCompleted', (e) => {
[133] Fix | Delete
this.ajaxBulkSmushStart();
[134] Fix | Delete
});
[135] Fix | Delete
},
[136] Fix | Delete
maybeShowCDNUpsellForPreSiteOnStart: () => {
[137] Fix | Delete
// Show upsell cdn.
[138] Fix | Delete
const upsell_cdn = document.querySelector('.wp-smush-upsell-cdn');
[139] Fix | Delete
if ( upsell_cdn ) {
[140] Fix | Delete
upsell_cdn.classList.remove('sui-hidden');
[141] Fix | Delete
}
[142] Fix | Delete
}
[143] Fix | Delete
[144] Fix | Delete
};
[145] Fix | Delete
[146] Fix | Delete
WP_Smush.bulk.init();
[147] Fix | Delete
} )( jQuery );
[148] Fix | Delete
[149] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function