uawdijnntqw1x1x1
IP : 216.73.216.109
Hostname : premium160.web-hosting.com
Kernel : Linux premium160.web-hosting.com 4.18.0-553.54.1.lve.el8.x86_64 #1 SMP Wed Jun 4 13:01:13 UTC 2025 x86_64
Disable Function : None :)
OS : Linux
PATH:
/
home
/
batcwwjx
/
www
/
wp-content
/
plugins
/
wp-smushit
/
core
/
webp
/
class-webp-configuration.php
/
/
<?php namespace Smush\Core\Webp; use Smush\Core\Settings; use Smush\Core\Next_Gen\Next_Gen_Configuration_Interface; class Webp_Configuration implements Next_Gen_Configuration_Interface { const FORMAT_KEY = 'webp'; const DIRECT_CONVERSION_METHOD = 'direct_conversion'; const HIDE_WIZARD_OPTION_KEY = 'wp-smush-webp_hide_wizard'; /** * @var self */ private static $instance; /** * @var Settings */ private $settings; /** * @var Webp_Server_Configuration */ private $server_configuration; /** * @var Webp_Direct_Conversion */ private $direct_conversion; /** * @var Webp_Helper */ private $helper; public function __construct() { $this->server_configuration = new Webp_Server_Configuration(); $this->direct_conversion = new Webp_Direct_Conversion(); $this->settings = Settings::get_instance(); $this->helper = new Webp_Helper(); } public static function get_instance() { if ( ! self::$instance ) { self::$instance = new self(); } return self::$instance; } public function get_format_name() { return __( 'WebP', 'wp-smushit' ); } public function get_format_key() { return self::FORMAT_KEY; } public function is_activated() { return $this->settings->is_webp_module_active(); } public function is_fallback_activated() { return $this->settings->is_webp_fallback_active(); } public function is_configured() { if ( ! $this->is_activated() ) { return false; } return $this->direct_conversion_enabled() || $this->is_server_configured(); } public function direct_conversion_enabled() { return $this->direct_conversion->is_enabled(); } public function is_server_configured() { return $this->server_configuration->is_configured(); } public function switch_method( $webp_method ) { return $this->set_next_gen_method( $webp_method ); } public function set_next_gen_method( $webp_method ) { $enable_direct_conversion = self::DIRECT_CONVERSION_METHOD === $webp_method; if ( $enable_direct_conversion === $this->direct_conversion_enabled() ) { return; } if ( $enable_direct_conversion ) { $this->server_configuration->disable(); $this->direct_conversion->enable(); } else { $this->direct_conversion->disable(); $this->server_configuration->enable(); if ( ! $this->should_show_wizard() ) { $this->toggle_wizard(); } } do_action( 'wp_smush_webp_method_changed' ); } public function set_next_gen_fallback( $fallback_activated ) { $this->settings->set( 'webp_fallback', $fallback_activated ); } public function toggle_module( $enable_webp ) { if ( $enable_webp ) { $this->activate(); } else { $this->deactivate(); } do_action( 'wp_smush_webp_status_changed' ); } private function activate() { $this->settings->set( 'webp_mod', true ); if ( $this->direct_conversion_enabled() ) { return; } // Try server configuation method first since it has proven to be faster. $this->server_configuration()->enable(); if ( ! $this->is_configured() ) { $this->direct_conversion->enable(); $this->server_configuration()->disable(); } } private function deactivate() { $this->settings->set( 'webp_mod', false ); // Required to add lock file for sever configuration. $this->server_configuration->disable(); } public function server_configuration() { return $this->server_configuration; } public function support_server_configuration() { return true; } public function toggle_wizard() { $is_hidden = get_site_option( self::HIDE_WIZARD_OPTION_KEY ); update_site_option( self::HIDE_WIZARD_OPTION_KEY, ! $is_hidden ); } public function should_show_wizard() { if ( ! $this->is_activated() || $this->is_configured() ) { return false; } $hide_wizard = get_site_option( self::HIDE_WIZARD_OPTION_KEY ); return ! $hide_wizard; } public function delete_all_next_gen_files() { $this->helper->delete_all_webp_files(); } }
/home/batcwwjx/www/wp-content/plugins/wp-smushit/core/webp/class-webp-configuration.php