HEX
Server: Apache/2.4.65 (Unix) OpenSSL/1.1.1f
System: Linux dsserver6 5.4.0-131-generic #147-Ubuntu SMP Fri Oct 14 17:07:22 UTC 2022 x86_64
User: studiomoguls (1002)
PHP: 7.4.33
Disabled: NONE
Upload Files
File: /home/studiomoguls/webapps/Studio-mogulsc-clone/wp-content/plugins/imagify/assets/js/library.js
(function($, d, w, undefined) { // eslint-disable-line no-unused-vars, no-shadow, no-shadow-restricted-names

	var bulkOpt;
	/**
	 * Add a "Imagify'em all" in the select list.
	 */
	bulkOpt = '<option value="imagify-bulk|optimize">' + imagifyLibrary.labels.bulkActionsOptimize + '</option>';

	if ( $( '.button-imagify-optimize-missing-sizes' ).length ) {
		// If we have items that have missing sizes.
		bulkOpt += '<option value="imagify-bulk|optimize_missing_sizes">' + imagifyLibrary.labels.bulkActionsOptimizeMissingSizes + '</option>';
	}

	if ( imagifyLibrary.backupOption || $( '.attachment-has-backup' ).length ) {
		// If the backup option is enabled, or if we have items that can be restored.
		bulkOpt += '<option value="imagify-bulk|restore">' + imagifyLibrary.labels.bulkActionsRestore + '</option>';
	}

	$( '.bulkactions select[name="action"] option:last-child' ).before( bulkOpt );
	$( '.bulkactions select[name="action2"] option:last-child' ).before( bulkOpt );
	$( '#bulkaction option:last-child' ).after( bulkOpt );

	/**
	 * Process optimization for all selected images.
	 */
	$( '#doaction' )
		.add( '#doaction2' )
		.add( '#bulkaction + [name="showThickbox"]' )
		.on( 'click', function( e ) {
			var value = $( this ).prev( 'select' ).val().split( '|' ),
				action, ids;

			if ( 'imagify-bulk' !== value[0] ) {
				return;
			}

			e.preventDefault();

			action = value[1];
			ids    = $( 'input[name^="media"]:checked, input[name^="doaction"]:checked' ).map( function() {
				return this.value;
			} ).get();

			ids.forEach( function( id, index ) {
				setTimeout( function() {
					$( 'table .imagify-data-actions-container[data-id="' + id + '"] .button-imagify-' + action ).first().trigger( 'click' );
				}, index * 300 );
			} );
		} );

} )(jQuery, document, window);