From db612762bed3dae98877bf5920418464ec1e67c6 Mon Sep 17 00:00:00 2001 From: Felipe Figueroa Date: Tue, 16 Mar 2021 04:20:14 -0300 Subject: runs rector --- .php_cs.php | 7 +- Renderer.php | 3 +- composer.json | 4 +- composer.lock | 16 ++--- index.php | 2 +- rector.php | 28 +++++--- src/classes/ADORecordSet.php | 12 ++-- src/classes/ArrayRecordSet.php | 3 +- src/classes/CheckStyleRenderer.php | 2 +- src/classes/Connection.php | 6 +- src/classes/ContainerUtils.php | 16 ++--- src/classes/Misc.php | 22 +++--- src/classes/Translations.php | 8 +-- src/classes/ViewManager.php | 8 +-- src/controllers/AggregatesController.php | 3 +- src/controllers/AlldbController.php | 3 +- src/controllers/BaseController.php | 17 ++--- src/controllers/CastsController.php | 13 ++-- src/controllers/ConstraintsController.php | 29 +++----- src/controllers/ConversionsController.php | 12 ++-- src/controllers/DatabaseController.php | 8 +-- src/controllers/DataexportController.php | 4 +- src/controllers/DataimportController.php | 7 +- src/controllers/DisplayController.php | 9 ++- src/controllers/DomainsController.php | 31 ++++---- src/controllers/FulltextController.php | 63 ++++++---------- src/controllers/FunctionsController.php | 96 +++++++++++-------------- src/controllers/HelpController.php | 2 +- src/controllers/IndexesController.php | 3 +- src/controllers/InfoController.php | 44 +++--------- src/controllers/IntroController.php | 3 +- src/controllers/LanguagesController.php | 11 +-- src/controllers/MaterializedviewsController.php | 91 +++++++++++------------ src/controllers/OpclassesController.php | 10 +-- src/controllers/OperatorsController.php | 3 +- src/controllers/PrivilegesController.php | 13 +--- src/controllers/RolesController.php | 26 +++---- src/controllers/RulesController.php | 38 +++++----- src/controllers/SchemasController.php | 87 +++++++++++----------- src/controllers/SequencesController.php | 84 ++++++++++------------ src/controllers/ServersController.php | 3 +- src/controllers/SqlController.php | 21 +++--- src/controllers/TablesController.php | 7 +- src/controllers/TblpropertiesController.php | 17 +++-- src/controllers/TreeController.php | 6 +- src/controllers/TriggersController.php | 3 +- src/controllers/TypesController.php | 3 +- src/controllers/UsersController.php | 32 ++++----- src/controllers/ViewsController.php | 91 +++++++++++------------ src/database/ADOdbBase.php | 32 ++++----- src/database/Postgres.php | 32 +++------ src/database/databasetraits/DatabaseTrait.php | 12 +--- src/database/databasetraits/FunctionTrait.php | 14 +--- src/database/databasetraits/IndexTrait.php | 8 +-- src/database/databasetraits/PrivilegesTrait.php | 34 ++++----- src/database/databasetraits/RoleTrait.php | 2 +- src/database/databasetraits/RowTrait.php | 7 +- src/database/databasetraits/SchemaTrait.php | 2 +- src/database/databasetraits/SequenceTrait.php | 2 +- src/database/databasetraits/TableTrait.php | 9 +-- src/database/databasetraits/TriggerTrait.php | 4 +- src/decorators/ActionUrlDecorator.php | 5 ++ src/decorators/ArrayMergeDecorator.php | 1 + src/decorators/BranchUrlDecorator.php | 5 ++ src/decorators/CallbackDecorator.php | 5 ++ src/decorators/ConcatDecorator.php | 1 + src/decorators/Decorator.php | 1 + src/decorators/FieldDecorator.php | 5 ++ src/decorators/IfEmptyDecorator.php | 8 ++- src/decorators/RedirectUrlDecorator.php | 5 ++ src/decorators/ReplaceDecorator.php | 5 ++ src/decorators/UrlDecorator.php | 10 +-- src/middleware/PopulateRequestResponse.php | 14 +--- tests/_support/AcceptanceTester.php | 2 +- tests/_support/FunctionalTester.php | 2 +- tests/_support/Helper/Acceptance.php | 2 +- tests/_support/Helper/Functional.php | 2 +- tests/_support/Helper/Unit.php | 2 +- tests/_support/UnitTester.php | 2 +- tests/_support/_generated/UnitTesterActions.php | 2 +- tests/unit/ContainerTest.php | 2 +- tests/unit/DataEntitiesTest.php | 2 +- tests/unit/PublicSectionsTest.php | 2 +- tests/unit/TablesAndViewsTest.php | 2 +- tests/unit/UserEntitiesTest.php | 2 +- tests/unit/ViewTest.php | 2 +- tests/views/acinsert.php | 2 +- tests/views/aggregates.php | 2 +- tests/views/alldb.php | 2 +- tests/views/browser.php | 2 +- tests/views/casts.php | 2 +- tests/views/colproperties.php | 2 +- tests/views/constraints.php | 2 +- tests/views/conversions.php | 2 +- tests/views/database.php | 2 +- tests/views/dataexport.php | 2 +- tests/views/dataimport.php | 2 +- tests/views/dbexport.php | 2 +- tests/views/display.php | 2 +- tests/views/domains.php | 2 +- tests/views/fulltext.php | 2 +- tests/views/functions.php | 2 +- tests/views/groups.php | 2 +- tests/views/help.php | 2 +- tests/views/history.php | 2 +- tests/views/indexes.php | 2 +- tests/views/info.php | 2 +- tests/views/intro.php | 2 +- tests/views/languages.php | 2 +- tests/views/login.php | 2 +- tests/views/materializedviewproperties.php | 2 +- tests/views/materializedviews.php | 2 +- tests/views/opclasses.php | 2 +- tests/views/operators.php | 2 +- tests/views/privileges.php | 2 +- tests/views/roles.php | 2 +- tests/views/rules.php | 2 +- tests/views/schemas.php | 2 +- tests/views/sequences.php | 2 +- tests/views/servers.php | 2 +- tests/views/sql.php | 2 +- tests/views/sqledit.php | 2 +- tests/views/tables.php | 2 +- tests/views/tablespaces.php | 2 +- tests/views/tblproperties.php | 2 +- tests/views/triggers.php | 2 +- tests/views/types.php | 2 +- tests/views/users.php | 2 +- tests/views/viewproperties.php | 2 +- tests/views/views.php | 2 +- tools/phpcpd | 2 +- 131 files changed, 595 insertions(+), 774 deletions(-) diff --git a/.php_cs.php b/.php_cs.php index df39837a..92104cfb 100644 --- a/.php_cs.php +++ b/.php_cs.php @@ -3,7 +3,7 @@ declare(strict_types=1); /** - * PHPPgAdmin 6.1.3 + * PHPPgAdmin6 */ use Ergebnis\PhpCsFixer\Config; @@ -12,10 +12,11 @@ $composerinfo = \json_decode(\file_get_contents('composer.json')); $version = $composerinfo->extra->version; -$header = "PHPPgAdmin {$version}"; +$header = 'PHPPgAdmin6'; -$config = Config\Factory::fromRuleSet(new Config\RuleSet\Php71($header), [ +$config = Config\Factory::fromRuleSet(new Config\RuleSet\Php74($header), [ 'declare_strict_types' => false, + 'void_return' => false, 'escape_implicit_backslashes' => false, 'final_class' => false, 'final_internal_class' => false, diff --git a/Renderer.php b/Renderer.php index d3c59538..126baa85 100644 --- a/Renderer.php +++ b/Renderer.php @@ -1,11 +1,10 @@ =7.2", + "php": ">=7.4", "ext-json": "*", "ext-mbstring": "*", "ext-pgsql": "*", @@ -38,7 +38,7 @@ "php-parallel-lint/php-parallel-lint": "^1.2", "phpmd/phpmd": "^2.9", "phpstan/phpstan": "^0.12.64", - "rector/rector-prefixed": "^0.9", + "rector/rector-prefixed": "^0.9.31", "simpletest/simpletest": "^1.2", "staabm/annotate-pull-request-from-checkstyle": "^1.4", "vimeo/psalm": "^4" diff --git a/composer.lock b/composer.lock index 4967b0c5..97f9b6e4 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "d816e67674915a07938ecd48e0f3c836", + "content-hash": "66789c6f3cf55b113dfcd3cf15e9bdb9", "packages": [ { "name": "adodb/adodb-php", @@ -4216,16 +4216,16 @@ }, { "name": "rector/rector-prefixed", - "version": "0.9.3", + "version": "0.9.31", "source": { "type": "git", "url": "https://github.com/rectorphp/rector-prefixed.git", - "reference": "31b49acefe7240cba59f94b01f7ee47325322d8b" + "reference": "cff116f7c19bf898c2d76751c8f01debb3c9c13f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/rectorphp/rector-prefixed/zipball/31b49acefe7240cba59f94b01f7ee47325322d8b", - "reference": "31b49acefe7240cba59f94b01f7ee47325322d8b", + "url": "https://api.github.com/repos/rectorphp/rector-prefixed/zipball/cff116f7c19bf898c2d76751c8f01debb3c9c13f", + "reference": "cff116f7c19bf898c2d76751c8f01debb3c9c13f", "shasum": "" }, "require": { @@ -4242,9 +4242,9 @@ ], "description": "Prefixed scoped version of rector/rector package", "support": { - "source": "https://github.com/rectorphp/rector-prefixed/tree/0.9.3" + "source": "https://github.com/rectorphp/rector-prefixed/tree/0.9.31" }, - "time": "2020-12-29T16:24:44+00:00" + "time": "2021-02-22T12:37:56+00:00" }, { "name": "sebastian/cli-parser", @@ -7086,7 +7086,7 @@ "prefer-stable": false, "prefer-lowest": false, "platform": { - "php": ">=7.2", + "php": ">=7.4", "ext-json": "*", "ext-mbstring": "*", "ext-pgsql": "*", diff --git a/index.php b/index.php index 654b9446..f92ab6ba 100644 --- a/index.php +++ b/index.php @@ -3,7 +3,7 @@ declare(strict_types=1); /** - * PHPPgAdmin 6.1.3 + * PHPPgAdmin6 */ \defined('BASE_PATH') || \define('BASE_PATH', __DIR__); diff --git a/rector.php b/rector.php index d6bc7ba4..52b1f4d0 100644 --- a/rector.php +++ b/rector.php @@ -3,6 +3,7 @@ declare(strict_types=1); use PhpParser\Node\Scalar\EncapsedStringPart; +use Rector\CodeQuality\Rector\Concat\JoinStringConcatRector; use Rector\CodingStyle\Rector\Encapsed\EncapsedStringsToSprintfRector; use Rector\CodingStyle\Rector\FuncCall\VersionCompareFuncCallToConstantRector; use Rector\CodingStyle\Rector\Property\AddFalseDefaultToBoolPropertyRector; @@ -17,12 +18,15 @@ return static function (ContainerConfigurator $containerConfigurator): void { $parameters = $containerConfigurator->parameters(); $parameters->set(Option::AUTO_IMPORT_NAMES, true); + //$parameters->set(Option::OPTION_DRY_RUN,true); -/* $parameters->set(Option::SETS, [ + $parameters->set(Option::SETS, [ + SetList::CODE_QUALITY + ]); + /* SetList::CODING_STYLE, SetList::ACTION_INJECTION_TO_CONSTRUCTOR_INJECTION, SetList::ARRAY_STR_FUNCTIONS_TO_STATIC_CALL, - SetList::CODE_QUALITY, SetList::PHP_53, SetList::PHP_54, SetList::PHP_56, @@ -33,7 +37,7 @@ return static function (ContainerConfigurator $containerConfigurator): void { ]);*/ // - + $parameters->set(Option::SKIP, [ VersionCompareFuncCallToConstantRector::class=>[ __DIR__ . '/src',], @@ -50,20 +54,24 @@ return static function (ContainerConfigurator $containerConfigurator): void { ] ]); $parameters->set(Option::PHPSTAN_FOR_RECTOR_PATH, __DIR__ . '/phpstan.neon'); - $parameters->set(Option::PHP_VERSION_FEATURES, PhpVersion::PHP_72); + $parameters->set(Option::PHP_VERSION_FEATURES, PhpVersion::PHP_74); $parameters->set(Option::ENABLE_CACHE, true); $parameters->set(Option::CACHE_DIR, __DIR__ . '/.build/rector'); $parameters->set(Option::PATHS, [ - __DIR__ . '/src', - //__DIR__ . '/src/controllers', - //__DIR__ . '/src/database', - //__DIR__ . '/src/decorators', - //__DIR__ . '/src/middleware', - //__DIR__ . '/src/traits', + //__DIR__ . '/src/translations', + //__DIR__ . '/src', + __DIR__ . '/src/controllers', + __DIR__ . '/src/database', + __DIR__ . '/src/decorators', + __DIR__ . '/src/middleware', + + __DIR__ . '/src/classes', //__DIR__ . '/tests' ]); // register single rule $services = $containerConfigurator->services(); $services->set(EncapsedStringsToSprintfRector::class); + $services->set(JoinStringConcatRector::class); + }; \ No newline at end of file diff --git a/src/classes/ADORecordSet.php b/src/classes/ADORecordSet.php index 674ed8e1..cd1b0119 100644 --- a/src/classes/ADORecordSet.php +++ b/src/classes/ADORecordSet.php @@ -1,11 +1,12 @@ count(); } @@ -45,7 +46,8 @@ class ADORecordSet extends ADODBRecordsetClass implements Countable, Interfaces\ return parent::FetchField(); } - public function MoveNext():void { -parent::MoveNext(); + public function MoveNext(): void + { + parent::MoveNext(); } } diff --git a/src/classes/ArrayRecordSet.php b/src/classes/ArrayRecordSet.php index 17c2b43e..bc7337b3 100644 --- a/src/classes/ArrayRecordSet.php +++ b/src/classes/ArrayRecordSet.php @@ -6,6 +6,7 @@ namespace PHPPgAdmin; +use PHPPgAdmin\Interfaces\RecordSet; use ADOFieldObject; use Countable; @@ -22,7 +23,7 @@ use Countable; * * Id: ArrayRecordSet.php,v 1.3 2007/01/10 01:46:28 soranzo Exp $ */ -class ArrayRecordSet implements Countable , Interfaces\RecordSet +class ArrayRecordSet implements Countable , RecordSet { public $EOF = false; diff --git a/src/classes/CheckStyleRenderer.php b/src/classes/CheckStyleRenderer.php index 8d3dc2c2..ef23395c 100644 --- a/src/classes/CheckStyleRenderer.php +++ b/src/classes/CheckStyleRenderer.php @@ -45,7 +45,7 @@ class CheckStyleRenderer extends XMLRenderer * This method will be called when the engine has finished the source analysis * phase. * - * @param \PHPMD\Report $report + * @param Report $report */ public function renderReport(Report $report) { diff --git a/src/classes/Connection.php b/src/classes/Connection.php index 645169fa..eb898f7c 100644 --- a/src/classes/Connection.php +++ b/src/classes/Connection.php @@ -165,11 +165,7 @@ class Connection $this->conn->setFetchMode($fetchMode); // Ignore host if null if (null === $host || '' === $host) { - if (null !== $port && '' !== $port) { - $pghost = ':' . $port; - } else { - $pghost = ''; - } + $pghost = null !== $port && '' !== $port ? ':' . $port : ''; } else { $pghost = \sprintf( '%s:%s', diff --git a/src/classes/ContainerUtils.php b/src/classes/ContainerUtils.php index 300effc0..7199f163 100644 --- a/src/classes/ContainerUtils.php +++ b/src/classes/ContainerUtils.php @@ -110,7 +110,7 @@ class ContainerUtils extends Container implements ContainerInterface $container = self::getContainerInstance($config); - if (!self::$appInstance) { + if (self::$appInstance === null) { self::$appInstance = new App($container); } @@ -137,7 +137,7 @@ class ContainerUtils extends Container implements ContainerInterface ]; self::$envConfig = \array_merge(self::$envConfig, $config); - if (!self::$instance) { + if (self::$instance === null) { self::$instance = new static(self::$envConfig); self::$instance @@ -171,12 +171,10 @@ class ContainerUtils extends Container implements ContainerInterface $destinationurl = $this->subFolder . '/intro'; } else { // otherwise, you'll be redirected to the login page for that server; - $destinationurl = $this->subFolder . '/login' . ($query_string ? '?' . $query_string : ''); + $destinationurl = $this->subFolder . '/login' . ($query_string !== '' ? '?' . $query_string : ''); } - - $destinationurl = (strpos($destinationurl, '/') === 0) ? $destinationurl : '/' . $destinationurl; // ddd($destinationurl); - return $destinationurl; + return (strpos($destinationurl, '/') === 0) ? $destinationurl : '/' . $destinationurl; } /** @@ -223,9 +221,8 @@ class ContainerUtils extends Container implements ContainerInterface } $_REQUEST = \array_merge($_REQUEST, $urlvars); $_GET = \array_merge($_GET, $urlvars); - $actionurl = Decorator::actionurl($url['url'], $_GET); //kdump($actionurl); - return $actionurl; + return Decorator::actionurl($url['url'], $_GET); } //kdump($url); return null; @@ -269,8 +266,7 @@ class ContainerUtils extends Container implements ContainerInterface $actionurl = Decorator::actionurl($url['url'], $_GET); $destinationurl = str_replace($this->subFolder, '', $actionurl->value($_GET)); } - $destinationurl = (($container->subFolder === '' || strpos($destinationurl, $container->subFolder) === 0) ? '' : $container->subFolder) . $destinationurl; - return $destinationurl; + return (($container->subFolder === '' || strpos($destinationurl, $container->subFolder) === 0) ? '' : $container->subFolder) . $destinationurl; } /** diff --git a/src/classes/Misc.php b/src/classes/Misc.php index 71fbbb48..c32fceb5 100644 --- a/src/classes/Misc.php +++ b/src/classes/Misc.php @@ -337,7 +337,7 @@ class Misc return null; } - if (!$_connection) { + if ($_connection === null) { $this->container->addError($lang['strloginfailed']); $this->setErrorMsg($lang['strloginfailed']); @@ -382,7 +382,7 @@ class Misc } } - if (false !== $this->getNoDBConnection() || + if ($this->getNoDBConnection() || null === $this->getDatabase() || !isset($_REQUEST['schema']) ) { @@ -454,7 +454,7 @@ class Misc $this->container ); } catch (ADOdbException $e) { - throw new Exception($lang['strloginfailed']); + throw new Exception($lang['strloginfailed'], $e->getCode(), $e); } } @@ -540,12 +540,10 @@ class Misc } else { $_SESSION['webdbLogin'][$server_id] = $value; } + } elseif (null === $value) { + unset($_SESSION['webdbLogin'][$server_id][$key]); } else { - if (null === $value) { - unset($_SESSION['webdbLogin'][$server_id][$key]); - } else { - $_SESSION['webdbLogin'][$server_id][$key] = $value; - } + $_SESSION['webdbLogin'][$server_id][$key] = $value; } } @@ -669,7 +667,7 @@ class Misc public function stripVar(&$var): void { if (\is_array($var)) { - foreach ($var as $k => $v) { + foreach (array_keys($var) as $k) { $this->stripVar($var[$k]); /* magic_quotes_gpc escape keys as well ...*/ @@ -804,15 +802,15 @@ class Misc [$usec, $sec] = \explode(' ', \microtime()); $time = ((float) $usec + (float) $sec); - $server = $this->container->server ? $this->container->server : $_REQUEST['server']; - $database = $this->container->database ? $this->container->database : $_REQUEST['database']; + $server = $this->container->server !== '' ? $this->container->server : $_REQUEST['server']; + $database = $this->container->database !== '' ? $this->container->database : $_REQUEST['database']; $_SESSION['history'][$server][$database][\sprintf( '%s', $time )] = [ 'query' => $script, - 'paginate' => !isset($_REQUEST['paginate']) ? 'f' : 't', + 'paginate' => isset($_REQUEST['paginate']) ? 't' : 'f', 'queryid' => $time, ]; } diff --git a/src/classes/Translations.php b/src/classes/Translations.php index 517f0bbf..087f4701 100644 --- a/src/classes/Translations.php +++ b/src/classes/Translations.php @@ -219,11 +219,7 @@ class Translations $_SESSION['webdbLanguage'] = $_language; - if (\array_key_exists($_language, $languages_iso_code)) { - $_isolang = $languages_iso_code[$_language]; - } else { - $_isolang = 'en'; - } + $_isolang = \array_key_exists($_language, $languages_iso_code) ? $languages_iso_code[$_language] : 'en'; $_SESSION['isolang'] = $_isolang; $container->offsetSet('appLangFiles', $appLangFiles); @@ -247,7 +243,7 @@ class Translations $_language = null; $_acceptLang = []; \preg_match_all( - '/\s*([a-z]{1,8}(?:-[a-z]{1,8})*)(?:;q=([01](?:.[0-9]{0,3})?))?\s*(?:,|$)/', + '/\s*([a-z]{1,8}(?:-[a-z]{1,8})*)(?:;q=([01](?:.\d{0,3})?))?\s*(?:,|$)/', \mb_strtolower($_SERVER['HTTP_ACCEPT_LANGUAGE']), $_m, \PREG_SET_ORDER diff --git a/src/classes/ViewManager.php b/src/classes/ViewManager.php index 1b125d72..0217b515 100644 --- a/src/classes/ViewManager.php +++ b/src/classes/ViewManager.php @@ -264,7 +264,7 @@ class ViewManager extends Twig { $form = []; - if ($this->container->server) { + if ($this->container->server !== '') { $form[] = \sprintf( '', 'server', @@ -272,7 +272,7 @@ class ViewManager extends Twig ); } - if ($this->container->database) { + if ($this->container->database !== '') { $form[] = \sprintf( '', 'database', @@ -280,7 +280,7 @@ class ViewManager extends Twig ); } - if ($this->container->schema) { + if ($this->container->schema !== '') { $form[] = \sprintf( '', 'schema', @@ -505,7 +505,7 @@ public function maybeRenderIframes(Response $response, string $subject, string $ return $controller->render(); } $viewVars = [ - 'url' => '/src/views/' . $subject . ($query_string ? '?' . $query_string : ''), + 'url' => '/src/views/' . $subject . ($query_string !== '' ? '?' . $query_string : ''), 'headertemplate' => 'header.twig', ]; diff --git a/src/controllers/AggregatesController.php b/src/controllers/AggregatesController.php index 55f124b5..601dd562 100644 --- a/src/controllers/AggregatesController.php +++ b/src/controllers/AggregatesController.php @@ -6,6 +6,7 @@ namespace PHPPgAdmin\Controller; +use Slim\Http\Response; use PHPPgAdmin\Decorators\Decorator; /** @@ -183,7 +184,7 @@ class AggregatesController extends BaseController } /** - * @return \Slim\Http\Response|string + * @return Response|string */ public function doTree() { diff --git a/src/controllers/AlldbController.php b/src/controllers/AlldbController.php index 91a2ab14..479efe92 100644 --- a/src/controllers/AlldbController.php +++ b/src/controllers/AlldbController.php @@ -6,6 +6,7 @@ namespace PHPPgAdmin\Controller; +use Slim\Http\Response; use PHPPgAdmin\Decorators\Decorator; use PHPPgAdmin\Traits\ExportTrait; @@ -237,7 +238,7 @@ class AlldbController extends BaseController } /** - * @return \Slim\Http\Response|string + * @return Response|string */ public function doTree() { diff --git a/src/controllers/BaseController.php b/src/controllers/BaseController.php index 919b555c..c454b9f3 100644 --- a/src/controllers/BaseController.php +++ b/src/controllers/BaseController.php @@ -25,6 +25,7 @@ use ADORecordSet as ADODBRecordsetClass; */ class BaseController { + public $postgresqlMinVer; use HelperTrait; public $appLangFiles = []; @@ -174,13 +175,7 @@ class BaseController $this->printHeader(); $this->printBody(); - - switch ($this->action) { - default: - $this->doDefault(); - - break; - } + $this->doDefault(); $this->printFooter(); } @@ -207,9 +202,9 @@ class BaseController */ public function headerTitle($title = '', $prefix = '', $suffix = '') { - $title = $title ? $title : $this->controller_title; + $title = $title !== '' ? $title : $this->controller_title; - return $prefix . $this->lang[$title] . ($suffix ? ': ' . $suffix : ''); + return $prefix . $this->lang[$title] . ($suffix !== '' ? ': ' . $suffix : ''); } /** @@ -404,7 +399,7 @@ class BaseController */ public function printHeader(string $title = '', ?string $script = null, bool $do_print = true, string $template = 'header.twig') { - $title = $title ? $title : $this->headerTitle(); + $title = $title !== '' ? $title : $this->headerTitle(); $header_controller = $this->_getHeaderController(); return $header_controller->printHeader($title, $script, $do_print, $template); @@ -509,7 +504,7 @@ class BaseController private function renderInitialPageIfNotLogged(): void { - if (false === $this->misc->getNoDBConnection()) { + if (!$this->misc->getNoDBConnection()) { if (null === $this->misc->getServerId()) { $servers_controller = new ServersController($this->container); diff --git a/src/controllers/CastsController.php b/src/controllers/CastsController.php index 8d83745e..29451a9a 100644 --- a/src/controllers/CastsController.php +++ b/src/controllers/CastsController.php @@ -6,6 +6,7 @@ namespace PHPPgAdmin\Controller; +use Slim\Http\Response; use PHPPgAdmin\Decorators\Decorator; /** @@ -26,14 +27,8 @@ class CastsController extends BaseController $this->printHeader(); $this->printBody(); - - switch ($this->action) { - default: - $this->doDefault(); - - break; - } - + $this->doDefault(); + return $this->printFooter(); } @@ -99,7 +94,7 @@ class CastsController extends BaseController /** * Generate XML for the browser tree. * - * @return \Slim\Http\Response|string + * @return Response|string */ public function doTree() { diff --git a/src/controllers/ConstraintsController.php b/src/controllers/ConstraintsController.php index d10e4b80..332b3107 100644 --- a/src/controllers/ConstraintsController.php +++ b/src/controllers/ConstraintsController.php @@ -581,7 +581,6 @@ class ConstraintsController extends BaseController $this->printTrail('table'); $this->printTitle($this->lang['straddcheck'], 'pg.constraint.check'); $this->printMsg($msg); - echo '
' . \PHP_EOL; echo '' . \PHP_EOL; echo \sprintf( @@ -592,17 +591,14 @@ class ConstraintsController extends BaseController '', $this->lang['strdefinition'] ) . \PHP_EOL; - echo \sprintf( '' . \PHP_EOL; - echo '' . \PHP_EOL; echo '
%s
()
' . \PHP_EOL; - echo $this->getFormInputsAndButtons( [ ['name' => 'action', 'type' => 'hidden', 'value' => 'save_add_check'], @@ -613,27 +609,24 @@ class ConstraintsController extends BaseController ['type' => 'submit', 'name' => 'cancel', 'value' => $this->lang['strcancel']], ] ); - echo \sprintf( '
%s', \PHP_EOL ); + } elseif ('' === \trim($_POST['definition'])) { + $this->addCheck(true, $this->lang['strcheckneedsdefinition']); } else { - if ('' === \trim($_POST['definition'])) { - $this->addCheck(true, $this->lang['strcheckneedsdefinition']); - } else { - $status = $data->addCheckConstraint( - $_POST['table'], - $_POST['definition'], - $_POST['name'] - ); - - if (0 === $status) { - return $this->doDefault($this->lang['strcheckadded']); - } + $status = $data->addCheckConstraint( + $_POST['table'], + $_POST['definition'], + $_POST['name'] + ); - return $this->addCheck(true, $this->lang['strcheckaddedbad']); + if (0 === $status) { + return $this->doDefault($this->lang['strcheckadded']); } + + return $this->addCheck(true, $this->lang['strcheckaddedbad']); } } diff --git a/src/controllers/ConversionsController.php b/src/controllers/ConversionsController.php index 9861672c..e2721f8b 100644 --- a/src/controllers/ConversionsController.php +++ b/src/controllers/ConversionsController.php @@ -6,6 +6,7 @@ namespace PHPPgAdmin\Controller; +use Slim\Http\Response; use PHPPgAdmin\Decorators\Decorator; /** @@ -26,13 +27,8 @@ class ConversionsController extends BaseController $this->printHeader(); $this->printBody(); - - switch ($this->action) { - default: - $this->doDefault(); - - break; - } + $this->doDefault(); + return $this->printFooter(); } @@ -82,7 +78,7 @@ class ConversionsController extends BaseController } /** - * @return \Slim\Http\Response|string + * @return Response|string */ public function doTree() { diff --git a/src/controllers/DatabaseController.php b/src/controllers/DatabaseController.php index a33b835d..e9801e91 100644 --- a/src/controllers/DatabaseController.php +++ b/src/controllers/DatabaseController.php @@ -6,6 +6,7 @@ namespace PHPPgAdmin\Controller; +use Slim\Http\Response; use PHPPgAdmin\Decorators\Decorator; use PHPPgAdmin\Traits\AdminTrait; use PHPPgAdmin\Traits\ExportTrait; @@ -146,7 +147,7 @@ class DatabaseController extends BaseController /** * @param mixed $print * - * @return \Slim\Http\Response|string + * @return Response|string */ public function doTree($print = true) { @@ -737,10 +738,7 @@ class DatabaseController extends BaseController switch ($curr) { case 'SCHEMA': $destination = $this->container->getDestinationWithLastTab('schema'); - echo '
  • subFolder . $destination; echo $this->misc->printVal($rs->fields['name']), '">'; echo $this->_highlight($this->misc->printVal($rs->fields['name']), $_REQUEST['term']); echo '
  • ' . \PHP_EOL; diff --git a/src/controllers/DataexportController.php b/src/controllers/DataexportController.php index 5f18a25a..84c0899c 100644 --- a/src/controllers/DataexportController.php +++ b/src/controllers/DataexportController.php @@ -364,7 +364,7 @@ class DataexportController extends BaseController // Output header row $j = 0; - foreach ($rs->fields as $k => $v) { + foreach (array_keys($rs->fields) as $k) { $finfo = $rs->FetchField($j++); if ($finfo->name === $data->id && !$oids) { @@ -407,7 +407,7 @@ class DataexportController extends BaseController $j = 0; echo "\t
    " . \PHP_EOL; - foreach ($rs->fields as $k => $v) { + foreach (array_keys($rs->fields) as $k) { $finfo = $rs->FetchField($j++); $name = \htmlspecialchars($finfo->name); $type = \htmlspecialchars($finfo->type); diff --git a/src/controllers/DataimportController.php b/src/controllers/DataimportController.php index f1c688d7..abb13179 100644 --- a/src/controllers/DataimportController.php +++ b/src/controllers/DataimportController.php @@ -232,12 +232,7 @@ class DataimportController extends BaseController case 'tab': // XXX: Length of CSV lines limited to 100k $csv_max_line = 100000; - // Set delimiter to tabs or commas - if ('csv' === $_REQUEST['format']) { - $csv_delimiter = ','; - } else { - $csv_delimiter = "\t"; - } + $csv_delimiter = 'csv' === $_REQUEST['format'] ? ',' : "\t"; // Get first line of field names $fields = \fgetcsv($fd, $csv_max_line, $csv_delimiter); diff --git a/src/controllers/DisplayController.php b/src/controllers/DisplayController.php index 670220cd..7ca9a253 100644 --- a/src/controllers/DisplayController.php +++ b/src/controllers/DisplayController.php @@ -511,7 +511,7 @@ private function FetchField(ADORecordSet $ADORecordSet,int $index):ADOFieldObjec $strings=$this->getRequestParam('string', 'collapsed'); $result=[]; foreach ($resultset->fields as $fieldname => $fieldvalue) { - /** @var \ADOFieldObject */ + /** @var ADOFieldObject */ $finfo =$this->FetchField( $resultset,$j++); if (($fieldname === $data->id) && (!($withOid && $this->conf['show_oids']))) { @@ -536,7 +536,7 @@ $result=[]; $strings=$this->getRequestParam('string', 'collapsed'); foreach ($resultset->fields as $fieldName => $fieldValue) { - /** @var \ADOFieldObject */ + /** @var ADOFieldObject */ $finfo =$this->FetchField( $resultset,$j++); if (($fieldName === $data->id) && (!($withOid && $this->conf['show_oids']))) { @@ -1139,7 +1139,7 @@ $result=[]; $ops = []; - foreach ($_REQUEST['fkey'] as $x => $y) { + foreach (array_keys($_REQUEST['fkey']) as $x) { $ops[$x] = '='; } $query = $data->getSelectSQL($_REQUEST['table'], [], $_REQUEST['fkey'], $ops); @@ -1478,8 +1478,7 @@ $result=[]; \PHP_EOL ); } - $result .= '

    ' . \PHP_EOL; - return $result; + return $result . ('

    ' . \PHP_EOL); } } diff --git a/src/controllers/DomainsController.php b/src/controllers/DomainsController.php index 469789ac..80ee6dc4 100644 --- a/src/controllers/DomainsController.php +++ b/src/controllers/DomainsController.php @@ -6,6 +6,7 @@ namespace PHPPgAdmin\Controller; +use Slim\Http\Response; use PHPPgAdmin\Decorators\Decorator; /** @@ -209,7 +210,7 @@ class DomainsController extends BaseController /** * Generate XML for the browser tree. * - * @return \Slim\Http\Response|string + * @return Response|string */ public function doTree() { @@ -365,7 +366,6 @@ class DomainsController extends BaseController $this->printTrail('domain'); $this->printTitle($this->lang['straddcheck'], 'pg.constraint.check'); $this->printMsg($msg); - echo '
    ' . \PHP_EOL; echo '' . \PHP_EOL; echo \sprintf( @@ -376,17 +376,14 @@ class DomainsController extends BaseController '', $this->lang['strdefinition'] ) . \PHP_EOL; - echo \sprintf( '' . \PHP_EOL; - echo '' . \PHP_EOL; echo '
    %s
    ()
    ' . \PHP_EOL; - echo '

    ' . \PHP_EOL; echo '' . \PHP_EOL; echo $this->view->form; @@ -400,21 +397,19 @@ class DomainsController extends BaseController \PHP_EOL ); echo '

    ' . \PHP_EOL; + } elseif ('' === \trim($_POST['definition'])) { + $this->addCheck(true, $this->lang['strcheckneedsdefinition']); } else { - if ('' === \trim($_POST['definition'])) { - $this->addCheck(true, $this->lang['strcheckneedsdefinition']); + $status = $data->addDomainCheckConstraint( + $_POST['domain'], + $_POST['definition'], + $_POST['name'] + ); + + if (0 === $status) { + $this->doProperties($this->lang['strcheckadded']); } else { - $status = $data->addDomainCheckConstraint( - $_POST['domain'], - $_POST['definition'], - $_POST['name'] - ); - - if (0 === $status) { - $this->doProperties($this->lang['strcheckadded']); - } else { - $this->addCheck(true, $this->lang['strcheckaddedbad']); - } + $this->addCheck(true, $this->lang['strcheckaddedbad']); } } } diff --git a/src/controllers/FulltextController.php b/src/controllers/FulltextController.php index 758b0df5..4c91d786 100644 --- a/src/controllers/FulltextController.php +++ b/src/controllers/FulltextController.php @@ -6,6 +6,7 @@ namespace PHPPgAdmin\Controller; +use Slim\Http\Response; use PHPPgAdmin\Decorators\Decorator; use PHPPgAdmin\XHtml\HTMLController; @@ -33,11 +34,7 @@ class FulltextController extends BaseController $this->printBody(); if (null !== $this->getPostParam('cancel')) { - if (isset($_POST['prev_action'])) { - $this->action = $_POST['prev_action']; - } else { - $this->action = ''; - } + $this->action = isset($_POST['prev_action']) ? $_POST['prev_action'] : ''; } switch ($this->action) { @@ -221,7 +218,7 @@ class FulltextController extends BaseController /** * Generate XML for the browser tree. * - * @return \Slim\Http\Response|string + * @return Response|string */ public function doTree() { @@ -254,7 +251,7 @@ class FulltextController extends BaseController /** * @param mixed $what * - * @return null|\Slim\Http\Response|string + * @return null|Response|string */ public function doSubTree($what) { @@ -552,17 +549,9 @@ class FulltextController extends BaseController return $this->doCreateConfig($err); } - if ('' !== $_POST['formParser']) { - $formParser = \unserialize($_POST['formParser']); - } else { - $formParser = ''; - } + $formParser = '' !== $_POST['formParser'] ? \unserialize($_POST['formParser']) : ''; - if ('' !== $_POST['formTemplate']) { - $formTemplate = \unserialize($_POST['formTemplate']); - } else { - $formTemplate = ''; - } + $formTemplate = '' !== $_POST['formTemplate'] ? \unserialize($_POST['formTemplate']) : ''; $status = $data->createFtsConfiguration($_POST['formName'], $formParser, $formTemplate, $_POST['formComment']); @@ -1052,11 +1041,7 @@ class FulltextController extends BaseController } else { $this->coalesceArr($_POST, 'formIsTemplate', false); - if (isset($_POST['formTemplate'])) { - $formTemplate = \unserialize($_POST['formTemplate']); - } else { - $formTemplate = ''; - } + $formTemplate = isset($_POST['formTemplate']) ? \unserialize($_POST['formTemplate']) : ''; $this->coalesceArr($_POST, 'formLexize', ''); @@ -1192,11 +1177,10 @@ class FulltextController extends BaseController } if ($confirm) { - $this->printTrail('ftscfg'); // TODO: proper breadcrumbs + $this->printTrail('ftscfg'); + // TODO: proper breadcrumbs $this->printTitle($this->lang['strdrop'], 'pg.ftscfg.alter'); - echo '
    ' . \PHP_EOL; - // Case of multiaction drop if (isset($_REQUEST['ma'])) { foreach ($_REQUEST['ma'] as $v) { @@ -1216,7 +1200,6 @@ class FulltextController extends BaseController ), '

    ' . \PHP_EOL; echo '' . \PHP_EOL; } - echo \sprintf( '', $_REQUEST['ftscfg'] @@ -1233,25 +1216,21 @@ class FulltextController extends BaseController $this->lang['strcancel'] ) . \PHP_EOL; echo '
    ' . \PHP_EOL; - } else { - // Case of multiaction drop - if (\is_array($_REQUEST['mapping'])) { - $status = $data->changeFtsMapping($_REQUEST['ftscfg'], $_REQUEST['mapping'], 'drop'); + } elseif (\is_array($_REQUEST['mapping'])) { + $status = $data->changeFtsMapping($_REQUEST['ftscfg'], $_REQUEST['mapping'], 'drop'); + if (0 !== $status) { + $this->doViewConfig($_REQUEST['ftscfg'], $this->lang['strftsmappingdroppedbad']); - if (0 !== $status) { - $this->doViewConfig($_REQUEST['ftscfg'], $this->lang['strftsmappingdroppedbad']); + return; + } + $this->doViewConfig($_REQUEST['ftscfg'], $this->lang['strftsmappingdropped']); + } else { + $status = $data->changeFtsMapping($_REQUEST['ftscfg'], [$_REQUEST['mapping']], 'drop'); - return; - } + if (0 === $status) { $this->doViewConfig($_REQUEST['ftscfg'], $this->lang['strftsmappingdropped']); } else { - $status = $data->changeFtsMapping($_REQUEST['ftscfg'], [$_REQUEST['mapping']], 'drop'); - - if (0 === $status) { - $this->doViewConfig($_REQUEST['ftscfg'], $this->lang['strftsmappingdropped']); - } else { - $this->doViewConfig($_REQUEST['ftscfg'], $this->lang['strftsmappingdroppedbad']); - } + $this->doViewConfig($_REQUEST['ftscfg'], $this->lang['strftsmappingdroppedbad']); } } } @@ -1418,7 +1397,7 @@ class FulltextController extends BaseController '>%s', $mapping ), - $mapping_desc ? \sprintf( + $mapping_desc !== '' ? \sprintf( ' - %s', $mapping_desc ) : '', diff --git a/src/controllers/FunctionsController.php b/src/controllers/FunctionsController.php index fea69aa8..e1a8f62c 100644 --- a/src/controllers/FunctionsController.php +++ b/src/controllers/FunctionsController.php @@ -6,6 +6,7 @@ namespace PHPPgAdmin\Controller; +use Slim\Http\Response; use ADORecordSet; use PHPPgAdmin\Decorators\Decorator; @@ -197,7 +198,7 @@ class FunctionsController extends BaseController /** * Generate XML for the browser tree. * - * @return \Slim\Http\Response|string + * @return Response|string */ public function doTree() { @@ -330,12 +331,7 @@ class FunctionsController extends BaseController $_POST['formRows'] = $this->getPostParam('formRows', $fndata->fields['prorows']); } - // Deal with named parameters - if ($data->hasNamedParams()) { - $args = $this->_getNamedParamsArgs($data, $fndata); - } else { - $args = $fndata->fields['proarguments']; - } + $args = $data->hasNamedParams() ? $this->_getNamedParamsArgs($data, $fndata) : $fndata->fields['proarguments']; echo '
    ' . \PHP_EOL; echo '' . \PHP_EOL; @@ -473,7 +469,7 @@ class FunctionsController extends BaseController ''; + \htmlspecialchars($_POST['formRows']), '"', ($fndata->fields['proretset']) ? '' : 'disabled', '/>'; } // Display function properties @@ -800,9 +796,7 @@ class FunctionsController extends BaseController $this->printTrail('function'); $this->printTabs('function', 'definition'); $this->printTitle($this->lang['strdrop'], 'pg.function.drop'); - echo '' . \PHP_EOL; - //If multi drop if (isset($_REQUEST['ma'])) { foreach ($_REQUEST['ma'] as $v) { @@ -822,9 +816,7 @@ class FunctionsController extends BaseController echo '' . \PHP_EOL; echo '' . \PHP_EOL; } - echo '' . \PHP_EOL; - echo $this->view->form; echo \sprintf( '

    ', @@ -839,51 +831,47 @@ class FunctionsController extends BaseController $this->lang['strcancel'] ) . \PHP_EOL; echo '' . \PHP_EOL; - } else { - if (\is_array($_POST['function_oid'])) { - $msg = ''; - $status = $data->beginTransaction(); - - if (0 === $status) { - foreach ($_POST['function_oid'] as $k => $s) { - $status = $data->dropFunction($s, isset($_POST['cascade'])); - - if (0 === $status) { - $msg .= \sprintf( - '%s: %s
    ', - \htmlentities($_POST['function'][$k], \ENT_QUOTES, 'UTF-8'), - $this->lang['strfunctiondropped'] - ); - } else { - $data->endTransaction(); - $this->doDefault(\sprintf( - '%s%s: %s
    ', - $msg, - \htmlentities($_POST['function'][$k], \ENT_QUOTES, 'UTF-8'), - $this->lang['strfunctiondroppedbad'] - )); - - return; - } + } elseif (\is_array($_POST['function_oid'])) { + $msg = ''; + $status = $data->beginTransaction(); + if (0 === $status) { + foreach ($_POST['function_oid'] as $k => $s) { + $status = $data->dropFunction($s, isset($_POST['cascade'])); + + if (0 === $status) { + $msg .= \sprintf( + '%s: %s
    ', + \htmlentities($_POST['function'][$k], \ENT_QUOTES, 'UTF-8'), + $this->lang['strfunctiondropped'] + ); + } else { + $data->endTransaction(); + $this->doDefault(\sprintf( + '%s%s: %s
    ', + $msg, + \htmlentities($_POST['function'][$k], \ENT_QUOTES, 'UTF-8'), + $this->lang['strfunctiondroppedbad'] + )); + + return; } } - - if (0 === $data->endTransaction()) { - // Everything went fine, back to the Default page.... - $this->view->setReloadBrowser(true); - $this->doDefault($msg); - } else { - $this->doDefault($this->lang['strfunctiondroppedbad']); - } + } + if (0 === $data->endTransaction()) { + // Everything went fine, back to the Default page.... + $this->view->setReloadBrowser(true); + $this->doDefault($msg); } else { - $status = $data->dropFunction($_POST['function_oid'], isset($_POST['cascade'])); + $this->doDefault($this->lang['strfunctiondroppedbad']); + } + } else { + $status = $data->dropFunction($_POST['function_oid'], isset($_POST['cascade'])); - if (0 === $status) { - $this->view->setReloadBrowser(true); - $this->doDefault($this->lang['strfunctiondropped']); - } else { - $this->doDefault($this->lang['strfunctiondroppedbad']); - } + if (0 === $status) { + $this->view->setReloadBrowser(true); + $this->doDefault($this->lang['strfunctiondropped']); + } else { + $this->doDefault($this->lang['strfunctiondroppedbad']); } } } @@ -1534,7 +1522,7 @@ class FunctionsController extends BaseController foreach ($arrayArgs as $pV) { $arrayWords = \explode(' ', $pV); - if (true === \in_array($arrayWords[0], $arrayModes, true)) { + if (\in_array($arrayWords[0], $arrayModes, true)) { $szMode = $arrayWords[0]; \array_shift($arrayWords); } diff --git a/src/controllers/HelpController.php b/src/controllers/HelpController.php index 141fa636..49ef698b 100644 --- a/src/controllers/HelpController.php +++ b/src/controllers/HelpController.php @@ -72,7 +72,7 @@ class HelpController extends BaseController $pages = $data->getHelpPages(); - foreach ($pages as $page => $dummy) { + foreach (array_keys($pages) as $page) { echo \sprintf( '
    %s
    ', $page diff --git a/src/controllers/IndexesController.php b/src/controllers/IndexesController.php index 96d76522..c0f7de8c 100644 --- a/src/controllers/IndexesController.php +++ b/src/controllers/IndexesController.php @@ -6,6 +6,7 @@ namespace PHPPgAdmin\Controller; +use Slim\Http\Response; use PHPPgAdmin\ADOdbException; use PHPPgAdmin\Decorators\Decorator; use PHPPgAdmin\XHtml\XHtmlButton; @@ -218,7 +219,7 @@ class IndexesController extends BaseController } /** - * @return \Slim\Http\Response|string + * @return Response|string */ public function doTree() { diff --git a/src/controllers/InfoController.php b/src/controllers/InfoController.php index 2c358991..c55d04d0 100644 --- a/src/controllers/InfoController.php +++ b/src/controllers/InfoController.php @@ -13,6 +13,10 @@ use PHPPgAdmin\Decorators\Decorator; */ class InfoController extends BaseController { + /** + * @var array|mixed + */ + public $shownull; public $controller_title = 'strtables'; /** @@ -22,14 +26,8 @@ class InfoController extends BaseController { $this->printHeader($this->headerTitle('', '', $_REQUEST['table'] . ' - ' . $this->lang['strinfo'])); $this->printBody(); - - switch ($this->action) { - default: - $this->doDefault(); - - break; - } - + $this->doDefault(); + $this->printFooter(); } @@ -304,11 +302,7 @@ class InfoController extends BaseController $total = $tablestatsio->fields['heap_blks_hit'] + $tablestatsio->fields['heap_blks_read']; - if (0 < $total) { - $percentage = \round(($tablestatsio->fields['heap_blks_hit'] / $total) * 100); - } else { - $percentage = 0; - } + $percentage = 0 < $total ? \round(($tablestatsio->fields['heap_blks_hit'] / $total) * 100) : 0; echo "\t\t' . \PHP_EOL; echo "\t\t' . \PHP_EOL; @@ -320,11 +314,7 @@ class InfoController extends BaseController $total = $tablestatsio->fields['idx_blks_hit'] + $tablestatsio->fields['idx_blks_read']; - if (0 < $total) { - $percentage = \round(($tablestatsio->fields['idx_blks_hit'] / $total) * 100); - } else { - $percentage = 0; - } + $percentage = 0 < $total ? \round(($tablestatsio->fields['idx_blks_hit'] / $total) * 100) : 0; echo "\t\t' . \PHP_EOL; echo "\t\t' . \PHP_EOL; @@ -336,11 +326,7 @@ class InfoController extends BaseController $total = $tablestatsio->fields['toast_blks_hit'] + $tablestatsio->fields['toast_blks_read']; - if (0 < $total) { - $percentage = \round(($tablestatsio->fields['toast_blks_hit'] / $total) * 100); - } else { - $percentage = 0; - } + $percentage = 0 < $total ? \round(($tablestatsio->fields['toast_blks_hit'] / $total) * 100) : 0; echo "\t\t' . \PHP_EOL; echo "\t\t' . \PHP_EOL; @@ -352,11 +338,7 @@ class InfoController extends BaseController $total = $tablestatsio->fields['tidx_blks_hit'] + $tablestatsio->fields['tidx_blks_read']; - if (0 < $total) { - $percentage = \round(($tablestatsio->fields['tidx_blks_hit'] / $total) * 100); - } else { - $percentage = 0; - } + $percentage = 0 < $total ? \round(($tablestatsio->fields['tidx_blks_hit'] / $total) * 100) : 0; echo "\t\t' . \PHP_EOL; echo "\t\t' . \PHP_EOL; @@ -455,11 +437,7 @@ class InfoController extends BaseController ) . \PHP_EOL; $total = $indexstatsio->fields['idx_blks_hit'] + $indexstatsio->fields['idx_blks_read']; - if (0 < $total) { - $percentage = \round(($indexstatsio->fields['idx_blks_hit'] / $total) * 100); - } else { - $percentage = 0; - } + $percentage = 0 < $total ? \round(($indexstatsio->fields['idx_blks_hit'] / $total) * 100) : 0; echo "\t\t' . \PHP_EOL; echo "\t\t' . \PHP_EOL; diff --git a/src/controllers/IntroController.php b/src/controllers/IntroController.php index 1382da0a..9ffdb846 100644 --- a/src/controllers/IntroController.php +++ b/src/controllers/IntroController.php @@ -101,8 +101,7 @@ class IntroController extends BaseController if (\requestInstance()->getQueryParam('language')) { $this->view->setReloadBrowser(true); } - $intro_html .= $this->printFooter(false); - return $intro_html; + return $intro_html . $this->printFooter(false); } } diff --git a/src/controllers/LanguagesController.php b/src/controllers/LanguagesController.php index 14f5b593..88452586 100644 --- a/src/controllers/LanguagesController.php +++ b/src/controllers/LanguagesController.php @@ -6,6 +6,7 @@ namespace PHPPgAdmin\Controller; +use Slim\Http\Response; use PHPPgAdmin\Decorators\Decorator; /** @@ -26,13 +27,7 @@ class LanguagesController extends BaseController $this->printHeader(); $this->printBody(); - - switch ($this->action) { - default: - $this->doDefault(); - - break; - } + $this->doDefault(); $this->printFooter(); } @@ -76,7 +71,7 @@ class LanguagesController extends BaseController /** * Generate XML for the browser tree. * - * @return \Slim\Http\Response|string + * @return Response|string */ public function doTree() { diff --git a/src/controllers/MaterializedviewsController.php b/src/controllers/MaterializedviewsController.php index 8831d6d1..45242dcc 100644 --- a/src/controllers/MaterializedviewsController.php +++ b/src/controllers/MaterializedviewsController.php @@ -6,6 +6,7 @@ namespace PHPPgAdmin\Controller; +use Slim\Http\Response; use PHPPgAdmin\Decorators\Decorator; use PHPPgAdmin\Traits\ViewsMatviewsTrait; @@ -246,7 +247,7 @@ class MaterializedviewsController extends BaseController /** * Generate XML for the browser tree. * - * @return \Slim\Http\Response|string + * @return Response|string */ public function doTree() { @@ -284,9 +285,7 @@ class MaterializedviewsController extends BaseController if ($confirm) { $this->printTrail('getTrail'); $this->printTitle($this->lang['strdrop'], 'pg.matview.drop'); - echo '' . \PHP_EOL; - //If multi drop if (isset($_REQUEST['ma'])) { foreach ($_REQUEST['ma'] as $v) { @@ -304,9 +303,7 @@ class MaterializedviewsController extends BaseController ), '

    ' . \PHP_EOL; echo '' . \PHP_EOL; } - echo '' . \PHP_EOL; - echo $this->view->form; echo \sprintf( '

    ', @@ -321,51 +318,47 @@ class MaterializedviewsController extends BaseController $this->lang['strcancel'] ) . \PHP_EOL; echo '' . \PHP_EOL; - } else { - if (\is_array($_POST['view'])) { - $msg = ''; - $status = $data->beginTransaction(); - - if (0 === $status) { - foreach ($_POST['view'] as $s) { - $status = $data->dropView($s, isset($_POST['cascade'])); - - if (0 === $status) { - $msg .= \sprintf( - '%s: %s
    ', - \htmlentities($s, \ENT_QUOTES, 'UTF-8'), - $this->lang['strviewdropped'] - ); - } else { - $data->endTransaction(); - $this->doDefault(\sprintf( - '%s%s: %s
    ', - $msg, - \htmlentities($s, \ENT_QUOTES, 'UTF-8'), - $this->lang['strviewdroppedbad'] - )); - - return; - } + } elseif (\is_array($_POST['view'])) { + $msg = ''; + $status = $data->beginTransaction(); + if (0 === $status) { + foreach ($_POST['view'] as $s) { + $status = $data->dropView($s, isset($_POST['cascade'])); + + if (0 === $status) { + $msg .= \sprintf( + '%s: %s
    ', + \htmlentities($s, \ENT_QUOTES, 'UTF-8'), + $this->lang['strviewdropped'] + ); + } else { + $data->endTransaction(); + $this->doDefault(\sprintf( + '%s%s: %s
    ', + $msg, + \htmlentities($s, \ENT_QUOTES, 'UTF-8'), + $this->lang['strviewdroppedbad'] + )); + + return; } } - - if (0 === $data->endTransaction()) { - // Everything went fine, back to the Default page.... - $this->view->setReloadBrowser(true); - $this->doDefault($msg); - } else { - $this->doDefault($this->lang['strviewdroppedbad']); - } + } + if (0 === $data->endTransaction()) { + // Everything went fine, back to the Default page.... + $this->view->setReloadBrowser(true); + $this->doDefault($msg); } else { - $status = $data->dropView($_POST['view'], isset($_POST['cascade'])); + $this->doDefault($this->lang['strviewdroppedbad']); + } + } else { + $status = $data->dropView($_POST['view'], isset($_POST['cascade'])); - if (0 === $status) { - $this->view->setReloadBrowser(true); - $this->doDefault($this->lang['strviewdropped']); - } else { - $this->doDefault($this->lang['strviewdroppedbad']); - } + if (0 === $status) { + $this->view->setReloadBrowser(true); + $this->doDefault($this->lang['strviewdropped']); + } else { + $this->doDefault($this->lang['strviewdroppedbad']); } } } @@ -419,11 +412,7 @@ class MaterializedviewsController extends BaseController $this->coalesceArr($_REQUEST, 'formView', ''); if (!isset($_REQUEST['formDefinition'])) { - if (isset($_SESSION['sqlquery'])) { - $_REQUEST['formDefinition'] = $_SESSION['sqlquery']; - } else { - $_REQUEST['formDefinition'] = 'SELECT '; - } + $_REQUEST['formDefinition'] = isset($_SESSION['sqlquery']) ? $_SESSION['sqlquery'] : 'SELECT '; } $this->coalesceArr($_REQUEST, 'formComment', ''); diff --git a/src/controllers/OpclassesController.php b/src/controllers/OpclassesController.php index b0d01065..2bb95657 100644 --- a/src/controllers/OpclassesController.php +++ b/src/controllers/OpclassesController.php @@ -6,6 +6,7 @@ namespace PHPPgAdmin\Controller; +use Slim\Http\Response; use PHPPgAdmin\Decorators\Decorator; /** @@ -26,13 +27,8 @@ class OpclassesController extends BaseController $this->printHeader(); $this->printBody(); + $this->doDefault(); - switch ($this->action) { - default: - $this->doDefault(); - - break; - } $this->printFooter(); } @@ -84,7 +80,7 @@ class OpclassesController extends BaseController /** * Generate XML for the browser tree. * - * @return \Slim\Http\Response|string + * @return Response|string */ public function doTree() { diff --git a/src/controllers/OperatorsController.php b/src/controllers/OperatorsController.php index 5f3c0a63..01a4d075 100644 --- a/src/controllers/OperatorsController.php +++ b/src/controllers/OperatorsController.php @@ -6,6 +6,7 @@ namespace PHPPgAdmin\Controller; +use Slim\Http\Response; use PHPPgAdmin\Decorators\Decorator; /** @@ -69,7 +70,7 @@ class OperatorsController extends BaseController /** * Generate XML for the browser tree. * - * @return \Slim\Http\Response|string + * @return Response|string */ public function doTree() { diff --git a/src/controllers/PrivilegesController.php b/src/controllers/PrivilegesController.php index 76bc24b4..182db391 100644 --- a/src/controllers/PrivilegesController.php +++ b/src/controllers/PrivilegesController.php @@ -84,12 +84,7 @@ class PrivilegesController extends BaseController return; } - // Determine whether object should be ref'd by name or oid. - if (isset($_REQUEST[$subject . '_oid'])) { - $object = $_REQUEST[$subject . '_oid']; - } else { - $object = $_REQUEST[$subject]; - } + $object = isset($_REQUEST[$subject . '_oid']) ? $_REQUEST[$subject . '_oid'] : $_REQUEST[$subject]; // Get the privileges on the object, given its type if ('column' === $subject) { @@ -489,11 +484,7 @@ class PrivilegesController extends BaseController $object = $_REQUEST[$_REQUEST['subject']]; } - if (isset($_REQUEST['table'])) { - $table = $_REQUEST['table']; - } else { - $table = null; - } + $table = isset($_REQUEST['table']) ? $_REQUEST['table'] : null; $status = $data->setPrivileges( ('grant' === $mode) ? 'GRANT' : 'REVOKE', diff --git a/src/controllers/RolesController.php b/src/controllers/RolesController.php index 6d236e7e..8fb58c24 100644 --- a/src/controllers/RolesController.php +++ b/src/controllers/RolesController.php @@ -993,11 +993,8 @@ class RolesController extends BaseController $this->printTrail('role'); $this->printTitle($this->lang['strchangepassword'], 'pg.role.alter'); $this->printMsg($msg); - $this->coalesceArr($_POST, 'password', ''); - $this->coalesceArr($_POST, 'confirm', ''); - echo '' . \PHP_EOL; echo '
    %s: fields['proretset']) ? 'disabled' : '', '/>", $this->misc->printVal($tablestatsio->fields['heap_blks_read'], 'int4', $this->shownull), '", $this->misc->printVal($tablestatsio->fields['heap_blks_hit'], 'int4', $this->shownull), '", $this->misc->printVal($tablestatsio->fields['idx_blks_read'], 'int4', $this->shownull), '", $this->misc->printVal($tablestatsio->fields['idx_blks_hit'], 'int4', $this->shownull), '", $this->misc->printVal($tablestatsio->fields['toast_blks_read'], 'int4', $this->shownull), '", $this->misc->printVal($tablestatsio->fields['toast_blks_hit'], 'int4', $this->shownull), '", $this->misc->printVal($tablestatsio->fields['tidx_blks_read'], 'int4', $this->shownull), '", $this->misc->printVal($tablestatsio->fields['tidx_blks_hit'], 'int4', $this->shownull), '", $this->misc->printVal($indexstatsio->fields['indexrelname']), '", $this->misc->printVal($indexstatsio->fields['idx_blks_read'], 'int4', $this->shownull), '
    ' . \PHP_EOL; echo \sprintf( @@ -1025,21 +1022,18 @@ class RolesController extends BaseController $this->lang['strcancel'] ) . \PHP_EOL; echo '

    ' . \PHP_EOL; + } elseif (\mb_strlen($_POST['password']) < $this->conf['min_password_length']) { + $this->doChangePassword(true, $this->lang['strpasswordshort']); + } elseif ($_POST['password'] !== $_POST['confirm']) { + // Check that password matches confirmation password + $this->doChangePassword(true, $this->lang['strpasswordconfirm']); } else { - // Check that password is minimum length - if (\mb_strlen($_POST['password']) < $this->conf['min_password_length']) { - $this->doChangePassword(true, $this->lang['strpasswordshort']); - } elseif ($_POST['password'] !== $_POST['confirm']) { - // Check that password matches confirmation password - $this->doChangePassword(true, $this->lang['strpasswordconfirm']); - } else { - $status = $data->changePassword($server_info['username'], $_POST['password']); + $status = $data->changePassword($server_info['username'], $_POST['password']); - if (0 === $status) { - $this->doAccount($this->lang['strpasswordchanged']); - } else { - $this->doAccount($this->lang['strpasswordchangedbad']); - } + if (0 === $status) { + $this->doAccount($this->lang['strpasswordchanged']); + } else { + $this->doAccount($this->lang['strpasswordchangedbad']); } } } diff --git a/src/controllers/RulesController.php b/src/controllers/RulesController.php index 195663cf..084621cc 100644 --- a/src/controllers/RulesController.php +++ b/src/controllers/RulesController.php @@ -6,6 +6,7 @@ namespace PHPPgAdmin\Controller; +use Slim\Http\Response; use PHPPgAdmin\Decorators\Decorator; /** @@ -132,7 +133,7 @@ class RulesController extends BaseController } /** - * @return \Slim\Http\Response|string + * @return Response|string */ public function doTree() { @@ -172,7 +173,6 @@ class RulesController extends BaseController $this->printTrail($_REQUEST['subject']); $this->printTitle($this->lang['strcreaterule'], 'pg.rule.create'); $this->printMsg($msg); - echo '' . \PHP_EOL; echo '
    ' . \PHP_EOL; echo \sprintf( @@ -189,7 +189,6 @@ class RulesController extends BaseController $this->lang['strevent'] ) . \PHP_EOL; echo '' . \PHP_EOL; echo '
    ' . \PHP_EOL; - echo '' . \PHP_EOL; echo '' . \PHP_EOL; echo '' . \PHP_EOL; //If multi drop if (isset($_REQUEST['ma'])) { @@ -519,7 +519,6 @@ class SchemasController extends BaseController ), '

    ' . \PHP_EOL; echo '' . \PHP_EOL; } - echo \sprintf( '

    ', $this->lang['strcascade'] @@ -537,51 +536,47 @@ class SchemasController extends BaseController \PHP_EOL ); echo '' . \PHP_EOL; - } else { - if (\is_array($_POST['nsp'])) { - $msg = ''; - $status = $data->beginTransaction(); - - if (0 === $status) { - foreach ($_POST['nsp'] as $s) { - $status = $data->dropSchema($s, isset($_POST['cascade'])); - - if (0 === $status) { - $msg .= \sprintf( - '%s: %s
    ', - \htmlentities($s, \ENT_QUOTES, 'UTF-8'), - $this->lang['strschemadropped'] - ); - } else { - $data->endTransaction(); - $this->doDefault(\sprintf( - '%s%s: %s
    ', - $msg, - \htmlentities($s, \ENT_QUOTES, 'UTF-8'), - $this->lang['strschemadroppedbad'] - )); - - return; - } + } elseif (\is_array($_POST['nsp'])) { + $msg = ''; + $status = $data->beginTransaction(); + if (0 === $status) { + foreach ($_POST['nsp'] as $s) { + $status = $data->dropSchema($s, isset($_POST['cascade'])); + + if (0 === $status) { + $msg .= \sprintf( + '%s: %s
    ', + \htmlentities($s, \ENT_QUOTES, 'UTF-8'), + $this->lang['strschemadropped'] + ); + } else { + $data->endTransaction(); + $this->doDefault(\sprintf( + '%s%s: %s
    ', + $msg, + \htmlentities($s, \ENT_QUOTES, 'UTF-8'), + $this->lang['strschemadroppedbad'] + )); + + return; } } - - if (0 === $data->endTransaction()) { - // Everything went fine, back to the Default page.... - $this->view->setReloadBrowser(true); - $this->doDefault($msg); - } else { - $this->doDefault($this->lang['strschemadroppedbad']); - } + } + if (0 === $data->endTransaction()) { + // Everything went fine, back to the Default page.... + $this->view->setReloadBrowser(true); + $this->doDefault($msg); } else { - $status = $data->dropSchema($_POST['nsp'], isset($_POST['cascade'])); + $this->doDefault($this->lang['strschemadroppedbad']); + } + } else { + $status = $data->dropSchema($_POST['nsp'], isset($_POST['cascade'])); - if (0 === $status) { - $this->view->setReloadBrowser(true); - $this->doDefault($this->lang['strschemadropped']); - } else { - $this->doDefault($this->lang['strschemadroppedbad']); - } + if (0 === $status) { + $this->view->setReloadBrowser(true); + $this->doDefault($this->lang['strschemadropped']); + } else { + $this->doDefault($this->lang['strschemadroppedbad']); } } } diff --git a/src/controllers/SequencesController.php b/src/controllers/SequencesController.php index 0bca0fab..da338e61 100644 --- a/src/controllers/SequencesController.php +++ b/src/controllers/SequencesController.php @@ -6,6 +6,7 @@ namespace PHPPgAdmin\Controller; +use Slim\Http\Response; use PHPPgAdmin\Decorators\Decorator; /** @@ -210,7 +211,7 @@ class SequencesController extends BaseController /** * Generate XML for the browser tree. * - * @return \Slim\Http\Response|string + * @return Response|string */ public function doTree() { @@ -437,9 +438,7 @@ class SequencesController extends BaseController $this->printTrail('sequence'); $this->printTitle($this->lang['strdrop'], 'pg.sequence.drop'); $this->printMsg($msg); - echo '
    ' . \PHP_EOL; - //If multi drop if (isset($_REQUEST['ma'])) { foreach ($_REQUEST['ma'] as $v) { @@ -457,7 +456,6 @@ class SequencesController extends BaseController ), '

    ' . \PHP_EOL; echo '' . \PHP_EOL; } - echo \sprintf( '

    ', $this->lang['strcascade'] @@ -474,51 +472,47 @@ class SequencesController extends BaseController \PHP_EOL ); echo '
    ' . \PHP_EOL; - } else { - if (\is_array($_POST['sequence'])) { - $msg = ''; - $status = $data->beginTransaction(); - - if (0 === $status) { - foreach ($_POST['sequence'] as $s) { - $status = $data->dropSequence($s, isset($_POST['cascade'])); - - if (0 === $status) { - $msg .= \sprintf( - '%s: %s
    ', - \htmlentities($s, \ENT_QUOTES, 'UTF-8'), - $this->lang['strsequencedropped'] - ); - } else { - $data->endTransaction(); - $this->doDefault(\sprintf( - '%s%s: %s
    ', - $msg, - \htmlentities($s, \ENT_QUOTES, 'UTF-8'), - $this->lang['strsequencedroppedbad'] - )); - - return; - } + } elseif (\is_array($_POST['sequence'])) { + $msg = ''; + $status = $data->beginTransaction(); + if (0 === $status) { + foreach ($_POST['sequence'] as $s) { + $status = $data->dropSequence($s, isset($_POST['cascade'])); + + if (0 === $status) { + $msg .= \sprintf( + '%s: %s
    ', + \htmlentities($s, \ENT_QUOTES, 'UTF-8'), + $this->lang['strsequencedropped'] + ); + } else { + $data->endTransaction(); + $this->doDefault(\sprintf( + '%s%s: %s
    ', + $msg, + \htmlentities($s, \ENT_QUOTES, 'UTF-8'), + $this->lang['strsequencedroppedbad'] + )); + + return; } } - - if (0 === $data->endTransaction()) { - // Everything went fine, back to the Default page.... - $this->view->setReloadBrowser(true); - $this->doDefault($msg); - } else { - $this->doDefault($this->lang['strsequencedroppedbad']); - } + } + if (0 === $data->endTransaction()) { + // Everything went fine, back to the Default page.... + $this->view->setReloadBrowser(true); + $this->doDefault($msg); } else { - $status = $data->dropSequence($_POST['sequence'], isset($_POST['cascade'])); + $this->doDefault($this->lang['strsequencedroppedbad']); + } + } else { + $status = $data->dropSequence($_POST['sequence'], isset($_POST['cascade'])); - if (0 === $status) { - $this->view->setReloadBrowser(true); - $this->doDefault($this->lang['strsequencedropped']); - } else { - $this->doDrop(true, $this->lang['strsequencedroppedbad']); - } + if (0 === $status) { + $this->view->setReloadBrowser(true); + $this->doDefault($this->lang['strsequencedropped']); + } else { + $this->doDrop(true, $this->lang['strsequencedroppedbad']); } } } diff --git a/src/controllers/ServersController.php b/src/controllers/ServersController.php index fbdaeeef..781d4537 100644 --- a/src/controllers/ServersController.php +++ b/src/controllers/ServersController.php @@ -6,6 +6,7 @@ namespace PHPPgAdmin\Controller; +use Slim\Http\Response; use PHPPgAdmin\ArrayRecordSet; use PHPPgAdmin\Decorators\Decorator; use PHPPgAdmin\Traits\ServersTrait; @@ -162,7 +163,7 @@ class ServersController extends BaseController } /** - * @return \Slim\Http\Response|string + * @return Response|string */ public function doTree() { diff --git a/src/controllers/SqlController.php b/src/controllers/SqlController.php index b36adb04..83d8646e 100644 --- a/src/controllers/SqlController.php +++ b/src/controllers/SqlController.php @@ -76,15 +76,13 @@ class SqlController extends BaseController // Set the schema search path - if (isset($_REQUEST['search_path'])) { - if (0 !== $data->setSearchPath(\array_map('trim', \explode(',', $_REQUEST['search_path'])))) { - $this->printHeader($this->headerTitle(), null, true ); - $body=$this->printBody(false); - $trail=$this->printTrail('database',false); - $title=$this->printTitle($this->lang['strqueryresults'],null,false); - echo $body.$trail.$title; - return $this->printFooter(); - } + if (isset($_REQUEST['search_path']) && 0 !== $data->setSearchPath(\array_map('trim', \explode(',', $_REQUEST['search_path'])))) { + $this->printHeader($this->headerTitle(), null, true ); + $body=$this->printBody(false); + $trail=$this->printTrail('database',false); + $title=$this->printTitle($this->lang['strqueryresults'],null,false); + echo $body.$trail.$title; + return $this->printFooter(); } @@ -200,9 +198,8 @@ class SqlController extends BaseController } } }; - $final= $data->executeScript('script', $sqlCallback); - return $final; + return $data->executeScript('script', $sqlCallback); } /** @@ -242,7 +239,7 @@ $json=[]; if (0 < $rs->RecordCount()) { echo "\n"; - foreach ($rs->fields as $fieldName => $fieldValue) { + foreach (array_keys($rs->fields) as $fieldName) { $finfo = $rs->FetchField($fieldName); echo ''; } diff --git a/src/controllers/TablesController.php b/src/controllers/TablesController.php index c3f31584..b21009e9 100644 --- a/src/controllers/TablesController.php +++ b/src/controllers/TablesController.php @@ -6,6 +6,7 @@ namespace PHPPgAdmin\Controller; +use Slim\Http\Response; use PHPPgAdmin\Decorators\Decorator; use PHPPgAdmin\Traits\AdminTrait; use PHPPgAdmin\Traits\InsertEditRowTrait; @@ -158,7 +159,7 @@ class TablesController extends BaseController $columns = $this->_getColumns(); - if(boolval($this->conf['display_sizes']['tables']??false)===false) { + if(!boolval($this->conf['display_sizes']['tables']??false)) { unset($columns['table_size']); } @@ -230,7 +231,7 @@ class TablesController extends BaseController /** * Generate XML for the browser tree. * - * @return \Slim\Http\Response|string + * @return Response|string */ public function doTree() { @@ -253,7 +254,7 @@ class TablesController extends BaseController } /** - * @return \Slim\Http\Response|string + * @return Response|string */ public function doSubTree() { diff --git a/src/controllers/TblpropertiesController.php b/src/controllers/TblpropertiesController.php index 81ba3b81..971f5b2b 100644 --- a/src/controllers/TblpropertiesController.php +++ b/src/controllers/TblpropertiesController.php @@ -6,6 +6,8 @@ namespace PHPPgAdmin\Controller; +use Slim\Http\Response; +use Closure; use PHPPgAdmin\Decorators\Decorator; use PHPPgAdmin\Traits\ExportTrait; @@ -237,7 +239,7 @@ class TblpropertiesController extends BaseController } /** - * @return \Slim\Http\Response|string + * @return Response|string */ public function doTree() { @@ -862,11 +864,11 @@ class TblpropertiesController extends BaseController * * @param mixed $data * - * @return \Closure + * @return Closure */ private function _getAttPre($data) { - $attPre = static function (&$rowdata, $actions) use ($data) { + return static function (&$rowdata, $actions) use ($data) { $rowdata->fields['+type'] = $data->formatType($rowdata->fields['type'], $rowdata->fields['atttypmod']); $attname = $rowdata->fields['attname']; $table = $_REQUEST['table']; @@ -884,8 +886,6 @@ class TblpropertiesController extends BaseController return $actions; }; - - return $attPre; } /** @@ -894,12 +894,13 @@ class TblpropertiesController extends BaseController * @param mixed $misc * @param mixed $data * - * @return \Closure + * @return Closure */ private function _getCstrRender($misc, $data) { $view = $this->view; - $cstrRender = static function ($s, $p) use ($misc, $data, $view) { + + return static function ($s, $p) use ($misc, $data, $view) { $str = ''; foreach ($p['keys'] as $k => $c) { @@ -958,8 +959,6 @@ class TblpropertiesController extends BaseController return $str; }; - - return $cstrRender; } private function _printTable($ck, $attrs): void diff --git a/src/controllers/TreeController.php b/src/controllers/TreeController.php index 94ec3210..e4b3cdf7 100644 --- a/src/controllers/TreeController.php +++ b/src/controllers/TreeController.php @@ -6,6 +6,8 @@ namespace PHPPgAdmin\Controller; +use PHPPgAdmin\Interfaces\Recordset; +use ADORecordSet; use PHPPgAdmin\ArrayRecordSet; use PHPPgAdmin\ContainerUtils; use PHPPgAdmin\Decorators\Decorator; @@ -69,7 +71,7 @@ class TreeController extends BaseController /** * Produce JSON data for the browser tree. * - * @param \PHPPgAdmin\Interfaces\Recordset|\ADORecordSet $_treedata a set of records to populate the tree + * @param Recordset|ADORecordSet $_treedata a set of records to populate the tree * @param array $attrs Attributes for tree items * 'text' - the text for the tree node * 'icon' - an icon for node @@ -206,7 +208,7 @@ class TreeController extends BaseController } //ddd($parent); - if (true === $print) { + if ($print) { if (isset($_REQUEST['children'])) { $children = $parent; $parent = ['children' => $children]; diff --git a/src/controllers/TriggersController.php b/src/controllers/TriggersController.php index cc84f700..00319c6c 100644 --- a/src/controllers/TriggersController.php +++ b/src/controllers/TriggersController.php @@ -6,6 +6,7 @@ namespace PHPPgAdmin\Controller; +use Slim\Http\Response; use PHPPgAdmin\Decorators\Decorator; use PHPPgAdmin\XHtml\XHtmlOption; use PHPPgAdmin\XHtml\XHtmlSelect; @@ -232,7 +233,7 @@ class TriggersController extends BaseController } /** - * @return \Slim\Http\Response|string + * @return Response|string */ public function doTree() { diff --git a/src/controllers/TypesController.php b/src/controllers/TypesController.php index c618cf09..5ac777a9 100644 --- a/src/controllers/TypesController.php +++ b/src/controllers/TypesController.php @@ -6,6 +6,7 @@ namespace PHPPgAdmin\Controller; +use Slim\Http\Response; use PHPPgAdmin\Decorators\Decorator; /** @@ -209,7 +210,7 @@ class TypesController extends BaseController /** * Generate XML for the browser tree. * - * @return \Slim\Http\Response|string + * @return Response|string */ public function doTree() { diff --git a/src/controllers/UsersController.php b/src/controllers/UsersController.php index 3db2c095..6a380d1f 100644 --- a/src/controllers/UsersController.php +++ b/src/controllers/UsersController.php @@ -272,11 +272,8 @@ $this->action=isset($_REQUEST['cancel'])?'cancel':$this->action; $this->printTrail('user'); $this->printTitle($this->lang['strchangepassword'], 'pg.user.alter'); $this->printMsg($msg); - $this->coalesceArr($_POST, 'password', ''); - $this->coalesceArr($_POST, 'confirm', ''); - echo '' . \PHP_EOL; echo '
    ', $this->misc->printVal($finfo->name), '
    ' . \PHP_EOL; echo \sprintf( @@ -305,24 +302,21 @@ $this->action=isset($_REQUEST['cancel'])?'cancel':$this->action; $this->lang['strcancel'] ) . \PHP_EOL; echo '

    ' . \PHP_EOL; + } elseif (\mb_strlen($_POST['password']) < $this->conf['min_password_length']) { + $this->doChangePassword(true, $this->lang['strpasswordshort']); + } elseif ($_POST['password'] !== $_POST['confirm']) { + // Check that password matches confirmation password + $this->doChangePassword(true, $this->lang['strpasswordconfirm']); } else { - // Check that password is minimum length - if (\mb_strlen($_POST['password']) < $this->conf['min_password_length']) { - $this->doChangePassword(true, $this->lang['strpasswordshort']); - } elseif ($_POST['password'] !== $_POST['confirm']) { - // Check that password matches confirmation password - $this->doChangePassword(true, $this->lang['strpasswordconfirm']); - } else { - $status = $data->changePassword( - $server_info['username'], - $_POST['password'] - ); + $status = $data->changePassword( + $server_info['username'], + $_POST['password'] + ); - if (0 === $status) { - $this->doAccount($this->lang['strpasswordchanged']); - } else { - $this->doAccount($this->lang['strpasswordchangedbad']); - } + if (0 === $status) { + $this->doAccount($this->lang['strpasswordchanged']); + } else { + $this->doAccount($this->lang['strpasswordchangedbad']); } } } diff --git a/src/controllers/ViewsController.php b/src/controllers/ViewsController.php index 1f8f5305..b3587391 100644 --- a/src/controllers/ViewsController.php +++ b/src/controllers/ViewsController.php @@ -6,6 +6,7 @@ namespace PHPPgAdmin\Controller; +use Slim\Http\Response; use PHPPgAdmin\Decorators\Decorator; use PHPPgAdmin\Traits\ViewsMatviewsTrait; @@ -246,7 +247,7 @@ class ViewsController extends BaseController /** * Generate XML for the browser tree. * - * @return \Slim\Http\Response|string + * @return Response|string */ public function doTree() { @@ -284,9 +285,7 @@ class ViewsController extends BaseController if ($confirm) { $this->printTrail('view'); $this->printTitle($this->lang['strdrop'], 'pg.view.drop'); - echo '' . \PHP_EOL; - //If multi drop if (isset($_REQUEST['ma'])) { foreach ($_REQUEST['ma'] as $v) { @@ -304,9 +303,7 @@ class ViewsController extends BaseController ), '

    ' . \PHP_EOL; echo '' . \PHP_EOL; } - echo '' . \PHP_EOL; - echo $this->view->form; echo \sprintf( '

    ', @@ -321,51 +318,47 @@ class ViewsController extends BaseController $this->lang['strcancel'] ) . \PHP_EOL; echo '' . \PHP_EOL; - } else { - if (\is_array($_POST['view'])) { - $msg = ''; - $status = $data->beginTransaction(); - - if (0 === $status) { - foreach ($_POST['view'] as $s) { - $status = $data->dropView($s, isset($_POST['cascade'])); - - if (0 === $status) { - $msg .= \sprintf( - '%s: %s
    ', - \htmlentities($s, \ENT_QUOTES, 'UTF-8'), - $this->lang['strviewdropped'] - ); - } else { - $data->endTransaction(); - $this->doDefault(\sprintf( - '%s%s: %s
    ', - $msg, - \htmlentities($s, \ENT_QUOTES, 'UTF-8'), - $this->lang['strviewdroppedbad'] - )); - - return; - } + } elseif (\is_array($_POST['view'])) { + $msg = ''; + $status = $data->beginTransaction(); + if (0 === $status) { + foreach ($_POST['view'] as $s) { + $status = $data->dropView($s, isset($_POST['cascade'])); + + if (0 === $status) { + $msg .= \sprintf( + '%s: %s
    ', + \htmlentities($s, \ENT_QUOTES, 'UTF-8'), + $this->lang['strviewdropped'] + ); + } else { + $data->endTransaction(); + $this->doDefault(\sprintf( + '%s%s: %s
    ', + $msg, + \htmlentities($s, \ENT_QUOTES, 'UTF-8'), + $this->lang['strviewdroppedbad'] + )); + + return; } } - - if (0 === $data->endTransaction()) { - // Everything went fine, back to the Default page.... - $this->view->setReloadBrowser(true); - $this->doDefault($msg); - } else { - $this->doDefault($this->lang['strviewdroppedbad']); - } + } + if (0 === $data->endTransaction()) { + // Everything went fine, back to the Default page.... + $this->view->setReloadBrowser(true); + $this->doDefault($msg); } else { - $status = $data->dropView($_POST['view'], isset($_POST['cascade'])); + $this->doDefault($this->lang['strviewdroppedbad']); + } + } else { + $status = $data->dropView($_POST['view'], isset($_POST['cascade'])); - if (0 === $status) { - $this->view->setReloadBrowser(true); - $this->doDefault($this->lang['strviewdropped']); - } else { - $this->doDefault($this->lang['strviewdroppedbad']); - } + if (0 === $status) { + $this->view->setReloadBrowser(true); + $this->doDefault($this->lang['strviewdropped']); + } else { + $this->doDefault($this->lang['strviewdroppedbad']); } } } @@ -419,11 +412,7 @@ class ViewsController extends BaseController $this->coalesceArr($_REQUEST, 'formView', ''); if (!isset($_REQUEST['formDefinition'])) { - if (isset($_SESSION['sqlquery'])) { - $_REQUEST['formDefinition'] = $_SESSION['sqlquery']; - } else { - $_REQUEST['formDefinition'] = 'SELECT '; - } + $_REQUEST['formDefinition'] = isset($_SESSION['sqlquery']) ? $_SESSION['sqlquery'] : 'SELECT '; } $this->coalesceArr($_REQUEST, 'formComment', ''); diff --git a/src/database/ADOdbBase.php b/src/database/ADOdbBase.php index 28d04ce5..059a9e9d 100644 --- a/src/database/ADOdbBase.php +++ b/src/database/ADOdbBase.php @@ -409,7 +409,7 @@ class ADOdbBase $this->clean($key); $this->clean($value); - if ($sql) { + if ($sql !== '') { $sql .= \sprintf( ' AND "%s"=\'%s\'', $key, @@ -427,11 +427,9 @@ class ADOdbBase } // Check for failures - if (!$this->conn->Execute($sql)) { - // Check for referential integrity failure - if (\mb_stristr($this->ErrorMsg(), 'referential')) { - return -1; - } + // Check for referential integrity failure + if (!$this->conn->Execute($sql) && \mb_stristr($this->ErrorMsg(), 'referential')) { + return -1; } // Check for no rows modified @@ -454,9 +452,8 @@ class ADOdbBase if (null === $str) { return null; } - $str = \str_replace('"', '""', $str); - return $str; + return \str_replace('"', '""', $str); } /** @@ -472,9 +469,8 @@ class ADOdbBase return null; } $str = \str_replace("\r\n", "\n", $str); - $str = \pg_escape_string($str); - return $str; + return \pg_escape_string($str); } /** @@ -510,7 +506,7 @@ class ADOdbBase $this->clean($key); $this->clean($value); - if ($fields) { + if ($fields !== '') { $fields .= \sprintf( ', "%s"', $key @@ -523,7 +519,7 @@ class ADOdbBase ); } - if ($values) { + if ($values !== '') { $values .= \sprintf( ', \'%s\'', $value @@ -577,7 +573,7 @@ class ADOdbBase $this->fieldClean($key); $this->clean($value); - if ($setClause) { + if ($setClause !== '') { $setClause .= \sprintf( ', "%s"=\'%s\'', $key, @@ -598,7 +594,7 @@ class ADOdbBase foreach ($nulls as $key => $value) { $this->fieldClean($value); - if ($setClause) { + if ($setClause !== '') { $setClause .= \sprintf( ', "%s"=NULL', $value @@ -618,7 +614,7 @@ class ADOdbBase $this->fieldClean($key); $this->clean($value); - if ($whereClause) { + if ($whereClause !== '') { $whereClause .= \sprintf( ' AND "%s"=\'%s\'', $key, @@ -710,11 +706,7 @@ class ADOdbBase */ public function dbBool(&$parameter) { - if ($parameter) { - $parameter = 't'; - } else { - $parameter = 'f'; - } + $parameter = $parameter ? 't' : 'f'; return $parameter; } diff --git a/src/database/Postgres.php b/src/database/Postgres.php index fce8893b..4b718de5 100644 --- a/src/database/Postgres.php +++ b/src/database/Postgres.php @@ -455,11 +455,7 @@ class Postgres extends ADOdbBase { $conf = $this->conf; - if ($conf['show_system'] || $all) { - $where = ''; - } else { - $where = 'WHERE lanispl'; - } + $where = $conf['show_system'] || $all ? '' : 'WHERE lanispl'; $sql = \sprintf( ' @@ -567,7 +563,7 @@ class Postgres extends ADOdbBase ) { $in_quote = 0; } - } elseif ($dol_quote) { + } elseif ($dol_quote !== '') { $this->prtrace('dol_quote', $dol_quote, $line); if (0 === \strncmp(\mb_substr($line, $i), $dol_quote, \mb_strlen($dol_quote))) { @@ -658,7 +654,7 @@ class Postgres extends ADOdbBase /* append the line to the query buffer */ $query_buf .= $subline; /* is there anything in the query_buf? */ - if (\trim($query_buf)) { + if (\trim($query_buf) !== '') { $query_buf .= ';'; // Execute the query. PHP cannot execute @@ -785,11 +781,7 @@ class Postgres extends ADOdbBase // If $type is TABLE, then generate the query switch ($type) { case 'TABLE': - if (\preg_match('/^[0-9]+$/', $sortkey) && 0 < $sortkey) { - $orderby = [$sortkey => $sortdir]; - } else { - $orderby = []; - } + $orderby = \preg_match('/^\d+$/', $sortkey) && 0 < $sortkey ? [$sortkey => $sortdir] : []; $query = $this->getSelectSQL($table, [], [], [], $orderby); @@ -862,7 +854,7 @@ class Postgres extends ADOdbBase // Figure out ORDER BY. Sort key is always the column number (based from one) // of the column to order by. Only need to do this for non-TABLE queries - if ('TABLE' !== $type && \preg_match('/^[0-9]+$/', $sortkey) && 0 < $sortkey) { + if ('TABLE' !== $type && \preg_match('/^\d+$/', $sortkey) && 0 < $sortkey) { $orderby = \sprintf( ' ORDER BY %s', $sortkey @@ -913,14 +905,10 @@ class Postgres extends ADOdbBase // If an empty array is passed in, then show all columns if (0 === \count($show)) { - if ($this->hasObjectID($table)) { - $sql = \sprintf( - 'SELECT "%s", * FROM ', - $this->id - ); - } else { - $sql = 'SELECT * FROM '; - } + $sql = $this->hasObjectID($table) ? \sprintf( + 'SELECT "%s", * FROM ', + $this->id + ) : 'SELECT * FROM '; } else { // Add oid column automatically to results for editing purposes if (!\in_array($this->id, $show, true) && $this->hasObjectID($table)) { @@ -1025,7 +1013,7 @@ class Postgres extends ADOdbBase $sql .= ', '; } - if (\preg_match('/^[0-9]+$/', $k)) { + if (\preg_match('/^\d+$/', $k)) { $sql .= $k; } else { $this->fieldClean($k); diff --git a/src/database/databasetraits/DatabaseTrait.php b/src/database/databasetraits/DatabaseTrait.php index c932ec51..4f5d379a 100644 --- a/src/database/databasetraits/DatabaseTrait.php +++ b/src/database/databasetraits/DatabaseTrait.php @@ -155,11 +155,7 @@ trait DatabaseTrait $orderby = 'ORDER BY pdb.datname'; } - if (!$conf['show_system']) { - $where = ' AND NOT pdb.datistemplate'; - } else { - $where = ' AND pdb.datallowconn'; - } + $where = $conf['show_system'] ? ' AND pdb.datallowconn' : ' AND NOT pdb.datistemplate'; $sql = \sprintf( ' @@ -507,11 +503,7 @@ trait DatabaseTrait { $conf = $this->conf; - if (!$conf['show_system']) { - $where = 'AND pn.nspname NOT LIKE $$pg\_%$$'; - } else { - $where = "AND nspname !~ '^pg_t(emp_[0-9]+|oast)$'"; - } + $where = $conf['show_system'] ? "AND nspname !~ '^pg_t(emp_[0-9]+|oast)$'" : 'AND pn.nspname NOT LIKE $$pg\_%$$'; $sql = \sprintf( ' diff --git a/src/database/databasetraits/FunctionTrait.php b/src/database/databasetraits/FunctionTrait.php index 26e90dfa..7c4186eb 100644 --- a/src/database/databasetraits/FunctionTrait.php +++ b/src/database/databasetraits/FunctionTrait.php @@ -73,7 +73,7 @@ trait FunctionTrait /** * Returns a list of all functions that can be used in triggers. * - * @return int|\PHPPgAdmin\ADORecordSet Functions that can be used in a trigger + * @return int|ADORecordSet Functions that can be used in a trigger */ public function getTriggerFunctions() { @@ -105,20 +105,12 @@ trait FunctionTrait // Null handling $f['proisstrict'] = $this->phpBool($f['proisstrict']); - if ($f['proisstrict']) { - $temp[] = 'RETURNS NULL ON NULL INPUT'; - } else { - $temp[] = 'CALLED ON NULL INPUT'; - } + $temp[] = $f['proisstrict'] ? 'RETURNS NULL ON NULL INPUT' : 'CALLED ON NULL INPUT'; // Security $f['prosecdef'] = $this->phpBool($f['prosecdef']); - if ($f['prosecdef']) { - $temp[] = 'SECURITY DEFINER'; - } else { - $temp[] = 'SECURITY INVOKER'; - } + $temp[] = $f['prosecdef'] ? 'SECURITY DEFINER' : 'SECURITY INVOKER'; return $temp; } diff --git a/src/database/databasetraits/IndexTrait.php b/src/database/databasetraits/IndexTrait.php index 8adf53a0..9e381246 100644 --- a/src/database/databasetraits/IndexTrait.php +++ b/src/database/databasetraits/IndexTrait.php @@ -40,7 +40,7 @@ trait IndexTrait $v = $this->selectSet($sql); - return !(0 === $v->RecordCount()); + return 0 !== $v->RecordCount(); } /** @@ -262,11 +262,7 @@ trait IndexTrait $rs = $this->selectSet($sql); - if ($rs->EOF) { - $max_col = 0; - } else { - $max_col = $rs->fields['nb']; - } + $max_col = $rs->EOF ? 0 : $rs->fields['nb']; $sql = ' SELECT diff --git a/src/database/databasetraits/PrivilegesTrait.php b/src/database/databasetraits/PrivilegesTrait.php index fee33a74..a9f6aa45 100644 --- a/src/database/databasetraits/PrivilegesTrait.php +++ b/src/database/databasetraits/PrivilegesTrait.php @@ -176,16 +176,14 @@ trait PrivilegesTrait if (\in_array('ALL PRIVILEGES', $privileges, true)) { $sql .= ' ALL PRIVILEGES'; + } elseif ('column' === $type) { + $this->fieldClean($object); + $sql .= ' ' . \implode(\sprintf( + ' ("%s"), ', + $object + ), $privileges); } else { - if ('column' === $type) { - $this->fieldClean($object); - $sql .= ' ' . \implode(\sprintf( - ' ("%s"), ', - $object - ), $privileges); - } else { - $sql .= ' ' . \implode(', ', $privileges); - } + $sql .= ' ' . \implode(', ', $privileges); } switch ($type) { @@ -388,18 +386,14 @@ trait PrivilegesTrait // Figure out type of ACE (public, user or group) if (0 === \mb_strpos($v, '=')) { $atype = 'public'; + } elseif ($this->hasRoles()) { + $atype = 'role'; + } elseif (0 === \mb_strpos($v, 'group ')) { + $atype = 'group'; + // Tear off 'group' prefix + $v = \mb_substr($v, 6); } else { - if ($this->hasRoles()) { - $atype = 'role'; - } else { - if (0 === \mb_strpos($v, 'group ')) { - $atype = 'group'; - // Tear off 'group' prefix - $v = \mb_substr($v, 6); - } else { - $atype = 'user'; - } - } + $atype = 'user'; } // Break on unquoted equals sign... diff --git a/src/database/databasetraits/RoleTrait.php b/src/database/databasetraits/RoleTrait.php index 50ce9fe7..6b7150cc 100644 --- a/src/database/databasetraits/RoleTrait.php +++ b/src/database/databasetraits/RoleTrait.php @@ -1029,7 +1029,7 @@ trait RoleTrait * @param mixed $inherits * @param mixed $login * - * @return int|\PHPPgAdmin\ADORecordSet + * @return int|ADORecordSet */ private function _alterRole($rolename, $password, $connlimit, $expiry, $superuser, $createdb, $createrole, $inherits, $login) { diff --git a/src/database/databasetraits/RowTrait.php b/src/database/databasetraits/RowTrait.php index e102f978..10b71d46 100644 --- a/src/database/databasetraits/RowTrait.php +++ b/src/database/databasetraits/RowTrait.php @@ -269,12 +269,7 @@ trait RowTrait foreach ($vars as $key => $value) { $this->fieldClean($key); - // Handle NULL values - if (isset($nulls[$key])) { - $tmp = 'NULL'; - } else { - $tmp = $this->formatValue($types[$key], $format[$key], $value); - } + $tmp = isset($nulls[$key]) ? 'NULL' : $this->formatValue($types[$key], $format[$key], $value); if (0 < \mb_strlen($sql)) { $sql .= \sprintf( diff --git a/src/database/databasetraits/SchemaTrait.php b/src/database/databasetraits/SchemaTrait.php index d1194946..c2982d16 100644 --- a/src/database/databasetraits/SchemaTrait.php +++ b/src/database/databasetraits/SchemaTrait.php @@ -63,7 +63,7 @@ trait SchemaTrait * * @param string $schema The the name of the schema to work in * - * @return int|\PHPPgAdmin\ADORecordSet 0 if operation was successful + * @return int|ADORecordSet 0 if operation was successful */ public function setSchema($schema) { diff --git a/src/database/databasetraits/SequenceTrait.php b/src/database/databasetraits/SequenceTrait.php index cb9fe670..0efcafbd 100644 --- a/src/database/databasetraits/SequenceTrait.php +++ b/src/database/databasetraits/SequenceTrait.php @@ -442,7 +442,7 @@ trait SequenceTrait // toggle cycle yes/no if (null !== $cycledvalue) { - $sql .= (!$cycledvalue ? ' NO ' : '') . ' CYCLE'; + $sql .= ($cycledvalue ? '' : ' NO ') . ' CYCLE'; } if ('' !== $sql) { diff --git a/src/database/databasetraits/TableTrait.php b/src/database/databasetraits/TableTrait.php index 39a82db1..c992d2e3 100644 --- a/src/database/databasetraits/TableTrait.php +++ b/src/database/databasetraits/TableTrait.php @@ -1134,7 +1134,7 @@ trait TableTrait ); if ($cascade) { - $sql = $sql . ' CASCADE'; + $sql .= ' CASCADE'; } $status = $this->execute($sql); @@ -1241,12 +1241,7 @@ trait TableTrait { $this->fieldClean($relation); - // Actually retrieve the rows - if ($oids) { - $oid_str = $this->id . ', '; - } else { - $oid_str = ''; - } + $oid_str = $oids ? $this->id . ', ' : ''; return $this->selectSet(\sprintf( 'SELECT %s* FROM "%s"', diff --git a/src/database/databasetraits/TriggerTrait.php b/src/database/databasetraits/TriggerTrait.php index 1db15b1a..bfa89fd1 100644 --- a/src/database/databasetraits/TriggerTrait.php +++ b/src/database/databasetraits/TriggerTrait.php @@ -155,9 +155,7 @@ trait TriggerTrait } // Rule functions - // Operator Class functions - /** * Edits a rule on a table OR view. * @@ -169,7 +167,7 @@ trait TriggerTrait * @param string $type NOTHING for a do nothing rule, SOMETHING to use given action * @param string $action The action to take * - * @return int|\PHPPgAdmin\ADORecordSet 0 if operation was successful + * @return int|ADORecordSet 0 if operation was successful */ public function setRule($name, $event, $table, $where, $instead, $type, $action) { diff --git a/src/decorators/ActionUrlDecorator.php b/src/decorators/ActionUrlDecorator.php index 5eff0e8f..d680efb6 100644 --- a/src/decorators/ActionUrlDecorator.php +++ b/src/decorators/ActionUrlDecorator.php @@ -8,6 +8,11 @@ namespace PHPPgAdmin\Decorators; class ActionUrlDecorator extends Decorator { + public $base; + /** + * @var mixed + */ + public $queryVars; public function __construct($base, $queryVars = null) { $this->base = $base; diff --git a/src/decorators/ArrayMergeDecorator.php b/src/decorators/ArrayMergeDecorator.php index 75d4d104..645ae3bc 100644 --- a/src/decorators/ArrayMergeDecorator.php +++ b/src/decorators/ArrayMergeDecorator.php @@ -8,6 +8,7 @@ namespace PHPPgAdmin\Decorators; class ArrayMergeDecorator extends Decorator { + public $m; public function __construct($arrays) { $this->m = $arrays; diff --git a/src/decorators/BranchUrlDecorator.php b/src/decorators/BranchUrlDecorator.php index f28ad2be..954de2fe 100644 --- a/src/decorators/BranchUrlDecorator.php +++ b/src/decorators/BranchUrlDecorator.php @@ -8,6 +8,11 @@ namespace PHPPgAdmin\Decorators; class BranchUrlDecorator extends Decorator { + public $base; + /** + * @var mixed + */ + public $queryVars; public function __construct($base, $queryVars = null) { $this->base = $base; diff --git a/src/decorators/CallbackDecorator.php b/src/decorators/CallbackDecorator.php index f6cd2bd5..844c0f94 100644 --- a/src/decorators/CallbackDecorator.php +++ b/src/decorators/CallbackDecorator.php @@ -10,6 +10,11 @@ use Closure; class CallbackDecorator extends Decorator { + /** + * @var \Closure|mixed + */ + public $fn; + public $p; public function __construct(Closure $callback, $param = null) { $this->fn = $callback; diff --git a/src/decorators/ConcatDecorator.php b/src/decorators/ConcatDecorator.php index 41124154..968fa67e 100644 --- a/src/decorators/ConcatDecorator.php +++ b/src/decorators/ConcatDecorator.php @@ -8,6 +8,7 @@ namespace PHPPgAdmin\Decorators; class ConcatDecorator extends Decorator { + public $c; public function __construct($values) { $this->c = $values; diff --git a/src/decorators/Decorator.php b/src/decorators/Decorator.php index 347cf9b6..c95911e0 100644 --- a/src/decorators/Decorator.php +++ b/src/decorators/Decorator.php @@ -11,6 +11,7 @@ use PHPPgAdmin\Traits\HelperTrait; class Decorator { + public $val; use HelperTrait; public $container; diff --git a/src/decorators/FieldDecorator.php b/src/decorators/FieldDecorator.php index 325455fc..137a24c7 100644 --- a/src/decorators/FieldDecorator.php +++ b/src/decorators/FieldDecorator.php @@ -8,6 +8,11 @@ namespace PHPPgAdmin\Decorators; class FieldDecorator extends Decorator { + /** + * @var mixed|mixed[] + */ + public $fieldName; + public $defaultValue; public function __construct($fieldName, $defaultValue = null) { $this->fieldName = $fieldName; diff --git a/src/decorators/IfEmptyDecorator.php b/src/decorators/IfEmptyDecorator.php index 8116773d..9689825e 100644 --- a/src/decorators/IfEmptyDecorator.php +++ b/src/decorators/IfEmptyDecorator.php @@ -8,6 +8,12 @@ namespace PHPPgAdmin\Decorators; class IfEmptyDecorator extends Decorator { + public $val; + public $empty; + /** + * @var mixed + */ + public $full; public function __construct($value, $empty, $full = null) { $this->val = $value; @@ -26,6 +32,6 @@ class IfEmptyDecorator extends Decorator return Decorator::get_sanitized_value($this->empty, $fields); } - return isset($this->full) ? Decorator::get_sanitized_value($this->full, $fields) : $val; + return property_exists($this, 'full') && $this->full !== null ? Decorator::get_sanitized_value($this->full, $fields) : $val; } } diff --git a/src/decorators/RedirectUrlDecorator.php b/src/decorators/RedirectUrlDecorator.php index 47077623..6f824098 100644 --- a/src/decorators/RedirectUrlDecorator.php +++ b/src/decorators/RedirectUrlDecorator.php @@ -8,6 +8,11 @@ namespace PHPPgAdmin\Decorators; class RedirectUrlDecorator extends Decorator { + public $base; + /** + * @var mixed + */ + public $queryVars; public function __construct($base, $queryVars = null) { $this->base = $base; diff --git a/src/decorators/ReplaceDecorator.php b/src/decorators/ReplaceDecorator.php index 3680d8b2..846a385f 100644 --- a/src/decorators/ReplaceDecorator.php +++ b/src/decorators/ReplaceDecorator.php @@ -8,6 +8,11 @@ namespace PHPPgAdmin\Decorators; class ReplaceDecorator extends Decorator { + /** + * @var mixed + */ + public $s; + public $p; public function __construct($str, $params) { $this->s = $str; diff --git a/src/decorators/UrlDecorator.php b/src/decorators/UrlDecorator.php index cc22a4a1..19745627 100644 --- a/src/decorators/UrlDecorator.php +++ b/src/decorators/UrlDecorator.php @@ -8,6 +8,11 @@ namespace PHPPgAdmin\Decorators; class UrlDecorator extends Decorator { + public $base; + /** + * @var mixed + */ + public $queryVars; public function __construct($base, $queryVars = null) { $this->base = $base; @@ -36,11 +41,8 @@ class UrlDecorator extends Decorator $sep = '&'; } } - - - $url = \str_replace('//', '/', \containerInstance()->subFolder . '/' . $url); - return $url; + return \str_replace('//', '/', \containerInstance()->subFolder . '/' . $url); } } diff --git a/src/middleware/PopulateRequestResponse.php b/src/middleware/PopulateRequestResponse.php index d3a7f5c6..92940334 100644 --- a/src/middleware/PopulateRequestResponse.php +++ b/src/middleware/PopulateRequestResponse.php @@ -54,24 +54,16 @@ class PopulateRequestResponse extends Middleware $requestPath = $uri->getPath(); $view->offsetSet('query_string', $query_string); - $path = $requestPath . ($query_string ? '?' . $query_string : ''); + $path = $requestPath . ($query_string !== '' ? '?' . $query_string : ''); $view->offsetSet('path', $path); $params = $request->getParams(); $viewparams = []; - foreach ($params as $key => $value) { - if (\is_scalar($value)) { - $viewparams[$key] = $value; - } - } + $viewparams = array_filter($params, 'is_scalar'); - if (isset($_COOKIE['IN_TEST'])) { - $in_test = (string) $_COOKIE['IN_TEST']; - } else { - $in_test = '0'; - } + $in_test = isset($_COOKIE['IN_TEST']) ? (string) $_COOKIE['IN_TEST'] : '0'; // remove tabs and linebreaks from query if (isset($params['query'])) { diff --git a/tests/_support/AcceptanceTester.php b/tests/_support/AcceptanceTester.php index 3a798148..d81f02f5 100644 --- a/tests/_support/AcceptanceTester.php +++ b/tests/_support/AcceptanceTester.php @@ -1,7 +1,7 @@