From 3451715e96c4826989f4708cc9924adb41e7de67 Mon Sep 17 00:00:00 2001 From: slawkens Date: Fri, 22 Aug 2025 15:30:19 +0200 Subject: [PATCH] Settings class: Add type hints --- system/src/Settings.php | 35 ++++++++++++++++------------------- 1 file changed, 16 insertions(+), 19 deletions(-) diff --git a/system/src/Settings.php b/system/src/Settings.php index ef3da830..fe16b2e7 100644 --- a/system/src/Settings.php +++ b/system/src/Settings.php @@ -7,16 +7,13 @@ use MyAAC\Models\Settings as ModelsSettings; class Settings implements \ArrayAccess { - static private $instance; - private $settingsFile = []; - private $settingsDatabase = []; - private $cache = []; - private $valuesAsked = []; - private $errors = []; + static private ?Settings $instance = null; + private array $settingsFile = []; + private array $settingsDatabase = []; + private array $cache = []; + private array $valuesAsked = []; + private array $errors = []; - /** - * @return Settings - */ public static function getInstance(): Settings { if (!self::$instance) { @@ -26,7 +23,7 @@ class Settings implements \ArrayAccess return self::$instance; } - public function load() + public function load(): void { $cache = Cache::getInstance(); if ($cache->enabled()) { @@ -47,7 +44,7 @@ class Settings implements \ArrayAccess } } - public function save($pluginName, $values) + public function save($pluginName, $values): bool { $this->loadPlugin($pluginName); @@ -104,7 +101,7 @@ class Settings implements \ArrayAccess return true; } - public function updateInDatabase($pluginName, $key, $value) + public function updateInDatabase($pluginName, $key, $value): void { if (ModelsSettings::where(['name' => $pluginName, 'key' => $key])->exists()) { ModelsSettings::where(['name' => $pluginName, 'key' => $key])->update(['value' => $value]); @@ -117,7 +114,7 @@ class Settings implements \ArrayAccess $this->clearCache(); } - public function deleteFromDatabase($pluginName, $key = null) + public function deleteFromDatabase($pluginName, $key = null): void { if (!isset($key)) { ModelsSettings::where('name', $pluginName)->delete(); @@ -383,7 +380,7 @@ class Settings implements \ArrayAccess } #[\ReturnTypeWillChange] - public function offsetSet($offset, $value) + public function offsetSet($offset, $value): void { if (is_null($offset)) { throw new \RuntimeException("Settings: You cannot set empty offset with value: $value!"); @@ -423,7 +420,7 @@ class Settings implements \ArrayAccess } #[\ReturnTypeWillChange] - public function offsetUnset($offset) + public function offsetUnset($offset): void { $this->loadPlugin($offset); @@ -455,7 +452,7 @@ class Settings implements \ArrayAccess * @return array|mixed */ #[\ReturnTypeWillChange] - public function offsetGet($offset) + public function offsetGet($offset): mixed { // try cache hit if(isset($this->cache[$offset])) { @@ -521,7 +518,7 @@ class Settings implements \ArrayAccess return $ret; } - private function updateValuesAsked($offset) + private function updateValuesAsked($offset): void { $pluginKeyName = $offset; if (strpos($offset, '.')) { @@ -537,7 +534,7 @@ class Settings implements \ArrayAccess } } - private function loadPlugin($offset) + private function loadPlugin($offset): void { $this->updateValuesAsked($offset); @@ -566,7 +563,7 @@ class Settings implements \ArrayAccess } } - public static function saveConfig($config, $filename, &$content = '') + public static function saveConfig($config, $filename, &$content = ''): bool|int { $content = "