403Webshell
Server IP : 121.121.20.254  /  Your IP : 216.73.216.202
Web Server : Microsoft-IIS/10.0
System : Windows NT WEB-SERVER 10.0 build 20348 (Windows Server 2022) AMD64
User : IUSR ( 0)
PHP Version : 8.3.28
Disable Function : NONE
MySQL : ON  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  C:/inetpub/wwwroot/AIWEBSTATION/wp-content/plugins/wpbot-pro/includes/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : C:/inetpub/wwwroot/AIWEBSTATION/wp-content/plugins/wpbot-pro/includes//class-wpwbot-cache.php
<?php
if ( ! defined( 'ABSPATH' ) ) {
	exit;
}

if ( ! class_exists( 'wpwBot_Cache' ) ) :
	/**
	 * Class for plugin search
	 */
	class wpwBot_Cache {
		/**
		 * @var AWS_Cache Cache table name
		 */
		private $cache_table_name;

		/**
		 * Return a singleton instance of the current class
		 *
		 * @return object
		 */
		public static function factory() {
			static $instance = false;
			if ( ! $instance ) {
				$instance = new self();
				$instance->setup();
			}
			return $instance;
		}

		/**
		 * Constructor
		 */
		public function __construct() {}

		/**
		 * Setup actions and filters for all things settings
		 *
		 * @return void
		 */
		public function setup() {
			global $wpdb;
			$this->cache_table_name = $wpdb->prefix . QCLD_wpCHATBOT_CACHE_TABLE;
			add_action( 'aws_cache_clear', array( $this, 'clear_cache' ) );
			add_action( 'wp_ajax_aws-clear-cache', array( $this, 'clear_cache' ) );
		}

		/**
		 * Get caching option name
		 *
		 * @param [type] $s
		 * @return void
		 */
		public function get_cache_name( $s ) {
			$cache_option_name = 'aws_search_term_' . $s;
			if ( has_filter( 'wpml_current_language' ) ) {
				$current_lang = apply_filters( 'wpml_current_language', null );
				if ( $current_lang ) {
					$cache_option_name = $cache_option_name . '_' . $current_lang;
				}
			}
			return $cache_option_name;
		}

		/**
		 * Check if cache table exist
		 *
		 * @return boolean
		 */
		private function is_cache_table_not_exist() {
			global $wpdb;
			return ( $wpdb->get_var( "SHOW TABLES LIKE '{$this->cache_table_name}'" ) != $this->cache_table_name );
		}

		/**
		 * Create cache table
		 *
		 * @return void
		 */
		private function create_cache_table() {
			global $wpdb;
			$charset_collate = $wpdb->get_charset_collate();
			$sql             = "CREATE TABLE {$this->cache_table_name} (
                      name VARCHAR(50) NOT NULL,
                      value LONGTEXT NOT NULL
                ) $charset_collate;";
			require_once ABSPATH . 'wp-admin/includes/upgrade.php';
			dbDelta( $sql );
		}

		/**
		 * Insert data into cache table
		 *
		 * @param [type] $cache_option_name
		 * @param [type] $result_array
		 * @return void
		 */
		public function insert_into_cache_table( $cache_option_name, $result_array ) {
			global $wpdb;
			$values = $wpdb->prepare(
				'(%s, %s)',
				$cache_option_name,
				json_encode( $result_array )
			);
			$query  = "INSERT IGNORE INTO {$this->cache_table_name}
				       (`name`, `value`)
                       VALUES $values
            ";
			$wpdb->query( $query );
			if ( $wpdb->last_error ) {
				if ( $this->is_cache_table_not_exist() ) {
					$this->create_cache_table();
				}
			}
		}

		/**
		 *  Get data from cache table
		 *
		 * @param [type] $cache_option_name
		 * @return void
		 */
		public function get_from_cache_table( $cache_option_name ) {
			global $wpdb;
			$result        = '';
			$where         = $wpdb->prepare( ' name LIKE %s', $cache_option_name );
			$sql           = "SELECT *
                FROM
                    {$this->cache_table_name}
                WHERE
                    {$where}
		    ";
			$cache_content = $wpdb->get_results( $sql, ARRAY_A );
			if ( ! $wpdb->last_error ) {
				if ( ! empty( $cache_content ) && ! is_wp_error( $cache_content ) && is_array( $cache_content ) ) {
					$result = $cache_content[0]['value'];
				}
			} elseif ( $this->is_cache_table_not_exist() ) {
					$this->create_cache_table();
			}
			return $result;
		}

		/**
		 * Clear cached terms
		 *
		 * @return void
		 */
		public function clear_cache() {
			global $wpdb;
			if ( ! $this->is_cache_table_not_exist() ) {

				$terms = 'aws_search_term_%';
				$where = $wpdb->prepare( ' name LIKE %s', $terms );
				$sql   = "DELETE FROM {$this->cache_table_name}
                    WHERE {$where}
                        ";
				$wpdb->query( $sql );

			}
		}
	}
endif;
wpwBot_Cache::factory();

Youez - 2016 - github.com/yon3zu
LinuXploit