74 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			74 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| 
 | |
| 
 | |
| namespace Nextend\Framework;
 | |
| 
 | |
| 
 | |
| use Nextend\Framework\Model\Section;
 | |
| 
 | |
| class Settings {
 | |
| 
 | |
|     private static $data;
 | |
| 
 | |
|     public function __construct() {
 | |
| 
 | |
|         $config = array(
 | |
|             'jquery'                 => 1,
 | |
|             'scriptattributes'       => '',
 | |
|             'javascript-inline'      => 'head',
 | |
|             'protocol-relative'      => 1,
 | |
|             'force-english-backend'  => 0,
 | |
|             'frontend-accessibility' => 1,
 | |
|             'curl'                   => 1,
 | |
|             'curl-clean-proxy'       => 0,
 | |
|             'async-non-primary-css'  => 0,
 | |
|             'icon-fa'                => 1,
 | |
|             'header-preload'         => 0
 | |
|         );
 | |
|         if (!defined('NEXTEND_INSTALL')) {
 | |
|             global $wpdb;
 | |
|             if ($wpdb->get_var("SHOW TABLES LIKE '" . $wpdb->prefix . "nextend2_section_storage'") != $wpdb->prefix . 'nextend2_section_storage') {
 | |
|                 define('NEXTEND_INSTALL', 1);
 | |
|             }
 | |
|         }
 | |
|     
 | |
| 
 | |
|         if (!defined('NEXTEND_INSTALL')) {
 | |
|             foreach (Section::getAll('system', 'global') as $data) {
 | |
|                 $config[$data['referencekey']] = $data['value'];
 | |
|             }
 | |
|         }
 | |
| 
 | |
|         self::$data = new Data\Data();
 | |
|         self::$data->loadArray($config);
 | |
|     }
 | |
| 
 | |
|     public static function get($key, $default = '') {
 | |
|         return self::$data->get($key, $default);
 | |
|     }
 | |
| 
 | |
|     public static function getAll() {
 | |
|         return self::$data->toArray();
 | |
|     }
 | |
| 
 | |
|     public static function set($key, $value) {
 | |
|         self::$data->set($key, $value);
 | |
|         Section::set('system', 'global', $key, $value, 1, 1);
 | |
|     }
 | |
| 
 | |
|     public static function setAll($data) {
 | |
|         if (is_array($data)) {
 | |
|             foreach ($data as $key => $value) {
 | |
|                 if (self::$data->get($key, null) !== null) {
 | |
|                     self::set($key, $value);
 | |
|                 }
 | |
|             }
 | |
| 
 | |
|             return true;
 | |
|         }
 | |
| 
 | |
|         return false;
 | |
|     }
 | |
| }
 | |
| 
 | |
| new Settings(); |