From f07a668b30d0c6d2823dbe41343c45b2abf4075e Mon Sep 17 00:00:00 2001 From: Wizard Date: Sun, 2 Nov 2025 12:33:26 +0300 Subject: [PATCH] =?UTF-8?q?chore:=20=D0=90=D0=BD=D0=BD=D0=BE=D1=82=D0=B0?= =?UTF-8?q?=D1=86=D0=B8=D1=8F=20=D1=82=D0=B8=D0=BF=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Collection.php | 2 +- src/Controller/Action.php | 11 ++++++++--- src/Controller/Installer.php | 2 +- src/Controller/SiteInterface.php | 18 +++++++++++++++++- src/Database/PDOStatement.php | 3 +++ src/Database/StatementIterator.php | 3 +++ src/Excel/Table.php | 5 +++-- src/Functions.php | 8 ++++---- src/Numbers.php | 1 + src/Role/User.php | 5 +++-- src/Role/UserInterface.php | 13 ++++++++++--- src/Settings.php | 2 ++ src/Setup.php | 2 +- src/View/Plain.php | 6 +++++- 14 files changed, 62 insertions(+), 19 deletions(-) diff --git a/src/Collection.php b/src/Collection.php index 0604a06..cf8b814 100644 --- a/src/Collection.php +++ b/src/Collection.php @@ -3,7 +3,7 @@ namespace ctiso; /** * Коллекция - * + * @implements \ArrayAccess */ class Collection implements \ArrayAccess { diff --git a/src/Controller/Action.php b/src/Controller/Action.php index 6948166..20afb41 100644 --- a/src/Controller/Action.php +++ b/src/Controller/Action.php @@ -24,6 +24,7 @@ class Action implements ActionInterface // Параметры устанавливаются при создании контроллера public string $name = ''; // Имя модуля + /** @var \ctiso\Controller\Front */ public $front; public string $modulePath = ''; // Путь к модулю @@ -283,7 +284,7 @@ class Action implements ActionInterface /** * Генерация ссылки на действие контроллера * Ajax определяется автоматически mode = ajax используется для смены layout - * @param $name + * @param string $name * @param array $param * @return Url|null * @@ -299,7 +300,7 @@ class Action implements ActionInterface * Добавление помошника контроллера * @param class-string $class */ - public function addHelper($class) + public function addHelper($class): void { $this->helpers [] = $class; } @@ -323,10 +324,11 @@ class Action implements ActionInterface /** * Загрузка файла класса - * @deprecated + * @deprecated Веместо его нужно использовать автозагрузку * @param string $path * @param mixed $setup * @param string $prefix + * @return mixed */ public function loadClass($path, $setup = null, $prefix = '') { @@ -350,6 +352,9 @@ class Action implements ActionInterface return $result->export(); } + /** + * @param string $name + */ public function setView($name): void { $this->view = $this->getView($name); diff --git a/src/Controller/Installer.php b/src/Controller/Installer.php index 6aefd18..79b08f2 100644 --- a/src/Controller/Installer.php +++ b/src/Controller/Installer.php @@ -163,7 +163,7 @@ class Installer * @param string $dbinit_path * @param string|null $dbfill_path */ - function install($dbinit_path, $dbfill_path = null) + function install($dbinit_path, $dbfill_path = null): void { $json_installer = new JsonInstall($this->db_manager); $json_installer->install($dbinit_path, $dbfill_path); diff --git a/src/Controller/SiteInterface.php b/src/Controller/SiteInterface.php index 4fd6ff4..92c06a5 100644 --- a/src/Controller/SiteInterface.php +++ b/src/Controller/SiteInterface.php @@ -3,13 +3,26 @@ namespace ctiso\Controller; interface SiteInterface { + /** + * FIXME: Возвращает ресурс (но его тип опрделяется в App) + * @return mixed + */ function getResource(); /** * @return \ctiso\Database */ function getDatabase(); + /** + * @return \ctiso\Registry + */ function getConfig(); + /** + * @return \ctiso\Settings + */ function getTheme(); + /** + * @param array $config + */ function addComponentConfig($config): void; function addRequireJsPath(string $name, string $path, ?array $shim = null): void; function addStyleSheet(string $url): void; @@ -19,7 +32,10 @@ interface SiteInterface { * @return ?Component */ function loadComponent(string $expression); + /** + * @return array{string, string, string} + */ function findTemplate(string $name); - function replaceImg(string $src, int $width, int $height); + function replaceImg(string $src, int $width, int $height): string; function updatePageTime(int $time): void; } diff --git a/src/Database/PDOStatement.php b/src/Database/PDOStatement.php index 6fedc9e..69a1c49 100644 --- a/src/Database/PDOStatement.php +++ b/src/Database/PDOStatement.php @@ -7,6 +7,9 @@ use ctiso\Database\StatementIterator, PDO; use TheSeer\Tokenizer\Exception; +/** + * @implements \IteratorAggregate + */ class PDOStatement extends \PDOStatement implements \IteratorAggregate { /** @var int */ diff --git a/src/Database/StatementIterator.php b/src/Database/StatementIterator.php index 7a8b76f..43f82e9 100644 --- a/src/Database/StatementIterator.php +++ b/src/Database/StatementIterator.php @@ -3,6 +3,9 @@ namespace ctiso\Database; use PDO; +/** + * @implements \Iterator + */ class StatementIterator implements \Iterator { /** @var PDOStatement */ diff --git a/src/Excel/Table.php b/src/Excel/Table.php index 1a2a39b..bb15d3d 100644 --- a/src/Excel/Table.php +++ b/src/Excel/Table.php @@ -14,6 +14,7 @@ class TableCell public $style = false; /** @var string */ public $value; + /** @var bool */ public $merge = false; /** @@ -142,7 +143,7 @@ class Table * Обьединяет клетки в строке * @param int $x Номер ряда * @param int $cell Номер столбца - * @param int $merge Количество клеток для обьединения + * @param bool $merge Количество клеток для обьединения */ function setCellMerge(int $x, int $cell, $merge): void { @@ -254,7 +255,7 @@ class Table } if ($ncell->merge) { - $doc->writeAttribute('ss:MergeAcross', $ncell->merge); + $doc->writeAttribute('ss:MergeAcross', (string)$ncell->merge); } if ($setIndex) { diff --git a/src/Functions.php b/src/Functions.php index 8f415f5..3e040c4 100644 --- a/src/Functions.php +++ b/src/Functions.php @@ -265,7 +265,7 @@ class Functions { * @example key_values('a', array(1 => array('a' => 1, 'b' => 2))) => array(1) * * @param string $key - * @param list|\ArrayIterator $array + * @param list|\ArrayIterator $array * @return mixed */ static function key_values($key, $array) { @@ -279,7 +279,7 @@ class Functions { /** * @param string $key - * @param list|\ArrayIterator $array + * @param list|\ArrayIterator $array * @return array */ static function key_values_object($key, $array) { @@ -294,7 +294,7 @@ class Functions { /** * @param string $key * @param string $value - * @param list>|\ArrayIterator $array + * @param list>|\ArrayIterator $array * @return array */ static function assoc_key_values($key, $value, $array) { @@ -307,7 +307,7 @@ class Functions { /** * @param string $key - * @param list>|\ArrayIterator $array + * @param list>|\ArrayIterator $array * @return array */ static function assoc_key($key, $array) { diff --git a/src/Numbers.php b/src/Numbers.php index f11678b..5d92be2 100644 --- a/src/Numbers.php +++ b/src/Numbers.php @@ -16,6 +16,7 @@ class Numbers /** * @param array $array + * @return array */ static function prefix(callable $prefix, array $array) { diff --git a/src/Role/User.php b/src/Role/User.php index 33cbc15..1cca467 100644 --- a/src/Role/User.php +++ b/src/Role/User.php @@ -96,9 +96,10 @@ class User implements UserInterface /** * @param string $random * @param PDOStatement $result - * @return PDOStatement + * @return PDOStatement|bool */ - function setSID(string $random, $result) { + function setSID(string $random, $result) + { return $this->db->executeQuery("UPDATE users SET sid = :sid, trie_count = 0 WHERE id_user = :user", [ 'user' => $result->getInt('id_user'), 'sid' => $random diff --git a/src/Role/UserInterface.php b/src/Role/UserInterface.php index 5eb57d1..a69d9b7 100644 --- a/src/Role/UserInterface.php +++ b/src/Role/UserInterface.php @@ -2,11 +2,18 @@ namespace ctiso\Role; use ctiso\Database\Statement; +use ctiso\Database\PDOStatement; interface UserInterface { - function getUserByQuery(Statement $stmt); - function getUserByLogin(string $login); - function getUserById(int $id); + function getUserByQuery(Statement $stmt): ?PDOStatement; + function getUserByLogin(string $login): ?PDOStatement; + function getUserById(int $id): ?PDOStatement; function getName(): string; + + /** + * @param string $random + * @param PDOStatement $result + * @return PDOStatement|bool + */ function setSID(string $random, $result); } \ No newline at end of file diff --git a/src/Settings.php b/src/Settings.php index 1e75fc3..e678ea5 100644 --- a/src/Settings.php +++ b/src/Settings.php @@ -121,6 +121,7 @@ class Settings /** * Чтение ключа из реестра * @param array $key Путь к значению ключа + * @param array $data * @return mixed */ protected function readKeyData(array $key, $data) @@ -145,6 +146,7 @@ class Settings /** * Чтение ключа из реестра (Собирает все ключи с определенным значением во всех модулях) * @param mixed $key Путь к значению ключа внутри модуля + * @return array */ public function readKeyList(...$key) { diff --git a/src/Setup.php b/src/Setup.php index 4c83a9b..7f7874f 100644 --- a/src/Setup.php +++ b/src/Setup.php @@ -90,7 +90,7 @@ class Setup * @param string $name * @param mixed $value */ - public function set(string $name, $value) + public function set(string $name, $value): void { $this->context[$name] = $value; } diff --git a/src/View/Plain.php b/src/View/Plain.php index feb617c..f6fc13e 100644 --- a/src/View/Plain.php +++ b/src/View/Plain.php @@ -26,7 +26,7 @@ class Plain extends \stdClass * @param string $key ключ * @param mixed $value значение */ - public function set($key, $value) + public function set($key, $value): void { $this->values[$key] = $value; } @@ -40,6 +40,10 @@ class Plain extends \stdClass $this->values = array_merge($this->values, $list); } + /** + * @param string $key ключ + * @param mixed $value значение + */ public function __set($key, $value): void { $this->set($key, $value);