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

Warning: Undefined array key "page_file_edit_line" in /home/sportsfever/public_html/filemanger/edit_text_line.php on line 32
/home/sportsfe.../httpdocs/clone/wp-conte.../plugins/wp-smush.../app
File: class-ajax.php
[500] Fix | Delete
$smush = WP_Smush::get_instance()->core()->mod->smush;
[501] Fix | Delete
[502] Fix | Delete
/**
[503] Fix | Delete
* Smush image.
[504] Fix | Delete
*
[505] Fix | Delete
* @since 3.9.6
[506] Fix | Delete
*
[507] Fix | Delete
* @param int $attachment_id Attachment ID.
[508] Fix | Delete
* @param array $meta Image metadata (passed by reference).
[509] Fix | Delete
* @param WP_Error $errors WP_Error (passed by reference).
[510] Fix | Delete
*/
[511] Fix | Delete
$smush->smushit( $attachment_id, $meta, $errors );
[512] Fix | Delete
[513] Fix | Delete
$smush_data = get_post_meta( $attachment_id, Smush::$smushed_meta_key, true );
[514] Fix | Delete
$resize_savings = get_post_meta( $attachment_id, 'wp-smush-resize_savings', true );
[515] Fix | Delete
$conversion_savings = Helper::get_pngjpg_savings( $attachment_id );
[516] Fix | Delete
[517] Fix | Delete
$stats = array(
[518] Fix | Delete
'count' => ! empty( $smush_data['sizes'] ) ? count( $smush_data['sizes'] ) : 0,
[519] Fix | Delete
'size_before' => ! empty( $smush_data['stats'] ) ? $smush_data['stats']['size_before'] : 0,
[520] Fix | Delete
'size_after' => ! empty( $smush_data['stats'] ) ? $smush_data['stats']['size_after'] : 0,
[521] Fix | Delete
'savings_resize' => max( $resize_savings, 0 ),
[522] Fix | Delete
'savings_conversion' => $conversion_savings['bytes'] > 0 ? $conversion_savings : 0,
[523] Fix | Delete
'is_lossy' => ! empty( $smush_data ['stats'] ) ? $smush_data['stats']['lossy'] : false,
[524] Fix | Delete
);
[525] Fix | Delete
[526] Fix | Delete
if ( $errors && is_wp_error( $errors ) && $errors->has_errors() ) {
[527] Fix | Delete
$error = Error_Handler::get_error( $errors, Media_Item_Cache::get_instance()->get( $attachment_id ) );
[528] Fix | Delete
$response = array(
[529] Fix | Delete
'stats' => $stats,
[530] Fix | Delete
'error' => $error,
[531] Fix | Delete
'show_warning' => (int) $smush->show_warning(),
[532] Fix | Delete
);
[533] Fix | Delete
[534] Fix | Delete
// Send data.
[535] Fix | Delete
wp_send_json_error( $response );
[536] Fix | Delete
}
[537] Fix | Delete
[538] Fix | Delete
// Runs after a image is successfully smushed.
[539] Fix | Delete
do_action( 'image_smushed', $attachment_id, $stats );
[540] Fix | Delete
[541] Fix | Delete
// Update the bulk Limit count.
[542] Fix | Delete
Core::update_smush_count();
[543] Fix | Delete
[544] Fix | Delete
// Send ajax response.
[545] Fix | Delete
wp_send_json_success(
[546] Fix | Delete
array(
[547] Fix | Delete
'stats' => $stats,
[548] Fix | Delete
'show_warning' => (int) $smush->show_warning(),
[549] Fix | Delete
)
[550] Fix | Delete
);
[551] Fix | Delete
}
[552] Fix | Delete
[553] Fix | Delete
/***************************************
[554] Fix | Delete
*
[555] Fix | Delete
* DIRECTORY SMUSH
[556] Fix | Delete
*/
[557] Fix | Delete
[558] Fix | Delete
/**
[559] Fix | Delete
* Returns Directory Smush stats and Cumulative stats
[560] Fix | Delete
*/
[561] Fix | Delete
public function get_dir_smush_stats() {
[562] Fix | Delete
check_ajax_referer( 'wp-smush-ajax' );
[563] Fix | Delete
[564] Fix | Delete
// Check capability.
[565] Fix | Delete
$capability = is_multisite() ? 'manage_network' : 'manage_options';
[566] Fix | Delete
if ( ! Helper::is_user_allowed( $capability ) ) {
[567] Fix | Delete
wp_die( esc_html__( 'Unauthorized', 'wp-smushit' ), 403 );
[568] Fix | Delete
}
[569] Fix | Delete
[570] Fix | Delete
$result = array();
[571] Fix | Delete
[572] Fix | Delete
// Store the Total/Smushed count.
[573] Fix | Delete
$stats = WP_Smush::get_instance()->core()->mod->dir->total_stats();
[574] Fix | Delete
[575] Fix | Delete
$result['dir_smush'] = $stats;
[576] Fix | Delete
[577] Fix | Delete
// Cumulative Stats.
[578] Fix | Delete
//$result['combined_stats'] = WP_Smush::get_instance()->core()->mod->dir->combine_stats( $stats );
[579] Fix | Delete
[580] Fix | Delete
// Store the stats in options table.
[581] Fix | Delete
update_option( 'dir_smush_stats', $result, false );
[582] Fix | Delete
[583] Fix | Delete
// Send ajax response.
[584] Fix | Delete
wp_send_json_success( $result );
[585] Fix | Delete
}
[586] Fix | Delete
[587] Fix | Delete
/***************************************
[588] Fix | Delete
*
[589] Fix | Delete
* CDN
[590] Fix | Delete
*
[591] Fix | Delete
* @since 3.0
[592] Fix | Delete
*/
[593] Fix | Delete
[594] Fix | Delete
/***************************************
[595] Fix | Delete
*
[596] Fix | Delete
* LAZY LOADING
[597] Fix | Delete
*
[598] Fix | Delete
* @since 3.2.0
[599] Fix | Delete
*/
[600] Fix | Delete
[601] Fix | Delete
/**
[602] Fix | Delete
* Toggle lazy loading module.
[603] Fix | Delete
*
[604] Fix | Delete
* Handles "Activate" button press on the disabled lazy loading meta box.
[605] Fix | Delete
* Handles "Deactivate" button press on the lazy loading meta box.
[606] Fix | Delete
* Refreshes page on success.
[607] Fix | Delete
*
[608] Fix | Delete
* @since 3.2.0
[609] Fix | Delete
*/
[610] Fix | Delete
public function smush_toggle_lazy_load() {
[611] Fix | Delete
check_ajax_referer( 'save_wp_smush_options' );
[612] Fix | Delete
[613] Fix | Delete
if ( ! Helper::is_user_allowed( 'manage_options' ) ) {
[614] Fix | Delete
wp_send_json_error(
[615] Fix | Delete
array(
[616] Fix | Delete
'message' => __( 'User can not modify options', 'wp-smushit' ),
[617] Fix | Delete
),
[618] Fix | Delete
403
[619] Fix | Delete
);
[620] Fix | Delete
}
[621] Fix | Delete
[622] Fix | Delete
$param = isset( $_POST['param'] ) ? sanitize_text_field( wp_unslash( $_POST['param'] ) ) : false;
[623] Fix | Delete
[624] Fix | Delete
if ( 'true' === $param ) {
[625] Fix | Delete
$settings = $this->settings->get_setting( 'wp-smush-lazy_load' );
[626] Fix | Delete
[627] Fix | Delete
// No settings, during init - set defaults.
[628] Fix | Delete
if ( ! $settings ) {
[629] Fix | Delete
$this->settings->init_lazy_load_defaults();
[630] Fix | Delete
}
[631] Fix | Delete
}
[632] Fix | Delete
[633] Fix | Delete
$this->settings->set( 'lazy_load', 'true' === $param );
[634] Fix | Delete
[635] Fix | Delete
wp_send_json_success();
[636] Fix | Delete
}
[637] Fix | Delete
[638] Fix | Delete
/**
[639] Fix | Delete
* Remove spinner/placeholder icon from lazy-loading.
[640] Fix | Delete
*
[641] Fix | Delete
* @since 3.2.2
[642] Fix | Delete
*/
[643] Fix | Delete
public function remove_icon() {
[644] Fix | Delete
check_ajax_referer( 'save_wp_smush_options' );
[645] Fix | Delete
[646] Fix | Delete
// Check for permission.
[647] Fix | Delete
if ( ! Helper::is_user_allowed( 'manage_options' ) ) {
[648] Fix | Delete
wp_die( esc_html__( 'Unauthorized', 'wp-smushit' ), 403 );
[649] Fix | Delete
}
[650] Fix | Delete
[651] Fix | Delete
$id = filter_input( INPUT_POST, 'id', FILTER_SANITIZE_NUMBER_INT );
[652] Fix | Delete
$type = filter_input( INPUT_POST, 'type', FILTER_SANITIZE_SPECIAL_CHARS );
[653] Fix | Delete
if ( $id && $type ) {
[654] Fix | Delete
$settings = $this->settings->get_setting( 'wp-smush-lazy_load' );
[655] Fix | Delete
if ( false !== ( $key = array_search( $id, $settings['animation'][ $type ]['custom'] ) ) ) {
[656] Fix | Delete
unset( $settings['animation'][ $type ]['custom'][ $key ] );
[657] Fix | Delete
$this->settings->set_setting( 'wp-smush-lazy_load', $settings );
[658] Fix | Delete
}
[659] Fix | Delete
}
[660] Fix | Delete
[661] Fix | Delete
wp_send_json_success();
[662] Fix | Delete
}
[663] Fix | Delete
[664] Fix | Delete
/***************************************
[665] Fix | Delete
*
[666] Fix | Delete
* CONFIGS
[667] Fix | Delete
*
[668] Fix | Delete
* @since 3.8.5
[669] Fix | Delete
*/
[670] Fix | Delete
[671] Fix | Delete
/**
[672] Fix | Delete
* Handles the upload of a config file.
[673] Fix | Delete
*
[674] Fix | Delete
* @since 3.8.5
[675] Fix | Delete
*/
[676] Fix | Delete
public function upload_config() {
[677] Fix | Delete
check_ajax_referer( 'smush_handle_config' );
[678] Fix | Delete
[679] Fix | Delete
$capability = is_multisite() ? 'manage_network' : 'manage_options';
[680] Fix | Delete
if ( ! Helper::is_user_allowed( $capability ) ) {
[681] Fix | Delete
wp_send_json_error( null, 403 );
[682] Fix | Delete
}
[683] Fix | Delete
[684] Fix | Delete
/**
[685] Fix | Delete
* Data escaped and sanitized via \Smush\Core\Configs::save_uploaded_config()
[686] Fix | Delete
*
[687] Fix | Delete
* @see \Smush\Core\Configs::decode_and_validate_config_file()
[688] Fix | Delete
*/
[689] Fix | Delete
$file = isset( $_FILES['file'] ) ? wp_unslash( $_FILES['file'] ) : false; // phpcs:ignore WordPress.Security.ValidatedSanitizedInput.InputNotSanitized
[690] Fix | Delete
[691] Fix | Delete
$configs_handler = new Configs();
[692] Fix | Delete
$new_config = $configs_handler->save_uploaded_config( $file );
[693] Fix | Delete
[694] Fix | Delete
if ( ! is_wp_error( $new_config ) ) {
[695] Fix | Delete
wp_send_json_success( $new_config );
[696] Fix | Delete
}
[697] Fix | Delete
[698] Fix | Delete
wp_send_json_error(
[699] Fix | Delete
array( 'error_msg' => $new_config->get_error_message() )
[700] Fix | Delete
);
[701] Fix | Delete
}
[702] Fix | Delete
/**
[703] Fix | Delete
* Handles the upload of a config file.
[704] Fix | Delete
*
[705] Fix | Delete
* @since 3.8.5
[706] Fix | Delete
*/
[707] Fix | Delete
public function save_config() {
[708] Fix | Delete
check_ajax_referer( 'smush_handle_config' );
[709] Fix | Delete
[710] Fix | Delete
$capability = is_multisite() ? 'manage_network' : 'manage_options';
[711] Fix | Delete
if ( ! Helper::is_user_allowed( $capability ) ) {
[712] Fix | Delete
wp_send_json_error( null, 403 );
[713] Fix | Delete
}
[714] Fix | Delete
[715] Fix | Delete
$configs_handler = new Configs();
[716] Fix | Delete
wp_send_json_success( $configs_handler->get_config_from_current() );
[717] Fix | Delete
}
[718] Fix | Delete
[719] Fix | Delete
/**
[720] Fix | Delete
* Applies the given config.
[721] Fix | Delete
*
[722] Fix | Delete
* @since 3.8.5
[723] Fix | Delete
*/
[724] Fix | Delete
public function apply_config() {
[725] Fix | Delete
check_ajax_referer( 'smush_handle_config' );
[726] Fix | Delete
[727] Fix | Delete
$capability = is_multisite() ? 'manage_network' : 'manage_options';
[728] Fix | Delete
if ( ! Helper::is_user_allowed( $capability ) ) {
[729] Fix | Delete
wp_send_json_error( null, 403 );
[730] Fix | Delete
}
[731] Fix | Delete
[732] Fix | Delete
$id = filter_input( INPUT_POST, 'id', FILTER_SANITIZE_NUMBER_INT );
[733] Fix | Delete
if ( ! $id ) {
[734] Fix | Delete
// Abort if no config ID was given.
[735] Fix | Delete
wp_send_json_error(
[736] Fix | Delete
array( 'error_msg' => esc_html__( 'Missing config ID', 'wp-smushit' ) )
[737] Fix | Delete
);
[738] Fix | Delete
}
[739] Fix | Delete
[740] Fix | Delete
$configs_handler = new Configs();
[741] Fix | Delete
$response = $configs_handler->apply_config_by_id( $id );
[742] Fix | Delete
[743] Fix | Delete
if ( ! is_wp_error( $response ) ) {
[744] Fix | Delete
wp_send_json_success();
[745] Fix | Delete
}
[746] Fix | Delete
[747] Fix | Delete
wp_send_json_error(
[748] Fix | Delete
array( 'error_msg' => esc_html( $response->get_error_message() ) )
[749] Fix | Delete
);
[750] Fix | Delete
}
[751] Fix | Delete
[752] Fix | Delete
/***************************************
[753] Fix | Delete
*
[754] Fix | Delete
* SETTINGS
[755] Fix | Delete
*
[756] Fix | Delete
* @since 3.2.0.2
[757] Fix | Delete
*/
[758] Fix | Delete
[759] Fix | Delete
/**
[760] Fix | Delete
* Re-check API status.
[761] Fix | Delete
*
[762] Fix | Delete
* @since 3.2.0.2
[763] Fix | Delete
*/
[764] Fix | Delete
public function recheck_api_status() {
[765] Fix | Delete
// Check for permission.
[766] Fix | Delete
if ( ! Helper::is_user_allowed( 'manage_options' ) ) {
[767] Fix | Delete
wp_die( esc_html__( 'Unauthorized', 'wp-smushit' ), 403 );
[768] Fix | Delete
}
[769] Fix | Delete
WP_Smush::get_instance()->validate_install( true );
[770] Fix | Delete
wp_send_json_success();
[771] Fix | Delete
}
[772] Fix | Delete
[773] Fix | Delete
/***************************************
[774] Fix | Delete
*
[775] Fix | Delete
* MODALS
[776] Fix | Delete
*
[777] Fix | Delete
* @since 3.7.0
[778] Fix | Delete
*/
[779] Fix | Delete
[780] Fix | Delete
/**
[781] Fix | Delete
* Hide the new features modal
[782] Fix | Delete
*
[783] Fix | Delete
* @since 3.7.0
[784] Fix | Delete
*/
[785] Fix | Delete
public function hide_new_features_modal() {
[786] Fix | Delete
check_ajax_referer( 'wp-smush-ajax' );
[787] Fix | Delete
[788] Fix | Delete
// Check for permission.
[789] Fix | Delete
if ( ! Helper::is_user_allowed( 'manage_options' ) ) {
[790] Fix | Delete
wp_die( esc_html__( 'Unauthorized', 'wp-smushit' ), 403 );
[791] Fix | Delete
}
[792] Fix | Delete
delete_site_option( 'wp-smush-show_upgrade_modal' );
[793] Fix | Delete
wp_send_json_success();
[794] Fix | Delete
}
[795] Fix | Delete
}
[796] Fix | Delete
[797] Fix | Delete
12
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function