first commit

This commit is contained in:
2024-07-15 11:28:08 +02:00
commit f52d538ea5
21891 changed files with 6161164 additions and 0 deletions

View File

@@ -0,0 +1,76 @@
<?php
/**
* Base class for caching method. All caching methods must be extends from this class.
* All methods are required for child classes
*/
// If this file is called directly, abort.
if ( ! defined( 'WPINC' ) ) {
die;
}
if ( ! class_exists( 'Jet_Data_Importer_Cache_Handler' ) ) {
/**
* Define Jet_Data_Importer_Cache_Handler class
*/
class Jet_Data_Importer_Cache_Handler {
/**
* Store passed value in cache with passed key.
*
* @param string $key Caching key.
* @param mixed $value Value to save.
* @param string $group Caching group.
* @return bool
*/
public function update( $key = null, $value = null, $group = 'global' ) {}
/**
* Create base caching group if not exist.
*/
public function setup_cahe() {}
/**
* Create new group in base caching group if not exists
*/
public function setup_cahe_group( $group = 'global' ) {}
/**
* Returns all stored cache
*
* @return array
*/
public function get_all() {}
/**
* Returns whole stored group
*
* @return array
*/
public function get_group( $group = 'global' ) {}
/**
* Returns whole stored group
*
* @return void
*/
public function clear_cache( $group = null ) {}
/**
* Returns current value by key
*
* @return array
*/
public function get( $key = null, $group = 'global' ) {}
/**
* Write object cahe to static cache (if current handler requires this)
*
* @return void
*/
public function write_cache() {}
}
}

View File

@@ -0,0 +1,156 @@
<?php
/**
* Base class for caching method. All caching methods must be extends from this class.
* All methods are required for child classes
*/
// If this file is called directly, abort.
if ( ! defined( 'WPINC' ) ) {
die;
}
if ( ! class_exists( 'Jet_Data_Importer_File_Cache' ) ) {
/**
* Define Jet_Data_Importer_File_Cache class
*/
class Jet_Data_Importer_File_Cache extends Jet_Data_Importer_Cache_Handler {
private $_object_cache = null;
private $_updated = false;
/**
* Store passed value in cache with passed key.
*
* @param string $key Caching key.
* @param mixed $value Value to save.
* @param string $group Caching group.
* @return bool
*/
public function update( $key = null, $value = null, $group = 'global' ) {
$this->setup_cache_group( $group );
$this->_object_cache[ $group ][ $key ] = $value;
$this->_updated = true;
}
/**
* Returns all stored cache
*
* @return array
*/
public function get_all() {
if ( ! $this->_object_cache ) {
return array();
} else {
$this->_object_cache;
}
}
/**
* Returns whole stored group
*
* @return array
*/
public function get_group( $group = 'global' ) {
$this->setup_cache_group( $group );
if ( ! isset( $this->_object_cache[ $group ] ) ) {
return array();
}
return $this->_object_cache[ $group ];
}
/**
* Returns current value by key
*
* @return array
*/
public function get( $key = null, $group = 'global' ) {
$this->setup_cache_group( $group );
if ( ! isset( $this->_object_cache[ $group ] ) ) {
return false;
}
if ( ! isset( $this->_object_cache[ $group ][ $key ] ) ) {
return false;
}
return $this->_object_cache[ $group ][ $key ];
}
/**
* Create base caching group if not exist.
*/
public function setup_cache() {
if ( null === $this->_object_cache ) {
$current = jdi_files_manager()->get_json( 'cache.json' );
if ( ! $current ) {
$this->_object_cache = array();
} else {
$this->_object_cache = $current;
}
}
}
/**
* Create new group in base caching group if not exists
*/
public function setup_cache_group( $group = 'global' ) {
$this->setup_cache();
if ( ! isset( $this->_object_cache[ $group ] ) ) {
$this->_object_cache[ $group ] = array();
}
}
/**
* Returns whole stored group
*
* @return void
*/
public function clear_cache( $group = null ) {
if ( isset( $this->_object_cache['mapping'] ) ) {
update_option( 'cache', $this->_object_cache['mapping'] );
}
if ( null !== $group ) {
$this->_object_cache[ $group ] = array();
jdi_files_manager()->write_cache();
} else {
$this->_object_cache = array();
jdi_files_manager()->delete( 'cache.json' );
}
}
/**
* Write static cache
*
* @return [type] [description]
*/
public function write_cache() {
if ( true === $this->_updated ) {
jdi_files_manager()->put_json( 'cache.json', $this->_object_cache );
}
}
}
}

View File

@@ -0,0 +1,135 @@
<?php
/**
* Seesion cahce handler
*/
// If this file is called directly, abort.
if ( ! defined( 'WPINC' ) ) {
die;
}
if ( ! class_exists( 'Jet_Data_Importer_Session_Cache' ) ) {
/**
* Define Jet_Data_Importer_Session_Cache class
*/
class Jet_Data_Importer_Session_Cache extends Jet_Data_Importer_Cache_Handler {
/**
* Base caching group name
*
* @var string
*/
private $base_group = null;
/**
* Constructor for the class
*/
public function __construct( $base_group ) {
$this->base_group = $base_group;
}
/**
* Store passed value in cache with passed key.
*
* @param string $key Caching key.
* @param mixed $value Value to save.
* @param string $group Caching group.
* @return bool
*/
public function update( $key = null, $value = null, $group = 'global' ) {
$this->setup_cahe_group( $group );
$_SESSION[ $this->base_group ][ $group ][ $key ] = $value;
}
/**
* Returns all stored cache
*
* @return array
*/
public function get_all() {
if ( ! isset( $_SESSION[ $this->base_group ] ) ) {
return array();
}
}
/**
* Returns whole stored group
*
* @return array
*/
public function get_group( $group = 'global' ) {
if ( ! isset( $_SESSION[ $this->base_group ][ $group ] ) ) {
return array();
}
return $_SESSION[ $this->base_group ][ $group ];
}
/**
* Returns current value by key
*
* @return array
*/
public function get( $key = null, $group = 'global' ) {
if ( ! isset( $_SESSION[ $this->base_group ][ $group ] ) ) {
return false;
}
if ( ! isset( $_SESSION[ $this->base_group ][ $group ][ $key ] ) ) {
return false;
}
return $_SESSION[ $this->base_group ][ $group ][ $key ];
}
/**
* Create base caching group if not exist.
*/
public function setup_cahe() {
if ( ! isset( $_SESSION[ $this->base_group ] ) ) {
$_SESSION[ $this->base_group ] = array();
}
}
/**
* Create new group in base caching group if not exists
*/
public function setup_cahe_group( $group = 'global' ) {
$this->setup_cahe();
if ( ! isset( $_SESSION[ $this->base_group ][ $group ] ) ) {
$_SESSION[ $this->base_group ][ $group ] = array();
}
}
/**
* Returns whole stored group
*
* @return void
*/
public function clear_cache( $group = null ) {
if ( isset( $_SESSION[ $this->base_group ]['mapping'] ) ) {
update_option( 'cache', $_SESSION[ $this->base_group ]['mapping'] );
}
if ( null !== $group ) {
$_SESSION[ $this->base_group ][ $group ] = array();
} else {
$_SESSION[ $this->base_group ] = array();
}
}
}
}