__('Are you sure you want to reset all media optimization settings to their defaults? This cannot be undone.', 'metasync'), )); // ── Image Library JS ── wp_enqueue_script( 'metasync-media-opt-library', $assets_url . 'js/media-optimization-library.js', array(), $version, true ); $batch_progress = Metasync_Media_Batch_Optimizer::get_progress(); wp_localize_script('metasync-media-opt-library', 'metasyncMediaLib', array( 'ajaxUrl' => admin_url('admin-ajax.php'), 'nonce' => wp_create_nonce('metasync_media_opt_nonce'), 'batchRunning' => ($batch_progress['status'] === 'running'), 'i18n' => array( 'optimizing' => __('Optimizing...', 'metasync'), 'optimize' => __('Optimize', 'metasync'), 'revert' => __('Revert', 'metasync'), 'revertConfirm' => __('Revert this image to its original format?', 'metasync'), 'optimizeFailed' => __('Optimization failed.', 'metasync'), 'revertFailed' => __('Revert failed.', 'metasync'), 'revertDisabled' => __('Original image unavailable — revert is disabled', 'metasync'), 'startBatch' => __('Start optimizing all unoptimized images?', 'metasync'), 'batchFailed' => __('Failed to start batch optimization.', 'metasync'), 'batchComplete' => __('Batch optimization complete!', 'metasync'), 'imagesProcessed' => __('images processed', 'metasync'), 'failed' => __('failed', 'metasync'), 'optimizingOf' => __('Optimizing', 'metasync'), 'of' => __('of', 'metasync'), 'images' => __('images...', 'metasync'), 'unoptimized' => __('Unoptimized', 'metasync'), 'selectImages' => __('Please select at least one image.', 'metasync'), 'bulkFailed' => __('Bulk optimization failed.', 'metasync'), 'apply' => __('Apply', 'metasync'), 'unoptimizing' => __('Unoptimizing...', 'metasync'), 'unoptimizeConfirm' => __('Revert selected images to their original format?', 'metasync'), 'bulkUnoptimizeFailed' => __('Bulk unoptimize failed.', 'metasync'), 'alreadyUnoptimized' => __('All selected images are already unoptimized.', 'metasync'), ), )); } add_action('admin_enqueue_scripts', 'metasync_media_optimization_enqueue_assets');