https://t.me/RX1948
Server : LiteSpeed
System : Linux srv104790275 5.15.0-161-generic #171-Ubuntu SMP Sat Oct 11 08:17:01 UTC 2025 x86_64
User : dewac4139 ( 1077)
PHP Version : 8.0.30
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Directory :  /proc/self/cwd/wp-content/plugins/litespeed-cache/thirdparty/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //proc/self/cwd/wp-content/plugins/litespeed-cache/thirdparty/aelia-currencyswitcher.cls.php
<?php
/**
 * The Third Party integration with the Aelia CurrencySwitcher plugin.
 *
 * @since      1.0.13
 * @since      2.6     Removed hook_vary as OLS supports vary header already
 * @package    LiteSpeed
 * @subpackage LiteSpeed_Cache/thirdparty
 */

namespace LiteSpeed\Thirdparty;

defined( 'WPINC' ) || exit();

/**
 * Integration layer for Aelia Currency Switcher.
 *
 * Registers the plugin cookies as Vary drivers so cached pages can differ by
 * selected currency / location. Hooks both the runtime vary list (headers)
 * and the rewrite-rules vary list (always needed).
 */
class Aelia_CurrencySwitcher {

	/**
	 * Cookie names used by Aelia Currency Switcher to determine currency & geo.
	 *
	 * @var string[]
	 */
	private static $_cookies = array( 'aelia_cs_selected_currency', 'aelia_customer_country', 'aelia_customer_state', 'aelia_tax_exempt' );

	/**
	 * Detects if WooCommerce + Aelia Currency Switcher are present and registers hooks.
	 *
	 * @since 1.0.13
	 * @access public
	 * @return void
	 */
	public static function detect() {
		if ( defined( 'WOOCOMMERCE_VERSION' ) && isset( $GLOBALS['woocommerce-aelia-currencyswitcher'] ) && is_object( $GLOBALS['woocommerce-aelia-currencyswitcher'] ) ) {
			// Not all pages need to add vary, so allow sites to restrict via filter.
			self::$_cookies = apply_filters( 'litespeed_3rd_aelia_cookies', self::$_cookies );

			// Add cookies to the active vary header list (conditionally used at runtime).
			add_filter( 'litespeed_vary_curr_cookies', __CLASS__ . '::check_cookies' );

			// Ensure rewrite rules are aware of these cookies (always include).
			add_filter( 'litespeed_vary_cookies', __CLASS__ . '::register_cookies' );
		}
	}

	/**
	 * Ensure Aelia cookies are part of the global vary cookie registry.
	 *
	 * @since 1.0.13
	 *
	 * @param string[] $cookies Current list of vary cookies.
	 * @return string[] Updated list including Aelia cookies.
	 */
	public static function register_cookies( $cookies ) {
		return array_merge( $cookies, self::$_cookies );
	}

	/**
	 * Conditionally append Aelia cookies to the vary header set for WooCommerce pages.
	 *
	 * If the page is not a WooCommerce page, leave the list unchanged.
	 * Otherwise, append Aelia's cookies so responses vary correctly.
	 *
	 * @since 1.0.13
	 * @access public
	 *
	 * @param string[] $cookies Current list of vary cookies for the response.
	 * @return string[] Potentially augmented list of vary cookies.
	 */
	public static function check_cookies( $cookies ) {
		// NOTE: is_cart and is_checkout are handled by WooCommerce itself.
		if ( ! function_exists( 'is_woocommerce' ) || ! is_woocommerce() ) {
			return $cookies;
		}

		return array_merge( $cookies, self::$_cookies );
	}
}

https://t.me/RX1948 - 2025