HEX
Server: LiteSpeed
System: Linux pulsar191.sitesanctuary.org 5.14.0-284.30.1.el9.tuxcare.els9.x86_64 #1 SMP PREEMPT_DYNAMIC Fri Jan 10 17:34:05 UTC 2025 x86_64
User: lgooir (1604)
PHP: 8.1.32
Disabled: exec,system,passthru,shell_exec,escapeshellarg,escapeshellcmd,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: /home/lgooir/.trash/elementor/modules/floating-buttons/classes/conditions/conditions-cache.php
<?php

namespace Elementor\Modules\FloatingButtons\Classes\Conditions;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

class Conditions_Cache {

	const CONDITIONS_CACHE_META_KEY = 'elementor_pro_theme_builder_conditions';

	const CONDITION_TYPE = 'floating_buttons';

	public function remove_from_cache( int $post_id ): void {
		$conditions = $this->get_conditions();

		if ( isset( $conditions[ self::CONDITION_TYPE ][ $post_id ] ) ) {
			unset( $conditions[ self::CONDITION_TYPE ][ $post_id ] );

			if ( empty( $conditions[ self::CONDITION_TYPE ] ) ) {
				unset( $conditions[ self::CONDITION_TYPE ] );
			}

			$this->update_conditions( $conditions );
		}
	}

	public function add_to_cache( int $post_id, array $condition_rules = [ 'include/general' ] ): void {
		$conditions = $this->get_conditions();

		if ( ! isset( $conditions[ self::CONDITION_TYPE ] ) ) {
			$conditions[ self::CONDITION_TYPE ] = [];
		}

		$conditions[ self::CONDITION_TYPE ][ $post_id ] = $condition_rules;

		$this->update_conditions( $conditions );
	}

	private function get_conditions(): array {
		return get_option( self::CONDITIONS_CACHE_META_KEY, [] );
	}

	private function update_conditions( array $conditions ): void {
		update_option( self::CONDITIONS_CACHE_META_KEY, $conditions );
	}
}