Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/HuasoFoundries/phpPgAdmin6.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorffflabs <amenadiel@gmail.com>2020-03-05 15:14:33 +0300
committerffflabs <amenadiel@gmail.com>2020-03-05 15:14:33 +0300
commitd01b97ad571ecb4ab70f0741f5d2e554b16b9d34 (patch)
tree52be9a720289154bb0be17cd754a4dd2d25a49d4
parentf8cdda8a794ef7f101ee8f55db85d05cde6989f3 (diff)
fixing broken constants
-rw-r--r--psalm-baseline.xml827
-rw-r--r--psalm.xml3
-rw-r--r--src/classes/ContainerUtils.php73
-rw-r--r--src/classes/Misc.php15
-rw-r--r--src/controllers/BaseController.php16
-rw-r--r--src/controllers/BrowserController.php4
-rw-r--r--src/controllers/DatabaseController.php2
-rw-r--r--src/controllers/DataexportController.php4
-rw-r--r--src/controllers/DisplayController.php4
-rw-r--r--src/controllers/TreeController.php62
-rw-r--r--src/database/Postgres12.php2
-rw-r--r--src/decorators/ActionUrlDecorator.php2
-rw-r--r--src/decorators/BranchUrlDecorator.php6
-rw-r--r--src/decorators/Decorator.php30
-rw-r--r--src/decorators/RedirectUrlDecorator.php6
-rw-r--r--src/decorators/UrlDecorator.php4
-rw-r--r--src/lib.inc.php8
-rw-r--r--src/router.php14
-rw-r--r--src/traits/AdminTrait.php32
-rw-r--r--src/traits/ExportTrait.php8
-rw-r--r--src/traits/HelperTrait.php55
-rw-r--r--src/traits/MiscTrait.php880
-rw-r--r--src/traits/ViewsMatviewsTrait.php46
-rw-r--r--src/xhtml/HTMLController.php61
-rw-r--r--src/xhtml/HTMLNavbarController.php10
-rw-r--r--src/xhtml/XHtmlSimpleElement.php13
-rw-r--r--tests/_support/Helper/Unit.php12
-rw-r--r--tests/unit/ViewTest.php77
28 files changed, 728 insertions, 1548 deletions
diff --git a/psalm-baseline.xml b/psalm-baseline.xml
deleted file mode 100644
index d4f11396..00000000
--- a/psalm-baseline.xml
+++ /dev/null
@@ -1,827 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<files psalm-version="3.9.3@2e4154d76e24d1b4e59e6cc2bebef7790cb9e550">
- <file src="src/classes/ADONewConnection.php">
- <UndefinedClass occurrences="1">
- <code>\ADONewConnection</code>
- </UndefinedClass>
- </file>
- <file src="src/classes/ADOdbException.php">
- <UndefinedDocblockClass occurrences="2">
- <code>number</code>
- <code>number</code>
- </UndefinedDocblockClass>
- </file>
- <file src="src/classes/ContainerUtils.php">
- <UndefinedClass occurrences="1">
- <code>\Slim\ContainerInterface</code>
- </UndefinedClass>
- <UndefinedInterfaceMethod occurrences="7">
- <code>$container</code>
- <code>$container</code>
- <code>$container</code>
- <code>$container</code>
- <code>$container</code>
- <code>$container</code>
- <code>$container</code>
- </UndefinedInterfaceMethod>
- </file>
- <file src="src/classes/Misc.php">
- <InvalidNullableReturnType occurrences="1">
- <code>string</code>
- </InvalidNullableReturnType>
- <NullableReturnStatement occurrences="3">
- <code>$this-&gt;_server_info</code>
- <code>$this-&gt;halt($this-&gt;lang['strinvalidserverparam'])</code>
- <code>$this-&gt;halt($lang['strcannotdumponwindows'])</code>
- </NullableReturnStatement>
- <UndefinedMethod occurrences="1">
- <code>setSchema</code>
- </UndefinedMethod>
- </file>
- <file src="src/controllers/AggregatesController.php">
- <NullReference occurrences="1">
- <code>$_REQUEST</code>
- </NullReference>
- </file>
- <file src="src/controllers/AlldbController.php">
- <NullReference occurrences="3">
- <code>$_POST</code>
- <code>$_POST</code>
- <code>$_POST</code>
- </NullReference>
- </file>
- <file src="src/controllers/BaseController.php">
- <UndefinedConstant occurrences="1">
- <code>BASE_PATH</code>
- </UndefinedConstant>
- <UndefinedThisPropertyAssignment occurrences="1">
- <code>$this-&gt;postgresqlMinVer</code>
- </UndefinedThisPropertyAssignment>
- </file>
- <file src="src/controllers/ColpropertiesController.php">
- <NullArgument occurrences="1">
- <code>null</code>
- </NullArgument>
- <NullReference occurrences="1">
- <code>$_REQUEST</code>
- </NullReference>
- </file>
- <file src="src/controllers/ConstraintsController.php">
- <NullReference occurrences="5">
- <code>$_POST</code>
- <code>$_POST</code>
- <code>$_POST</code>
- <code>$_POST</code>
- <code>$_POST</code>
- </NullReference>
- <UndefinedMethod occurrences="1">
- <code>doTree</code>
- </UndefinedMethod>
- </file>
- <file src="src/controllers/DatabaseController.php">
- <NullReference occurrences="1">
- <code>$_REQUEST</code>
- </NullReference>
- </file>
- <file src="src/controllers/DataexportController.php">
- <InvalidArgument occurrences="16">
- <code>"REQUEST['what']"</code>
- <code>'DUMP ENABLED, d_format is'</code>
- <code>$_REQUEST['d_format']</code>
- <code>'d_format is'</code>
- <code>'d_oids is'</code>
- <code>isset($_REQUEST['d_oids'])</code>
- <code>'$_REQUEST[query]'</code>
- <code>\htmlspecialchars(\urlencode($_REQUEST['query']))</code>
- <code>'$_SESSION[sqlquery]'</code>
- <code>\htmlspecialchars(\urlencode($_SESSION['sqlquery']))</code>
- <code>"REQUEST['what']"</code>
- <code>'subject'</code>
- <code>'object'</code>
- <code>'tabledefprefix'</code>
- <code>'tabledefsuffix'</code>
- <code>'$_REQUEST[query]'</code>
- </InvalidArgument>
- </file>
- <file src="src/controllers/DbexportController.php">
- <EmptyArrayAccess occurrences="1">
- <code>$version[1]</code>
- </EmptyArrayAccess>
- <InvalidArgument occurrences="8">
- <code>'REQUEST[subject]'</code>
- <code>'$exe'</code>
- <code>'version'</code>
- <code>'REQUEST[output]'</code>
- <code>'f_object'</code>
- <code>'ENV VARS'</code>
- <code>'cmd'</code>
- <code>$cmd</code>
- </InvalidArgument>
- </file>
- <file src="src/controllers/DisplayController.php">
- <EmptyArrayAccess occurrences="1">
- <code>$urlvars['search_path']</code>
- </EmptyArrayAccess>
- <InvalidArgument occurrences="1">
- <code>$resultset-&gt;recordCount()</code>
- </InvalidArgument>
- <InvalidArrayOffset occurrences="9">
- <code>$_gets['schema']</code>
- <code>$_gets['subject']</code>
- <code>$_gets['query']</code>
- <code>$_gets['count']</code>
- <code>$_gets['return']</code>
- <code>$_gets['search_path']</code>
- <code>$_gets['table']</code>
- <code>$_gets['nohistory']</code>
- <code>$fields['schema']</code>
- </InvalidArrayOffset>
- <InvalidNullableReturnType occurrences="1">
- <code>string</code>
- </InvalidNullableReturnType>
- <NullReference occurrences="5">
- <code>$_REQUEST</code>
- <code>$_REQUEST</code>
- <code>$_REQUEST</code>
- <code>$_REQUEST</code>
- <code>$_POST</code>
- </NullReference>
- <UndefinedDocblockClass occurrences="7">
- <code>$resultset-&gt;recordCount()</code>
- <code>$resultset-&gt;recordCount()</code>
- <code>$resultset-&gt;fetchField($index)</code>
- <code>$finfo-&gt;name</code>
- <code>$finfo-&gt;name</code>
- <code>$resultset-&gt;fetchField($j++)</code>
- <code>$finfo-&gt;type</code>
- </UndefinedDocblockClass>
- </file>
- <file src="src/controllers/DomainsController.php">
- <NullReference occurrences="3">
- <code>$_POST</code>
- <code>$_POST</code>
- <code>$_POST</code>
- </NullReference>
- </file>
- <file src="src/controllers/FulltextController.php">
- <NullReference occurrences="6">
- <code>$_POST</code>
- <code>$_POST</code>
- <code>$_POST</code>
- <code>$_POST</code>
- <code>$_POST</code>
- <code>$_POST</code>
- </NullReference>
- </file>
- <file src="src/controllers/FunctionsController.php">
- <InvalidNullableReturnType occurrences="1">
- <code>string</code>
- </InvalidNullableReturnType>
- <NullableReturnStatement occurrences="2">
- <code>$this-&gt;_printNavLinks('functions-properties', $func_full)</code>
- <code>$this-&gt;_printNavLinks('functions-properties', $func_full)</code>
- </NullableReturnStatement>
- <TooFewArguments occurrences="1">
- <code>showDefinition</code>
- </TooFewArguments>
- <UndefinedVariable occurrences="1">
- <code>$f</code>
- </UndefinedVariable>
- </file>
- <file src="src/controllers/GroupsController.php">
- <NullReference occurrences="3">
- <code>$_POST</code>
- <code>$_POST</code>
- <code>$_POST</code>
- </NullReference>
- </file>
- <file src="src/controllers/IndexesController.php">
- <NullReference occurrences="4">
- <code>$_REQUEST</code>
- <code>$_REQUEST</code>
- <code>$_REQUEST</code>
- <code>$_POST</code>
- </NullReference>
- </file>
- <file src="src/controllers/InfoController.php">
- <InvalidReturnType occurrences="1">
- <code>string|void</code>
- </InvalidReturnType>
- <UndefinedThisPropertyAssignment occurrences="1">
- <code>$this-&gt;shownull</code>
- </UndefinedThisPropertyAssignment>
- <UndefinedThisPropertyFetch occurrences="4">
- <code>$this-&gt;shownull</code>
- <code>$this-&gt;shownull</code>
- <code>$this-&gt;shownull</code>
- <code>$this-&gt;shownull</code>
- </UndefinedThisPropertyFetch>
- </file>
- <file src="src/controllers/LoginController.php">
- <InvalidArgument occurrences="1">
- <code>'invalid server param'</code>
- </InvalidArgument>
- </file>
- <file src="src/controllers/MaterializedviewpropertiesController.php">
- <InvalidArgument occurrences="1">
- <code>$sql</code>
- </InvalidArgument>
- <NullReference occurrences="2">
- <code>$_REQUEST</code>
- <code>$_POST</code>
- </NullReference>
- </file>
- <file src="src/controllers/MaterializedviewsController.php">
- <NullReference occurrences="2">
- <code>$_REQUEST</code>
- <code>$_REQUEST</code>
- </NullReference>
- </file>
- <file src="src/controllers/PrivilegesController.php">
- <NullReference occurrences="2">
- <code>$_REQUEST</code>
- <code>$_REQUEST</code>
- </NullReference>
- </file>
- <file src="src/controllers/RolesController.php">
- <NullReference occurrences="4">
- <code>$_POST</code>
- <code>$_POST</code>
- <code>$_POST</code>
- <code>$_POST</code>
- </NullReference>
- </file>
- <file src="src/controllers/RulesController.php">
- <NullReference occurrences="1">
- <code>$_POST</code>
- </NullReference>
- </file>
- <file src="src/controllers/SchemasController.php">
- <NullReference occurrences="2">
- <code>$_POST</code>
- <code>$_POST</code>
- </NullReference>
- </file>
- <file src="src/controllers/SequencesController.php">
- <NullReference occurrences="3">
- <code>$_POST</code>
- <code>$_POST</code>
- <code>$_POST</code>
- </NullReference>
- </file>
- <file src="src/controllers/SqleditController.php">
- <NullReference occurrences="2">
- <code>$_REQUEST</code>
- <code>$_REQUEST</code>
- </NullReference>
- </file>
- <file src="src/controllers/TablesController.php">
- <NullReference occurrences="3">
- <code>$_REQUEST</code>
- <code>$_POST</code>
- <code>$_POST</code>
- </NullReference>
- <UndefinedDocblockClass occurrences="1">
- <code>$tables-&gt;recordCount()</code>
- </UndefinedDocblockClass>
- </file>
- <file src="src/controllers/TablespacesController.php">
- <NullReference occurrences="2">
- <code>$_POST</code>
- <code>$_POST</code>
- </NullReference>
- </file>
- <file src="src/controllers/TblpropertiesController.php">
- <InvalidArgument occurrences="1">
- <code>'$hasID'</code>
- </InvalidArgument>
- <NullReference occurrences="4">
- <code>$_POST</code>
- <code>$_POST</code>
- <code>$_REQUEST</code>
- <code>$_POST</code>
- </NullReference>
- </file>
- <file src="src/controllers/TreeController.php">
- <InvalidReturnStatement occurrences="1">
- <code>$parent</code>
- </InvalidReturnStatement>
- <UndefinedConstant occurrences="5">
- <code>\SUBFOLDER</code>
- <code>\SUBFOLDER</code>
- <code>\SUBFOLDER</code>
- <code>\SUBFOLDER</code>
- <code>BASE_PATH</code>
- </UndefinedConstant>
- </file>
- <file src="src/controllers/TriggersController.php">
- <NullReference occurrences="1">
- <code>$_POST</code>
- </NullReference>
- </file>
- <file src="src/controllers/TypesController.php">
- <InvalidArrayOffset occurrences="1">
- <code>$navlinks['enum']</code>
- </InvalidArrayOffset>
- <NullReference occurrences="3">
- <code>$_REQUEST</code>
- <code>$_REQUEST</code>
- <code>$_POST</code>
- </NullReference>
- </file>
- <file src="src/controllers/UsersController.php">
- <NullReference occurrences="2">
- <code>$_POST</code>
- <code>$_POST</code>
- </NullReference>
- </file>
- <file src="src/controllers/ViewpropertiesController.php">
- <NullReference occurrences="2">
- <code>$_REQUEST</code>
- <code>$_POST</code>
- </NullReference>
- </file>
- <file src="src/controllers/ViewsController.php">
- <NullReference occurrences="2">
- <code>$_REQUEST</code>
- <code>$_REQUEST</code>
- </NullReference>
- </file>
- <file src="src/database/ADOdbBase.php">
- <InvalidArgument occurrences="1">
- <code>$e-&gt;getMessage()</code>
- </InvalidArgument>
- <InvalidReturnStatement occurrences="2">
- <code>$e-&gt;getCode()</code>
- <code>$e-&gt;getCode()</code>
- </InvalidReturnStatement>
- <MissingDependency occurrences="1">
- <code>\PHPPgAdmin\ADONewConnection</code>
- </MissingDependency>
- </file>
- <file src="src/database/Connection.php">
- <InvalidReturnStatement occurrences="1">
- <code>-3</code>
- </InvalidReturnStatement>
- <NullableReturnStatement occurrences="1">
- <code>null</code>
- </NullableReturnStatement>
- <UndefinedDocblockClass occurrences="1">
- <code>$this-&gt;conn</code>
- </UndefinedDocblockClass>
- </file>
- <file src="src/database/Postgres.php">
- <InvalidArgument occurrences="12">
- <code>'bslash_count'</code>
- <code>$bslash_count</code>
- <code>$line</code>
- <code>'dol_quote'</code>
- <code>$dol_quote</code>
- <code>$line</code>
- <code>'open_xcomment'</code>
- <code>$in_xcomment</code>
- <code>$line</code>
- <code>$i</code>
- <code>$prevlen</code>
- <code>$thislen</code>
- </InvalidArgument>
- <LoopInvalidation occurrences="1">
- <code>$i</code>
- </LoopInvalidation>
- <ReferenceConstraintViolation occurrences="4">
- <code>return -3;</code>
- <code>return -1;</code>
- <code>return $rs;</code>
- <code>$max_pages</code>
- </ReferenceConstraintViolation>
- <UndefinedDocblockClass occurrences="1">
- <code>$rs-&gt;recordCount()</code>
- </UndefinedDocblockClass>
- </file>
- <file src="src/database/Postgres12.php">
- <InvalidNullableReturnType occurrences="1">
- <code>false</code>
- </InvalidNullableReturnType>
- <NullableReturnStatement occurrences="1">
- <code>null</code>
- </NullableReturnStatement>
- </file>
- <file src="src/database/Postgres74.php">
- <MoreSpecificImplementedParamType occurrences="1">
- <code>$default</code>
- </MoreSpecificImplementedParamType>
- </file>
- <file src="src/database/Postgres80.php">
- <MoreSpecificImplementedParamType occurrences="1">
- <code>$cycledvalue</code>
- </MoreSpecificImplementedParamType>
- <NullArgument occurrences="1">
- <code>null</code>
- </NullArgument>
- </file>
- <file src="src/database/Postgres81.php">
- <InvalidArgument occurrences="1">
- <code>$toid</code>
- </InvalidArgument>
- <InvalidCast occurrences="2">
- <code>$toid</code>
- <code>$toid</code>
- </InvalidCast>
- <UndefinedDocblockClass occurrences="2">
- <code>$rs-&gt;fields('oid')</code>
- <code>$rs-&gt;recordCount()</code>
- </UndefinedDocblockClass>
- </file>
- <file src="src/database/Postgres82.php">
- <ConflictingReferenceConstraint occurrences="1">
- <code>else {</code>
- </ConflictingReferenceConstraint>
- <LessSpecificImplementedReturnType occurrences="1">
- <code>array</code>
- </LessSpecificImplementedReturnType>
- <MoreSpecificImplementedParamType occurrences="1">
- <code>$operator_oid</code>
- </MoreSpecificImplementedParamType>
- <NullArgument occurrences="1">
- <code>null</code>
- </NullArgument>
- </file>
- <file src="src/database/Postgres83.php">
- <InvalidArgument occurrences="1">
- <code>$toid</code>
- </InvalidArgument>
- <InvalidCast occurrences="2">
- <code>$toid</code>
- <code>$toid</code>
- </InvalidCast>
- <MoreSpecificImplementedParamType occurrences="1">
- <code>$cycledvalue</code>
- </MoreSpecificImplementedParamType>
- <UndefinedDocblockClass occurrences="2">
- <code>$rs-&gt;fields('oid')</code>
- <code>$rs-&gt;recordCount()</code>
- </UndefinedDocblockClass>
- </file>
- <file src="src/database/databasetraits/FtsTrait.php">
- <InvalidArrayOffset occurrences="12">
- <code>$parser['schema']</code>
- <code>$parser['parser']</code>
- <code>$parser['schema']</code>
- <code>$parser['parser']</code>
- <code>$template['schema']</code>
- <code>$template['name']</code>
- <code>$template['schema']</code>
- <code>$template['name']</code>
- <code>$template['schema']</code>
- <code>$template['name']</code>
- <code>$template['schema']</code>
- <code>$template['name']</code>
- </InvalidArrayOffset>
- </file>
- <file src="src/database/databasetraits/FunctionTrait.php">
- <ConflictingReferenceConstraint occurrences="1">
- <code>else {</code>
- </ConflictingReferenceConstraint>
- <InvalidReturnType occurrences="1">
- <code>\PHPPgAdmin\ADORecordSet</code>
- </InvalidReturnType>
- <NullArgument occurrences="1">
- <code>null</code>
- </NullArgument>
- </file>
- <file src="src/database/databasetraits/IndexTrait.php">
- <UndefinedDocblockClass occurrences="1">
- <code>$v-&gt;recordCount()</code>
- </UndefinedDocblockClass>
- </file>
- <file src="src/database/databasetraits/RoleTrait.php">
- <UndefinedDocblockClass occurrences="3">
- <code>number</code>
- <code>number</code>
- <code>number</code>
- </UndefinedDocblockClass>
- </file>
- <file src="src/database/databasetraits/RowTrait.php">
- <UndefinedDocblockClass occurrences="1">
- <code>$rs-&gt;recordCount()</code>
- </UndefinedDocblockClass>
- </file>
- <file src="src/database/databasetraits/SchemaTrait.php">
- <InvalidReturnType occurrences="1">
- <code>int</code>
- </InvalidReturnType>
- </file>
- <file src="src/database/databasetraits/SequenceTrait.php">
- <InvalidArgument occurrences="6">
- <code>$increment</code>
- <code>$minvalue</code>
- <code>$maxvalue</code>
- <code>$restartvalue</code>
- <code>$cachevalue</code>
- <code>$startvalue</code>
- </InvalidArgument>
- <UndefinedDocblockClass occurrences="18">
- <code>number</code>
- <code>$seq-&gt;recordCount()</code>
- <code>number</code>
- <code>number</code>
- <code>number</code>
- <code>number</code>
- <code>number</code>
- <code>number</code>
- <code>number</code>
- <code>number</code>
- <code>number</code>
- <code>number</code>
- <code>number</code>
- <code>number</code>
- <code>number</code>
- <code>number</code>
- <code>number</code>
- <code>number</code>
- </UndefinedDocblockClass>
- </file>
- <file src="src/database/databasetraits/TableTrait.php">
- <InvalidArgument occurrences="1">
- <code>$privs</code>
- </InvalidArgument>
- <InvalidReturnType occurrences="1">
- <code>\PHPPgAdmin\ADORecordSet</code>
- </InvalidReturnType>
- <UndefinedDocblockClass occurrences="8">
- <code>$t-&gt;recordCount()</code>
- <code>$atts-&gt;recordCount()</code>
- <code>$cons-&gt;recordCount()</code>
- <code>$rs-&gt;recordCount()</code>
- <code>$indexes-&gt;recordCount()</code>
- <code>$triggers-&gt;recordCount()</code>
- <code>$rules-&gt;recordCount()</code>
- <code>$data-&gt;recordCount()</code>
- </UndefinedDocblockClass>
- </file>
- <file src="src/database/databasetraits/TriggerTrait.php">
- <InvalidReturnType occurrences="1">
- <code>int</code>
- </InvalidReturnType>
- </file>
- <file src="src/database/databasetraits/ViewTrait.php">
- <UndefinedDocblockClass occurrences="1">
- <code>$data-&gt;recordCount()</code>
- </UndefinedDocblockClass>
- </file>
- <file src="src/decorators/ActionUrlDecorator.php">
- <UndefinedConstant occurrences="1">
- <code>\SUBFOLDER</code>
- </UndefinedConstant>
- <UndefinedThisPropertyAssignment occurrences="4">
- <code>$this-&gt;base</code>
- <code>$this-&gt;queryVars</code>
- <code>$this-&gt;base</code>
- <code>$this-&gt;queryVars</code>
- </UndefinedThisPropertyAssignment>
- <UndefinedThisPropertyFetch occurrences="1">
- <code>$this-&gt;base</code>
- </UndefinedThisPropertyFetch>
- </file>
- <file src="src/decorators/ArrayMergeDecorator.php">
- <UndefinedThisPropertyAssignment occurrences="1">
- <code>$this-&gt;m</code>
- </UndefinedThisPropertyAssignment>
- <UndefinedThisPropertyFetch occurrences="1">
- <code>$this-&gt;m</code>
- </UndefinedThisPropertyFetch>
- </file>
- <file src="src/decorators/BranchUrlDecorator.php">
- <UndefinedConstant occurrences="3">
- <code>\SUBFOLDER</code>
- <code>\SUBFOLDER</code>
- <code>\SUBFOLDER</code>
- </UndefinedConstant>
- <UndefinedThisPropertyAssignment occurrences="4">
- <code>$this-&gt;base</code>
- <code>$this-&gt;queryVars</code>
- <code>$this-&gt;base</code>
- <code>$this-&gt;queryVars</code>
- </UndefinedThisPropertyAssignment>
- <UndefinedThisPropertyFetch occurrences="1">
- <code>$this-&gt;base</code>
- </UndefinedThisPropertyFetch>
- </file>
- <file src="src/decorators/CallbackDecorator.php">
- <UndefinedThisPropertyAssignment occurrences="2">
- <code>$this-&gt;fn</code>
- <code>$this-&gt;p</code>
- </UndefinedThisPropertyAssignment>
- <UndefinedThisPropertyFetch occurrences="2">
- <code>$this-&gt;fn</code>
- <code>$this-&gt;p</code>
- </UndefinedThisPropertyFetch>
- </file>
- <file src="src/decorators/ConcatDecorator.php">
- <UndefinedThisPropertyAssignment occurrences="1">
- <code>$this-&gt;c</code>
- </UndefinedThisPropertyAssignment>
- <UndefinedThisPropertyFetch occurrences="1">
- <code>$this-&gt;c</code>
- </UndefinedThisPropertyFetch>
- </file>
- <file src="src/decorators/Decorator.php">
- <UndefinedThisPropertyAssignment occurrences="1">
- <code>$this-&gt;val</code>
- </UndefinedThisPropertyAssignment>
- <UndefinedThisPropertyFetch occurrences="1">
- <code>$this-&gt;val</code>
- </UndefinedThisPropertyFetch>
- </file>
- <file src="src/decorators/FieldDecorator.php">
- <UndefinedThisPropertyAssignment occurrences="2">
- <code>$this-&gt;f</code>
- <code>$this-&gt;d</code>
- </UndefinedThisPropertyAssignment>
- <UndefinedThisPropertyFetch occurrences="2">
- <code>$this-&gt;f</code>
- <code>$this-&gt;d</code>
- </UndefinedThisPropertyFetch>
- </file>
- <file src="src/decorators/IfEmptyDecorator.php">
- <UndefinedThisPropertyAssignment occurrences="6">
- <code>$this-&gt;val</code>
- <code>$this-&gt;empty</code>
- <code>$this-&gt;full</code>
- <code>$this-&gt;val</code>
- <code>$this-&gt;empty</code>
- <code>$this-&gt;full</code>
- </UndefinedThisPropertyAssignment>
- <UndefinedThisPropertyFetch occurrences="2">
- <code>$this-&gt;val</code>
- <code>$this-&gt;empty</code>
- </UndefinedThisPropertyFetch>
- </file>
- <file src="src/decorators/RedirectUrlDecorator.php">
- <UndefinedConstant occurrences="3">
- <code>\SUBFOLDER</code>
- <code>\SUBFOLDER</code>
- <code>\SUBFOLDER</code>
- </UndefinedConstant>
- <UndefinedThisPropertyAssignment occurrences="4">
- <code>$this-&gt;base</code>
- <code>$this-&gt;queryVars</code>
- <code>$this-&gt;base</code>
- <code>$this-&gt;queryVars</code>
- </UndefinedThisPropertyAssignment>
- <UndefinedThisPropertyFetch occurrences="1">
- <code>$this-&gt;base</code>
- </UndefinedThisPropertyFetch>
- </file>
- <file src="src/decorators/ReplaceDecorator.php">
- <UndefinedThisPropertyAssignment occurrences="2">
- <code>$this-&gt;s</code>
- <code>$this-&gt;p</code>
- </UndefinedThisPropertyAssignment>
- <UndefinedThisPropertyFetch occurrences="2">
- <code>$this-&gt;s</code>
- <code>$this-&gt;p</code>
- </UndefinedThisPropertyFetch>
- </file>
- <file src="src/decorators/UrlDecorator.php">
- <UndefinedConstant occurrences="3">
- <code>\SUBFOLDER</code>
- <code>\SUBFOLDER</code>
- <code>\SUBFOLDER</code>
- </UndefinedConstant>
- <UndefinedThisPropertyAssignment occurrences="4">
- <code>$this-&gt;base</code>
- <code>$this-&gt;queryVars</code>
- <code>$this-&gt;base</code>
- <code>$this-&gt;queryVars</code>
- </UndefinedThisPropertyAssignment>
- <UndefinedThisPropertyFetch occurrences="1">
- <code>$this-&gt;base</code>
- </UndefinedThisPropertyFetch>
- </file>
- <file src="src/lib.inc.php">
- <EmptyArrayAccess occurrences="2">
- <code>$conf['debugmode']</code>
- <code>$conf['register_debuggers']</code>
- </EmptyArrayAccess>
- </file>
- <file src="src/middleware/PopulateRequestResponse.php">
- <UndefinedConstant occurrences="2">
- <code>SUBFOLDER</code>
- <code>SUBFOLDER</code>
- </UndefinedConstant>
- <UndefinedInterfaceMethod occurrences="4">
- <code>getParam</code>
- <code>getParam</code>
- <code>getParam</code>
- <code>getParams</code>
- </UndefinedInterfaceMethod>
- </file>
- <file src="src/router.php">
- <InvalidScope occurrences="6">
- <code>$this</code>
- <code>$this</code>
- <code>$this</code>
- <code>$this</code>
- <code>$this</code>
- <code>$this</code>
- </InvalidScope>
- </file>
- <file src="src/traits/AdminTrait.php">
- <InvalidArrayOffset occurrences="2">
- <code>$actions['edit']['vars']</code>
- <code>$actions['delete']['vars']</code>
- </InvalidArrayOffset>
- <ParadoxicalCondition occurrences="1">
- <code>empty($_REQUEST['table'])</code>
- </ParadoxicalCondition>
- <UndefinedConstant occurrences="16">
- <code>\SUBFOLDER</code>
- <code>\SUBFOLDER</code>
- <code>\SUBFOLDER</code>
- <code>\SUBFOLDER</code>
- <code>\SUBFOLDER</code>
- <code>\SUBFOLDER</code>
- <code>\SUBFOLDER</code>
- <code>\SUBFOLDER</code>
- <code>\SUBFOLDER</code>
- <code>\SUBFOLDER</code>
- <code>\SUBFOLDER</code>
- <code>\SUBFOLDER</code>
- <code>\SUBFOLDER</code>
- <code>\SUBFOLDER</code>
- <code>\SUBFOLDER</code>
- <code>\SUBFOLDER</code>
- </UndefinedConstant>
- <UndefinedDocblockClass occurrences="1">
- <code>$autovac-&gt;recordCount()</code>
- </UndefinedDocblockClass>
- </file>
- <file src="src/traits/ExportTrait.php">
- <UndefinedConstant occurrences="1">
- <code>\SUBFOLDER</code>
- </UndefinedConstant>
- </file>
- <file src="src/traits/HelperTrait.php">
- <UndefinedConstant occurrences="1">
- <code>BASE_PATH</code>
- </UndefinedConstant>
- <UndefinedDocblockClass occurrences="1">
- <code>$set-&gt;recordCount()</code>
- </UndefinedDocblockClass>
- <UndefinedThisPropertyFetch occurrences="3">
- <code>$this-&gt;container</code>
- <code>$this-&gt;container</code>
- <code>$this-&gt;container</code>
- </UndefinedThisPropertyFetch>
- </file>
- <file src="src/traits/InsertEditRowTrait.php">
- <UndefinedConstant occurrences="2">
- <code>SUBFOLDER</code>
- <code>SUBFOLDER</code>
- </UndefinedConstant>
- </file>
- <file src="src/traits/MiscTrait.php">
- <UndefinedConstant occurrences="5">
- <code>SUBFOLDER</code>
- <code>SUBFOLDER</code>
- <code>SUBFOLDER</code>
- <code>\SUBFOLDER</code>
- <code>\SUBFOLDER</code>
- </UndefinedConstant>
- <UndefinedMethod occurrences="1">
- <code>isSuperUser</code>
- </UndefinedMethod>
- </file>
- <file src="src/traits/ViewsMatviewsTrait.php">
- <EmptyArrayAccess occurrences="1">
- <code>$formLink[$i]</code>
- </EmptyArrayAccess>
- <NullReference occurrences="1">
- <code>$_POST</code>
- </NullReference>
- <UndefinedConstant occurrences="3">
- <code>\SUBFOLDER</code>
- <code>\SUBFOLDER</code>
- <code>\SUBFOLDER</code>
- </UndefinedConstant>
- </file>
- <file src="src/xhtml/HTMLNavbarController.php">
- <InvalidArgument occurrences="1">
- <code>$alltabs</code>
- </InvalidArgument>
- <InvalidReturnType occurrences="1">
- <code>? string</code>
- </InvalidReturnType>
- </file>
- <file src="src/xhtml/HTMLTableController.php">
- <UndefinedConstant occurrences="1">
- <code>SUBFOLDER</code>
- </UndefinedConstant>
- </file>
- <file src="src/xhtml/XHtmlElement.php">
- <MismatchingDocblockParamType occurrences="1">
- <code>XHtmlElement</code>
- </MismatchingDocblockParamType>
- </file>
-</files>
diff --git a/psalm.xml b/psalm.xml
index a88db70e..bbc56be6 100644
--- a/psalm.xml
+++ b/psalm.xml
@@ -1,11 +1,12 @@
<?xml version="1.0"?>
<psalm
totallyTyped="false"
- errorLevel="5"
+ errorLevel="3"
resolveFromConfigFile="true"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="https://getpsalm.org/schema/config"
xsi:schemaLocation="https://getpsalm.org/schema/config vendor/vimeo/psalm/config.xsd"
+
errorBaseline=".build/psalm/psalm-baseline.xml"
>
<projectFiles>
diff --git a/src/classes/ContainerUtils.php b/src/classes/ContainerUtils.php
index fc54b322..4c3d6403 100644
--- a/src/classes/ContainerUtils.php
+++ b/src/classes/ContainerUtils.php
@@ -13,10 +13,11 @@ use Slim\App;
\defined('THEME_PATH') || \define('THEME_PATH', BASE_PATH . '/assets/themes');
\defined('SUBFOLDER') || \define(
'SUBFOLDER',
- \str_replace($_SERVER['DOCUMENT_ROOT'] ?? '', '', 'BASE_PATH')
+ \str_replace($_SERVER['DOCUMENT_ROOT'] ?? '', '', BASE_PATH)
);
\defined('DEBUGMODE') || \define('DEBUGMODE', false);
\defined('IN_TEST') || \define('IN_TEST', false);
+
/**
* @file
* A class that adds convenience methods to the container
@@ -42,6 +43,11 @@ class ContainerUtils
const DEBUGMODE = DEBUGMODE;
/**
+ *
+ * @var string
+ */
+ const THEME_PATH = THEME_PATH;
+ /**
* @var ContainerInterface
*/
protected $container;
@@ -62,56 +68,56 @@ class ContainerUtils
public function __construct()
{
$composerinfo = \json_decode(\file_get_contents(BASE_PATH . '/composer.json'));
- $appVersion = $composerinfo->extra->version;
+ $appVersion = $composerinfo->extra->version;
$phpMinVer = (\str_replace(['<', '>', '='], '', $composerinfo->require->php));
//$this->prtrace($appVersion);
//$this->dump($composerinfo);
$settings = [
'determineRouteBeforeAppMiddleware' => true,
- 'base_path' => self::BASE_PATH,
- 'debug' => self::DEBUGMODE,
+ 'base_path' => self::BASE_PATH,
+ 'debug' => self::DEBUGMODE,
// Configuration file version. If this is greater than that in config.inc.php, then
// the app will refuse to run. This and $conf['version'] should be incremented whenever
// backwards incompatible changes are made to config.inc.php-dist.
- 'base_version' => 60,
+ 'base_version' => 60,
// Application version
- 'appVersion' => 'v' . $appVersion,
+ 'appVersion' => 'v' . $appVersion,
// Application name
- 'appName' => 'phpPgAdmin6',
+ 'appName' => 'phpPgAdmin6',
// PostgreSQL and PHP minimum version
- 'postgresqlMinVer' => '9.3',
- 'phpMinVer' => $phpMinVer,
- 'displayErrorDetails' => self::DEBUGMODE,
- 'addContentLengthHeader' => false,
+ 'postgresqlMinVer' => '9.3',
+ 'phpMinVer' => $phpMinVer,
+ 'displayErrorDetails' => self::DEBUGMODE,
+ 'addContentLengthHeader' => false,
];
if (!self::DEBUGMODE && !IN_TEST) {
$settings['routerCacheFile'] = self::BASE_PATH . '/temp/route.cache.php';
}
$config = [
- 'msg' => '',
+ 'msg' => '',
'appThemes' => [
- 'default' => 'Default',
+ 'default' => 'Default',
'cappuccino' => 'Cappuccino',
- 'gotar' => 'Blue/Green',
- 'bootstrap' => 'Bootstrap3',
+ 'gotar' => 'Blue/Green',
+ 'bootstrap' => 'Bootstrap3',
],
- 'settings' => $settings,
+ 'settings' => $settings,
];
$this->_app = new App($config);
// Fetch DI Container
- $container = $this->_app->getContainer();
- $container['utils'] = $this;
- $container['version'] = 'v' . $appVersion;
- $container['errors'] = [];
- $container['requestobj'] = $container['request'];
+ $container = $this->_app->getContainer();
+ $container['utils'] = $this;
+ $container['version'] = 'v' . $appVersion;
+ $container['errors'] = [];
+ $container['requestobj'] = $container['request'];
$container['responseobj'] = $container['response'];
- $this->container = $container;
+ $this->container = $container;
}
public static function getContainerInstance()
@@ -143,13 +149,13 @@ class ContainerUtils
$conf['display_sizes'] = [
'schemas' => (bool) $display_sizes,
- 'tables' => (bool) $display_sizes,
+ 'tables' => (bool) $display_sizes,
];
if (\is_array($display_sizes)) {
$conf['display_sizes'] = [
'schemas' => $display_sizes['schemas'] ?? \in_array('schemas', $display_sizes, true),
- 'tables' => $display_sizes['tables'] ?? \in_array('tables', $display_sizes, true),
+ 'tables' => $display_sizes['tables'] ?? \in_array('tables', $display_sizes, true),
];
}
@@ -189,6 +195,7 @@ class ContainerUtils
}
$container->subfolder = $subfolder ?? self::SUBFOLDER;
+ $container->subfolder = $subfolder ?? self::SUBFOLDER;
//ddd($container->subfolder);
return [$container, self::$_instance->_app];
}
@@ -200,14 +207,14 @@ class ContainerUtils
$in_test = $c->view->offsetGet('in_test');
if ('1' === $in_test) {
- $className = '\PHPPgAdmin\Controller\\' . \ucfirst($subject) . 'Controller';
+ $className = '\PHPPgAdmin\Controller\\' . \ucfirst($subject) . 'Controller';
$controller = new $className($c);
return $controller->render();
}
$viewVars = [
- 'url' => '/src/views/' . $subject . ($query_string ? '?' . $query_string : ''),
+ 'url' => '/src/views/' . $subject . ($query_string ? '?' . $query_string : ''),
'headertemplate' => 'header.twig',
];
@@ -273,10 +280,10 @@ class ContainerUtils
// if server_id isn't set, then you will be redirected to intro
if (null === $this->container->requestobj->getQueryParam('server')) {
- $destinationurl = \SUBFOLDER . '/src/views/intro';
+ $destinationurl = self::SUBFOLDER . '/src/views/intro';
} else {
// otherwise, you'll be redirected to the login page for that server;
- $destinationurl = \SUBFOLDER . '/src/views/login' . ($query_string ? '?' . $query_string : '');
+ $destinationurl = self::SUBFOLDER . '/src/views/login' . ($query_string ? '?' . $query_string : '');
}
return $destinationurl;
@@ -310,10 +317,10 @@ class ContainerUtils
$urlvars[$key] = \PHPPgAdmin\Decorators\Decorator::get_sanitized_value($urlvar, $_REQUEST);
}
$_REQUEST = \array_merge($_REQUEST, $urlvars);
- $_GET = \array_merge($_GET, $urlvars);
+ $_GET = \array_merge($_GET, $urlvars);
}
- $actionurl = \PHPPgAdmin\Decorators\Decorator::actionurl($url['url'], $_GET);
+ $actionurl = \PHPPgAdmin\Decorators\Decorator::actionurl($url['url'], $_GET);
$destinationurl = $actionurl->value($_GET);
}
$destinationurl = \str_replace('views/?', "views/{$subject}?", $destinationurl);
@@ -330,7 +337,7 @@ class ContainerUtils
*/
public function addError(string $errormsg): ContainerInterface
{
- $errors = $this->container->get('errors');
+ $errors = $this->container->get('errors');
$errors[] = $errormsg;
$this->container->offsetSet('errors', $errors);
@@ -346,7 +353,7 @@ class ContainerUtils
private function getThemeFolders()
{
// no THEME_PATH (how?) then return empty array
- if (!$gestor = \opendir(THEME_PATH)) {
+ if (!$gestor = \opendir(self::THEME_PATH)) {
\closedir($gestor);
return [];
@@ -359,7 +366,7 @@ class ContainerUtils
continue;
}
- $folderpath = \sprintf('%s%s%s', THEME_PATH, \DIRECTORY_SEPARATOR, $foldername);
+ $folderpath = \sprintf('%s%s%s', self::THEME_PATH, \DIRECTORY_SEPARATOR, $foldername);
$stylesheet = \sprintf('%s%s%s', $folderpath, \DIRECTORY_SEPARATOR, 'global.css');
// if $folderpath if indeed a folder and contains a global.css file, then it's a theme
if (\is_dir($folderpath) &&
diff --git a/src/classes/Misc.php b/src/classes/Misc.php
index 6b493add..c65795bb 100644
--- a/src/classes/Misc.php
+++ b/src/classes/Misc.php
@@ -6,13 +6,6 @@
namespace PHPPgAdmin;
-\defined('BASE_PATH') || \define('BASE_PATH', \dirname(__DIR__, 2));
-\defined('SUBFOLDER') || \define(
- 'SUBFOLDER',
- \str_replace($_SERVER['DOCUMENT_ROOT'] ?? '', '', BASE_PATH)
-);
-\defined('DEBUGMODE') || \define('DEBUGMODE', false);
-
/**
* @file
* Class to hold various commonly used functions
@@ -33,15 +26,15 @@ class Misc
/**
* @var string
*/
- const BASE_PATH = BASE_PATH;
+ const BASE_PATH = ContainerUtils::BASE_PATH;
/**
* @var string
*/
- const SUBFOLDER = SUBFOLDER;
+ const SUBFOLDER = ContainerUtils::SUBFOLDER;
/**
* @var string
*/
- const DEBUGMODE = DEBUGMODE;
+ const DEBUGMODE = ContainerUtils::DEBUGMODE;
public $appLangFiles = [];
@@ -556,7 +549,7 @@ class Misc
}
}
- public function getDatabase($database = '')
+ public function getDatabase(string $database = '')
{
if (null === $this->_server_id && !isset($_REQUEST['database'])) {
return null;
diff --git a/src/controllers/BaseController.php b/src/controllers/BaseController.php
index 6a174a4f..907e6d26 100644
--- a/src/controllers/BaseController.php
+++ b/src/controllers/BaseController.php
@@ -6,16 +6,10 @@
namespace PHPPgAdmin\Controller;
+use PHPPgAdmin\ContainerUtils;
use PHPPgAdmin\XHtml;
-\defined('BASE_PATH') || \define('BASE_PATH', \dirname(__DIR__, 2));
-\defined('SUBFOLDER') || \define(
- 'SUBFOLDER',
- \str_replace($_SERVER['DOCUMENT_ROOT'] ?? '', '', BASE_PATH)
-);
-\defined('DEBUGMODE') || \define('DEBUGMODE', false);
-
-\ini_set('display_errors', DEBUGMODE);
+\ini_set('display_errors', ContainerUtils::DEBUGMODE);
/**
* Base controller class.
*/
@@ -25,15 +19,15 @@ class BaseController
/**
* @var string
*/
- const BASE_PATH = BASE_PATH;
+ const BASE_PATH = ContainerUtils::BASE_PATH;
/**
* @var string
*/
- const SUBFOLDER = SUBFOLDER;
+ const SUBFOLDER = ContainerUtils::SUBFOLDER;
/**
* @var string
*/
- const DEBUGMODE = DEBUGMODE;
+ const DEBUGMODE = ContainerUtils::DEBUGMODE;
public $appLangFiles = [];
diff --git a/src/controllers/BrowserController.php b/src/controllers/BrowserController.php
index 66e01b5a..9b79b1f2 100644
--- a/src/controllers/BrowserController.php
+++ b/src/controllers/BrowserController.php
@@ -19,8 +19,10 @@ class BrowserController extends BaseController
* Default method to render the controller according to the action parameter.
*
* @param null|mixed $action
+ *
+ * @return string
*/
- public function render($action = null)
+ public function render($action = null): string
{
if (null === $action) {
$action = $this->action;
diff --git a/src/controllers/DatabaseController.php b/src/controllers/DatabaseController.php
index 549c8460..2a7e3d6e 100644
--- a/src/controllers/DatabaseController.php
+++ b/src/controllers/DatabaseController.php
@@ -600,7 +600,7 @@ class DatabaseController extends BaseController
return $optionhtml;
}
- private function _translatedType($curr)
+ private function _translatedType(string $curr)
{
$types = [
'COLUMN' => $this->lang['strcolumns'],
diff --git a/src/controllers/DataexportController.php b/src/controllers/DataexportController.php
index e420c3b2..e3d1d26e 100644
--- a/src/controllers/DataexportController.php
+++ b/src/controllers/DataexportController.php
@@ -228,7 +228,7 @@ class DataexportController extends BaseController
return $response;
}
- private function _getRS($data, $object, $oids)
+ private function _getRS($data, $object, bool $oids)
{
if ($object) {
return $data->dumpRelation($object, $oids);
@@ -269,7 +269,7 @@ class DataexportController extends BaseController
->withHeader('Content-Disposition', 'attachment; filename=dump.' . $ext);
}
- private function pickFormat($data, $object, $oids, $rs, $format, $response)
+ private function pickFormat($data, $object, bool $oids, $rs, $format, $response)
{
if ('copy' === $format) {
$this->_mimicCopy($data, $object, $oids, $rs);
diff --git a/src/controllers/DisplayController.php b/src/controllers/DisplayController.php
index 7a8644cc..95732d33 100644
--- a/src/controllers/DisplayController.php
+++ b/src/controllers/DisplayController.php
@@ -294,7 +294,7 @@ class DisplayController extends BaseController
/**
* @param array $_gets
*/
- public function getBrowseNavLinks($type, array $_gets, $page, $subject, $object, $resultset)
+ public function getBrowseNavLinks($type, array $_gets, $page, string $subject, $object, $resultset)
{
$fields = [
'server' => $_REQUEST['server'],
@@ -948,7 +948,7 @@ class DisplayController extends BaseController
echo '</div>';
}
- private function _getKeyAndActions(object $resultset, $object, $data, $page, $_gets)
+ private function _getKeyAndActions(object $resultset, $object, $data, $page, array $_gets)
{
$key = [];
$strings = $_gets['strings'];
diff --git a/src/controllers/TreeController.php b/src/controllers/TreeController.php
index 1f38fe66..de56ea67 100644
--- a/src/controllers/TreeController.php
+++ b/src/controllers/TreeController.php
@@ -14,18 +14,6 @@ use PHPPgAdmin\Decorators\Decorator;
class TreeController extends BaseController
{
use \PHPPgAdmin\Traits\HelperTrait;
- /**
- * @var string
- */
- const BASE_PATH = BASE_PATH;
- /**
- * @var string
- */
- const SUBFOLDER = SUBFOLDER;
- /**
- * @var string
- */
- const DEBUGMODE = DEBUGMODE;
public $form = '';
@@ -57,17 +45,17 @@ class TreeController extends BaseController
public function __construct(\Slim\Container $container, $controller_name = null)
{
$this->container = $container;
- $this->lang = $container->get('lang');
+ $this->lang = $container->get('lang');
//$this->conf = $container->get('conf');
$this->view = $container->get('view');
- $this->appName = $container->get('settings')['appName'];
- $this->appVersion = $container->get('settings')['appVersion'];
+ $this->appName = $container->get('settings')['appName'];
+ $this->appVersion = $container->get('settings')['appVersion'];
$this->appLangFiles = $container->get('appLangFiles');
- $this->misc = $container->get('misc');
- $this->conf = $this->misc->getConf();
- $this->appThemes = $container->get('appThemes');
- $this->action = $container->get('action');
+ $this->misc = $container->get('misc');
+ $this->conf = $this->misc->getConf();
+ $this->appThemes = $container->get('appThemes');
+ $this->action = $container->get('action');
if (null !== $controller_name) {
$this->controller_name = $controller_name;
@@ -106,8 +94,8 @@ class TreeController extends BaseController
$tree_params = [
'treedata' => &$treedata,
- 'attrs' => &$attrs,
- 'section' => $section,
+ 'attrs' => &$attrs,
+ 'section' => $section,
];
return $this->printTreeJSON($treedata, $attrs, $print);
@@ -155,13 +143,13 @@ class TreeController extends BaseController
if (isset($attrs['is_root'])) {
$parent = [
- 'id' => 'root',
+ 'id' => 'root',
'children' => true,
- 'icon' => \SUBFOLDER . '/assets/images/themes/default/Servers.png',
- 'state' => ['opened' => true],
- 'a_attr' => ['href' => \str_replace('//', '/', \SUBFOLDER . '/src/views/servers')],
- 'url' => \str_replace('//', '/', \SUBFOLDER . '/src/views/servers?action=tree'),
- 'text' => 'Servers',
+ 'icon' => self::SUBFOLDER . '/assets/images/themes/default/Servers.png',
+ 'state' => ['opened' => true],
+ 'a_attr' => ['href' => \str_replace('//', '/', self::SUBFOLDER . '/src/views/servers')],
+ 'url' => \str_replace('//', '/', self::SUBFOLDER . '/src/views/servers?action=tree'),
+ 'text' => 'Servers',
];
} elseif (0 < \count($treedata)) {
foreach ($treedata as $rec) {
@@ -172,23 +160,23 @@ class TreeController extends BaseController
}
$tree = [
- 'text' => Decorator::get_sanitized_value($attrs['text'], $rec),
- 'id' => \sha1(Decorator::get_sanitized_value($attrs['action'], $rec)),
- 'icon' => Decorator::get_sanitized_value($icon, $rec),
+ 'text' => Decorator::get_sanitized_value($attrs['text'], $rec),
+ 'id' => \sha1(Decorator::get_sanitized_value($attrs['action'], $rec)),
+ 'icon' => Decorator::get_sanitized_value($icon, $rec),
'iconaction' => Decorator::get_sanitized_value($attrs['iconAction'], $rec),
- 'openicon' => Decorator::get_sanitized_value($icon, $rec),
- 'tooltip' => Decorator::get_sanitized_value($attrs['toolTip'], $rec),
- 'a_attr' => ['href' => Decorator::get_sanitized_value($attrs['action'], $rec)],
- 'children' => false,
+ 'openicon' => Decorator::get_sanitized_value($icon, $rec),
+ 'tooltip' => Decorator::get_sanitized_value($attrs['toolTip'], $rec),
+ 'a_attr' => ['href' => Decorator::get_sanitized_value($attrs['action'], $rec)],
+ 'children' => false,
];
$url = Decorator::get_sanitized_value($attrs['branch'], $rec);
if ($url && false === \mb_strpos($url, '/src/views')) {
- $url = \str_replace('//', '/', \SUBFOLDER . '/src/views/' . $url);
+ $url = \str_replace('//', '/', self::SUBFOLDER . '/src/views/' . $url);
}
if ($url) {
- $tree['url'] = $url;
+ $tree['url'] = $url;
$tree['children'] = true;
}
@@ -203,7 +191,7 @@ class TreeController extends BaseController
if (true === $print) {
if (isset($_REQUEST['children'])) {
$children = $parent;
- $parent = ['children' => $children];
+ $parent = ['children' => $children];
}
return $this
diff --git a/src/database/Postgres12.php b/src/database/Postgres12.php
index d2480702..ad23a347 100644
--- a/src/database/Postgres12.php
+++ b/src/database/Postgres12.php
@@ -29,6 +29,6 @@ class Postgres12 extends Postgres11
*/
public function hasObjectID($table)
{
- return null;
+ return false;
}
}
diff --git a/src/decorators/ActionUrlDecorator.php b/src/decorators/ActionUrlDecorator.php
index 84359170..bd34c2f8 100644
--- a/src/decorators/ActionUrlDecorator.php
+++ b/src/decorators/ActionUrlDecorator.php
@@ -42,6 +42,6 @@ class ActionUrlDecorator extends Decorator
}
}
- return \SUBFOLDER . '/src/views/' . \str_replace('.php', '', $url);
+ return self::SUBFOLDER . '/src/views/' . \str_replace('.php', '', $url);
}
}
diff --git a/src/decorators/BranchUrlDecorator.php b/src/decorators/BranchUrlDecorator.php
index 6194151b..6bda297b 100644
--- a/src/decorators/BranchUrlDecorator.php
+++ b/src/decorators/BranchUrlDecorator.php
@@ -32,7 +32,7 @@ class BranchUrlDecorator extends Decorator
\ksort($queryVars);
foreach ($queryVars as $var => $value) {
- $varname = Decorator::value_url($var, $fields);
+ $varname = Decorator::value_url($var, $fields);
$varvalue = Decorator::value_url($value, $fields);
$url .= $sep . $varname . '=' . $varvalue;
$sep = '&';
@@ -43,8 +43,8 @@ class BranchUrlDecorator extends Decorator
$url = \str_replace('//', '/', '/src/views/' . $url);
}
- if (\SUBFOLDER !== '' && (0 === \mb_strpos($url, '/')) && (0 !== \mb_strpos($url, \SUBFOLDER))) {
- $url = \str_replace('//', '/', \SUBFOLDER . '/' . $url);
+ if (self::SUBFOLDER !== '' && (0 === \mb_strpos($url, '/')) && (0 !== \mb_strpos($url, self::SUBFOLDER))) {
+ $url = \str_replace('//', '/', self::SUBFOLDER . '/' . $url);
}
return \str_replace('.php', '', $url);
diff --git a/src/decorators/Decorator.php b/src/decorators/Decorator.php
index 37c791cc..a395be8c 100644
--- a/src/decorators/Decorator.php
+++ b/src/decorators/Decorator.php
@@ -6,10 +6,25 @@
namespace PHPPgAdmin\Decorators;
+use PHPPgAdmin\ContainerUtils;
+
class Decorator
{
use \PHPPgAdmin\Traits\HelperTrait;
+ /**
+ * @var string
+ */
+ const BASE_PATH = ContainerUtils::BASE_PATH;
+ /**
+ * @var string
+ */
+ const SUBFOLDER = ContainerUtils::SUBFOLDER;
+ /**
+ * @var string
+ */
+ const DEBUGMODE = ContainerUtils::DEBUGMODE;
+
public $container;
public function __construct($value)
@@ -17,13 +32,14 @@ class Decorator
$this->val = $value;
}
- public function value($fields)
+ public function value(array $fields)
{
return $this->val;
}
/**
* @param null|string $esc
+ * @param scalar $var
*/
public static function get_sanitized_value(&$var, array &$fields, ? string $esc = null)
{
@@ -65,7 +81,7 @@ class Decorator
/**
* @param scalar $var
*/
- public static function value_url(&$var, &$fields)
+ public static function value_url(&$var, array &$fields)
{
return self::get_sanitized_value($var, $fields, 'url');
}
@@ -91,7 +107,10 @@ class Decorator
return new FieldDecorator($fieldName, $default);
}
- public static function branchurl($base, $vars = null/* ... */)
+ /**
+ * @param array|null $vars
+ */
+ public static function branchurl($base, ? array $vars = null/* ... */)
{
// If more than one array of vars is given,
// use an ArrayMergeDecorator to have them merged
@@ -124,7 +143,10 @@ class Decorator
return new ActionUrlDecorator($base, $vars);
}
- public static function redirecturl(string $base, $vars = null/* ... */)
+ /**
+ * @param array|null $vars
+ */
+ public static function redirecturl(string $base, ? array $vars = null/* ... */)
{
// If more than one array of vars is given,
// use an ArrayMergeDecorator to have them merged
diff --git a/src/decorators/RedirectUrlDecorator.php b/src/decorators/RedirectUrlDecorator.php
index 174e2097..b025f8c7 100644
--- a/src/decorators/RedirectUrlDecorator.php
+++ b/src/decorators/RedirectUrlDecorator.php
@@ -34,7 +34,7 @@ class RedirectUrlDecorator extends Decorator
\ksort($queryVars);
foreach ($queryVars as $var => $value) {
- $varname = Decorator::value_url($var, $fields);
+ $varname = Decorator::value_url($var, $fields);
$varvalue = Decorator::value_url($value, $fields);
if ('subject' === $varname) {
@@ -47,8 +47,8 @@ class RedirectUrlDecorator extends Decorator
}
}
- if (\SUBFOLDER !== '' && (0 === \mb_strpos($url, '/')) && (false === \mb_strpos($url, \SUBFOLDER))) {
- $url = \str_replace('//', '/', \SUBFOLDER . '/' . $url);
+ if (self::SUBFOLDER !== '' && (0 === \mb_strpos($url, '/')) && (false === \mb_strpos($url, self::SUBFOLDER))) {
+ $url = \str_replace('//', '/', self::SUBFOLDER . '/' . $url);
}
return \str_replace('.php', '', $url);
diff --git a/src/decorators/UrlDecorator.php b/src/decorators/UrlDecorator.php
index 03a69f43..131ca0b5 100644
--- a/src/decorators/UrlDecorator.php
+++ b/src/decorators/UrlDecorator.php
@@ -37,8 +37,8 @@ class UrlDecorator extends Decorator
}
}
//$this->prtrace('url before', $url);
- if (\SUBFOLDER !== '' && (0 === \mb_strpos($url, '/')) && (false === \mb_strpos($url, \SUBFOLDER))) {
- $url = \str_replace('//', '/', \SUBFOLDER . '/' . $url);
+ if (self::SUBFOLDER !== '' && (0 === \mb_strpos($url, '/')) && (false === \mb_strpos($url, self::SUBFOLDER))) {
+ $url = \str_replace('//', '/', self::SUBFOLDER . '/' . $url);
}
//$this->prtrace('url after', $url);
return $url;
diff --git a/src/lib.inc.php b/src/lib.inc.php
index be35607b..f8fcfdc4 100644
--- a/src/lib.inc.php
+++ b/src/lib.inc.php
@@ -111,13 +111,13 @@ $container['view'] = static function ($c) {
$misc = $c->misc;
$view = new \Slim\Views\Twig(BASE_PATH . '/assets/templates', [
- 'cache' => BASE_PATH . '/temp/twigcache',
+ 'cache' => BASE_PATH . '/temp/twigcache',
'auto_reload' => $c->get('settings')['debug'],
- 'debug' => $c->get('settings')['debug'],
+ 'debug' => $c->get('settings')['debug'],
]);
- $environment = $c->get('environment');
+ $environment = $c->get('environment');
$base_script_trailing_str = \mb_substr($environment['SCRIPT_NAME'], 1);
- $request_basepath = $c['request']->getUri()->getBasePath();
+ $request_basepath = $c['request']->getUri()->getBasePath();
// Instantiate and add Slim specific extension
$basePath = \rtrim(\str_ireplace($base_script_trailing_str, '', $request_basepath), '/');
diff --git a/src/router.php b/src/router.php
index 0bf98692..a776ccb6 100644
--- a/src/router.php
+++ b/src/router.php
@@ -32,8 +32,8 @@ $app->post('/redirect/server', function (
$body = $response->getBody();
$misc = $this->misc;
- $loginShared = $request->getParsedBodyParam('loginShared');
- $loginServer = $request->getParsedBodyParam('loginServer');
+ $loginShared = $request->getParsedBodyParam('loginShared');
+ $loginServer = $request->getParsedBodyParam('loginServer');
$loginUsername = $request->getParsedBodyParam('loginUsername');
$loginPassword = $request->getParsedBodyParam('loginPassword_' . \md5($loginServer));
@@ -83,7 +83,7 @@ $app->get('/redirect[/{subject}]', function (
/* @scrutinizer ignore-unused */
$args
) {
- $subject = (isset($args['subject'])) ? $args['subject'] : 'root';
+ $subject = (isset($args['subject'])) ? $args['subject'] : 'root';
$destinationurl = $this->utils->getDestinationWithLastTab($subject);
return $response->withStatus(302)->withHeader('Location', $destinationurl);
@@ -116,7 +116,7 @@ $app->map(['GET', 'POST'], '/src/views/{subject}', function (
return $response->withStatus(302)->withHeader('Location', $destinationurl);
}
- $className = '\PHPPgAdmin\Controller\\' . \ucfirst($subject) . 'Controller';
+ $className = '\PHPPgAdmin\Controller\\' . \ucfirst($subject) . 'Controller';
$controller = new $className($this);
return $controller->render();
@@ -130,10 +130,10 @@ $app->get('/{subject:\w+}', function (
/* @scrutinizer ignore-unused */
$args
) {
- $subject = (isset($args['subject'])) ? $args['subject'] : 'intro';
+ $subject = (isset($args['subject'])) ? $args['subject'] : 'intro';
$_server_info = $this->misc->getServerInfo();
$query_string = $request->getUri()->getQuery();
- $server_id = $request->getQueryParam('server');
+ $server_id = $request->getQueryParam('server');
//$this->utils->prtrace($_server_info);
@@ -164,7 +164,7 @@ $app->get('/', function (
});
$app->get('[/{path:.*}]', function ($request, $response, $args) {
- $filepath = \BASE_PATH . '/' . $args['path'];
+ $filepath = dirname(__DIR__) . '/' . $args['path'];
$query_string = $request->getUri()->getQuery();
$this->utils->dump($query_string, $filepath);
diff --git a/src/traits/AdminTrait.php b/src/traits/AdminTrait.php
index ecab40f6..e6f0a31a 100644
--- a/src/traits/AdminTrait.php
+++ b/src/traits/AdminTrait.php
@@ -34,7 +34,7 @@ trait AdminTrait
$this->printTrail('schema');
$this->printTitle($this->lang['strclusterindex'], 'pg.index.cluster');
- echo '<form action="' . \SUBFOLDER . "/src/views/{$script}\" method=\"post\">" . \PHP_EOL;
+ echo '<form action="' . self::SUBFOLDER . "/src/views/{$script}\" method=\"post\">" . \PHP_EOL;
foreach ($_REQUEST['ma'] as $v) {
$a = \unserialize(\htmlspecialchars_decode($v, \ENT_QUOTES));
@@ -45,7 +45,7 @@ trait AdminTrait
$this->printTrail($type);
$this->printTitle($this->lang['strclusterindex'], 'pg.index.cluster');
- echo '<form action="' . \SUBFOLDER . "/src/views/{$script}\" method=\"post\">" . \PHP_EOL;
+ echo '<form action="' . self::SUBFOLDER . "/src/views/{$script}\" method=\"post\">" . \PHP_EOL;
if ('table' === $type) {
echo '<p>', \sprintf($this->lang['strconfclustertable'], $this->misc->printVal($_REQUEST['object'])), '</p>' . \PHP_EOL;
@@ -86,7 +86,7 @@ trait AdminTrait
$this->printTrail('schema');
$this->printTitle($this->lang['strreindex'], 'pg.reindex');
- echo '<form action="' . \SUBFOLDER . "/src/views/{$script}\" method=\"post\">" . \PHP_EOL;
+ echo '<form action="' . self::SUBFOLDER . "/src/views/{$script}\" method=\"post\">" . \PHP_EOL;
foreach ($_REQUEST['ma'] as $v) {
$a = \unserialize(\htmlspecialchars_decode($v, \ENT_QUOTES));
@@ -97,7 +97,7 @@ trait AdminTrait
$this->printTrail($type);
$this->printTitle($this->lang['strreindex'], 'pg.reindex');
- echo '<form action="' . \SUBFOLDER . "/src/views/{$script}\" method=\"post\">" . \PHP_EOL;
+ echo '<form action="' . self::SUBFOLDER . "/src/views/{$script}\" method=\"post\">" . \PHP_EOL;
if ('table' === $type) {
echo '<p>', \sprintf($this->lang['strconfreindextable'], $this->misc->printVal($_REQUEST['object'])), '</p>' . \PHP_EOL;
@@ -141,7 +141,7 @@ trait AdminTrait
$this->printTrail('schema');
$this->printTitle($this->lang['stranalyze'], 'pg.analyze');
- echo '<form action="' . \SUBFOLDER . "/src/views/{$script}\" method=\"post\">" . \PHP_EOL;
+ echo '<form action="' . self::SUBFOLDER . "/src/views/{$script}\" method=\"post\">" . \PHP_EOL;
foreach ($_REQUEST['ma'] as $v) {
$a = \unserialize(\htmlspecialchars_decode($v, \ENT_QUOTES));
@@ -153,7 +153,7 @@ trait AdminTrait
$this->printTrail($type);
$this->printTitle($this->lang['stranalyze'], 'pg.analyze');
- echo '<form action="' . \SUBFOLDER . "/src/views/{$script}\" method=\"post\">" . \PHP_EOL;
+ echo '<form action="' . self::SUBFOLDER . "/src/views/{$script}\" method=\"post\">" . \PHP_EOL;
if ('table' === $type) {
echo '<p>', \sprintf($this->lang['strconfanalyzetable'], $this->misc->printVal($_REQUEST['object'])), '</p>' . \PHP_EOL;
@@ -190,7 +190,7 @@ trait AdminTrait
$this->printTrail('schema');
$this->printTitle($this->lang['strvacuum'], 'pg.vacuum');
- echo '<form action="' . \SUBFOLDER . "/src/views/{$script}\" method=\"post\">" . \PHP_EOL;
+ echo '<form action="' . self::SUBFOLDER . "/src/views/{$script}\" method=\"post\">" . \PHP_EOL;
foreach ($_REQUEST['ma'] as $v) {
$a = \unserialize(\htmlspecialchars_decode($v, \ENT_QUOTES));
@@ -202,7 +202,7 @@ trait AdminTrait
$this->printTrail($type);
$this->printTitle($this->lang['strvacuum'], 'pg.vacuum');
- echo '<form action="' . \SUBFOLDER . "/src/views/{$script}\" method=\"post\">" . \PHP_EOL;
+ echo '<form action="' . self::SUBFOLDER . "/src/views/{$script}\" method=\"post\">" . \PHP_EOL;
if ('table' === $type) {
echo '<p>', \sprintf($this->lang['strconfvacuumtable'], $this->misc->printVal($_REQUEST['object'])), '</p>' . \PHP_EOL;
@@ -286,7 +286,7 @@ trait AdminTrait
$old_val['autovacuum_vacuum_cost_limit'] = '';
}
- echo '<form action="' . \SUBFOLDER . "/src/views/{$script}\" method=\"post\">" . \PHP_EOL;
+ echo '<form action="' . self::SUBFOLDER . "/src/views/{$script}\" method=\"post\">" . \PHP_EOL;
echo $this->misc->form;
echo '<input type="hidden" name="action" value="editautovac" />' . \PHP_EOL;
echo '<input type="hidden" name="table" value="', \htmlspecialchars($_REQUEST['table']), '" />' . \PHP_EOL;
@@ -661,7 +661,7 @@ trait AdminTrait
// Vacuum
echo '<tr class="row1">' . \PHP_EOL;
echo '<td style="text-align: center; vertical-align: bottom">' . \PHP_EOL;
- echo '<form action="' . \SUBFOLDER . "/src/views/{$script}\" method=\"post\">" . \PHP_EOL;
+ echo '<form action="' . self::SUBFOLDER . "/src/views/{$script}\" method=\"post\">" . \PHP_EOL;
echo '<p><input type="hidden" name="action" value="confirm_vacuum" />' . \PHP_EOL;
echo $this->misc->form;
@@ -672,7 +672,7 @@ trait AdminTrait
// Analyze
echo '<td style="text-align: center; vertical-align: bottom">' . \PHP_EOL;
- echo '<form action="' . \SUBFOLDER . "/src/views/{$script}\" method=\"post\">" . \PHP_EOL;
+ echo '<form action="' . self::SUBFOLDER . "/src/views/{$script}\" method=\"post\">" . \PHP_EOL;
echo '<p><input type="hidden" name="action" value="confirm_analyze" />' . \PHP_EOL;
echo $this->misc->form;
echo $table_hidden_inputs;
@@ -685,7 +685,7 @@ trait AdminTrait
// Reindex
echo '<td style="text-align: center; vertical-align: bottom">' . \PHP_EOL;
- echo '<form action="' . \SUBFOLDER . "/src/views/{$script}\" method=\"post\">" . \PHP_EOL;
+ echo '<form action="' . self::SUBFOLDER . "/src/views/{$script}\" method=\"post\">" . \PHP_EOL;
echo '<p><input type="hidden" name="action" value="confirm_reindex" />' . \PHP_EOL;
echo $this->misc->form;
echo $table_hidden_inputs;
@@ -807,7 +807,7 @@ trait AdminTrait
$disabled = '';
$reclusterconf = '<td style="text-align: center; vertical-align: bottom">' . \PHP_EOL;
- $reclusterconf .= '<form action="' . \SUBFOLDER . "/src/views/{$script}\" method=\"post\">" . \PHP_EOL;
+ $reclusterconf .= '<form action="' . self::SUBFOLDER . "/src/views/{$script}\" method=\"post\">" . \PHP_EOL;
$reclusterconf .= $this->misc->form;
$reclusterconf .= $table_hidden_inputs;
@@ -854,13 +854,13 @@ trait AdminTrait
'namespace' => [
'title' => $this->lang['strschema'],
'field' => Decorator::field('nspname'),
- 'url' => \SUBFOLDER . "/redirect/schema?{$this->misc->href}&amp;",
+ 'url' => self::SUBFOLDER . "/redirect/schema?{$this->misc->href}&amp;",
'vars' => ['schema' => 'nspname'],
],
'relname' => [
'title' => $this->lang['strtable'],
'field' => Decorator::field('relname'),
- 'url' => \SUBFOLDER . "/redirect/table?{$this->misc->href}&amp;",
+ 'url' => self::SUBFOLDER . "/redirect/table?{$this->misc->href}&amp;",
'vars' => ['table' => 'relname', 'schema' => 'nspname'],
],
'autovacuum_enabled' => [
@@ -947,7 +947,7 @@ trait AdminTrait
if (('table' === $type) && (0 === $autovac->recordCount())) {
echo '<br />';
- echo '<a href="' . \SUBFOLDER . "/src/views/tables?action=confeditautovac&amp;{$this->misc->href}&amp;table=";
+ echo '<a href="' . self::SUBFOLDER . "/src/views/tables?action=confeditautovac&amp;{$this->misc->href}&amp;table=";
echo \htmlspecialchars($_REQUEST['table']);
echo "\">{$this->lang['straddvacuumtable']}</a>";
}
diff --git a/src/traits/ExportTrait.php b/src/traits/ExportTrait.php
index 5d06695d..725910fe 100644
--- a/src/traits/ExportTrait.php
+++ b/src/traits/ExportTrait.php
@@ -144,7 +144,7 @@ trait ExportTrait
$checked ? 'checked="checked"' : ''
);
$content .= \sprintf(
- '<label for="what2">%s</label></th>',
+ '<label for="what2">%s</label></th>%s',
$this->lang['strstructureonly'],
\PHP_EOL
);
@@ -172,7 +172,7 @@ trait ExportTrait
{
$content = \sprintf(
'<form id="export_form" action="%s/%s" method="post">%s',
- \SUBFOLDER . '/src/views',
+ self::SUBFOLDER . '/src/views',
$endpoint,
\PHP_EOL
);
@@ -209,7 +209,7 @@ trait ExportTrait
\PHP_EOL
);
$content .= \sprintf(
- '<input type="hidden" name="%s" value="%s" />',
+ '<input type="hidden" name="%s" value="%s" />%s',
$subject,
\htmlspecialchars($object),
\PHP_EOL
@@ -247,7 +247,7 @@ trait ExportTrait
);
$content .= '<p><input type="radio" id="output1" name="output" value="show" checked="checked" />';
$content .= \sprintf(
- '<label for="output1">%s</label>',
+ '<label for="output1">%s</label>%s',
$this->lang['strshow'],
\PHP_EOL
);
diff --git a/src/traits/HelperTrait.php b/src/traits/HelperTrait.php
index f6750010..b71520d5 100644
--- a/src/traits/HelperTrait.php
+++ b/src/traits/HelperTrait.php
@@ -72,23 +72,23 @@ trait HelperTrait
public static function getBackTrace($offset = 0)
{
- $i0 = $offset;
- $i1 = $offset + 1;
+ $i0 = $offset;
+ $i1 = $offset + 1;
$backtrace = \debug_backtrace(\DEBUG_BACKTRACE_IGNORE_ARGS, $offset + 3);
return [
- 'class' => 'Closure' === $backtrace[$i1]['class'] ?
+ 'class' => 'Closure' === $backtrace[$i1]['class'] ?
$backtrace[$i0]['file'] :
$backtrace[$i1]['class'],
- 'type' => $backtrace[$i1]['type'],
+ 'type' => $backtrace[$i1]['type'],
'function' => '{closure}' === $backtrace[$i1]['function']
? $backtrace[$i0]['function'] :
$backtrace[$i1]['function'],
- 'spacer4' => ' ',
- 'line' => $backtrace[$i0]['line'],
+ 'spacer4' => ' ',
+ 'line' => $backtrace[$i0]['line'],
];
//dump($backtrace);
}
@@ -203,9 +203,9 @@ trait HelperTrait
*
* @param array ...$args
*/
- public function prtrace(array ...$args): void
+ public function prtrace(array...$args): void
{
- self::staticTrace($args, '', false);
+ self::staticTrace($args);
}
/**
@@ -213,9 +213,9 @@ trait HelperTrait
*
* @param array ...$args The arguments
*/
- public function dump(array ...$args): void
+ public function dump(array...$args): void
{
- self::staticTrace($args, '', false);
+ self::staticTrace($args);
}
/**
@@ -223,9 +223,10 @@ trait HelperTrait
*
* @param array ...$args The arguments
*/
- public function dumpAndDie(array ...$args): void
+ public function dumpAndDie(array...$args): void
{
- self::staticTrace($args, '', true);
+ self::staticTrace($args);
+ exit();
}
/**
@@ -233,31 +234,29 @@ trait HelperTrait
* called from.
*
* @param array $variablesToDump
- * @param string $whoCalledMe
- * @param bool $exitAfterwards
*/
private static function staticTrace(
- array $variablesToDump = [],
- string $whoCalledMe = '',
- $exitAfterwards = false
+ array...$variablesToDump
): void {
if (!$variablesToDump) {
$variablesToDump = \func_get_args();
}
- if ('' === $whoCalledMe) {
- $whoCalledMe = \str_replace(BASE_PATH, '', \implode('', self::getBackTrace(2)));
- }
-
- if ($exitAfterwards && \function_exists('dd')) {
- dd([
- 'args' => $variablesToDump,
- 'from' => $whoCalledMe,
- ]);
- } elseif (\function_exists('dump')) {
+ $calledFrom = \str_replace(
+ dirname(
+ dirname(__DIR__)
+ ),
+ '',
+ implode(
+ '',
+ self::getBackTrace(2)
+ )
+ );
+
+ if (\function_exists('dump')) {
dump([
'args' => $variablesToDump,
- 'from' => $whoCalledMe,
+ 'from' => $calledFrom,
]);
}
}
diff --git a/src/traits/MiscTrait.php b/src/traits/MiscTrait.php
index e1437760..84b2d751 100644
--- a/src/traits/MiscTrait.php
+++ b/src/traits/MiscTrait.php
@@ -20,7 +20,7 @@ trait MiscTrait
{
public function getSubjectParams($subject)
{
- $vars = [];
+ $vars = [];
$common_params = [];
if (\array_key_exists('server', $_REQUEST)) {
@@ -47,15 +47,15 @@ trait MiscTrait
case 'server':
$vars = ['params' => [
'subject' => 'server',
- 'server' => $_REQUEST['server'],
+ 'server' => $_REQUEST['server'],
]];
break;
case 'role':
$vars = ['params' => [
- 'subject' => 'role',
- 'server' => $_REQUEST['server'],
- 'action' => 'properties',
+ 'subject' => 'role',
+ 'server' => $_REQUEST['server'],
+ 'action' => 'properties',
'rolename' => $_REQUEST['rolename'],
]];
@@ -76,24 +76,24 @@ trait MiscTrait
$vars = ['params' => \array_merge($common_params, [
'subject' => 'table',
- 'table' => $_REQUEST['table'],
+ 'table' => $_REQUEST['table'],
])];
break;
case 'selectrows':
$vars = [
- 'url' => 'tables',
+ 'url' => 'tables',
'params' => \array_merge($common_params, [
'subject' => 'table',
- 'table' => $_REQUEST['table'],
- 'action' => 'confselectrows',
- ]), ];
+ 'table' => $_REQUEST['table'],
+ 'action' => 'confselectrows',
+ ])];
break;
case 'view':
$vars = ['params' => \array_merge($common_params, [
'subject' => 'view',
- 'view' => $_REQUEST['view'],
+ 'view' => $_REQUEST['view'],
])];
break;
@@ -108,23 +108,23 @@ trait MiscTrait
case 'ftscfg':
$vars = ['params' => \array_merge($common_params, [
'subject' => 'fulltext',
- 'action' => 'viewconfig',
- 'ftscfg' => $_REQUEST['ftscfg'],
+ 'action' => 'viewconfig',
+ 'ftscfg' => $_REQUEST['ftscfg'],
])];
break;
case 'function':
$vars = ['params' => \array_merge($common_params, [
- 'subject' => 'function',
- 'function' => $_REQUEST['function'],
+ 'subject' => 'function',
+ 'function' => $_REQUEST['function'],
'function_oid' => $_REQUEST['function_oid'],
])];
break;
case 'aggregate':
$vars = ['params' => \array_merge($common_params, [
- 'subject' => 'aggregate',
- 'action' => 'properties',
+ 'subject' => 'aggregate',
+ 'action' => 'properties',
'aggrname' => $_REQUEST['aggrname'],
'aggrtype' => $_REQUEST['aggrtype'],
])];
@@ -135,22 +135,22 @@ trait MiscTrait
$vars = ['params' => \array_merge($common_params, [
'subject' => 'column',
- 'table' => $_REQUEST['table'],
- 'column' => $_REQUEST['column'],
+ 'table' => $_REQUEST['table'],
+ 'column' => $_REQUEST['column'],
])];
} elseif (isset($_REQUEST['view'])) {
$vars = ['params' => \array_merge($common_params, [
'subject' => 'column',
- 'view' => $_REQUEST['view'],
- 'column' => $_REQUEST['column'],
+ 'view' => $_REQUEST['view'],
+ 'column' => $_REQUEST['column'],
])];
} elseif (isset($_REQUEST['matview'])) {
$vars = ['params' => \array_merge($common_params, [
'subject' => 'column',
'matview' => $_REQUEST['matview'],
- 'column' => $_REQUEST['column'],
+ 'column' => $_REQUEST['column'],
])];
}
@@ -161,11 +161,11 @@ trait MiscTrait
}
if (!isset($vars['url'])) {
- $vars['url'] = SUBFOLDER . '/redirect';
+ $vars['url'] = self::SUBFOLDER . '/redirect';
}
- if (SUBFOLDER . '/redirect' === $vars['url'] && isset($vars['params']['subject'])) {
- $vars['url'] = SUBFOLDER . '/redirect/' . $vars['params']['subject'];
+ if (self::SUBFOLDER . '/redirect' === $vars['url'] && isset($vars['params']['subject'])) {
+ $vars['url'] = self::SUBFOLDER . '/redirect/' . $vars['params']['subject'];
unset($vars['params']['subject']);
}
@@ -181,7 +181,7 @@ trait MiscTrait
if (!isset($params['clip']) || true !== $params['clip']) {
return $str;
}
- $maxlen = isset($params['cliplen']) && \is_int($params['cliplen']) ? $params['cliplen'] : $this->conf['max_chars'];
+ $maxlen = isset($params['cliplen']) && \is_int($params['cliplen']) ? $params['cliplen'] : $this->conf['max_chars'];
$ellipsis = $params['ellipsis'] ?? $this->lang['strellipsis'];
if (\mb_strlen($str) > $maxlen) {
@@ -206,19 +206,19 @@ trait MiscTrait
switch ($str) {
case 't':
- $out = ($params['true'] ?? $lang['strtrue']);
+ $out = ($params['true'] ?? $lang['strtrue']);
$align = 'center';
break;
case 'f':
- $out = ($params['false'] ?? $lang['strfalse']);
+ $out = ($params['false'] ?? $lang['strfalse']);
$align = 'center';
break;
default:
$align = null;
- $out = \htmlspecialchars($str);
+ $out = \htmlspecialchars($str);
}
return [$str, $align, $out];
@@ -271,7 +271,7 @@ trait MiscTrait
$str = $this->maybeClipStr($str, $params);
- $out = '';
+ $out = '';
$class = '';
switch ($type) {
@@ -287,7 +287,7 @@ trait MiscTrait
case 'cid':
case 'tid':
$align = 'right';
- $out = \nl2br(\htmlspecialchars(\PHPPgAdmin\Traits\HelperTrait::br2ln($str)));
+ $out = \nl2br(\htmlspecialchars(\PHPPgAdmin\Traits\HelperTrait::br2ln($str)));
break;
case 'yesno':
@@ -297,15 +297,15 @@ trait MiscTrait
break;
case 'bytea':
- $tag = 'div';
+ $tag = 'div';
$class = 'pre';
- $out = $data->escapeBytea($str);
+ $out = $data->escapeBytea($str);
break;
case 'errormsg':
- $tag = 'pre';
+ $tag = 'pre';
$class = 'error';
- $out = \htmlspecialchars($str);
+ $out = \htmlspecialchars($str);
break;
case 'pre':
@@ -340,9 +340,9 @@ trait MiscTrait
// character, a space at the start of a line, or a space at the start of
// the whole string then render within a pre-formatted element (<pre>).
if (\preg_match('/(^ | |\t|\n )/m', $str)) {
- $tag = 'pre';
+ $tag = 'pre';
$class = 'data';
- $out = \htmlspecialchars($str);
+ $out = \htmlspecialchars($str);
} else {
//$tag = 'span';
$out = \nl2br(\htmlspecialchars(\PHPPgAdmin\Traits\HelperTrait::br2ln($str)));
@@ -371,7 +371,7 @@ trait MiscTrait
if (isset($tag)) {
$alignattr = isset($align) ? " style=\"text-align: {$align}\"" : '';
$classattr = !empty($class) ? " class=\"{$class}\"" : '';
- $out = "<{$tag}{$alignattr}{$classattr}>{$out}</{$tag}>";
+ $out = "<{$tag}{$alignattr}{$classattr}>{$out}</{$tag}>";
}
}
@@ -387,15 +387,15 @@ trait MiscTrait
$lang = $this->lang;
return [
- 'intro' => [
+ 'intro' => [
'title' => $lang['strintroduction'],
- 'url' => 'intro',
- 'icon' => 'Introduction',
+ 'url' => 'intro',
+ 'icon' => 'Introduction',
],
'servers' => [
'title' => $lang['strservers'],
- 'url' => 'servers',
- 'icon' => 'Servers',
+ 'url' => 'servers',
+ 'icon' => 'Servers',
],
];
}
@@ -409,7 +409,7 @@ trait MiscTrait
*/
public function getTabsServer($data)
{
- $lang = $this->lang;
+ $lang = $this->lang;
$hide_users = true;
$hide_roles = false;
@@ -419,69 +419,69 @@ trait MiscTrait
$tabs = [
'databases' => [
- 'title' => $lang['strdatabases'],
- 'url' => 'alldb',
+ 'title' => $lang['strdatabases'],
+ 'url' => 'alldb',
'urlvars' => ['subject' => 'server'],
- 'help' => 'pg.database',
- 'icon' => 'Databases',
+ 'help' => 'pg.database',
+ 'icon' => 'Databases',
],
- 'users' => [
- 'title' => $lang['strusers'],
- 'url' => 'users',
+ 'users' => [
+ 'title' => $lang['strusers'],
+ 'url' => 'users',
'urlvars' => ['subject' => 'server'],
- 'hide' => $hide_roles,
- 'help' => 'pg.user',
- 'icon' => 'Users',
+ 'hide' => $hide_roles,
+ 'help' => 'pg.user',
+ 'icon' => 'Users',
],
];
if ($data && $data->hasRoles()) {
$tabs = \array_merge($tabs, [
'roles' => [
- 'title' => $lang['strroles'],
- 'url' => 'roles',
+ 'title' => $lang['strroles'],
+ 'url' => 'roles',
'urlvars' => ['subject' => 'server'],
- 'hide' => $hide_roles,
- 'help' => 'pg.role',
- 'icon' => 'Roles',
+ 'hide' => $hide_roles,
+ 'help' => 'pg.role',
+ 'icon' => 'Roles',
],
]);
} else {
$tabs = \array_merge($tabs, [
'groups' => [
- 'title' => $lang['strgroups'],
- 'url' => 'groups',
+ 'title' => $lang['strgroups'],
+ 'url' => 'groups',
'urlvars' => ['subject' => 'server'],
- 'hide' => $hide_users,
- 'help' => 'pg.group',
- 'icon' => 'UserGroups',
+ 'hide' => $hide_users,
+ 'help' => 'pg.group',
+ 'icon' => 'UserGroups',
],
]);
}
return \array_merge($tabs, [
- 'account' => [
- 'title' => $lang['straccount'],
- 'url' => ($data && $data->hasRoles()) ? 'roles' : 'users',
+ 'account' => [
+ 'title' => $lang['straccount'],
+ 'url' => ($data && $data->hasRoles()) ? 'roles' : 'users',
'urlvars' => ['subject' => 'server', 'action' => 'account'],
- 'hide' => !$hide_users,
- 'help' => 'pg.role',
- 'icon' => 'User',
+ 'hide' => !$hide_users,
+ 'help' => 'pg.role',
+ 'icon' => 'User',
],
'tablespaces' => [
- 'title' => $lang['strtablespaces'],
- 'url' => 'tablespaces',
+ 'title' => $lang['strtablespaces'],
+ 'url' => 'tablespaces',
'urlvars' => ['subject' => 'server'],
- 'hide' => !$data || !$data->hasTablespaces(),
- 'help' => 'pg.tablespace',
- 'icon' => 'Tablespaces',
+ 'hide' => !$data || !$data->hasTablespaces(),
+ 'help' => 'pg.tablespace',
+ 'icon' => 'Tablespaces',
],
- 'export' => [
- 'title' => $lang['strexport'],
- 'url' => 'alldb',
+ 'export' => [
+ 'title' => $lang['strexport'],
+ 'url' => 'alldb',
'urlvars' => ['subject' => 'server', 'action' => 'export'],
- 'hide' => !$this->isDumpEnabled(),
- 'icon' => 'Export',
+ 'hide' => !$this->isDumpEnabled(),
+ 'icon' => 'Export',
],
]);
}
@@ -495,209 +495,209 @@ trait MiscTrait
*/
public function getTabsDatabase($data)
{
- $lang = $this->lang;
+ $lang = $this->lang;
$hide_advanced = (false === $this->conf['show_advanced']);
return [
- 'schemas' => [
- 'title' => $lang['strschemas'],
- 'url' => 'schemas',
+ 'schemas' => [
+ 'title' => $lang['strschemas'],
+ 'url' => 'schemas',
'urlvars' => ['subject' => 'database'],
- 'help' => 'pg.schema',
- 'icon' => 'Schemas',
+ 'help' => 'pg.schema',
+ 'icon' => 'Schemas',
],
- 'sql' => [
- 'title' => $lang['strsql'],
- 'url' => 'database',
+ 'sql' => [
+ 'title' => $lang['strsql'],
+ 'url' => 'database',
'urlvars' => ['subject' => 'database', 'action' => 'sql', 'new' => 1],
- 'help' => 'pg.sql',
- 'tree' => false,
- 'icon' => 'SqlEditor',
+ 'help' => 'pg.sql',
+ 'tree' => false,
+ 'icon' => 'SqlEditor',
],
- 'find' => [
- 'title' => $lang['strfind'],
- 'url' => 'database',
+ 'find' => [
+ 'title' => $lang['strfind'],
+ 'url' => 'database',
'urlvars' => ['subject' => 'database', 'action' => 'find'],
- 'tree' => false,
- 'icon' => 'Search',
+ 'tree' => false,
+ 'icon' => 'Search',
],
- 'variables' => [
- 'title' => $lang['strvariables'],
- 'url' => 'database',
+ 'variables' => [
+ 'title' => $lang['strvariables'],
+ 'url' => 'database',
'urlvars' => ['subject' => 'database', 'action' => 'variables'],
- 'help' => 'pg.variable',
- 'tree' => false,
- 'icon' => 'Variables',
+ 'help' => 'pg.variable',
+ 'tree' => false,
+ 'icon' => 'Variables',
],
- 'processes' => [
- 'title' => $lang['strprocesses'],
- 'url' => 'database',
+ 'processes' => [
+ 'title' => $lang['strprocesses'],
+ 'url' => 'database',
'urlvars' => ['subject' => 'database', 'action' => 'processes'],
- 'help' => 'pg.process',
- 'tree' => false,
- 'icon' => 'Processes',
+ 'help' => 'pg.process',
+ 'tree' => false,
+ 'icon' => 'Processes',
],
- 'locks' => [
- 'title' => $lang['strlocks'],
- 'url' => 'database',
+ 'locks' => [
+ 'title' => $lang['strlocks'],
+ 'url' => 'database',
'urlvars' => ['subject' => 'database', 'action' => 'locks'],
- 'help' => 'pg.locks',
- 'tree' => false,
- 'icon' => 'Key',
+ 'help' => 'pg.locks',
+ 'tree' => false,
+ 'icon' => 'Key',
],
- 'admin' => [
- 'title' => $lang['stradmin'],
- 'url' => 'database',
+ 'admin' => [
+ 'title' => $lang['stradmin'],
+ 'url' => 'database',
'urlvars' => ['subject' => 'database', 'action' => 'admin'],
- 'tree' => false,
- 'icon' => 'Admin',
+ 'tree' => false,
+ 'icon' => 'Admin',
],
'privileges' => [
- 'title' => $lang['strprivileges'],
- 'url' => 'privileges',
+ 'title' => $lang['strprivileges'],
+ 'url' => 'privileges',
'urlvars' => ['subject' => 'database'],
- 'hide' => !isset($data->privlist['database']),
- 'help' => 'pg.privilege',
- 'tree' => false,
- 'icon' => 'Privileges',
- ],
- 'languages' => [
- 'title' => $lang['strlanguages'],
- 'url' => 'languages',
+ 'hide' => !isset($data->privlist['database']),
+ 'help' => 'pg.privilege',
+ 'tree' => false,
+ 'icon' => 'Privileges',
+ ],
+ 'languages' => [
+ 'title' => $lang['strlanguages'],
+ 'url' => 'languages',
'urlvars' => ['subject' => 'database'],
- 'hide' => $hide_advanced,
- 'help' => 'pg.language',
- 'icon' => 'Languages',
+ 'hide' => $hide_advanced,
+ 'help' => 'pg.language',
+ 'icon' => 'Languages',
],
- 'casts' => [
- 'title' => $lang['strcasts'],
- 'url' => 'casts',
+ 'casts' => [
+ 'title' => $lang['strcasts'],
+ 'url' => 'casts',
'urlvars' => ['subject' => 'database'],
- 'hide' => $hide_advanced,
- 'help' => 'pg.cast',
- 'icon' => 'Casts',
+ 'hide' => $hide_advanced,
+ 'help' => 'pg.cast',
+ 'icon' => 'Casts',
],
- 'export' => [
- 'title' => $lang['strexport'],
- 'url' => 'database',
+ 'export' => [
+ 'title' => $lang['strexport'],
+ 'url' => 'database',
'urlvars' => ['subject' => 'database', 'action' => 'export'],
- 'hide' => !$this->isDumpEnabled(),
- 'tree' => false,
- 'icon' => 'Export',
+ 'hide' => !$this->isDumpEnabled(),
+ 'tree' => false,
+ 'icon' => 'Export',
],
];
}
public function getTabsSchema($data)
{
- $lang = $this->lang;
+ $lang = $this->lang;
$hide_advanced = (false === $this->conf['show_advanced']);
- $tabs = [
- 'tables' => [
- 'title' => $lang['strtables'],
- 'url' => 'tables',
+ $tabs = [
+ 'tables' => [
+ 'title' => $lang['strtables'],
+ 'url' => 'tables',
'urlvars' => ['subject' => 'schema'],
- 'help' => 'pg.table',
- 'icon' => 'Tables',
+ 'help' => 'pg.table',
+ 'icon' => 'Tables',
],
- 'views' => [
- 'title' => $lang['strviews'],
- 'url' => 'views',
+ 'views' => [
+ 'title' => $lang['strviews'],
+ 'url' => 'views',
'urlvars' => ['subject' => 'schema'],
- 'help' => 'pg.view',
- 'icon' => 'Views',
+ 'help' => 'pg.view',
+ 'icon' => 'Views',
],
- 'matviews' => [
- 'title' => 'M ' . $lang['strviews'],
- 'url' => 'materializedviews',
+ 'matviews' => [
+ 'title' => 'M ' . $lang['strviews'],
+ 'url' => 'materializedviews',
'urlvars' => ['subject' => 'schema'],
- 'help' => 'pg.matview',
- 'icon' => 'MViews',
+ 'help' => 'pg.matview',
+ 'icon' => 'MViews',
],
- 'sequences' => [
- 'title' => $lang['strsequences'],
- 'url' => 'sequences',
+ 'sequences' => [
+ 'title' => $lang['strsequences'],
+ 'url' => 'sequences',
'urlvars' => ['subject' => 'schema'],
- 'help' => 'pg.sequence',
- 'icon' => 'Sequences',
+ 'help' => 'pg.sequence',
+ 'icon' => 'Sequences',
],
- 'functions' => [
- 'title' => $lang['strfunctions'],
- 'url' => 'functions',
+ 'functions' => [
+ 'title' => $lang['strfunctions'],
+ 'url' => 'functions',
'urlvars' => ['subject' => 'schema'],
- 'help' => 'pg.function',
- 'icon' => 'Functions',
+ 'help' => 'pg.function',
+ 'icon' => 'Functions',
],
- 'fulltext' => [
- 'title' => $lang['strfulltext'],
- 'url' => 'fulltext',
+ 'fulltext' => [
+ 'title' => $lang['strfulltext'],
+ 'url' => 'fulltext',
'urlvars' => ['subject' => 'schema'],
- 'help' => 'pg.fts',
- 'tree' => true,
- 'icon' => 'Fts',
+ 'help' => 'pg.fts',
+ 'tree' => true,
+ 'icon' => 'Fts',
],
- 'domains' => [
- 'title' => $lang['strdomains'],
- 'url' => 'domains',
+ 'domains' => [
+ 'title' => $lang['strdomains'],
+ 'url' => 'domains',
'urlvars' => ['subject' => 'schema'],
- 'help' => 'pg.domain',
- 'icon' => 'Domains',
+ 'help' => 'pg.domain',
+ 'icon' => 'Domains',
],
- 'aggregates' => [
- 'title' => $lang['straggregates'],
- 'url' => 'aggregates',
+ 'aggregates' => [
+ 'title' => $lang['straggregates'],
+ 'url' => 'aggregates',
'urlvars' => ['subject' => 'schema'],
- 'hide' => $hide_advanced,
- 'help' => 'pg.aggregate',
- 'icon' => 'Aggregates',
+ 'hide' => $hide_advanced,
+ 'help' => 'pg.aggregate',
+ 'icon' => 'Aggregates',
],
- 'types' => [
- 'title' => $lang['strtypes'],
- 'url' => 'types',
+ 'types' => [
+ 'title' => $lang['strtypes'],
+ 'url' => 'types',
'urlvars' => ['subject' => 'schema'],
- 'hide' => $hide_advanced,
- 'help' => 'pg.type',
- 'icon' => 'Types',
+ 'hide' => $hide_advanced,
+ 'help' => 'pg.type',
+ 'icon' => 'Types',
],
- 'operators' => [
- 'title' => $lang['stroperators'],
- 'url' => 'operators',
+ 'operators' => [
+ 'title' => $lang['stroperators'],
+ 'url' => 'operators',
'urlvars' => ['subject' => 'schema'],
- 'hide' => $hide_advanced,
- 'help' => 'pg.operator',
- 'icon' => 'Operators',
+ 'hide' => $hide_advanced,
+ 'help' => 'pg.operator',
+ 'icon' => 'Operators',
],
- 'opclasses' => [
- 'title' => $lang['stropclasses'],
- 'url' => 'opclasses',
+ 'opclasses' => [
+ 'title' => $lang['stropclasses'],
+ 'url' => 'opclasses',
'urlvars' => ['subject' => 'schema'],
- 'hide' => $hide_advanced,
- 'help' => 'pg.opclass',
- 'icon' => 'OperatorClasses',
+ 'hide' => $hide_advanced,
+ 'help' => 'pg.opclass',
+ 'icon' => 'OperatorClasses',
],
'conversions' => [
- 'title' => $lang['strconversions'],
- 'url' => 'conversions',
+ 'title' => $lang['strconversions'],
+ 'url' => 'conversions',
'urlvars' => ['subject' => 'schema'],
- 'hide' => $hide_advanced,
- 'help' => 'pg.conversion',
- 'icon' => 'Conversions',
+ 'hide' => $hide_advanced,
+ 'help' => 'pg.conversion',
+ 'icon' => 'Conversions',
],
- 'privileges' => [
- 'title' => $lang['strprivileges'],
- 'url' => 'privileges',
+ 'privileges' => [
+ 'title' => $lang['strprivileges'],
+ 'url' => 'privileges',
'urlvars' => ['subject' => 'schema'],
- 'help' => 'pg.privilege',
- 'tree' => false,
- 'icon' => 'Privileges',
+ 'help' => 'pg.privilege',
+ 'tree' => false,
+ 'icon' => 'Privileges',
],
- 'export' => [
- 'title' => $lang['strexport'],
- 'url' => 'schemas',
+ 'export' => [
+ 'title' => $lang['strexport'],
+ 'url' => 'schemas',
'urlvars' => ['subject' => 'schema', 'action' => 'export'],
- 'hide' => !$this->isDumpEnabled(),
- 'tree' => false,
- 'icon' => 'Export',
+ 'hide' => !$this->isDumpEnabled(),
+ 'tree' => false,
+ 'icon' => 'Export',
],
];
@@ -713,102 +713,102 @@ trait MiscTrait
$lang = $this->lang;
return [
- 'columns' => [
- 'title' => $lang['strcolumns'],
- 'url' => 'tblproperties',
+ 'columns' => [
+ 'title' => $lang['strcolumns'],
+ 'url' => 'tblproperties',
'urlvars' => ['subject' => 'table', 'table' => Decorator::field('table')],
- 'icon' => 'Columns',
- 'branch' => true,
+ 'icon' => 'Columns',
+ 'branch' => true,
],
- 'browse' => [
- 'title' => $lang['strbrowse'],
- 'icon' => 'Columns',
- 'url' => 'display',
+ 'browse' => [
+ 'title' => $lang['strbrowse'],
+ 'icon' => 'Columns',
+ 'url' => 'display',
'urlvars' => ['subject' => 'table', 'table' => Decorator::field('table')],
- 'return' => 'table',
- 'branch' => true,
+ 'return' => 'table',
+ 'branch' => true,
],
- 'select' => [
- 'title' => $lang['strselect'],
- 'icon' => 'Search',
- 'url' => 'tables',
+ 'select' => [
+ 'title' => $lang['strselect'],
+ 'icon' => 'Search',
+ 'url' => 'tables',
'urlvars' => ['subject' => 'table', 'table' => Decorator::field('table'), 'action' => 'confselectrows'],
- 'help' => 'pg.sql.select',
+ 'help' => 'pg.sql.select',
],
- 'insert' => [
- 'title' => $lang['strinsert'],
- 'url' => 'tables',
+ 'insert' => [
+ 'title' => $lang['strinsert'],
+ 'url' => 'tables',
'urlvars' => [
'action' => 'confinsertrow',
- 'table' => Decorator::field('table'),
+ 'table' => Decorator::field('table'),
],
- 'help' => 'pg.sql.insert',
- 'icon' => 'Operator',
+ 'help' => 'pg.sql.insert',
+ 'icon' => 'Operator',
],
- 'indexes' => [
- 'title' => $lang['strindexes'],
- 'url' => 'indexes',
+ 'indexes' => [
+ 'title' => $lang['strindexes'],
+ 'url' => 'indexes',
'urlvars' => ['subject' => 'table', 'table' => Decorator::field('table')],
- 'help' => 'pg.index',
- 'icon' => 'Indexes',
- 'branch' => true,
+ 'help' => 'pg.index',
+ 'icon' => 'Indexes',
+ 'branch' => true,
],
'constraints' => [
- 'title' => $lang['strconstraints'],
- 'url' => 'constraints',
+ 'title' => $lang['strconstraints'],
+ 'url' => 'constraints',
'urlvars' => ['subject' => 'table', 'table' => Decorator::field('table')],
- 'help' => 'pg.constraint',
- 'icon' => 'Constraints',
- 'branch' => true,
+ 'help' => 'pg.constraint',
+ 'icon' => 'Constraints',
+ 'branch' => true,
],
- 'triggers' => [
- 'title' => $lang['strtriggers'],
- 'url' => 'triggers',
+ 'triggers' => [
+ 'title' => $lang['strtriggers'],
+ 'url' => 'triggers',
'urlvars' => ['subject' => 'table', 'table' => Decorator::field('table')],
- 'help' => 'pg.trigger',
- 'icon' => 'Triggers',
- 'branch' => true,
+ 'help' => 'pg.trigger',
+ 'icon' => 'Triggers',
+ 'branch' => true,
],
- 'rules' => [
- 'title' => $lang['strrules'],
- 'url' => 'rules',
+ 'rules' => [
+ 'title' => $lang['strrules'],
+ 'url' => 'rules',
'urlvars' => ['subject' => 'table', 'table' => Decorator::field('table')],
- 'help' => 'pg.rule',
- 'icon' => 'Rules',
- 'branch' => true,
+ 'help' => 'pg.rule',
+ 'icon' => 'Rules',
+ 'branch' => true,
],
- 'admin' => [
- 'title' => $lang['stradmin'],
- 'url' => 'tables',
+ 'admin' => [
+ 'title' => $lang['stradmin'],
+ 'url' => 'tables',
'urlvars' => ['subject' => 'table', 'table' => Decorator::field('table'), 'action' => 'admin'],
- 'icon' => 'Admin',
+ 'icon' => 'Admin',
],
- 'info' => [
- 'title' => $lang['strinfo'],
- 'url' => 'info',
+ 'info' => [
+ 'title' => $lang['strinfo'],
+ 'url' => 'info',
'urlvars' => ['subject' => 'table', 'table' => Decorator::field('table')],
- 'icon' => 'Statistics',
+ 'icon' => 'Statistics',
],
- 'privileges' => [
- 'title' => $lang['strprivileges'],
- 'url' => 'privileges',
+ 'privileges' => [
+ 'title' => $lang['strprivileges'],
+ 'url' => 'privileges',
'urlvars' => ['subject' => 'table', 'table' => Decorator::field('table')],
- 'help' => 'pg.privilege',
- 'icon' => 'Privileges',
+ 'help' => 'pg.privilege',
+ 'icon' => 'Privileges',
],
- 'import' => [
- 'title' => $lang['strimport'],
- 'url' => 'tblproperties',
+ 'import' => [
+ 'title' => $lang['strimport'],
+ 'url' => 'tblproperties',
'urlvars' => ['subject' => 'table', 'table' => Decorator::field('table'), 'action' => 'import'],
- 'icon' => 'Import',
- 'hide' => false,
+ 'icon' => 'Import',
+ 'hide' => false,
],
- 'export' => [
- 'title' => $lang['strexport'],
- 'url' => 'tblproperties',
+ 'export' => [
+ 'title' => $lang['strexport'],
+ 'url' => 'tblproperties',
'urlvars' => ['subject' => 'table', 'table' => Decorator::field('table'), 'action' => 'export'],
- 'icon' => 'Export',
- 'hide' => false,
+ 'icon' => 'Export',
+ 'hide' => false,
],
];
}
@@ -818,59 +818,59 @@ trait MiscTrait
$lang = $this->lang;
return [
- 'columns' => [
- 'title' => $lang['strcolumns'],
- 'url' => 'viewproperties',
+ 'columns' => [
+ 'title' => $lang['strcolumns'],
+ 'url' => 'viewproperties',
'urlvars' => ['subject' => 'view', 'view' => Decorator::field('view')],
- 'icon' => 'Columns',
- 'branch' => true,
+ 'icon' => 'Columns',
+ 'branch' => true,
],
- 'browse' => [
- 'title' => $lang['strbrowse'],
- 'icon' => 'Columns',
- 'url' => 'display',
+ 'browse' => [
+ 'title' => $lang['strbrowse'],
+ 'icon' => 'Columns',
+ 'url' => 'display',
'urlvars' => [
- 'action' => 'confselectrows',
- 'return' => 'schema',
+ 'action' => 'confselectrows',
+ 'return' => 'schema',
'subject' => 'view',
- 'view' => Decorator::field('view'),
+ 'view' => Decorator::field('view'),
],
- 'branch' => true,
+ 'branch' => true,
],
- 'select' => [
- 'title' => $lang['strselect'],
- 'icon' => 'Search',
- 'url' => 'views',
+ 'select' => [
+ 'title' => $lang['strselect'],
+ 'icon' => 'Search',
+ 'url' => 'views',
'urlvars' => ['action' => 'confselectrows', 'view' => Decorator::field('view')],
- 'help' => 'pg.sql.select',
+ 'help' => 'pg.sql.select',
],
'definition' => [
- 'title' => $lang['strdefinition'],
- 'url' => 'viewproperties',
+ 'title' => $lang['strdefinition'],
+ 'url' => 'viewproperties',
'urlvars' => ['subject' => 'view', 'view' => Decorator::field('view'), 'action' => 'definition'],
- 'icon' => 'Definition',
+ 'icon' => 'Definition',
],
- 'rules' => [
- 'title' => $lang['strrules'],
- 'url' => 'rules',
+ 'rules' => [
+ 'title' => $lang['strrules'],
+ 'url' => 'rules',
'urlvars' => ['subject' => 'view', 'view' => Decorator::field('view')],
- 'help' => 'pg.rule',
- 'icon' => 'Rules',
- 'branch' => true,
+ 'help' => 'pg.rule',
+ 'icon' => 'Rules',
+ 'branch' => true,
],
'privileges' => [
- 'title' => $lang['strprivileges'],
- 'url' => 'privileges',
+ 'title' => $lang['strprivileges'],
+ 'url' => 'privileges',
'urlvars' => ['subject' => 'view', 'view' => Decorator::field('view')],
- 'help' => 'pg.privilege',
- 'icon' => 'Privileges',
+ 'help' => 'pg.privilege',
+ 'icon' => 'Privileges',
],
- 'export' => [
- 'title' => $lang['strexport'],
- 'url' => 'viewproperties',
+ 'export' => [
+ 'title' => $lang['strexport'],
+ 'url' => 'viewproperties',
'urlvars' => ['subject' => 'view', 'view' => Decorator::field('view'), 'action' => 'export'],
- 'icon' => 'Export',
- 'hide' => false,
+ 'icon' => 'Export',
+ 'hide' => false,
],
];
}
@@ -880,45 +880,45 @@ trait MiscTrait
$lang = $this->lang;
return [
- 'columns' => [
- 'title' => $lang['strcolumns'],
- 'url' => 'materializedviewproperties',
+ 'columns' => [
+ 'title' => $lang['strcolumns'],
+ 'url' => 'materializedviewproperties',
'urlvars' => ['subject' => 'matview', 'matview' => Decorator::field('matview')],
- 'icon' => 'Columns',
- 'branch' => true,
+ 'icon' => 'Columns',
+ 'branch' => true,
],
- 'browse' => [
- 'title' => $lang['strbrowse'],
- 'icon' => 'Columns',
- 'url' => 'display',
+ 'browse' => [
+ 'title' => $lang['strbrowse'],
+ 'icon' => 'Columns',
+ 'url' => 'display',
'urlvars' => [
- 'action' => 'confselectrows',
- 'return' => 'schema',
+ 'action' => 'confselectrows',
+ 'return' => 'schema',
'subject' => 'matview',
'matview' => Decorator::field('matview'),
],
- 'branch' => true,
+ 'branch' => true,
],
- 'select' => [
- 'title' => $lang['strselect'],
- 'icon' => 'Search',
- 'url' => 'materializedviews',
+ 'select' => [
+ 'title' => $lang['strselect'],
+ 'icon' => 'Search',
+ 'url' => 'materializedviews',
'urlvars' => ['action' => 'confselectrows', 'matview' => Decorator::field('matview')],
- 'help' => 'pg.sql.select',
+ 'help' => 'pg.sql.select',
],
'definition' => [
- 'title' => $lang['strdefinition'],
- 'url' => 'materializedviewproperties',
+ 'title' => $lang['strdefinition'],
+ 'url' => 'materializedviewproperties',
'urlvars' => ['subject' => 'matview', 'matview' => Decorator::field('matview'), 'action' => 'definition'],
- 'icon' => 'Definition',
+ 'icon' => 'Definition',
],
- 'indexes' => [
- 'title' => $lang['strindexes'],
- 'url' => 'indexes',
+ 'indexes' => [
+ 'title' => $lang['strindexes'],
+ 'url' => 'indexes',
'urlvars' => ['subject' => 'matview', 'matview' => Decorator::field('matview')],
- 'help' => 'pg.index',
- 'icon' => 'Indexes',
- 'branch' => true,
+ 'help' => 'pg.index',
+ 'icon' => 'Indexes',
+ 'branch' => true,
],
/*'constraints' => [
'title' => $lang['strconstraints'],
@@ -929,27 +929,27 @@ trait MiscTrait
'branch' => true,
*/
- 'rules' => [
- 'title' => $lang['strrules'],
- 'url' => 'rules',
+ 'rules' => [
+ 'title' => $lang['strrules'],
+ 'url' => 'rules',
'urlvars' => ['subject' => 'matview', 'matview' => Decorator::field('matview')],
- 'help' => 'pg.rule',
- 'icon' => 'Rules',
- 'branch' => true,
+ 'help' => 'pg.rule',
+ 'icon' => 'Rules',
+ 'branch' => true,
],
'privileges' => [
- 'title' => $lang['strprivileges'],
- 'url' => 'privileges',
+ 'title' => $lang['strprivileges'],
+ 'url' => 'privileges',
'urlvars' => ['subject' => 'matview', 'matview' => Decorator::field('matview')],
- 'help' => 'pg.privilege',
- 'icon' => 'Privileges',
+ 'help' => 'pg.privilege',
+ 'icon' => 'Privileges',
],
- 'export' => [
- 'title' => $lang['strexport'],
- 'url' => 'materializedviewproperties',
+ 'export' => [
+ 'title' => $lang['strexport'],
+ 'url' => 'materializedviewproperties',
'urlvars' => ['subject' => 'matview', 'matview' => Decorator::field('matview'), 'action' => 'export'],
- 'icon' => 'Export',
- 'hide' => false,
+ 'icon' => 'Export',
+ 'hide' => false,
],
];
}
@@ -960,36 +960,36 @@ trait MiscTrait
return [
'definition' => [
- 'title' => $lang['strdefinition'],
- 'url' => 'functions',
+ 'title' => $lang['strdefinition'],
+ 'url' => 'functions',
'urlvars' => [
- 'subject' => 'function',
- 'function' => Decorator::field('function'),
+ 'subject' => 'function',
+ 'function' => Decorator::field('function'),
'function_oid' => Decorator::field('function_oid'),
- 'action' => 'properties',
+ 'action' => 'properties',
],
- 'icon' => 'Definition',
+ 'icon' => 'Definition',
],
'privileges' => [
- 'title' => $lang['strprivileges'],
- 'url' => 'privileges',
+ 'title' => $lang['strprivileges'],
+ 'url' => 'privileges',
'urlvars' => [
- 'subject' => 'function',
- 'function' => Decorator::field('function'),
+ 'subject' => 'function',
+ 'function' => Decorator::field('function'),
'function_oid' => Decorator::field('function_oid'),
],
- 'icon' => 'Privileges',
+ 'icon' => 'Privileges',
],
- 'show' => [
- 'title' => $lang['strshow'] . ' ' . $lang['strdefinition'],
- 'url' => 'functions',
+ 'show' => [
+ 'title' => $lang['strshow'] . ' ' . $lang['strdefinition'],
+ 'url' => 'functions',
'urlvars' => [
- 'subject' => 'function',
- 'function' => Decorator::field('function'),
+ 'subject' => 'function',
+ 'function' => Decorator::field('function'),
'function_oid' => Decorator::field('function_oid'),
- 'action' => 'show',
+ 'action' => 'show',
],
- 'icon' => 'Search',
+ 'icon' => 'Search',
],
];
}
@@ -1000,15 +1000,15 @@ trait MiscTrait
return [
'definition' => [
- 'title' => $lang['strdefinition'],
- 'url' => 'aggregates',
+ 'title' => $lang['strdefinition'],
+ 'url' => 'aggregates',
'urlvars' => [
- 'subject' => 'aggregate',
+ 'subject' => 'aggregate',
'aggrname' => Decorator::field('aggrname'),
'aggrtype' => Decorator::field('aggrtype'),
- 'action' => 'properties',
+ 'action' => 'properties',
],
- 'icon' => 'Definition',
+ 'icon' => 'Definition',
],
];
}
@@ -1019,14 +1019,14 @@ trait MiscTrait
return [
'definition' => [
- 'title' => $lang['strdefinition'],
- 'url' => 'roles',
+ 'title' => $lang['strdefinition'],
+ 'url' => 'roles',
'urlvars' => [
- 'subject' => 'role',
+ 'subject' => 'role',
'rolename' => Decorator::field('rolename'),
- 'action' => 'properties',
+ 'action' => 'properties',
],
- 'icon' => 'Definition',
+ 'icon' => 'Definition',
],
];
}
@@ -1036,18 +1036,18 @@ trait MiscTrait
$lang = $this->lang;
return [
- 'sql' => [
- 'title' => $lang['strsql'],
- 'url' => \SUBFOLDER . '/src/views/sqledit',
+ 'sql' => [
+ 'title' => $lang['strsql'],
+ 'url' => self::SUBFOLDER . '/src/views/sqledit',
'urlvars' => ['action' => 'sql', 'subject' => 'schema'],
- 'help' => 'pg.sql',
- 'icon' => 'SqlEditor',
+ 'help' => 'pg.sql',
+ 'icon' => 'SqlEditor',
],
'find' => [
- 'title' => $lang['strfind'],
- 'url' => \SUBFOLDER . '/src/views/sqledit',
+ 'title' => $lang['strfind'],
+ 'url' => self::SUBFOLDER . '/src/views/sqledit',
'urlvars' => ['action' => 'find', 'subject' => 'schema'],
- 'icon' => 'Search',
+ 'icon' => 'Search',
],
];
}
@@ -1057,27 +1057,27 @@ trait MiscTrait
$lang = $this->lang;
$tabs = [
'properties' => [
- 'title' => $lang['strcolprop'],
- 'url' => 'colproperties',
+ 'title' => $lang['strcolprop'],
+ 'url' => 'colproperties',
'urlvars' => [
'subject' => 'column',
- 'table' => Decorator::field('table'),
- 'view' => Decorator::field('view'),
- 'column' => Decorator::field('column'),
+ 'table' => Decorator::field('table'),
+ 'view' => Decorator::field('view'),
+ 'column' => Decorator::field('column'),
],
- 'icon' => 'Column',
+ 'icon' => 'Column',
],
'privileges' => [
- 'title' => $lang['strprivileges'],
- 'url' => 'privileges',
+ 'title' => $lang['strprivileges'],
+ 'url' => 'privileges',
'urlvars' => [
'subject' => 'column',
- 'table' => Decorator::field('table'),
- 'view' => Decorator::field('view'),
- 'column' => Decorator::field('column'),
+ 'table' => Decorator::field('table'),
+ 'view' => Decorator::field('view'),
+ 'column' => Decorator::field('column'),
],
- 'help' => 'pg.privilege',
- 'icon' => 'Privileges',
+ 'help' => 'pg.privilege',
+ 'icon' => 'Privileges',
],
];
@@ -1098,31 +1098,31 @@ trait MiscTrait
return [
'ftsconfigs' => [
- 'title' => $lang['strftstabconfigs'],
- 'url' => 'fulltext',
+ 'title' => $lang['strftstabconfigs'],
+ 'url' => 'fulltext',
'urlvars' => ['subject' => 'schema'],
- 'hide' => !$data->hasFTS(),
- 'help' => 'pg.ftscfg',
- 'tree' => true,
- 'icon' => 'FtsCfg',
- ],
- 'ftsdicts' => [
- 'title' => $lang['strftstabdicts'],
- 'url' => 'fulltext',
+ 'hide' => !$data->hasFTS(),
+ 'help' => 'pg.ftscfg',
+ 'tree' => true,
+ 'icon' => 'FtsCfg',
+ ],
+ 'ftsdicts' => [
+ 'title' => $lang['strftstabdicts'],
+ 'url' => 'fulltext',
'urlvars' => ['subject' => 'schema', 'action' => 'viewdicts'],
- 'hide' => !$data->hasFTS(),
- 'help' => 'pg.ftsdict',
- 'tree' => true,
- 'icon' => 'FtsDict',
+ 'hide' => !$data->hasFTS(),
+ 'help' => 'pg.ftsdict',
+ 'tree' => true,
+ 'icon' => 'FtsDict',
],
'ftsparsers' => [
- 'title' => $lang['strftstabparsers'],
- 'url' => 'fulltext',
+ 'title' => $lang['strftstabparsers'],
+ 'url' => 'fulltext',
'urlvars' => ['subject' => 'schema', 'action' => 'viewparsers'],
- 'hide' => !$data->hasFTS(),
- 'help' => 'pg.ftsparser',
- 'tree' => true,
- 'icon' => 'FtsParser',
+ 'hide' => !$data->hasFTS(),
+ 'help' => 'pg.ftsparser',
+ 'tree' => true,
+ 'icon' => 'FtsParser',
],
];
}
@@ -1140,7 +1140,7 @@ trait MiscTrait
$lang = $this->lang;
$hide_advanced = (false === $this->conf['show_advanced']);
- $tabs = [];
+ $tabs = [];
switch ($section) {
case 'root':$tabs = $this->getTabsRoot($data);
@@ -1186,7 +1186,7 @@ trait MiscTrait
// Tabs hook's place
$plugin_functions_parameters = [
- 'tabs' => &$tabs,
+ 'tabs' => &$tabs,
'section' => $section,
];
diff --git a/src/traits/ViewsMatviewsTrait.php b/src/traits/ViewsMatviewsTrait.php
index 34b28a10..4c401302 100644
--- a/src/traits/ViewsMatviewsTrait.php
+++ b/src/traits/ViewsMatviewsTrait.php
@@ -21,13 +21,13 @@ trait ViewsMatviewsTrait
public function doSubTree()
{
- $tabs = $this->misc->getNavTabs($this->keystring);
- $items = $this->adjustTabsForTree($tabs);
+ $tabs = $this->misc->getNavTabs($this->keystring);
+ $items = $this->adjustTabsForTree($tabs);
$reqvars = $this->misc->getRequestVars($this->keystring);
$attrs = [
- 'text' => Decorator::field('title'),
- 'icon' => Decorator::field('icon'),
+ 'text' => Decorator::field('title'),
+ 'icon' => Decorator::field('icon'),
'action' => Decorator::actionurl(Decorator::field('url'), $reqvars, Decorator::field('urlvars'), [$this->keystring => $_REQUEST[$this->keystring]]),
'branch' => Decorator::ifempty(
Decorator::field('branch'),
@@ -37,7 +37,7 @@ trait ViewsMatviewsTrait
Decorator::field('urlvars'),
$reqvars,
[
- 'action' => 'tree',
+ 'action' => 'tree',
$this->keystring => $_REQUEST[$this->keystring],
]
)
@@ -64,7 +64,7 @@ trait ViewsMatviewsTrait
$attrs = $data->getTableAttributes($_REQUEST[$this->keystring]);
- echo '<form action="' . \SUBFOLDER . '/src/views/' . $this->script . '" method="post" id="selectform">';
+ echo '<form action="' . self::SUBFOLDER . '/src/views/' . $this->script . '" method="post" id="selectform">';
echo \PHP_EOL;
if (0 < $attrs->recordCount()) {
@@ -165,7 +165,7 @@ trait ViewsMatviewsTrait
// Generate query SQL
$query = $data->getSelectSQL($_REQUEST[$this->keystring], \array_keys($_POST['show']), $_POST['values'], $_POST['ops']);
- $_REQUEST['query'] = $query;
+ $_REQUEST['query'] = $query;
$_REQUEST['return'] = 'schema';
$this->setNoOutput(true);
@@ -184,7 +184,7 @@ trait ViewsMatviewsTrait
$tables = $data->getAllTables();
- echo '<form action="' . \SUBFOLDER . "/src/views/{$this->script}\" method=\"post\">" . \PHP_EOL;
+ echo '<form action="' . self::SUBFOLDER . "/src/views/{$this->script}\" method=\"post\">" . \PHP_EOL;
echo '<table>' . \PHP_EOL;
echo "<tr><th class=\"data\">{$this->lang['strtables']}</th></tr>";
echo "<tr>\n<td class=\"data1\">" . \PHP_EOL;
@@ -192,10 +192,10 @@ trait ViewsMatviewsTrait
$arrTables = [];
while (!$tables->EOF) {
- $arrTmp = [];
- $arrTmp['schemaname'] = $tables->fields['nspname'];
- $arrTmp['tablename'] = $tables->fields['relname'];
- $schema_and_name = $tables->fields['nspname'] . '.' . $tables->fields['relname'];
+ $arrTmp = [];
+ $arrTmp['schemaname'] = $tables->fields['nspname'];
+ $arrTmp['tablename'] = $tables->fields['relname'];
+ $schema_and_name = $tables->fields['nspname'] . '.' . $tables->fields['relname'];
$arrTables[$schema_and_name] = \serialize($arrTmp);
$tables->moveNext();
}
@@ -243,8 +243,8 @@ trait ViewsMatviewsTrait
$selFields = \mb_substr($selFields, 0, -2);
unset($arrTmp, $tmpHsh);
- $linkFields = '';
- $arrJoined = [];
+ $linkFields = '';
+ $arrJoined = [];
$arrUsedTbls = [];
[$arrLinks, $count] = $this->_getArrLinks();
@@ -255,7 +255,7 @@ trait ViewsMatviewsTrait
while ($j < $count) {
foreach ($arrLinks as $curLink) {
- $arrLeftLink = \unserialize($curLink['leftlink']);
+ $arrLeftLink = \unserialize($curLink['leftlink']);
$arrRightLink = \unserialize($curLink['rightlink']);
$data->fieldArrayClean($arrLeftLink);
$data->fieldArrayClean($arrRightLink);
@@ -337,7 +337,7 @@ trait ViewsMatviewsTrait
{
$data = $this->misc->getDatabaseAccessor();
- $tblCount = \count($_POST['formTables']);
+ $tblCount = \count($_POST['formTables']);
$arrSelTables = [];
//unserialize our schema/table information and store in arrSelTables
for ($i = 0; $i < $tblCount; ++$i) {
@@ -346,7 +346,7 @@ trait ViewsMatviewsTrait
//get linking keys
$rsLinkKeys = $data->getLinkingKeys($arrSelTables);
- $linkCount = $rsLinkKeys->recordCount() > $tblCount ? $rsLinkKeys->recordCount() : $tblCount;
+ $linkCount = $rsLinkKeys->recordCount() > $tblCount ? $rsLinkKeys->recordCount() : $tblCount;
$arrFields = []; //array that will hold all our table/field names
@@ -365,8 +365,8 @@ trait ViewsMatviewsTrait
$arrFields["{$arrSelTables[$i]['schemaname']}.{$arrSelTables[$i]['tablename']}.{$attrs->fields['attname']}"] = \serialize(
[
'schemaname' => $arrSelTables[$i]['schemaname'],
- 'tablename' => $arrSelTables[$i]['tablename'],
- 'fieldname' => $attrs->fields['attname'], ]
+ 'tablename' => $arrSelTables[$i]['tablename'],
+ 'fieldname' => $attrs->fields['attname']]
);
$attrs->moveNext();
}
@@ -375,7 +375,7 @@ trait ViewsMatviewsTrait
}
\asort($arrFields);
- echo '<form action="' . \SUBFOLDER . '/src/views/materializedviews" method="post">' . \PHP_EOL;
+ echo '<form action="' . self::SUBFOLDER . '/src/views/materializedviews" method="post">' . \PHP_EOL;
echo '<table>' . \PHP_EOL;
echo "<tr><th class=\"data\">{$this->lang['strviewname']}</th></tr>";
echo "<tr>\n<td class=\"data1\">" . \PHP_EOL;
@@ -414,11 +414,11 @@ trait ViewsMatviewsTrait
echo "<tr>\n<td class=\"{$rowClass}\">" . \PHP_EOL;
if (!$rsLinkKeys->EOF) {
- $curLeftLink = \htmlspecialchars(\serialize(['schemaname' => $rsLinkKeys->fields['p_schema'], 'tablename' => $rsLinkKeys->fields['p_table'], 'fieldname' => $rsLinkKeys->fields['p_field']]));
+ $curLeftLink = \htmlspecialchars(\serialize(['schemaname' => $rsLinkKeys->fields['p_schema'], 'tablename' => $rsLinkKeys->fields['p_table'], 'fieldname' => $rsLinkKeys->fields['p_field']]));
$curRightLink = \htmlspecialchars(\serialize(['schemaname' => $rsLinkKeys->fields['f_schema'], 'tablename' => $rsLinkKeys->fields['f_table'], 'fieldname' => $rsLinkKeys->fields['f_field']]));
$rsLinkKeys->moveNext();
} else {
- $curLeftLink = '';
+ $curLeftLink = '';
$curRightLink = '';
}
@@ -499,7 +499,7 @@ trait ViewsMatviewsTrait
private function _getArrLinks()
{
$arrLinks = [];
- $count = 0;
+ $count = 0;
// If we have links, out put the JOIN ... ON statements
if (\is_array($_POST['formLink'])) {
// Filter out invalid/blank entries for our links
diff --git a/src/xhtml/HTMLController.php b/src/xhtml/HTMLController.php
index b1b1575e..1af9c32a 100644
--- a/src/xhtml/HTMLController.php
+++ b/src/xhtml/HTMLController.php
@@ -6,15 +6,9 @@
namespace PHPPgAdmin\XHtml;
+use PHPPgAdmin\ContainerUtils;
use PHPPgAdmin\Decorators\Decorator;
-\defined('BASE_PATH') || \define('BASE_PATH', \dirname(__DIR__, 2));
-\defined('SUBFOLDER') || \define(
- 'SUBFOLDER',
- \str_replace($_SERVER['DOCUMENT_ROOT'] ?? '', '', BASE_PATH)
-);
-\defined('DEBUGMODE') || \define('DEBUGMODE', false);
-
/**
* Base HTMLController controller class.
*/
@@ -24,15 +18,15 @@ class HTMLController
/**
* @var string
*/
- const BASE_PATH = BASE_PATH;
+ const BASE_PATH = ContainerUtils::BASE_PATH;
/**
* @var string
*/
- const SUBFOLDER = SUBFOLDER;
+ const SUBFOLDER = ContainerUtils::SUBFOLDER;
/**
* @var string
*/
- const DEBUGMODE = DEBUGMODE;
+ const DEBUGMODE = ContainerUtils::DEBUGMODE;
public $form = '';
@@ -66,16 +60,16 @@ class HTMLController
public function __construct(\Slim\Container $container, $controller_name = null)
{
$this->container = $container;
- $this->lang = $container->get('lang');
- $this->view = $container->get('view');
+ $this->lang = $container->get('lang');
+ $this->view = $container->get('view');
- $this->appName = $container->get('settings')['appName'];
- $this->appVersion = $container->get('settings')['appVersion'];
+ $this->appName = $container->get('settings')['appName'];
+ $this->appVersion = $container->get('settings')['appVersion'];
$this->appLangFiles = $container->get('appLangFiles');
- $this->misc = $container->get('misc');
- $this->conf = $this->misc->getConf();
- $this->appThemes = $container->get('appThemes');
- $this->action = $container->get('action');
+ $this->misc = $container->get('misc');
+ $this->conf = $this->misc->getConf();
+ $this->appThemes = $container->get('appThemes');
+ $this->action = $container->get('action');
if (null !== $controller_name) {
$this->controller_name = $controller_name;
@@ -110,7 +104,7 @@ class HTMLController
$link['fields'] = $_REQUEST;
}
$from = $from ? $from : __METHOD__;
- $tag = '<a ';
+ $tag = '<a ';
foreach ($link['attr'] as $attr => $value) {
if ('href' === $attr && \is_array($value)) {
@@ -145,15 +139,32 @@ class HTMLController
* @internal param $ (optional) $bMultiple bool to specify whether or not we want a multi select combo box
* @internal param $ (optional) $iSize int to specify the size IF a multi select combo
*/
- public static function printCombo(&$arrOptions, $szName, $bBlankEntry = true, $szDefault = '', $bMultiple = false, $iSize = 10)
- {
+ public static function printCombo(
+ &$arrOptions,
+ $szName,
+ $bBlankEntry = true,
+ $szDefault = '',
+ $bMultiple = false,
+ $iSize = 10
+ ) {
$htmlOut = '';
if ($bMultiple) {
// If multiple select combo
- $htmlOut .= "<select rel=\"printCombo\" name=\"{$szName}\" id=\"{$szName}\" multiple=\"multiple\" size=\"{$iSize}\">" . \PHP_EOL;
+ $htmlOut .= sprintf(
+ '<select rel="printCombo" name="%s" id="%s" multiple="multiple" size="%s">',
+ $szName,
+ $szName,
+ $iSize
+ )
+ . \PHP_EOL;
} else {
- $htmlOut .= "<select rel=\"printCombo\" name=\"{$szName}\" id=\"{$szName}\" class=\"select2\" >" . \PHP_EOL;
+ $htmlOut .= sprintf(
+ '<select rel="printCombo" name="%s" id="%s" class="select2" >',
+ $szName,
+ $szName
+ )
+ . \PHP_EOL;
}
if ($bBlankEntry) {
@@ -204,9 +215,9 @@ class HTMLController
$subject = '';
}
- $server = $this->container->server;
+ $server = $this->container->server;
$database = $this->container->database;
- $schema = $this->container->schema;
+ $schema = $this->container->schema;
/*
$server = $this->container->has('server') ? $this->container->server : $_REQUEST['server'];
diff --git a/src/xhtml/HTMLNavbarController.php b/src/xhtml/HTMLNavbarController.php
index 289647e5..2e9e4846 100644
--- a/src/xhtml/HTMLNavbarController.php
+++ b/src/xhtml/HTMLNavbarController.php
@@ -225,7 +225,7 @@ class HTMLNavbarController extends HTMLController
'sql' => [
'attr' => [
'href' => [
- 'url' => SUBFOLDER . '/src/views/sqledit',
+ 'url' => self::SUBFOLDER . '/src/views/sqledit',
'urlvars' => \array_merge($reqvars, [
'action' => 'sql',
]),
@@ -239,7 +239,7 @@ class HTMLNavbarController extends HTMLController
'history' => [
'attr' => [
'href' => [
- 'url' => SUBFOLDER . '/src/views/history',
+ 'url' => self::SUBFOLDER . '/src/views/history',
'urlvars' => \array_merge($reqvars, [
'action' => 'pophistory',
]),
@@ -252,7 +252,7 @@ class HTMLNavbarController extends HTMLController
'find' => [
'attr' => [
'href' => [
- 'url' => SUBFOLDER . '/src/views/sqledit',
+ 'url' => self::SUBFOLDER . '/src/views/sqledit',
'urlvars' => \array_merge($reqvars, [
'action' => 'find',
]),
@@ -266,7 +266,7 @@ class HTMLNavbarController extends HTMLController
'logout' => [
'attr' => [
'href' => [
- 'url' => SUBFOLDER . '/src/views/servers',
+ 'url' => self::SUBFOLDER . '/src/views/servers',
'urlvars' => [
'action' => 'logout',
'logoutServer' => \sha1("{$server_info['host']}:{$server_info['port']}:{$server_info['sslmode']}"),
@@ -326,7 +326,7 @@ class HTMLNavbarController extends HTMLController
$trail['root'] = [
'text' => $appName,
- 'url' => SUBFOLDER . '/src/views/servers',
+ 'url' => self::SUBFOLDER . '/src/views/servers',
'icon' => 'Introduction',
];
diff --git a/src/xhtml/XHtmlSimpleElement.php b/src/xhtml/XHtmlSimpleElement.php
index c0919004..d8803fc7 100644
--- a/src/xhtml/XHtmlSimpleElement.php
+++ b/src/xhtml/XHtmlSimpleElement.php
@@ -6,12 +6,7 @@
namespace PHPPgAdmin\XHtml;
-\defined('BASE_PATH') || \define('BASE_PATH', \dirname(__DIR__, 2));
-\defined('SUBFOLDER') || \define(
- 'SUBFOLDER',
- \str_replace($_SERVER['DOCUMENT_ROOT'] ?? '', '', BASE_PATH)
-);
-\defined('DEBUGMODE') || \define('DEBUGMODE', false);
+use PHPPgAdmin\ContainerUtils;
/**
* XHtmlSimpleElement.
@@ -27,15 +22,15 @@ class XHtmlSimpleElement
/**
* @var string
*/
- const BASE_PATH = BASE_PATH;
+ const BASE_PATH = ContainerUtils::BASE_PATH;
/**
* @var string
*/
- const SUBFOLDER = SUBFOLDER;
+ const SUBFOLDER = ContainerUtils::SUBFOLDER;
/**
* @var string
*/
- const DEBUGMODE = DEBUGMODE;
+ const DEBUGMODE = ContainerUtils::DEBUGMODE;
public $_element;
diff --git a/tests/_support/Helper/Unit.php b/tests/_support/Helper/Unit.php
index a72c96d7..d18682ee 100644
--- a/tests/_support/Helper/Unit.php
+++ b/tests/_support/Helper/Unit.php
@@ -9,12 +9,6 @@ namespace Helper;
use PHPPgAdmin\ContainerUtils;
-defined('BASE_PATH') || define('BASE_PATH', dirname(dirname(dirname(__DIR__))));
-defined('SUBFOLDER') || define(
- 'SUBFOLDER',
- str_replace($_SERVER['DOCUMENT_ROOT'] ?? '', '', BASE_PATH)
-);
-defined('DEBUGMODE') || define('DEBUGMODE', false);
if (!is_readable(BASE_PATH . '/src/lib.inc.php')) {
die('lib.inc.php is not readable');
}
@@ -25,11 +19,11 @@ defined('IN_TEST') || define('IN_TEST', true);
class Unit extends \Codeception\Module
{
/** @var string */
- const BASE_PATH = BASE_PATH;
+ const BASE_PATH = ContainerUtils::BASE_PATH;
/** @var string */
- const SUBFOLDER = SUBFOLDER;
+ const SUBFOLDER = ContainerUtils::SUBFOLDER;
/** @var string */
- const DEBUGMODE = DEBUGMODE;
+ const DEBUGMODE = ContainerUtils::DEBUGMODE;
/**
* @var \PHPPgAdmin
*/
diff --git a/tests/unit/ViewTest.php b/tests/unit/ViewTest.php
index 651237a9..5099e6dd 100644
--- a/tests/unit/ViewTest.php
+++ b/tests/unit/ViewTest.php
@@ -7,6 +7,7 @@
class ViewTest extends \Codeception\Test\Unit
{
+ const BASE_PATH = \Codeception\Util::BASE_PATH;
/**
* @var \UnitTester
*/
@@ -31,7 +32,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testAcinsertView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/acinsert.php';
+ require self::BASE_PATH . '/tests/views/acinsert.php';
$controller = acinsertFactory($_container);
$this->assertSame($controller->controller_name, 'AcinsertController', 'controller name should be AcinsertController');
}
@@ -39,7 +40,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testAggregatesView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/aggregates.php';
+ require self::BASE_PATH . '/tests/views/aggregates.php';
$controller = aggregatesFactory($_container);
$this->assertSame($controller->controller_name, 'AggregatesController', 'controller name should be AggregatesController');
}
@@ -47,7 +48,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testAlldbView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/alldb.php';
+ require self::BASE_PATH . '/tests/views/alldb.php';
$controller = alldbFactory($_container);
$this->assertSame($controller->controller_name, 'AlldbController', 'controller name should be AlldbController');
}
@@ -55,7 +56,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testBrowserView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/browser.php';
+ require self::BASE_PATH . '/tests/views/browser.php';
$controller = browserFactory($_container);
$this->assertSame($controller->controller_name, 'BrowserController', 'controller name should be BrowserController');
}
@@ -63,7 +64,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testCastsView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/casts.php';
+ require self::BASE_PATH . '/tests/views/casts.php';
$controller = castsFactory($_container);
$this->assertSame($controller->controller_name, 'CastsController', 'controller name should be CastsController');
}
@@ -71,7 +72,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testColpropertiesView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/colproperties.php';
+ require self::BASE_PATH . '/tests/views/colproperties.php';
$controller = colpropertiesFactory($_container);
$this->assertSame($controller->controller_name, 'ColpropertiesController', 'controller name should be ColpropertiesController');
}
@@ -79,7 +80,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testConstraintsView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/constraints.php';
+ require self::BASE_PATH . '/tests/views/constraints.php';
$controller = constraintsFactory($_container);
$this->assertSame($controller->controller_name, 'ConstraintsController', 'controller name should be ConstraintsController');
}
@@ -87,7 +88,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testConversionsView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/conversions.php';
+ require self::BASE_PATH . '/tests/views/conversions.php';
$controller = conversionsFactory($_container);
$this->assertSame($controller->controller_name, 'ConversionsController', 'controller name should be ConversionsController');
}
@@ -95,7 +96,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testDatabaseView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/database.php';
+ require self::BASE_PATH . '/tests/views/database.php';
$controller = databaseFactory($_container);
$this->assertSame($controller->controller_name, 'DatabaseController', 'controller name should be DatabaseController');
}
@@ -103,7 +104,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testDataexportView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/dataexport.php';
+ require self::BASE_PATH . '/tests/views/dataexport.php';
$controller = dataexportFactory($_container);
$this->assertSame($controller->controller_name, 'DataexportController', 'controller name should be DataexportController');
}
@@ -111,7 +112,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testDataimportView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/dataimport.php';
+ require self::BASE_PATH . '/tests/views/dataimport.php';
$controller = dataimportFactory($_container);
$this->assertSame($controller->controller_name, 'DataimportController', 'controller name should be DataimportController');
}
@@ -119,7 +120,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testDbexportView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/dbexport.php';
+ require self::BASE_PATH . '/tests/views/dbexport.php';
$controller = dbexportFactory($_container);
$this->assertSame($controller->controller_name, 'DbexportController', 'controller name should be DbexportController');
}
@@ -127,7 +128,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testDisplayView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/display.php';
+ require self::BASE_PATH . '/tests/views/display.php';
$controller = displayFactory($_container);
$this->assertSame($controller->controller_name, 'DisplayController', 'controller name should be DisplayController');
}
@@ -135,7 +136,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testDomainsView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/domains.php';
+ require self::BASE_PATH . '/tests/views/domains.php';
$controller = domainsFactory($_container);
$this->assertSame($controller->controller_name, 'DomainsController', 'controller name should be DomainsController');
}
@@ -143,7 +144,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testFulltextView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/fulltext.php';
+ require self::BASE_PATH . '/tests/views/fulltext.php';
$controller = fulltextFactory($_container);
$this->assertSame($controller->controller_name, 'FulltextController', 'controller name should be FulltextController');
}
@@ -151,7 +152,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testFunctionsView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/functions.php';
+ require self::BASE_PATH . '/tests/views/functions.php';
$controller = functionsFactory($_container);
$this->assertSame($controller->controller_name, 'FunctionsController', 'controller name should be FunctionsController');
}
@@ -159,7 +160,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testGroupsView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/groups.php';
+ require self::BASE_PATH . '/tests/views/groups.php';
$controller = groupsFactory($_container);
$this->assertSame($controller->controller_name, 'GroupsController', 'controller name should be GroupsController');
}
@@ -167,7 +168,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testHelpView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/help.php';
+ require self::BASE_PATH . '/tests/views/help.php';
$controller = helpFactory($_container);
$this->assertSame($controller->controller_name, 'HelpController', 'controller name should be HelpController');
}
@@ -175,7 +176,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testHistoryView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/history.php';
+ require self::BASE_PATH . '/tests/views/history.php';
$controller = historyFactory($_container);
$this->assertSame($controller->controller_name, 'HistoryController', 'controller name should be HistoryController');
}
@@ -183,7 +184,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testIndexesView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/indexes.php';
+ require self::BASE_PATH . '/tests/views/indexes.php';
$controller = indexesFactory($_container);
$this->assertSame($controller->controller_name, 'IndexesController', 'controller name should be IndexesController');
}
@@ -191,7 +192,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testInfoView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/info.php';
+ require self::BASE_PATH . '/tests/views/info.php';
$controller = infoFactory($_container);
$this->assertSame($controller->controller_name, 'InfoController', 'controller name should be InfoController');
}
@@ -199,7 +200,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testIntroView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/intro.php';
+ require self::BASE_PATH . '/tests/views/intro.php';
$controller = introFactory($_container);
$this->assertSame($controller->controller_name, 'IntroController', 'controller name should be IntroController');
}
@@ -207,7 +208,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testLanguagesView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/languages.php';
+ require self::BASE_PATH . '/tests/views/languages.php';
$controller = languagesFactory($_container);
$this->assertSame($controller->controller_name, 'LanguagesController', 'controller name should be LanguagesController');
}
@@ -215,7 +216,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testLoginView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/login.php';
+ require self::BASE_PATH . '/tests/views/login.php';
$controller = loginFactory($_container);
$this->assertSame($controller->controller_name, 'LoginController', 'controller name should be LoginController');
}
@@ -223,7 +224,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testOpclassesView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/opclasses.php';
+ require self::BASE_PATH . '/tests/views/opclasses.php';
$controller = opclassesFactory($_container);
$this->assertSame($controller->controller_name, 'OpclassesController', 'controller name should be OpclassesController');
}
@@ -231,7 +232,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testOperatorsView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/operators.php';
+ require self::BASE_PATH . '/tests/views/operators.php';
$controller = operatorsFactory($_container);
$this->assertSame($controller->controller_name, 'OperatorsController', 'controller name should be OperatorsController');
}
@@ -239,7 +240,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testPrivilegesView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/privileges.php';
+ require self::BASE_PATH . '/tests/views/privileges.php';
$controller = privilegesFactory($_container);
$this->assertSame($controller->controller_name, 'PrivilegesController', 'controller name should be PrivilegesController');
}
@@ -247,7 +248,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testRolesView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/roles.php';
+ require self::BASE_PATH . '/tests/views/roles.php';
$controller = rolesFactory($_container);
$this->assertSame($controller->controller_name, 'RolesController', 'controller name should be RolesController');
}
@@ -255,7 +256,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testRulesView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/rules.php';
+ require self::BASE_PATH . '/tests/views/rules.php';
$controller = rulesFactory($_container);
$this->assertSame($controller->controller_name, 'RulesController', 'controller name should be RulesController');
}
@@ -263,7 +264,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testSchemasView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/schemas.php';
+ require self::BASE_PATH . '/tests/views/schemas.php';
$controller = schemasFactory($_container);
$this->assertSame($controller->controller_name, 'SchemasController', 'controller name should be SchemasController');
}
@@ -271,7 +272,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testSequencesView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/sequences.php';
+ require self::BASE_PATH . '/tests/views/sequences.php';
$controller = sequencesFactory($_container);
$this->assertSame($controller->controller_name, 'SequencesController', 'controller name should be SequencesController');
}
@@ -279,7 +280,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testServersView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/servers.php';
+ require self::BASE_PATH . '/tests/views/servers.php';
$controller = serversFactory($_container);
$this->assertSame($controller->controller_name, 'ServersController', 'controller name should be ServersController');
}
@@ -287,7 +288,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testSqleditView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/sqledit.php';
+ require self::BASE_PATH . '/tests/views/sqledit.php';
$controller = sqleditFactory($_container);
$this->assertSame($controller->controller_name, 'SqleditController', 'controller name should be SqleditController');
}
@@ -295,7 +296,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testSqlView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/sql.php';
+ require self::BASE_PATH . '/tests/views/sql.php';
$controller = sqlFactory($_container);
$this->assertSame($controller->controller_name, 'SqlController', 'controller name should be SqlController');
}
@@ -303,7 +304,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testTablespacesView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/tablespaces.php';
+ require self::BASE_PATH . '/tests/views/tablespaces.php';
$controller = tablespacesFactory($_container);
$this->assertSame($controller->controller_name, 'TablespacesController', 'controller name should be TablespacesController');
}
@@ -311,7 +312,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testTriggersView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/triggers.php';
+ require self::BASE_PATH . '/tests/views/triggers.php';
$controller = triggersFactory($_container);
$this->assertSame($controller->controller_name, 'TriggersController', 'controller name should be TriggersController');
}
@@ -319,7 +320,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testTypesView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/types.php';
+ require self::BASE_PATH . '/tests/views/types.php';
$controller = typesFactory($_container);
$this->assertSame($controller->controller_name, 'TypesController', 'controller name should be TypesController');
}
@@ -327,7 +328,7 @@ class ViewTest extends \Codeception\Test\Unit
public function testUsersView()
{
$_container = $this->container;
- require BASE_PATH . '/tests/views/users.php';
+ require self::BASE_PATH . '/tests/views/users.php';
$controller = usersFactory($_container);
$this->assertSame($controller->controller_name, 'UsersController', 'controller name should be UsersController');
}