Server IP : 192.158.238.246 / Your IP : 216.73.216.176 Web Server : LiteSpeed System : Linux uniform.iwebfusion.net 4.18.0-553.27.1.lve.1.el8.x86_64 #1 SMP Wed Nov 20 15:58:00 UTC 2024 x86_64 User : jenniferflocom ( 1321) PHP Version : 8.1.32 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /proc/self/root/proc/7779/cwd/plugins/gutenkit-blocks-addon/includes/Core/ |
Upload File : |
<?php namespace Gutenkit\Core; defined('ABSPATH') || exit; abstract class ConfigList { use \Gutenkit\Traits\Singleton; private $full_list = array(); private $active_list = array(); protected $optional_list = array(); protected $required_list = array(); protected $type; public function __construct() { $this->set_optional_list(); $this->set_required_list(); $this->set_full_list(); $this->set_active_list(); } public function get_list( $data = 'full', $module = null ) { if ( $module != null ) { return ( $this->{$data . '_list'}[$module] ?? false ); } return $this->{$data . '_list'}; } public function is_active( $item ) { $item = ( $this->active_list[$item] ?? array() ); return empty( $item['package'] ) ? false : ( ( $item['package'] == 'free' || $item['package'] == 'pro' ) ); } private function set_active_list() { $database_list = get_option( 'gutenkit_' . $this->type . '_list', array() ); foreach ($this->full_list as $key => $item) { if (isset($database_list[$key]['status']) && $database_list[$key]['status'] == 'inactive' && !key_exists($key, $this->required_list)) { continue; } if ( isset( $item['package'] ) && $item['package'] == 'pro-disabled' ) { continue; } $this->active_list[$key] = $item; } } private function set_full_list() { $this->full_list = array_merge( $this->required_list, $this->optional_list ); } abstract protected function set_required_list(); abstract protected function set_optional_list(); }