Files
dostavka_vodi/wp-content/plugins/all-in-one-wp-security-and-firewall/classes/wp-security-config.php
User A0264400 a766acdc90 first commit
2026-04-01 23:20:16 +03:00

110 lines
2.3 KiB
PHP

<?php
if (!defined('ABSPATH')) {
exit;//Exit if accessed directly
}
class AIOWPSecurity_Config {
public $configs;
public static $_this;
public function __construct() {
}
public function load_config() {
$this->configs = get_option('aio_wp_security_configs');
}
public function get_value($key) {
return isset($this->configs[$key]) ? $this->configs[$key] : '';
}
/**
* Gets for main site config value for a given $key.
*
* @param string $key
*
* @return string|array
*/
public function get_site_value($key) {
if (is_multisite() && !is_main_site()) {
$mainsite_aio_config = get_blog_option(get_main_site_id(), 'aio_wp_security_configs');
return isset($mainsite_aio_config[$key]) ? $mainsite_aio_config[$key] : '';
} else {
return $this->get_value($key);
}
}
/**
* Sets a given config $value for a given $key.
*
* @param string $key
* @param mixed $value
* @param boolean $save_config - Whether or not to also save the $configs array to the database.
*
* @return boolean
*/
public function set_value($key, $value, $save_config = false) {
$this->configs[$key] = $value;
if ($save_config) {
return $this->save_config();
} else {
return true;
}
}
public function add_value($key, $value) {
if (!is_array($this->configs)) {
$this->configs = array();
}
if (array_key_exists($key, $this->configs)) {
//Don't update the value for this key
} else {//It is safe to update the value for this key
$this->configs[$key] = $value;
}
}
/**
* Save configuration that are set.
*
* @return boolean True on save config, Otherwise false.
*/
public function save_config() {
return update_option('aio_wp_security_configs', $this->configs);
}
/**
* Remove key element from config.
*
* @param String $key config key
*
* @return boolean True if removed, otherwise false.
*/
public function delete_value($key) {
if (!is_array($this->configs)) {
$this->configs = array();
}
if (array_key_exists($key, $this->configs)) {
unset($this->configs[$key]);
if (!isset($this->configs[$key])) {
return true;
}
}
return false;
}
public static function get_instance() {
if (empty(self::$_this)) {
self::$_this = new AIOWPSecurity_Config();
self::$_this->load_config();
return self::$_this;
}
return self::$_this;
}
}