From 77e9877316fcfacb26799afdf32d94c8411da80e Mon Sep 17 00:00:00 2001 From: Alexandre Alapetite Date: Fri, 31 Dec 2021 17:00:51 +0100 Subject: Add PHPStan (#4021) * Add PHPStan #fix https://github.com/FreshRSS/FreshRSS/issues/4016 https://phpstan.org/ ```sh composer run-script phpstan ``` * More fixes * Fix global variables * Add .phtml * Fix merge https://github.com/FreshRSS/FreshRSS/pull/4090 * Fix more warnings * Fix view errors and enable in CI * ReturnTypeWillChange * Dynamic view type * Fix Minz static/self bug --- lib/Minz/ActionController.php | 9 ++++++++- lib/Minz/Configuration.php | 10 +++++----- lib/Minz/ControllerNotExistException.php | 2 +- lib/Minz/Dispatcher.php | 1 - lib/Minz/Mailer.php | 4 ++++ lib/Minz/Paginator.php | 4 ++-- lib/Minz/PdoMysql.php | 2 ++ lib/Minz/PdoSqlite.php | 2 ++ 8 files changed, 24 insertions(+), 10 deletions(-) (limited to 'lib') diff --git a/lib/Minz/ActionController.php b/lib/Minz/ActionController.php index f60b5411d..cf41a4819 100644 --- a/lib/Minz/ActionController.php +++ b/lib/Minz/ActionController.php @@ -13,11 +13,18 @@ class Minz_ActionController { 'default-src' => "'self'", ); + // Gives the possibility to override the default View type. + public static $viewType = 'Minz_View'; + /** * Constructeur */ public function __construct () { - $this->view = new Minz_View(); + if (class_exists(self::$viewType)) { + $this->view = new self::$viewType(); + } else { + $this->view = new Minz_View(); + } $view_path = Minz_Request::controllerName() . '/' . Minz_Request::actionName() . '.phtml'; $this->view->_path($view_path); $this->view->attributeParams (); diff --git a/lib/Minz/Configuration.php b/lib/Minz/Configuration.php index b57ca6c0d..9752c21eb 100644 --- a/lib/Minz/Configuration.php +++ b/lib/Minz/Configuration.php @@ -87,15 +87,15 @@ class Minz_Configuration { private $extensions_enabled = []; public function removeExtension($ext_name) { - unset(self::$extensions_enabled[$ext_name]); - $legacyKey = array_search($ext_name, self::$extensions_enabled, true); + unset($this->extensions_enabled[$ext_name]); + $legacyKey = array_search($ext_name, $this->extensions_enabled, true); if ($legacyKey !== false) { //Legacy format FreshRSS < 1.11.1 - unset(self::$extensions_enabled[$legacyKey]); + unset($this->extensions_enabled[$legacyKey]); } } public function addExtension($ext_name) { - if (!isset(self::$extensions_enabled[$ext_name])) { - self::$extensions_enabled[$ext_name] = true; + if (!isset($this->extensions_enabled[$ext_name])) { + $this->extensions_enabled[$ext_name] = true; } } diff --git a/lib/Minz/ControllerNotExistException.php b/lib/Minz/ControllerNotExistException.php index dcdaa94d1..a024e1cbd 100644 --- a/lib/Minz/ControllerNotExistException.php +++ b/lib/Minz/ControllerNotExistException.php @@ -1,6 +1,6 @@ $this->nbPage && $this->nbPage > 0)) { - throw new CurrentPagePaginationException ($page); + throw new Minz_CurrentPagePaginationException($page); } $this->currentPage = $page; diff --git a/lib/Minz/PdoMysql.php b/lib/Minz/PdoMysql.php index c46d88f1a..e5d62bcc5 100644 --- a/lib/Minz/PdoMysql.php +++ b/lib/Minz/PdoMysql.php @@ -15,6 +15,8 @@ class Minz_PdoMysql extends Minz_Pdo { return 'mysql'; } + // PHP8+: PDO::lastInsertId(?string $name = null): string|false + #[\ReturnTypeWillChange] public function lastInsertId($name = null) { return parent::lastInsertId(); //We discard the name, only used by PostgreSQL } diff --git a/lib/Minz/PdoSqlite.php b/lib/Minz/PdoSqlite.php index c577ad887..978ee8db1 100644 --- a/lib/Minz/PdoSqlite.php +++ b/lib/Minz/PdoSqlite.php @@ -15,6 +15,8 @@ class Minz_PdoSqlite extends Minz_Pdo { return 'sqlite'; } + // PHP8+: PDO::lastInsertId(?string $name = null): string|false + #[\ReturnTypeWillChange] public function lastInsertId($name = null) { return parent::lastInsertId(); //We discard the name, only used by PostgreSQL } -- cgit v1.2.3