HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux WebLive 5.15.0-79-generic #86-Ubuntu SMP Mon Jul 10 16:07:21 UTC 2023 x86_64
User: ubuntu (1000)
PHP: 7.4.33
Disabled: 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,
Upload Files
File: /var/www/html/wpbiancoarte/wp-content/plugins/custom-twitter-feeds/inc/Admin/CTF_Cache_Handler.php
<?php

namespace TwitterFeed\Admin;
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly

/**
 * Custom Twitter Feed Cache Handler.
 *
 * @since 2.0
 */
class CTF_Cache_Handler {

	/**
	 * Clears all cache.
	 *
	 * @return void
	 */
	public function clear_all_cache() {
		$this->clear_db_caches();
		$this->clear_third_party_caches();
	}

	/**
	 * Clear the stored caches from the database.
	 *
	 * @since 2.0
	 */
	public function clear_db_caches() {
		global $wpdb;

		$cache_table_name = $wpdb->prefix . 'ctf_feed_caches';

		$sql = "UPDATE $cache_table_name
				SET cache_value = ''
				WHERE cache_key NOT LIKE 'ctf_!_%';";

		$wpdb->query( $sql );

		$sql = "DELETE FROM $cache_table_name
				WHERE feed_id LIKE '%_CUSTOMIZER';";

		$wpdb->query( $sql );

		$this->clear_legacy_caches();
	}

	public function clear_single_feed_cache( $feed_id ) {
		global $wpdb;

		$cache_table_name = $wpdb->prefix . 'ctf_feed_caches';

		$wpdb->query( $wpdb->prepare(
			"UPDATE $cache_table_name
				SET cache_value = ''
				WHERE cache_key NOT LIKE 'ctf_!_%'
				AND feed_id = %s;", $feed_id
		) );

		$wpdb->query( $wpdb->prepare(
			"UPDATE $cache_table_name
				SET cache_value = ''
				WHERE cache_key NOT LIKE 'ctf_!_%'
				AND feed_id = %s;", $feed_id . '_CUSTOMIZER'
		) );

		$wpdb->query( $wpdb->prepare(
			"UPDATE $cache_table_name
				SET last_updated = '2000-04-04 00:00:00'
				WHERE cache_key NOT LIKE 'ctf_!_%'
				AND feed_id = %s;", $feed_id . '_CUSTOMIZER'
		) );

		$wpdb->query( $wpdb->prepare(
			"UPDATE $cache_table_name
				SET last_updated = '2000-04-04 00:00:00'
				WHERE cache_key NOT LIKE 'ctf_!_%'
				AND feed_id = %s;", $feed_id
		) );
	}

	public function clear_legacy_caches() {
		global $wpdb;

		$cache_table_name = $wpdb->prefix . 'ctf_feed_caches';

		$sql = "UPDATE $cache_table_name
				SET cache_value = ''
				WHERE feed_id = 'legacy';";

		$wpdb->query( $sql );

		global $wpdb;

		//Delete all CTF transients
		$table_name = $wpdb->prefix . "options";
		$wpdb->query( "
                    DELETE
                    FROM $table_name
                    WHERE `option_name` LIKE ('%\_transient\_ctf\_%')
                    " );
		$wpdb->query( "
                    DELETE
                    FROM $table_name
                    WHERE `option_name` LIKE ('%\_transient\_timeout\_ctf\_%')
                    " );
		$wpdb->query( "
			        DELETE
			        FROM $table_name
			        WHERE `option_name` LIKE ('%\_transient\_&ctf\_%')
			        " );
		$wpdb->query( "
			        DELETE
			        FROM $table_name
			        WHERE `option_name` LIKE ('%\_transient\_timeout\_&ctf\_%')
			        " );
		$wpdb->query( "
                    DELETE
                    FROM $table_name
                    WHERE `option_name` LIKE ('%\_transient\_\$ctf\_%')
                    " );
		$wpdb->query( "
                    DELETE
                    FROM $table_name
                    WHERE `option_name` LIKE ('%\_transient\_timeout\_\$ctf\_%')
                    " );
	}

	/**
	 * Clears the third party cache.
	 *
	 * When certain events occur, page caches need to
	 * clear or errors occur or changes will not be seen
	 *
	 * @since 2.0
	 */
	public function clear_third_party_caches() {
		/**
		 * Filters whether to clear page caches.
		 *
		 * @since 2.0
		 *
		 * @param bool Whether to clear cache.
		 */
		$clear_page_caches = apply_filters( 'ctf_clear_page_caches', true );

		if ( ! $clear_page_caches ) {
			return;
		}

		// Clear WP Fastest Cache.
		if ( isset( $GLOBALS['wp_fastest_cache'] ) && method_exists( $GLOBALS['wp_fastest_cache'], 'deleteCache' ) ){
			$GLOBALS['wp_fastest_cache']->deleteCache();
		}

		// Clear WP Super Cache
		if ( function_exists( 'wp_cache_clear_cache' ) ) {
			wp_cache_clear_cache();
		}

		// Clear W3 Total Cache.
		if ( class_exists('W3_Plugin_TotalCacheAdmin') && function_exists( 'w3_instance' ) ) {
			$plugin_total_cache_admin = &w3_instance('W3_Plugin_TotalCacheAdmin');

			$plugin_total_cache_admin->flush_all();
		}

		// Clear WP Rocket cache.
		if ( function_exists( 'rocket_clean_domain' ) ) {
			rocket_clean_domain();
		}
	}

	/**
	 * Clear the stored caches from the database.
	 *
	 * @since 2.0
	 */
	public function clear_persistent_cache() {
		global $wpdb;

		$cache_table_name = $wpdb->prefix . 'ctf_feed_caches';

		$sql = "UPDATE $cache_table_name
				SET cache_value = ''";
		$wpdb->query( $sql );
	}


}