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:
authorFelipe Figueroa <amenadiel@gmail.com>2020-12-23 05:36:49 +0300
committerFelipe Figueroa <amenadiel@gmail.com>2020-12-23 05:36:49 +0300
commitfde7407e70702f48f87d6f525df78f487314c53f (patch)
tree188f0a9e7c9d077692ee0bc1b777e5562445a059
parent994a04ce3fa7308b3e1db488e36f426a8c8b1330 (diff)
ignores tools folder
-rw-r--r--.github/workflows/codeception_tests.yml8
-rw-r--r--.github/workflows/coding_standards.yml2
-rw-r--r--.github/workflows/static_analysis.yml2
-rw-r--r--.gitignore8
-rw-r--r--.phive/phars.xml3
-rw-r--r--assets/templates/browser.twig107
-rw-r--r--assets/templates/components/common_head.twig5
-rw-r--r--assets/templates/footer.twig11
-rw-r--r--assets/templates/footer_iframe.twig30
-rw-r--r--assets/templates/footer_sqledit.twig13
-rw-r--r--assets/templates/header.twig11
-rw-r--r--assets/templates/header_datatables.twig13
-rw-r--r--assets/templates/header_highlight.twig15
-rw-r--r--assets/templates/header_select2.twig15
-rw-r--r--assets/templates/header_sqledit.twig30
-rw-r--r--assets/templates/iframe_view.twig36
-rw-r--r--composer-require-checker.json27
-rw-r--r--composer.json6
-rw-r--r--composer.lock1734
-rw-r--r--mk_linters.mk55
-rw-r--r--package.json8
-rw-r--r--phpstan-baseline.neon764
-rw-r--r--phpstan.neon34
-rw-r--r--psalm-baseline.xml736
-rw-r--r--psalm.xml7
-rw-r--r--src/classes/ADONewConnection.php5
-rw-r--r--src/classes/ADORecordSet.php5
-rw-r--r--src/classes/ADOdbException.php6
-rw-r--r--src/classes/Connection.php17
-rw-r--r--src/classes/ContainerUtils.php625
-rw-r--r--src/classes/Misc.php31
-rw-r--r--src/classes/ViewManager.php66
-rw-r--r--src/controllers/AggregatesController.php6
-rw-r--r--src/controllers/AlldbController.php8
-rw-r--r--src/controllers/BaseController.php49
-rw-r--r--src/controllers/ColpropertiesController.php4
-rw-r--r--src/controllers/ConstraintsController.php4
-rw-r--r--src/controllers/DatabaseController.php38
-rw-r--r--src/controllers/DataexportController.php4
-rw-r--r--src/controllers/DbexportController.php2
-rw-r--r--src/controllers/DisplayController.php9
-rw-r--r--src/controllers/DomainsController.php10
-rw-r--r--src/controllers/FulltextController.php18
-rw-r--r--src/controllers/FunctionsController.php24
-rw-r--r--src/controllers/GroupsController.php6
-rw-r--r--src/controllers/HistoryController.php6
-rw-r--r--src/controllers/IndexesController.php12
-rw-r--r--src/controllers/LoginController.php2
-rw-r--r--src/controllers/MaterializedviewpropertiesController.php6
-rw-r--r--src/controllers/MaterializedviewsController.php6
-rw-r--r--src/controllers/OperatorsController.php2
-rw-r--r--src/controllers/PrivilegesController.php4
-rw-r--r--src/controllers/RolesController.php10
-rw-r--r--src/controllers/RulesController.php4
-rw-r--r--src/controllers/SchemasController.php8
-rw-r--r--src/controllers/SequencesController.php8
-rw-r--r--src/controllers/ServersController.php2
-rw-r--r--src/controllers/SqleditController.php2
-rw-r--r--src/controllers/TablesController.php26
-rw-r--r--src/controllers/TablespacesController.php6
-rw-r--r--src/controllers/TblpropertiesController.php10
-rw-r--r--src/controllers/TreeController.php10
-rw-r--r--src/controllers/TriggersController.php10
-rw-r--r--src/controllers/TypesController.php12
-rw-r--r--src/controllers/UsersController.php8
-rw-r--r--src/controllers/ViewpropertiesController.php6
-rw-r--r--src/controllers/ViewsController.php6
-rw-r--r--src/decorators/ActionUrlDecorator.php2
-rw-r--r--src/decorators/BranchUrlDecorator.php4
-rw-r--r--src/decorators/Decorator.php15
-rw-r--r--src/decorators/RedirectUrlDecorator.php4
-rw-r--r--src/decorators/UrlDecorator.php4
-rw-r--r--src/lib.inc.php110
-rw-r--r--src/middleware/PopulateRequestResponse.php4
-rw-r--r--src/router.php14
-rw-r--r--src/xhtml/HTMLController.php17
-rw-r--r--src/xhtml/HTMLNavbarController.php38
-rw-r--r--src/xhtml/HTMLTableController.php2
-rw-r--r--src/xhtml/XHtmlSimpleElement.php15
-rw-r--r--yarn.lock270
80 files changed, 3313 insertions, 1969 deletions
diff --git a/.github/workflows/codeception_tests.yml b/.github/workflows/codeception_tests.yml
index b9892cb2..e8e214b3 100644
--- a/.github/workflows/codeception_tests.yml
+++ b/.github/workflows/codeception_tests.yml
@@ -1,6 +1,6 @@
# https://help.github.com/en/categories/automating-your-workflow-with-github-actions
-name: "Coding_Standards"
+name: "Codeception_Tests"
on:
push:
@@ -18,8 +18,8 @@ env:
PHP_EXTENSIONS: "mbstring, pgsql"
key: cache-v1 # can be any string, change to clear the extension cache.
jobs:
- coding_standards:
- name: "Coding_Standards"
+ tests:
+ name: "Codeception_Tests"
runs-on: "ubuntu-latest"
@@ -51,7 +51,7 @@ jobs:
restore-keys: ${{ steps.extcache.outputs.key }}
- name: "Install PHP with extensions"
- uses: "shivammathur/setup-php@v2.5.0"
+ uses: "shivammathur/setup-php@v2"
with:
coverage: "none"
extensions: "${{ env.PHP_EXTENSIONS }}"
diff --git a/.github/workflows/coding_standards.yml b/.github/workflows/coding_standards.yml
index 08a4117a..6e0b3ca9 100644
--- a/.github/workflows/coding_standards.yml
+++ b/.github/workflows/coding_standards.yml
@@ -51,7 +51,7 @@ jobs:
restore-keys: ${{ steps.extcache.outputs.key }}
- name: "Install PHP with extensions"
- uses: "shivammathur/setup-php@v2.5.0"
+ uses: "shivammathur/setup-php@v2"
with:
coverage: "none"
extensions: "${{ env.PHP_EXTENSIONS }}"
diff --git a/.github/workflows/static_analysis.yml b/.github/workflows/static_analysis.yml
index f9a137e3..60ecac90 100644
--- a/.github/workflows/static_analysis.yml
+++ b/.github/workflows/static_analysis.yml
@@ -49,7 +49,7 @@ jobs:
restore-keys: ${{ steps.extcache.outputs.key }}
- name: "Install PHP with extensions"
- uses: "shivammathur/setup-php@v2.5.0"
+ uses: "shivammathur/setup-php@v2"
with:
coverage: "none"
extensions: "${{ env.PHP_EXTENSIONS }}"
diff --git a/.gitignore b/.gitignore
index ef9f0bab..203f8b20 100644
--- a/.gitignore
+++ b/.gitignore
@@ -27,7 +27,7 @@ playground
*.log
tests/_output
temp/*.output.txt
-*baseline.*
+
###> Vendor files
node_modules
@@ -48,6 +48,6 @@ config.*.php*
.php_cs.cache
.phpunit.result.cache
-tools/reviewdog
-tools/composer-require-checker
-.vscode/*
+tools/php*
+tools/composer*
+
diff --git a/.phive/phars.xml b/.phive/phars.xml
index 1ec4f33f..19b0b8d3 100644
--- a/.phive/phars.xml
+++ b/.phive/phars.xml
@@ -1,4 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<phive xmlns="https://phar.io/phive">
<phar name="composer-require-checker" version="^2.1.0" installed="2.1.0" location="./tools/composer-require-checker" copy="false"/>
+ <phar name="phpmd" version="^2.7.0" installed="2.7.0" location="./tools/phpmd" copy="false"/>
+ <phar name="phpcpd" version="^4.1.0" installed="4.1.0" location="./tools/phpcpd" copy="false"/>
+ <phar name="phpcs" version="^3.5.3" installed="3.5.3" location="./tools/phpcs" copy="false"/>
</phive>
diff --git a/assets/templates/browser.twig b/assets/templates/browser.twig
index 91263933..7754ae38 100644
--- a/assets/templates/browser.twig
+++ b/assets/templates/browser.twig
@@ -1,38 +1,71 @@
<!DOCTYPE html>
-<html xml:lang="{{ lang.applocale }}" lang="{{ lang.applocale }}" dir="{{ lang.applangdir }}">
- <head data-headertemplate="{{ headertemplate }}">
- <link rel="stylesheet" href="{{ subfolder }}/assets/vendor/jstree/themes/phppgadmin/style.css" /> {% include 'components/common_head.twig' %}
-
- <script src="{{ subfolder }}/assets/vendor/jstree/jstree.min.js"></script>
- <style type="text/css">
- .refreshTree { position: absolute; right: 0; z-index: 1000; }
- </style>
- </head>
-
- <body class="browser">
- <div dir="{{ lang.applangdir }}">
- <div class="logo">
- <a href="{{ subfolder }}/" target="_parent">{{ appName }}</a>
- </div>
- <div class="refreshTree">
- <a href="{{ subfolder }}/src/views/browser" target="browser">
- <img src="{{ icon.Refresh }}" alt="{{ lang.strrefresh }}" title="{{ lang.strrefresh }}" />
- </a>
- </div>
-
- <div id="lazy" class="demo"></div>
- </div>
-
- <script>
- window.jsTree = $('#lazy').jstree({ "state": { "key": "jstree" }, "plugins": ["state"], 'core': { 'data': { "url":
- function (node) { if (node.id === '#') { return '{{ subfolder }}/src/views/browser?action=tree'; } else { return
- node.original.url; } } } } }); if(parent.frames && parent.frames.detail) {
- parent.frames.detail.jsTree=window.jsTree; }
-
- $('#lazy').on("activate_node.jstree", function (e, data) { if (window.parent.frames.detail) {
- window.parent.frames.detail.location.replace(data.node.a_attr.href); } }); $('#lazy').on("loaded.jstree", function
- (e, data) { $('#lazy').data('jstree').show_dots(); }); $('#lazy').on('click','.jstree-anchor',function(){
- console.log(this); });
- </script>
- </body>
-</html>
+<html xml:lang="{{lang.applocale}}" lang="{{lang.applocale}}" dir="{{lang.applangdir}}">
+
+ <head data-headertemplate="{{headertemplate}}">
+ <link rel="stylesheet" href="{{subfolder}}/assets/vendor/jstree/themes/phppgadmin/style.css" /> {% include 'components/common_head.twig' %}
+
+ <script src="{{subfolder}}/assets/vendor/jstree/jstree.min.js"></script>
+ <style type="text/css">
+ .refreshTree {
+ position: absolute;
+ right: 0;
+ z-index: 1000;
+ }
+ </style>
+ </head>
+
+ <body class="browser">
+
+ <div dir="{{lang.applangdir}}">
+
+ <div class="logo">
+ <a href="{{subfolder}}/" target="_parent">{{appName}}</a>
+ </div>
+ <div class="refreshTree">
+ <a href="{{subfolder}}/src/views/browser" target="browser">
+ <img src="{{icon.Refresh}}" alt="{{lang.strrefresh}}" title="{{lang.strrefresh}}" />
+ </a>
+ </div>
+
+ <div id="lazy" class="demo"></div>
+
+ </div>
+
+ <script>
+ window.jsTree = $('#lazy').jstree({
+ "state": {
+ "key": "jstree"
+ },
+ "plugins": ["state"],
+ 'core': {
+ 'data': {
+ "url": function (node) {
+ if (node.id === '#') {
+ return '{{subfolder}}/src/views/browser?action=tree';
+ } else {
+ return node.original.url;
+ }
+ }
+ }
+ }
+ });
+ if(parent.frames && parent.frames.detail) {
+ parent.frames.detail.jsTree=window.jsTree;
+ }
+
+ $('#lazy').on("activate_node.jstree", function (e, data) {
+ if (window.parent.frames.detail) {
+ window.parent.frames.detail.location.replace(data.node.a_attr.href);
+ }
+ });
+ $('#lazy').on("loaded.jstree", function (e, data) {
+ $('#lazy').data('jstree').show_dots();
+ });
+ $('#lazy').on('click','.jstree-anchor',function(){
+ console.log(this);
+ });
+ </script>
+
+ </body>
+
+</html> \ No newline at end of file
diff --git a/assets/templates/components/common_head.twig b/assets/templates/components/common_head.twig
index 925f5028..8c42716d 100644
--- a/assets/templates/components/common_head.twig
+++ b/assets/templates/components/common_head.twig
@@ -1,6 +1,7 @@
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-
- <link rel="stylesheet" href="{{subfolder}}/assets/themes/global.css" type="text/css" id="csstheme" />
+ <link rel="stylesheet/less" href="{{subfolder}}/assets/themes/global.less" type="text/css" id="cssmain" />
+ <script src="{{subfolder}}/assets/js/polyfills.js" type="text/javascript"></script>
+ <script src="{{subfolder}}/assets/js/less.min.js" type="text/javascript"></script>
<link rel="stylesheet" href="{{subfolder}}/assets/themes/{{theme}}/global.css" type="text/css" id="csstheme" />
<link rel="stylesheet" href="{{subfolder}}/assets/vendor/jquery/jquery-ui.min.css" type="text/css" />
<link rel="shortcut icon" href="{{Favicon}}" type="image/vnd.microsoft.icon" />
diff --git a/assets/templates/footer.twig b/assets/templates/footer.twig
index 6acdf593..835dcdd9 100644
--- a/assets/templates/footer.twig
+++ b/assets/templates/footer.twig
@@ -1,4 +1,7 @@
-{{ script_footer|raw }} {% if print_bottom_link == true %}
- <a data-footertemplate="{{ footer_template }}" href="#" class="bottom_link">{{ lang.strgotoppage }}</a>
-{% endif %}
-<script src="{{ subfolder }}/assets/js/footer_scripts.js" type="text/javascript"></script>
+{{script_footer|raw}} {% if print_bottom_link == true %}
+<a data-footertemplate="{{footer_template}}" href="#" class="bottom_link">{{lang.strgotoppage}}</a> {% endif %}
+<script src="{{subfolder}}/assets/js/footer_scripts.js" type="text/javascript"></script>
+
+</body>
+
+</html> \ No newline at end of file
diff --git a/assets/templates/footer_iframe.twig b/assets/templates/footer_iframe.twig
index 3469b3da..936f9bd1 100644
--- a/assets/templates/footer_iframe.twig
+++ b/assets/templates/footer_iframe.twig
@@ -1,13 +1,27 @@
<script type="text/javascript">
- var dir = '{{ lang.applangdir }}';
+var dir = '{{lang.applangdir}}';
- jQuery('#browser_container').resizable({ handles: (dir === 'ltr') ? "e" : "w", start: function () {
- jQuery('#masking_overlay').css('display', 'block'); }, stop: function () { jQuery('#masking_overlay').css('display',
- 'none'); }
+jQuery('#browser_container').resizable({
+ handles: (dir === 'ltr') ? "e" : "w",
+ start: function () {
+ jQuery('#masking_overlay').css('display', 'block');
+ },
+ stop: function () {
+ jQuery('#masking_overlay').css('display', 'none');
+ }
- });
+});
- window.onpopstate = function (event) { console.log('onpopstate', { state: event.state }); if (event.state &&
- event.state.realurl) { var ifr = document.getElementById('detail')
- ifr.contentWindow.location.replace(event.state.realurl); } };
+window.onpopstate = function (event) {
+ console.log('onpopstate', {
+ state: event.state
+ });
+ if (event.state && event.state.realurl) {
+ var ifr = document.getElementById('detail')
+ ifr.contentWindow.location.replace(event.state.realurl);
+ }
+};
</script>
+</body>
+
+</html> \ No newline at end of file
diff --git a/assets/templates/footer_sqledit.twig b/assets/templates/footer_sqledit.twig
index 0e41d6cf..8db64d45 100644
--- a/assets/templates/footer_sqledit.twig
+++ b/assets/templates/footer_sqledit.twig
@@ -1,6 +1,11 @@
<script type="text/javascript">
- CodeMirror.modeURL = "{{ subfolder }}/assets/vendor/codemirror/mode/%N/%N.js";
+CodeMirror.modeURL = "{{subfolder}}/assets/vendor/codemirror/mode/%N/%N.js";
</script>
-<script src="{{ subfolder }}/assets/js/codemirror/codemirror_footer.js" type="text/javascript"></script>
-<!-- <script src="{{subfolder}}/assets/js/footer_scripts.js" type="text/javascript"></script> -->
-<script src="{{ subfolder }}/assets/js/footer_sqledit.js" type="text/javascript"></script>
+<script src="{{subfolder}}/assets/js/codemirror/codemirror_footer.js" type="text/javascript"></script>
+<!--<script src="{{subfolder}}/assets/js/footer_scripts.js" type="text/javascript"></script>-->
+<script src="{{subfolder}}/assets/js/footer_sqledit.js" type="text/javascript"></script>
+
+
+</body>
+
+</html> \ No newline at end of file
diff --git a/assets/templates/header.twig b/assets/templates/header.twig
index 23760de8..040505ba 100644
--- a/assets/templates/header.twig
+++ b/assets/templates/header.twig
@@ -1,3 +1,8 @@
-<head data-headertemplate="{{ headertemplate }}">
- {% include 'components/common_head.twig' %}
-</head>
+<!DOCTYPE html>
+<html xml:lang="{{lang.applocale}}" lang="{{lang.applocale}}" dir="{{lang.applangdir}}">
+
+ <head data-headertemplate="{{headertemplate}}">
+ {% include 'components/common_head.twig' %}
+
+ </head>
+ \ No newline at end of file
diff --git a/assets/templates/header_datatables.twig b/assets/templates/header_datatables.twig
index d0e451af..32eaa73a 100644
--- a/assets/templates/header_datatables.twig
+++ b/assets/templates/header_datatables.twig
@@ -1,6 +1,9 @@
-<head data-headertemplate="{{ headertemplate }}">
- {% include 'components/common_head.twig' %}
+<!DOCTYPE html>
+<html xml:lang="{{lang.applocale}}" lang="{{lang.applocale}}" dir="{{lang.applangdir}}">
- <link rel="stylesheet" href="{{ subfolder }}/assets/vendor/datatables/datatables.min.css" type="text/css" />
- <script src="{{ subfolder }}/assets/vendor/datatables/datatables.min.js"></script>
-</head>
+ <head data-headertemplate="{{headertemplate}}">
+ {% include 'components/common_head.twig' %}
+
+ <link rel="stylesheet" href="{{subfolder}}/assets/vendor/datatables/datatables.min.css" type="text/css" />
+ <script src="{{subfolder}}/assets/vendor/datatables/datatables.min.js"></script>
+ </head> \ No newline at end of file
diff --git a/assets/templates/header_highlight.twig b/assets/templates/header_highlight.twig
index 624c0e51..7d7e9362 100644
--- a/assets/templates/header_highlight.twig
+++ b/assets/templates/header_highlight.twig
@@ -1,8 +1,9 @@
-<head data-headertemplate="{{ headertemplate }}">
- {% include 'components/common_head.twig' %}
+<!DOCTYPE html>
+<html xml:lang="{{lang.applocale}}" lang="{{lang.applocale}}" dir="{{lang.applangdir}}">
- <link rel="stylesheet"
- href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/default.min.css"
- type="text/css" />
- <script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/highlight.min.js"></script>
-</head>
+ <head data-headertemplate="{{headertemplate}}">
+ {% include 'components/common_head.twig' %}
+
+ <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/default.min.css" type="text/css" />
+ <script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/highlight.min.js"></script>
+ </head> \ No newline at end of file
diff --git a/assets/templates/header_select2.twig b/assets/templates/header_select2.twig
index 383e247d..8749a607 100644
--- a/assets/templates/header_select2.twig
+++ b/assets/templates/header_select2.twig
@@ -1,7 +1,10 @@
-<head data-headertemplate="{{ headertemplate }}">
- {% include 'components/common_head.twig' %}
+<!DOCTYPE html>
+<html xml:lang="{{lang.applocale}}" lang="{{lang.applocale}}" dir="{{lang.applangdir}}">
- <link rel="stylesheet" href="{{ subfolder }}/assets/vendor/select2/css/select2.css" type="text/css" />
- <script src="{{ subfolder }}/assets/vendor/select2/js/select2.full.min.js"></script>
- <script src="{{ subfolder }}/assets/vendor/select2/js/i18n/{{ lang.isolang }}.js"></script>
-</head>
+ <head data-headertemplate="{{headertemplate}}">
+ {% include 'components/common_head.twig' %}
+
+ <link rel="stylesheet" href="{{subfolder}}/assets/vendor/select2/css/select2.css" type="text/css" />
+ <script src="{{subfolder}}/assets/vendor/select2/js/select2.full.min.js"></script>
+ <script src="{{subfolder}}/assets/vendor/select2/js/i18n/{{lang.isolang}}.js"></script>
+ </head> \ No newline at end of file
diff --git a/assets/templates/header_sqledit.twig b/assets/templates/header_sqledit.twig
index 7ab07244..e783ee29 100644
--- a/assets/templates/header_sqledit.twig
+++ b/assets/templates/header_sqledit.twig
@@ -1,11 +1,19 @@
-<head data-headertemplate="{{ headertemplate }}">
- {% include 'components/common_head.twig' %}
- <link href="{{ subfolder }}/assets/vendor/codemirror/lib/codemirror.css" type="text/css" rel="stylesheet" />
- <script src="{{ subfolder }}/assets/vendor/codemirror/lib/codemirror.js"></script>
- <script src="{{ subfolder }}/assets/vendor/codemirror/addon/mode/loadmode.js"></script>
- <script src="{{ subfolder }}/assets/vendor/codemirror/mode/meta.js"></script>
-
- {#
+<!DOCTYPE html>
+<html xml:lang="{{lang.applocale}}" lang="{{lang.applocale}}" dir="{{dir}}">
+
+ <head data-headertemplate="{{headertemplate}}">
+
+
+
+ {% include 'components/common_head.twig' %}
+ <link href="{{subfolder}}/assets/vendor/codemirror/lib/codemirror.css" type="text/css" rel="stylesheet" />
+ <script src="{{subfolder}}/assets/vendor/codemirror/lib/codemirror.js"></script>
+ <script src="{{subfolder}}/assets/vendor/codemirror/addon/mode/loadmode.js"></script>
+ <script src="{{subfolder}}/assets/vendor/codemirror/mode/meta.js"></script>
+
+
+
+ {#
<link href="{{subfolder}}/assets/vendor/codemirror/addon/fold/foldgutter.css" type="text/css" rel="stylesheet" />
<link href="{{subfolder}}/assets/vendor/codemirror/addon/hint/show-hint.css" type="text/css" rel="stylesheet" />
<script src="{{subfolder}}/assets/vendor/codemirror/addon/hint/show-hint.js"></script>
@@ -36,4 +44,8 @@
#}
-</head>
+
+ </head>
+
+
+ \ No newline at end of file
diff --git a/assets/templates/iframe_view.twig b/assets/templates/iframe_view.twig
index c6cb5949..ee8f4d10 100644
--- a/assets/templates/iframe_view.twig
+++ b/assets/templates/iframe_view.twig
@@ -1,28 +1,18 @@
-<!DOCTYPE html>
-<html xml:lang="{{ lang.applocale }}" lang="{{ lang.applocale }}" dir="{{ lang.applangdir }}">
- {% include 'header.twig' %}
+{% include 'header.twig' %}
- <body class="flexbox_body {{ lang.applangdir }}">
+<body class="flexbox_body {{lang.applangdir}}">
<div class="flexbox_wrapper">
- <div id="masking_overlay"></div>
- <div id="browser_container">
- <iframe src="{{ subfolder }}/src/views/browser"
- name="browser"
- id="browser"
- class="browser_container"
- frameborder="0">
- <p>
- Your browser does not support iframes.
- </p>
+ <div id="masking_overlay"></div>
+ <div id="browser_container">
+
+ <iframe src="{{subfolder}}/src/views/browser" name="browser" id="browser" class="browser_container" frameborder="0" />
+ <p>Your browser does not support iframes.</p>
+ </iframe>
+ </div>
+
+ <iframe src="{{subfolder}}{{url}}" name="detail" id="detail" class="detail_container" frameborder="0" />
+ <p>Your browser does not support iframes.</p>
</iframe>
- </div>
- <iframe src="{{ subfolder }}{{ url }}" name="detail" id="detail" class="detail_container" frameborder="0">
- <p>
- Your browser does not support iframes.
- </p>
- </iframe>
</div>
- {% include 'footer_iframe.twig' %}
- </body>
-</html>
+ {% include 'footer_iframe.twig' %} \ No newline at end of file
diff --git a/composer-require-checker.json b/composer-require-checker.json
index b79d709c..9823e927 100644
--- a/composer-require-checker.json
+++ b/composer-require-checker.json
@@ -15,14 +15,19 @@
"string",
"true",
"void",
- "ADODB_postgres8",
- "ADORecordSet_assoc_postgres8",
- "ADORecordSet_postgres8",
- "dump",
- "PDO",
- "PHPPGA_SUBFOLDER",
- "Psr\\Http\\Message\\ResponseInterface",
- "requestInstance",
- "responseInstance"
- ]
-} \ No newline at end of file
+ "ADODB_postgres8",
+ "ADORecordSet_assoc_postgres8",
+ "ADORecordSet_postgres8",
+ "dump",
+ "PDO",
+ "PHP_SESSION_ACTIVE",
+ "session_id",
+ "session_name",
+ "session_set_cookie_params",
+ "session_start",
+ "session_status"
+
+ ],
+ "scan-files" : ["src/lib.inc.php", "router.php"]
+
+}
diff --git a/composer.json b/composer.json
index fb8121a1..9ae94629 100644
--- a/composer.json
+++ b/composer.json
@@ -15,15 +15,14 @@
],
"require": {
"php": ">=7.1",
- "ext-mbstring": "*",
- "ext-xml": "*",
"ext-json": "*",
+ "ext-mbstring": "*",
"ext-pgsql": "*",
+ "ext-xml": "*",
"adodb/adodb-php": "^5.20",
"slim/flash": "^0.4.0",
"slim/slim": "^3.6",
"slim/twig-view": "~2.5.1",
-
"symfony/yaml": "^5.0",
"twig/twig": "~1.42.4"
},
@@ -38,7 +37,6 @@
"ocramius/package-versions": "~1.4.0",
"php-parallel-lint/php-parallel-lint": "^1.2",
"phpstan/phpstan": "^0.12.14",
- "simpletest/simpletest": "^1.1",
"vimeo/psalm": "~3.9.3"
},
"extra": {
diff --git a/composer.lock b/composer.lock
index f2b9b40b..bf41db0f 100644
--- a/composer.lock
+++ b/composer.lock
@@ -4,20 +4,20 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
- "content-hash": "fba1ba7f899357b0d4f2c8001a47fa9f",
+ "content-hash": "247673104eedd38605a18e403d6d7d70",
"packages": [
{
"name": "adodb/adodb-php",
- "version": "v5.20.17",
+ "version": "v5.20.18",
"source": {
"type": "git",
"url": "https://github.com/ADOdb/ADOdb.git",
- "reference": "c47e5c272e98a06e1c92248b5d9d1ae0afe71c97"
+ "reference": "0363eca78eed8bd02d1456072c729da302655241"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/ADOdb/ADOdb/zipball/c47e5c272e98a06e1c92248b5d9d1ae0afe71c97",
- "reference": "c47e5c272e98a06e1c92248b5d9d1ae0afe71c97",
+ "url": "https://api.github.com/repos/ADOdb/ADOdb/zipball/0363eca78eed8bd02d1456072c729da302655241",
+ "reference": "0363eca78eed8bd02d1456072c729da302655241",
"shasum": ""
},
"require": {
@@ -58,7 +58,7 @@
"library",
"php"
],
- "time": "2020-03-31T17:32:58+00:00"
+ "time": "2020-06-28T17:52:20+00:00"
},
{
"name": "nikic/fast-route",
@@ -428,17 +428,67 @@
"time": "2019-11-28T18:03:50+00:00"
},
{
+ "name": "symfony/deprecation-contracts",
+ "version": "v2.2.0",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/deprecation-contracts.git",
+ "reference": "5fa56b4074d1ae755beb55617ddafe6f5d78f665"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/5fa56b4074d1ae755beb55617ddafe6f5d78f665",
+ "reference": "5fa56b4074d1ae755beb55617ddafe6f5d78f665",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=7.1"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "2.2-dev"
+ },
+ "thanks": {
+ "name": "symfony/contracts",
+ "url": "https://github.com/symfony/contracts"
+ }
+ },
+ "autoload": {
+ "files": [
+ "function.php"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Nicolas Grekas",
+ "email": "p@tchwork.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "description": "A generic function and convention to trigger deprecation notices",
+ "homepage": "https://symfony.com",
+ "time": "2020-09-07T11:33:47+00:00"
+ },
+ {
"name": "symfony/polyfill-ctype",
- "version": "v1.17.0",
+ "version": "v1.18.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-ctype.git",
- "reference": "e94c8b1bbe2bc77507a1056cdb06451c75b427f9"
+ "reference": "1c302646f6efc070cd46856e600e5e0684d6b454"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/e94c8b1bbe2bc77507a1056cdb06451c75b427f9",
- "reference": "e94c8b1bbe2bc77507a1056cdb06451c75b427f9",
+ "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/1c302646f6efc070cd46856e600e5e0684d6b454",
+ "reference": "1c302646f6efc070cd46856e600e5e0684d6b454",
"shasum": ""
},
"require": {
@@ -450,7 +500,11 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.17-dev"
+ "dev-master": "1.18-dev"
+ },
+ "thanks": {
+ "name": "symfony/polyfill",
+ "url": "https://github.com/symfony/polyfill"
}
},
"autoload": {
@@ -483,24 +537,25 @@
"polyfill",
"portable"
],
- "time": "2020-05-12T16:14:59+00:00"
+ "time": "2020-07-14T12:35:20+00:00"
},
{
"name": "symfony/yaml",
- "version": "v5.0.8",
+ "version": "v5.1.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/yaml.git",
- "reference": "482fb4e710e5af3e0e78015f19aa716ad953392f"
+ "reference": "e147a68cb66a8b510f4b7481fe4da5b2ab65ec6a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/yaml/zipball/482fb4e710e5af3e0e78015f19aa716ad953392f",
- "reference": "482fb4e710e5af3e0e78015f19aa716ad953392f",
+ "url": "https://api.github.com/repos/symfony/yaml/zipball/e147a68cb66a8b510f4b7481fe4da5b2ab65ec6a",
+ "reference": "e147a68cb66a8b510f4b7481fe4da5b2ab65ec6a",
"shasum": ""
},
"require": {
- "php": "^7.2.5",
+ "php": ">=7.2.5",
+ "symfony/deprecation-contracts": "^2.1",
"symfony/polyfill-ctype": "~1.8"
},
"conflict": {
@@ -512,10 +567,13 @@
"suggest": {
"symfony/console": "For validating YAML files using the lint command"
},
+ "bin": [
+ "Resources/bin/yaml-lint"
+ ],
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "5.0-dev"
+ "dev-master": "5.1-dev"
}
},
"autoload": {
@@ -542,7 +600,7 @@
],
"description": "Symfony Yaml Component",
"homepage": "https://symfony.com",
- "time": "2020-04-28T17:58:55+00:00"
+ "time": "2020-09-27T03:44:28+00:00"
},
{
"name": "twig/twig",
@@ -612,16 +670,16 @@
"packages-dev": [
{
"name": "amphp/amp",
- "version": "v2.4.4",
+ "version": "v2.5.0",
"source": {
"type": "git",
"url": "https://github.com/amphp/amp.git",
- "reference": "1e58d53e4af390efc7813e36cd215bd82cba4b06"
+ "reference": "f220a51458bf4dd0dedebb171ac3457813c72bbc"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/amphp/amp/zipball/1e58d53e4af390efc7813e36cd215bd82cba4b06",
- "reference": "1e58d53e4af390efc7813e36cd215bd82cba4b06",
+ "url": "https://api.github.com/repos/amphp/amp/zipball/f220a51458bf4dd0dedebb171ac3457813c72bbc",
+ "reference": "f220a51458bf4dd0dedebb171ac3457813c72bbc",
"shasum": ""
},
"require": {
@@ -633,8 +691,8 @@
"ext-json": "*",
"jetbrains/phpstorm-stubs": "^2019.3",
"phpunit/phpunit": "^6.0.9 | ^7",
- "react/promise": "^2",
- "vimeo/psalm": "^3.11@dev"
+ "psalm/phar": "^3.11@dev",
+ "react/promise": "^2"
},
"type": "library",
"extra": {
@@ -686,32 +744,33 @@
"non-blocking",
"promise"
],
- "time": "2020-04-30T04:54:50+00:00"
+ "time": "2020-07-14T21:47:18+00:00"
},
{
"name": "amphp/byte-stream",
- "version": "v1.7.3",
+ "version": "v1.8.0",
"source": {
"type": "git",
"url": "https://github.com/amphp/byte-stream.git",
- "reference": "b867505edb79dda8f253ca3c3a2bbadae4b16592"
+ "reference": "f0c20cf598a958ba2aa8c6e5a71c697d652c7088"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/amphp/byte-stream/zipball/b867505edb79dda8f253ca3c3a2bbadae4b16592",
- "reference": "b867505edb79dda8f253ca3c3a2bbadae4b16592",
+ "url": "https://api.github.com/repos/amphp/byte-stream/zipball/f0c20cf598a958ba2aa8c6e5a71c697d652c7088",
+ "reference": "f0c20cf598a958ba2aa8c6e5a71c697d652c7088",
"shasum": ""
},
"require": {
- "amphp/amp": "^2"
+ "amphp/amp": "^2",
+ "php": ">=7.1"
},
"require-dev": {
"amphp/php-cs-fixer-config": "dev-master",
- "amphp/phpunit-util": "^1",
+ "amphp/phpunit-util": "^1.4",
"friendsofphp/php-cs-fixer": "^2.3",
"jetbrains/phpstorm-stubs": "^2019.3",
"phpunit/phpunit": "^6 || ^7 || ^8",
- "vimeo/psalm": "^3.9@dev"
+ "psalm/phar": "^3.11.4"
},
"type": "library",
"extra": {
@@ -751,7 +810,7 @@
"non-blocking",
"stream"
],
- "time": "2020-04-04T16:56:54+00:00"
+ "time": "2020-06-29T18:35:05+00:00"
},
{
"name": "behat/gherkin",
@@ -814,16 +873,16 @@
},
{
"name": "codeception/codeception",
- "version": "4.1.5",
+ "version": "4.1.7",
"source": {
"type": "git",
"url": "https://github.com/Codeception/Codeception.git",
- "reference": "24f2345329b1059f1208f65581fc632a4a6e5a55"
+ "reference": "220ad18d3c192137d9dc2d0dd8d69a0d82083a26"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/Codeception/Codeception/zipball/24f2345329b1059f1208f65581fc632a4a6e5a55",
- "reference": "24f2345329b1059f1208f65581fc632a4a6e5a55",
+ "url": "https://api.github.com/repos/Codeception/Codeception/zipball/220ad18d3c192137d9dc2d0dd8d69a0d82083a26",
+ "reference": "220ad18d3c192137d9dc2d0dd8d69a0d82083a26",
"shasum": ""
},
"require": {
@@ -895,24 +954,25 @@
"functional testing",
"unit testing"
],
- "time": "2020-05-24T13:58:47+00:00"
+ "time": "2020-08-28T06:37:06+00:00"
},
{
"name": "codeception/lib-asserts",
- "version": "1.12.0",
+ "version": "1.13.1",
"source": {
"type": "git",
"url": "https://github.com/Codeception/lib-asserts.git",
- "reference": "acd0dc8b394595a74b58dcc889f72569ff7d8e71"
+ "reference": "263ef0b7eff80643e82f4cf55351eca553a09a10"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/Codeception/lib-asserts/zipball/acd0dc8b394595a74b58dcc889f72569ff7d8e71",
- "reference": "acd0dc8b394595a74b58dcc889f72569ff7d8e71",
+ "url": "https://api.github.com/repos/Codeception/lib-asserts/zipball/263ef0b7eff80643e82f4cf55351eca553a09a10",
+ "reference": "263ef0b7eff80643e82f4cf55351eca553a09a10",
"shasum": ""
},
"require": {
"codeception/phpunit-wrapper": ">6.0.15 <6.1.0 | ^6.6.1 | ^7.7.1 | ^8.0.3 | ^9.0",
+ "ext-dom": "*",
"php": ">=5.6.0 <8.0"
},
"type": "library",
@@ -933,32 +993,36 @@
},
{
"name": "Gintautas Miselis"
+ },
+ {
+ "name": "Gustavo Nieves",
+ "homepage": "https://medium.com/@ganieves"
}
],
"description": "Assertion methods used by Codeception core and Asserts module",
- "homepage": "http://codeception.com/",
+ "homepage": "https://codeception.com/",
"keywords": [
"codeception"
],
- "time": "2020-04-17T18:20:46+00:00"
+ "time": "2020-08-28T07:49:36+00:00"
},
{
"name": "codeception/module-asserts",
- "version": "1.2.1",
+ "version": "1.3.0",
"source": {
"type": "git",
"url": "https://github.com/Codeception/module-asserts.git",
- "reference": "79f13d05b63f2fceba4d0e78044bab668c9b2a6b"
+ "reference": "32e5be519faaeb60ed3692383dcd1b3390ec2667"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/Codeception/module-asserts/zipball/79f13d05b63f2fceba4d0e78044bab668c9b2a6b",
- "reference": "79f13d05b63f2fceba4d0e78044bab668c9b2a6b",
+ "url": "https://api.github.com/repos/Codeception/module-asserts/zipball/32e5be519faaeb60ed3692383dcd1b3390ec2667",
+ "reference": "32e5be519faaeb60ed3692383dcd1b3390ec2667",
"shasum": ""
},
"require": {
"codeception/codeception": "*@dev",
- "codeception/lib-asserts": "^1.12.0",
+ "codeception/lib-asserts": "^1.13.1",
"php": ">=5.6.0 <8.0"
},
"conflict": {
@@ -983,29 +1047,33 @@
},
{
"name": "Gintautas Miselis"
+ },
+ {
+ "name": "Gustavo Nieves",
+ "homepage": "https://medium.com/@ganieves"
}
],
"description": "Codeception module containing various assertions",
- "homepage": "http://codeception.com/",
+ "homepage": "https://codeception.com/",
"keywords": [
"assertions",
"asserts",
"codeception"
],
- "time": "2020-04-20T07:26:11+00:00"
+ "time": "2020-08-28T08:06:29+00:00"
},
{
"name": "codeception/phpunit-wrapper",
- "version": "9.0.2",
+ "version": "9.0.4",
"source": {
"type": "git",
"url": "https://github.com/Codeception/phpunit-wrapper.git",
- "reference": "eb27243d8edde68593bf8d9ef5e9074734777931"
+ "reference": "bb0925f1fe7a30105208352e619a11d6096e7047"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/Codeception/phpunit-wrapper/zipball/eb27243d8edde68593bf8d9ef5e9074734777931",
- "reference": "eb27243d8edde68593bf8d9ef5e9074734777931",
+ "url": "https://api.github.com/repos/Codeception/phpunit-wrapper/zipball/bb0925f1fe7a30105208352e619a11d6096e7047",
+ "reference": "bb0925f1fe7a30105208352e619a11d6096e7047",
"shasum": ""
},
"require": {
@@ -1036,20 +1104,20 @@
}
],
"description": "PHPUnit classes used by Codeception",
- "time": "2020-04-17T18:16:31+00:00"
+ "time": "2020-08-26T18:15:09+00:00"
},
{
"name": "codeception/stub",
- "version": "3.6.1",
+ "version": "3.7.0",
"source": {
"type": "git",
"url": "https://github.com/Codeception/Stub.git",
- "reference": "a3ba01414cbee76a1bced9f9b6b169cc8d203880"
+ "reference": "468dd5fe659f131fc997f5196aad87512f9b1304"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/Codeception/Stub/zipball/a3ba01414cbee76a1bced9f9b6b169cc8d203880",
- "reference": "a3ba01414cbee76a1bced9f9b6b169cc8d203880",
+ "url": "https://api.github.com/repos/Codeception/Stub/zipball/468dd5fe659f131fc997f5196aad87512f9b1304",
+ "reference": "468dd5fe659f131fc997f5196aad87512f9b1304",
"shasum": ""
},
"require": {
@@ -1066,20 +1134,20 @@
"MIT"
],
"description": "Flexible Stub wrapper for PHPUnit's Mock Builder",
- "time": "2020-02-07T18:42:28+00:00"
+ "time": "2020-07-03T15:54:43+00:00"
},
{
"name": "composer/semver",
- "version": "1.5.1",
+ "version": "1.7.1",
"source": {
"type": "git",
"url": "https://github.com/composer/semver.git",
- "reference": "c6bea70230ef4dd483e6bbcab6005f682ed3a8de"
+ "reference": "38276325bd896f90dfcfe30029aa5db40df387a7"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/composer/semver/zipball/c6bea70230ef4dd483e6bbcab6005f682ed3a8de",
- "reference": "c6bea70230ef4dd483e6bbcab6005f682ed3a8de",
+ "url": "https://api.github.com/repos/composer/semver/zipball/38276325bd896f90dfcfe30029aa5db40df387a7",
+ "reference": "38276325bd896f90dfcfe30029aa5db40df387a7",
"shasum": ""
},
"require": {
@@ -1127,20 +1195,20 @@
"validation",
"versioning"
],
- "time": "2020-01-13T12:06:48+00:00"
+ "time": "2020-09-27T13:13:07+00:00"
},
{
"name": "composer/xdebug-handler",
- "version": "1.4.1",
+ "version": "1.4.3",
"source": {
"type": "git",
"url": "https://github.com/composer/xdebug-handler.git",
- "reference": "1ab9842d69e64fb3a01be6b656501032d1b78cb7"
+ "reference": "ebd27a9866ae8254e873866f795491f02418c5a5"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/composer/xdebug-handler/zipball/1ab9842d69e64fb3a01be6b656501032d1b78cb7",
- "reference": "1ab9842d69e64fb3a01be6b656501032d1b78cb7",
+ "url": "https://api.github.com/repos/composer/xdebug-handler/zipball/ebd27a9866ae8254e873866f795491f02418c5a5",
+ "reference": "ebd27a9866ae8254e873866f795491f02418c5a5",
"shasum": ""
},
"require": {
@@ -1171,30 +1239,31 @@
"Xdebug",
"performance"
],
- "time": "2020-03-01T12:26:26+00:00"
+ "time": "2020-08-19T10:27:58+00:00"
},
{
"name": "doctrine/annotations",
- "version": "1.10.2",
+ "version": "1.10.4",
"source": {
"type": "git",
"url": "https://github.com/doctrine/annotations.git",
- "reference": "b9d758e831c70751155c698c2f7df4665314a1cb"
+ "reference": "bfe91e31984e2ba76df1c1339681770401ec262f"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/annotations/zipball/b9d758e831c70751155c698c2f7df4665314a1cb",
- "reference": "b9d758e831c70751155c698c2f7df4665314a1cb",
+ "url": "https://api.github.com/repos/doctrine/annotations/zipball/bfe91e31984e2ba76df1c1339681770401ec262f",
+ "reference": "bfe91e31984e2ba76df1c1339681770401ec262f",
"shasum": ""
},
"require": {
"doctrine/lexer": "1.*",
"ext-tokenizer": "*",
- "php": "^7.1"
+ "php": "^7.1 || ^8.0"
},
"require-dev": {
"doctrine/cache": "1.*",
- "phpunit/phpunit": "^7.5"
+ "phpstan/phpstan": "^0.12.20",
+ "phpunit/phpunit": "^7.5 || ^9.1.5"
},
"type": "library",
"extra": {
@@ -1240,24 +1309,24 @@
"docblock",
"parser"
],
- "time": "2020-04-20T09:18:32+00:00"
+ "time": "2020-08-10T19:35:50+00:00"
},
{
"name": "doctrine/instantiator",
- "version": "1.3.0",
+ "version": "1.3.1",
"source": {
"type": "git",
"url": "https://github.com/doctrine/instantiator.git",
- "reference": "ae466f726242e637cebdd526a7d991b9433bacf1"
+ "reference": "f350df0268e904597e3bd9c4685c53e0e333feea"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/instantiator/zipball/ae466f726242e637cebdd526a7d991b9433bacf1",
- "reference": "ae466f726242e637cebdd526a7d991b9433bacf1",
+ "url": "https://api.github.com/repos/doctrine/instantiator/zipball/f350df0268e904597e3bd9c4685c53e0e333feea",
+ "reference": "f350df0268e904597e3bd9c4685c53e0e333feea",
"shasum": ""
},
"require": {
- "php": "^7.1"
+ "php": "^7.1 || ^8.0"
},
"require-dev": {
"doctrine/coding-standard": "^6.0",
@@ -1296,24 +1365,24 @@
"constructor",
"instantiate"
],
- "time": "2019-10-21T16:45:58+00:00"
+ "time": "2020-05-29T17:27:14+00:00"
},
{
"name": "doctrine/lexer",
- "version": "1.2.0",
+ "version": "1.2.1",
"source": {
"type": "git",
"url": "https://github.com/doctrine/lexer.git",
- "reference": "5242d66dbeb21a30dd8a3e66bf7a73b66e05e1f6"
+ "reference": "e864bbf5904cb8f5bb334f99209b48018522f042"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/lexer/zipball/5242d66dbeb21a30dd8a3e66bf7a73b66e05e1f6",
- "reference": "5242d66dbeb21a30dd8a3e66bf7a73b66e05e1f6",
+ "url": "https://api.github.com/repos/doctrine/lexer/zipball/e864bbf5904cb8f5bb334f99209b48018522f042",
+ "reference": "e864bbf5904cb8f5bb334f99209b48018522f042",
"shasum": ""
},
"require": {
- "php": "^7.2"
+ "php": "^7.2 || ^8.0"
},
"require-dev": {
"doctrine/coding-standard": "^6.0",
@@ -1358,42 +1427,43 @@
"parser",
"php"
],
- "time": "2019-10-30T14:39:59+00:00"
+ "time": "2020-05-25T17:44:05+00:00"
},
{
"name": "ergebnis/composer-normalize",
- "version": "2.5.1",
+ "version": "2.8.2",
"source": {
"type": "git",
"url": "https://github.com/ergebnis/composer-normalize.git",
- "reference": "d0faf549e565757a7ffbf1f306a4293080e43bdd"
+ "reference": "0a25a226c5503659179c8ea440d1c76599e434fd"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/ergebnis/composer-normalize/zipball/d0faf549e565757a7ffbf1f306a4293080e43bdd",
- "reference": "d0faf549e565757a7ffbf1f306a4293080e43bdd",
+ "url": "https://api.github.com/repos/ergebnis/composer-normalize/zipball/0a25a226c5503659179c8ea440d1c76599e434fd",
+ "reference": "0a25a226c5503659179c8ea440d1c76599e434fd",
"shasum": ""
},
"require": {
"composer-plugin-api": "^1.1.0 || ^2.0.0",
- "ergebnis/json-normalizer": "~0.12.0",
- "ergebnis/json-printer": "^3.0.2",
- "localheinz/diff": "^1.0.1",
- "php": "^7.1"
+ "ergebnis/json-normalizer": "~0.13.1",
+ "ergebnis/json-printer": "^3.1.1",
+ "justinrainbow/json-schema": "^5.2.10",
+ "localheinz/diff": "^1.1.1",
+ "php": "^7.2 || ^8.0"
},
"require-dev": {
- "composer/composer": "^1.10.5 || ^2.0.0",
- "composer/package-versions-deprecated": "^1.8.0",
- "ergebnis/phpstan-rules": "~0.14.4",
- "ergebnis/test-util": "~1.0.0",
- "jangregor/phpstan-prophecy": "~0.6.2",
- "phpstan/extension-installer": "^1.0.4",
- "phpstan/phpstan": "~0.12.19",
- "phpstan/phpstan-deprecation-rules": "~0.12.2",
- "phpstan/phpstan-phpunit": "~0.12.8",
- "phpstan/phpstan-strict-rules": "~0.12.2",
- "phpunit/phpunit": "^7.5.20",
- "symfony/filesystem": "^4.4.8"
+ "composer/composer": "^1.10.13 || ^2.0.0",
+ "composer/package-versions-deprecated": "^1.11.99",
+ "ergebnis/phpstan-rules": "~0.15.2",
+ "ergebnis/test-util": "^1.1.0",
+ "jangregor/phpstan-prophecy": "~0.8.0",
+ "phpstan/extension-installer": "^1.0.5",
+ "phpstan/phpstan": "~0.12.43",
+ "phpstan/phpstan-deprecation-rules": "~0.12.5",
+ "phpstan/phpstan-phpunit": "~0.12.16",
+ "phpstan/phpstan-strict-rules": "~0.12.5",
+ "phpunit/phpunit": "^8.5.8",
+ "symfony/filesystem": "^5.1.5"
},
"type": "composer-plugin",
"extra": {
@@ -1422,43 +1492,43 @@
"normalizer",
"plugin"
],
- "time": "2020-05-01T12:02:09+00:00"
+ "time": "2020-09-22T09:55:49+00:00"
},
{
"name": "ergebnis/json-normalizer",
- "version": "0.12.0",
+ "version": "0.13.1",
"source": {
"type": "git",
"url": "https://github.com/ergebnis/json-normalizer.git",
- "reference": "0197447cd5d8f7e82116e904196a3e9f470655db"
+ "reference": "82897f7a0b6a896462a08ac02bee33ccf4ece0bb"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/ergebnis/json-normalizer/zipball/0197447cd5d8f7e82116e904196a3e9f470655db",
- "reference": "0197447cd5d8f7e82116e904196a3e9f470655db",
+ "url": "https://api.github.com/repos/ergebnis/json-normalizer/zipball/82897f7a0b6a896462a08ac02bee33ccf4ece0bb",
+ "reference": "82897f7a0b6a896462a08ac02bee33ccf4ece0bb",
"shasum": ""
},
"require": {
- "ergebnis/json-printer": "^3.0.2",
+ "ergebnis/json-printer": "^3.1.0",
"ext-json": "*",
- "justinrainbow/json-schema": "^4.0.0 || ^5.0.0",
- "php": "^7.1"
+ "justinrainbow/json-schema": "^5.2.10",
+ "php": "^7.2 || ^8.0"
},
"require-dev": {
- "ergebnis/license": "~0.1.0",
- "ergebnis/php-cs-fixer-config": "^2.1.2",
- "ergebnis/phpstan-rules": "~0.14.4",
- "ergebnis/test-util": "~1.0.0",
- "infection/infection": "~0.13.6",
- "jangregor/phpstan-prophecy": "~0.6.2",
+ "ergebnis/license": "^1.0.0",
+ "ergebnis/php-cs-fixer-config": "^2.2.1",
+ "ergebnis/phpstan-rules": "~0.15.2",
+ "ergebnis/test-util": "^1.1.0",
+ "infection/infection": "~0.15.3",
+ "jangregor/phpstan-prophecy": "~0.8.0",
"phpstan/extension-installer": "^1.0.4",
- "phpstan/phpstan": "~0.12.18",
- "phpstan/phpstan-deprecation-rules": "~0.12.2",
- "phpstan/phpstan-phpunit": "~0.12.8",
- "phpstan/phpstan-strict-rules": "~0.12.2",
- "phpunit/phpunit": "^7.5.20",
- "psalm/plugin-phpunit": "~0.10.0",
- "vimeo/psalm": "^3.11.2"
+ "phpstan/phpstan": "~0.12.40",
+ "phpstan/phpstan-deprecation-rules": "~0.12.5",
+ "phpstan/phpstan-phpunit": "~0.12.16",
+ "phpstan/phpstan-strict-rules": "~0.12.4",
+ "phpunit/phpunit": "^8.5.8",
+ "psalm/plugin-phpunit": "~0.11.0",
+ "vimeo/psalm": "^3.14.2"
},
"type": "library",
"autoload": {
@@ -1482,38 +1552,41 @@
"json",
"normalizer"
],
- "time": "2020-04-19T12:30:41+00:00"
+ "time": "2020-08-30T12:00:06+00:00"
},
{
"name": "ergebnis/json-printer",
- "version": "3.0.2",
+ "version": "3.1.1",
"source": {
"type": "git",
"url": "https://github.com/ergebnis/json-printer.git",
- "reference": "c7985dc4879777f2e4ab689da25bdd49f59dd2cb"
+ "reference": "e4190dadd9937a77d8afcaf2b6c42a528ab367d6"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/ergebnis/json-printer/zipball/c7985dc4879777f2e4ab689da25bdd49f59dd2cb",
- "reference": "c7985dc4879777f2e4ab689da25bdd49f59dd2cb",
+ "url": "https://api.github.com/repos/ergebnis/json-printer/zipball/e4190dadd9937a77d8afcaf2b6c42a528ab367d6",
+ "reference": "e4190dadd9937a77d8afcaf2b6c42a528ab367d6",
"shasum": ""
},
"require": {
"ext-json": "*",
"ext-mbstring": "*",
- "php": "^7.1"
+ "php": "^7.2 || ^8.0"
},
"require-dev": {
- "ergebnis/php-cs-fixer-config": "~1.1.1",
- "ergebnis/phpstan-rules": "~0.14.1",
- "ergebnis/test-util": "~0.9.0",
- "infection/infection": "~0.13.6",
- "phpbench/phpbench": "~0.16.10",
- "phpstan/extension-installer": "^1.0.3",
- "phpstan/phpstan": "~0.11.19",
- "phpstan/phpstan-deprecation-rules": "~0.11.2",
- "phpstan/phpstan-strict-rules": "~0.11.1",
- "phpunit/phpunit": "^7.5.18"
+ "ergebnis/license": "^1.0.0",
+ "ergebnis/php-cs-fixer-config": "^2.2.1",
+ "ergebnis/phpstan-rules": "~0.15.2",
+ "ergebnis/test-util": "^1.1.0",
+ "infection/infection": "~0.15.3",
+ "phpstan/extension-installer": "^1.0.4",
+ "phpstan/phpstan": "~0.12.40",
+ "phpstan/phpstan-deprecation-rules": "~0.12.5",
+ "phpstan/phpstan-phpunit": "~0.12.16",
+ "phpstan/phpstan-strict-rules": "~0.12.4",
+ "phpunit/phpunit": "^8.5.8",
+ "psalm/plugin-phpunit": "~0.11.0",
+ "vimeo/psalm": "^3.14.2"
},
"type": "library",
"autoload": {
@@ -1538,43 +1611,43 @@
"json",
"printer"
],
- "time": "2019-12-19T14:42:54+00:00"
+ "time": "2020-08-30T12:17:03+00:00"
},
{
"name": "ergebnis/php-cs-fixer-config",
- "version": "2.1.2",
+ "version": "2.2.2",
"source": {
"type": "git",
"url": "https://github.com/ergebnis/php-cs-fixer-config.git",
- "reference": "c811e48e106a6decc20b3e305629e11c515a772c"
+ "reference": "41f0fb497287797d54bd1f08c9287e33b743b4b9"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/ergebnis/php-cs-fixer-config/zipball/c811e48e106a6decc20b3e305629e11c515a772c",
- "reference": "c811e48e106a6decc20b3e305629e11c515a772c",
+ "url": "https://api.github.com/repos/ergebnis/php-cs-fixer-config/zipball/41f0fb497287797d54bd1f08c9287e33b743b4b9",
+ "reference": "41f0fb497287797d54bd1f08c9287e33b743b4b9",
"shasum": ""
},
"require": {
"ext-filter": "*",
- "friendsofphp/php-cs-fixer": "~2.16.3",
- "php": "^7.1"
+ "friendsofphp/php-cs-fixer": "~2.16.4",
+ "php": "^7.2"
},
"require-dev": {
- "ergebnis/composer-normalize": "^2.3.2",
- "ergebnis/license": "~0.1.0",
- "ergebnis/phpstan-rules": "~0.14.4",
- "ergebnis/test-util": "~1.0.0",
- "infection/infection": "~0.13.6",
- "jangregor/phpstan-prophecy": "~0.6.2",
- "phpstan/extension-installer": "^1.0.4",
- "phpstan/phpstan": "~0.12.18",
- "phpstan/phpstan-deprecation-rules": "~0.12.2",
- "phpstan/phpstan-phpunit": "~0.12.7",
- "phpstan/phpstan-strict-rules": "~0.12.2",
- "phpunit/phpunit": "^7.5.20",
- "psalm/plugin-phpunit": "~0.10.0",
+ "ergebnis/composer-normalize": "^2.7.1",
+ "ergebnis/license": "^1.1.0",
+ "ergebnis/phpstan-rules": "~0.15.2",
+ "ergebnis/test-util": "^1.1.0",
+ "infection/infection": "~0.15.3",
+ "jangregor/phpstan-prophecy": "~0.8.0",
+ "phpstan/extension-installer": "^1.0.5",
+ "phpstan/phpstan": "~0.12.40",
+ "phpstan/phpstan-deprecation-rules": "~0.12.5",
+ "phpstan/phpstan-phpunit": "~0.12.16",
+ "phpstan/phpstan-strict-rules": "~0.12.4",
+ "phpunit/phpunit": "^8.5.8",
+ "psalm/plugin-phpunit": "~0.11.0",
"symfony/filesystem": "^4.4.0",
- "vimeo/psalm": "^3.11.2"
+ "vimeo/psalm": "^3.14.2"
},
"type": "library",
"autoload": {
@@ -1594,7 +1667,7 @@
],
"description": "Provides a configuration factory and multiple rule sets for friendsofphp/php-cs-fixer.",
"homepage": "https://github.com/ergebnis/php-cs-fixer-config",
- "time": "2020-04-16T08:02:53+00:00"
+ "time": "2020-08-30T13:02:21+00:00"
},
{
"name": "felixfbecker/advanced-json-rpc",
@@ -1686,16 +1759,16 @@
},
{
"name": "filp/whoops",
- "version": "2.7.2",
+ "version": "2.7.3",
"source": {
"type": "git",
"url": "https://github.com/filp/whoops.git",
- "reference": "17d0d3f266c8f925ebd035cd36f83cf802b47d4a"
+ "reference": "5d5fe9bb3d656b514d455645b3addc5f7ba7714d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/filp/whoops/zipball/17d0d3f266c8f925ebd035cd36f83cf802b47d4a",
- "reference": "17d0d3f266c8f925ebd035cd36f83cf802b47d4a",
+ "url": "https://api.github.com/repos/filp/whoops/zipball/5d5fe9bb3d656b514d455645b3addc5f7ba7714d",
+ "reference": "5d5fe9bb3d656b514d455645b3addc5f7ba7714d",
"shasum": ""
},
"require": {
@@ -1743,20 +1816,20 @@
"throwable",
"whoops"
],
- "time": "2020-05-05T12:28:07+00:00"
+ "time": "2020-06-14T09:00:00+00:00"
},
{
"name": "friendsofphp/php-cs-fixer",
- "version": "v2.16.3",
+ "version": "v2.16.4",
"source": {
"type": "git",
"url": "https://github.com/FriendsOfPHP/PHP-CS-Fixer.git",
- "reference": "83baf823a33a1cbd5416c8626935cf3f843c10b0"
+ "reference": "1023c3458137ab052f6ff1e09621a721bfdeca13"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/FriendsOfPHP/PHP-CS-Fixer/zipball/83baf823a33a1cbd5416c8626935cf3f843c10b0",
- "reference": "83baf823a33a1cbd5416c8626935cf3f843c10b0",
+ "url": "https://api.github.com/repos/FriendsOfPHP/PHP-CS-Fixer/zipball/1023c3458137ab052f6ff1e09621a721bfdeca13",
+ "reference": "1023c3458137ab052f6ff1e09621a721bfdeca13",
"shasum": ""
},
"require": {
@@ -1788,12 +1861,12 @@
"php-cs-fixer/phpunit-constraint-xmlmatchesxsd": "^1.1",
"phpunit/phpunit": "^5.7.27 || ^6.5.14 || ^7.1",
"phpunitgoodpractices/traits": "^1.8",
- "symfony/phpunit-bridge": "^4.3 || ^5.0",
+ "symfony/phpunit-bridge": "^5.1",
"symfony/yaml": "^3.0 || ^4.0 || ^5.0"
},
"suggest": {
"ext-dom": "For handling output formats in XML",
- "ext-mbstring": "For handling non-UTF8 characters in cache signature.",
+ "ext-mbstring": "For handling non-UTF8 characters.",
"php-cs-fixer/phpunit-constraint-isidenticalstring": "For IsIdenticalString constraint.",
"php-cs-fixer/phpunit-constraint-xmlmatchesxsd": "For XmlMatchesXsd constraint.",
"symfony/polyfill-mbstring": "When enabling `ext-mbstring` is not possible."
@@ -1834,7 +1907,7 @@
}
],
"description": "A tool to automatically fix PHP code style",
- "time": "2020-04-15T18:51:10+00:00"
+ "time": "2020-06-27T23:57:46+00:00"
},
{
"name": "guzzlehttp/psr7",
@@ -1909,16 +1982,16 @@
},
{
"name": "justinrainbow/json-schema",
- "version": "5.2.9",
+ "version": "5.2.10",
"source": {
"type": "git",
"url": "https://github.com/justinrainbow/json-schema.git",
- "reference": "44c6787311242a979fa15c704327c20e7221a0e4"
+ "reference": "2ba9c8c862ecd5510ed16c6340aa9f6eadb4f31b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/justinrainbow/json-schema/zipball/44c6787311242a979fa15c704327c20e7221a0e4",
- "reference": "44c6787311242a979fa15c704327c20e7221a0e4",
+ "url": "https://api.github.com/repos/justinrainbow/json-schema/zipball/2ba9c8c862ecd5510ed16c6340aa9f6eadb4f31b",
+ "reference": "2ba9c8c862ecd5510ed16c6340aa9f6eadb4f31b",
"shasum": ""
},
"require": {
@@ -1971,7 +2044,7 @@
"json",
"schema"
],
- "time": "2019-09-25T14:49:45+00:00"
+ "time": "2020-05-27T16:41:55+00:00"
},
{
"name": "kint-php/kint",
@@ -2045,24 +2118,24 @@
},
{
"name": "localheinz/diff",
- "version": "1.0.1",
+ "version": "1.1.1",
"source": {
"type": "git",
"url": "https://github.com/localheinz/diff.git",
- "reference": "bd5661db4bbed26c6f25df8851fd9f4b424a356e"
+ "reference": "851bb20ea8358c86f677f5f111c4ab031b1c764c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/localheinz/diff/zipball/bd5661db4bbed26c6f25df8851fd9f4b424a356e",
- "reference": "bd5661db4bbed26c6f25df8851fd9f4b424a356e",
+ "url": "https://api.github.com/repos/localheinz/diff/zipball/851bb20ea8358c86f677f5f111c4ab031b1c764c",
+ "reference": "851bb20ea8358c86f677f5f111c4ab031b1c764c",
"shasum": ""
},
"require": {
- "php": "^7.1"
+ "php": "^7.1 || ^8.0"
},
"require-dev": {
"phpunit/phpunit": "^7.5 || ^8.0",
- "symfony/process": "^2 || ^3.3 || ^4"
+ "symfony/process": "^4.2 || ^5"
},
"type": "library",
"autoload": {
@@ -2085,31 +2158,31 @@
}
],
"description": "Fork of sebastian/diff for use with ergebnis/composer-normalize",
- "homepage": "https://github.com/sebastianbergmann/diff",
+ "homepage": "https://github.com/localheinz/diff",
"keywords": [
"diff",
"udiff",
"unidiff",
"unified diff"
],
- "time": "2019-12-17T07:42:37+00:00"
+ "time": "2020-07-06T04:49:32+00:00"
},
{
"name": "myclabs/deep-copy",
- "version": "1.9.5",
+ "version": "1.10.1",
"source": {
"type": "git",
"url": "https://github.com/myclabs/DeepCopy.git",
- "reference": "b2c28789e80a97badd14145fda39b545d83ca3ef"
+ "reference": "969b211f9a51aa1f6c01d1d2aef56d3bd91598e5"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/b2c28789e80a97badd14145fda39b545d83ca3ef",
- "reference": "b2c28789e80a97badd14145fda39b545d83ca3ef",
+ "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/969b211f9a51aa1f6c01d1d2aef56d3bd91598e5",
+ "reference": "969b211f9a51aa1f6c01d1d2aef56d3bd91598e5",
"shasum": ""
},
"require": {
- "php": "^7.1"
+ "php": "^7.1 || ^8.0"
},
"replace": {
"myclabs/deep-copy": "self.version"
@@ -2140,7 +2213,7 @@
"object",
"object graph"
],
- "time": "2020-01-17T21:11:47+00:00"
+ "time": "2020-06-29T13:22:24+00:00"
},
{
"name": "netresearch/jsonmapper",
@@ -2190,16 +2263,16 @@
},
{
"name": "nikic/php-parser",
- "version": "v4.4.0",
+ "version": "v4.10.2",
"source": {
"type": "git",
"url": "https://github.com/nikic/PHP-Parser.git",
- "reference": "bd43ec7152eaaab3bd8c6d0aa95ceeb1df8ee120"
+ "reference": "658f1be311a230e0907f5dfe0213742aff0596de"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/bd43ec7152eaaab3bd8c6d0aa95ceeb1df8ee120",
- "reference": "bd43ec7152eaaab3bd8c6d0aa95ceeb1df8ee120",
+ "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/658f1be311a230e0907f5dfe0213742aff0596de",
+ "reference": "658f1be311a230e0907f5dfe0213742aff0596de",
"shasum": ""
},
"require": {
@@ -2207,8 +2280,8 @@
"php": ">=7.0"
},
"require-dev": {
- "ircmaxell/php-yacc": "0.0.5",
- "phpunit/phpunit": "^6.5 || ^7.0 || ^8.0"
+ "ircmaxell/php-yacc": "^0.0.7",
+ "phpunit/phpunit": "^6.5 || ^7.0 || ^8.0 || ^9.0"
},
"bin": [
"bin/php-parse"
@@ -2216,7 +2289,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "4.3-dev"
+ "dev-master": "4.9-dev"
}
},
"autoload": {
@@ -2238,7 +2311,7 @@
"parser",
"php"
],
- "time": "2020-04-10T16:34:50+00:00"
+ "time": "2020-09-26T10:30:38+00:00"
},
{
"name": "ocramius/package-versions",
@@ -2386,28 +2459,29 @@
},
{
"name": "phar-io/manifest",
- "version": "1.0.3",
+ "version": "2.0.1",
"source": {
"type": "git",
"url": "https://github.com/phar-io/manifest.git",
- "reference": "7761fcacf03b4d4f16e7ccb606d4879ca431fcf4"
+ "reference": "85265efd3af7ba3ca4b2a2c34dbfc5788dd29133"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phar-io/manifest/zipball/7761fcacf03b4d4f16e7ccb606d4879ca431fcf4",
- "reference": "7761fcacf03b4d4f16e7ccb606d4879ca431fcf4",
+ "url": "https://api.github.com/repos/phar-io/manifest/zipball/85265efd3af7ba3ca4b2a2c34dbfc5788dd29133",
+ "reference": "85265efd3af7ba3ca4b2a2c34dbfc5788dd29133",
"shasum": ""
},
"require": {
"ext-dom": "*",
"ext-phar": "*",
- "phar-io/version": "^2.0",
- "php": "^5.6 || ^7.0"
+ "ext-xmlwriter": "*",
+ "phar-io/version": "^3.0.1",
+ "php": "^7.2 || ^8.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.0.x-dev"
+ "dev-master": "2.0.x-dev"
}
},
"autoload": {
@@ -2437,24 +2511,24 @@
}
],
"description": "Component for reading phar.io manifest information from a PHP Archive (PHAR)",
- "time": "2018-07-08T19:23:20+00:00"
+ "time": "2020-06-27T14:33:11+00:00"
},
{
"name": "phar-io/version",
- "version": "2.0.1",
+ "version": "3.0.2",
"source": {
"type": "git",
"url": "https://github.com/phar-io/version.git",
- "reference": "45a2ec53a73c70ce41d55cedef9063630abaf1b6"
+ "reference": "c6bb6825def89e0a32220f88337f8ceaf1975fa0"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phar-io/version/zipball/45a2ec53a73c70ce41d55cedef9063630abaf1b6",
- "reference": "45a2ec53a73c70ce41d55cedef9063630abaf1b6",
+ "url": "https://api.github.com/repos/phar-io/version/zipball/c6bb6825def89e0a32220f88337f8ceaf1975fa0",
+ "reference": "c6bb6825def89e0a32220f88337f8ceaf1975fa0",
"shasum": ""
},
"require": {
- "php": "^5.6 || ^7.0"
+ "php": "^7.2 || ^8.0"
},
"type": "library",
"autoload": {
@@ -2484,7 +2558,7 @@
}
],
"description": "Library for handling version information and constraints",
- "time": "2018-07-08T19:19:57+00:00"
+ "time": "2020-06-27T14:39:04+00:00"
},
{
"name": "php-cs-fixer/diff",
@@ -2592,25 +2666,25 @@
},
{
"name": "phpdocumentor/reflection-common",
- "version": "2.1.0",
+ "version": "2.2.0",
"source": {
"type": "git",
"url": "https://github.com/phpDocumentor/ReflectionCommon.git",
- "reference": "6568f4687e5b41b054365f9ae03fcb1ed5f2069b"
+ "reference": "1d01c49d4ed62f25aa84a747ad35d5a16924662b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/6568f4687e5b41b054365f9ae03fcb1ed5f2069b",
- "reference": "6568f4687e5b41b054365f9ae03fcb1ed5f2069b",
+ "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/1d01c49d4ed62f25aa84a747ad35d5a16924662b",
+ "reference": "1d01c49d4ed62f25aa84a747ad35d5a16924662b",
"shasum": ""
},
"require": {
- "php": ">=7.1"
+ "php": "^7.2 || ^8.0"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.x-dev"
+ "dev-2.x": "2.x-dev"
}
},
"autoload": {
@@ -2637,32 +2711,31 @@
"reflection",
"static analysis"
],
- "time": "2020-04-27T09:25:28+00:00"
+ "time": "2020-06-27T09:03:43+00:00"
},
{
"name": "phpdocumentor/reflection-docblock",
- "version": "5.1.0",
+ "version": "5.2.2",
"source": {
"type": "git",
"url": "https://github.com/phpDocumentor/ReflectionDocBlock.git",
- "reference": "cd72d394ca794d3466a3b2fc09d5a6c1dc86b47e"
+ "reference": "069a785b2141f5bcf49f3e353548dc1cce6df556"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/cd72d394ca794d3466a3b2fc09d5a6c1dc86b47e",
- "reference": "cd72d394ca794d3466a3b2fc09d5a6c1dc86b47e",
+ "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/069a785b2141f5bcf49f3e353548dc1cce6df556",
+ "reference": "069a785b2141f5bcf49f3e353548dc1cce6df556",
"shasum": ""
},
"require": {
- "ext-filter": "^7.1",
- "php": "^7.2",
- "phpdocumentor/reflection-common": "^2.0",
- "phpdocumentor/type-resolver": "^1.0",
- "webmozart/assert": "^1"
+ "ext-filter": "*",
+ "php": "^7.2 || ^8.0",
+ "phpdocumentor/reflection-common": "^2.2",
+ "phpdocumentor/type-resolver": "^1.3",
+ "webmozart/assert": "^1.9.1"
},
"require-dev": {
- "doctrine/instantiator": "^1",
- "mockery/mockery": "^1"
+ "mockery/mockery": "~1.3.2"
},
"type": "library",
"extra": {
@@ -2690,34 +2763,33 @@
}
],
"description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.",
- "time": "2020-02-22T12:28:44+00:00"
+ "time": "2020-09-03T19:13:55+00:00"
},
{
"name": "phpdocumentor/type-resolver",
- "version": "1.1.0",
+ "version": "1.4.0",
"source": {
"type": "git",
"url": "https://github.com/phpDocumentor/TypeResolver.git",
- "reference": "7462d5f123dfc080dfdf26897032a6513644fc95"
+ "reference": "6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/7462d5f123dfc080dfdf26897032a6513644fc95",
- "reference": "7462d5f123dfc080dfdf26897032a6513644fc95",
+ "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0",
+ "reference": "6a467b8989322d92aa1c8bf2bebcc6e5c2ba55c0",
"shasum": ""
},
"require": {
- "php": "^7.2",
+ "php": "^7.2 || ^8.0",
"phpdocumentor/reflection-common": "^2.0"
},
"require-dev": {
- "ext-tokenizer": "^7.2",
- "mockery/mockery": "~1"
+ "ext-tokenizer": "*"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.x-dev"
+ "dev-1.x": "1.x-dev"
}
},
"autoload": {
@@ -2736,37 +2808,37 @@
}
],
"description": "A PSR-5 based resolver of Class names, Types and Structural Element Names",
- "time": "2020-02-18T18:59:58+00:00"
+ "time": "2020-09-17T18:55:26+00:00"
},
{
"name": "phpspec/prophecy",
- "version": "v1.10.3",
+ "version": "1.12.1",
"source": {
"type": "git",
"url": "https://github.com/phpspec/prophecy.git",
- "reference": "451c3cd1418cf640de218914901e51b064abb093"
+ "reference": "8ce87516be71aae9b956f81906aaf0338e0d8a2d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpspec/prophecy/zipball/451c3cd1418cf640de218914901e51b064abb093",
- "reference": "451c3cd1418cf640de218914901e51b064abb093",
+ "url": "https://api.github.com/repos/phpspec/prophecy/zipball/8ce87516be71aae9b956f81906aaf0338e0d8a2d",
+ "reference": "8ce87516be71aae9b956f81906aaf0338e0d8a2d",
"shasum": ""
},
"require": {
- "doctrine/instantiator": "^1.0.2",
- "php": "^5.3|^7.0",
- "phpdocumentor/reflection-docblock": "^2.0|^3.0.2|^4.0|^5.0",
- "sebastian/comparator": "^1.2.3|^2.0|^3.0|^4.0",
- "sebastian/recursion-context": "^1.0|^2.0|^3.0|^4.0"
+ "doctrine/instantiator": "^1.2",
+ "php": "^7.2 || ~8.0, <8.1",
+ "phpdocumentor/reflection-docblock": "^5.2",
+ "sebastian/comparator": "^3.0 || ^4.0",
+ "sebastian/recursion-context": "^3.0 || ^4.0"
},
"require-dev": {
- "phpspec/phpspec": "^2.5 || ^3.2",
- "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.5 || ^7.1"
+ "phpspec/phpspec": "^6.0",
+ "phpunit/phpunit": "^8.0 || ^9.0 <9.3"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.10.x-dev"
+ "dev-master": "1.11.x-dev"
}
},
"autoload": {
@@ -2799,24 +2871,24 @@
"spy",
"stub"
],
- "time": "2020-03-05T15:02:03+00:00"
+ "time": "2020-09-29T09:10:42+00:00"
},
{
"name": "phpstan/phpstan",
- "version": "0.12.25",
+ "version": "0.12.46",
"source": {
"type": "git",
"url": "https://github.com/phpstan/phpstan.git",
- "reference": "9619551d68b2d4c0d681a8df73f3c847c798ee64"
+ "reference": "9419738e20f0c49757be05d22969c1c44c1dff3b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpstan/phpstan/zipball/9619551d68b2d4c0d681a8df73f3c847c798ee64",
- "reference": "9619551d68b2d4c0d681a8df73f3c847c798ee64",
+ "url": "https://api.github.com/repos/phpstan/phpstan/zipball/9419738e20f0c49757be05d22969c1c44c1dff3b",
+ "reference": "9419738e20f0c49757be05d22969c1c44c1dff3b",
"shasum": ""
},
"require": {
- "php": "^7.1"
+ "php": "^7.1|^8.0"
},
"conflict": {
"phpstan/phpstan-shim": "*"
@@ -2841,36 +2913,39 @@
"MIT"
],
"description": "PHPStan - PHP Static Analysis Tool",
- "time": "2020-05-10T20:36:16+00:00"
+ "time": "2020-09-28T09:48:55+00:00"
},
{
"name": "phpunit/php-code-coverage",
- "version": "8.0.2",
+ "version": "9.1.11",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-code-coverage.git",
- "reference": "ca6647ffddd2add025ab3f21644a441d7c146cdc"
+ "reference": "c9394cb9d07ecfa9351b96f2e296bad473195f4d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/ca6647ffddd2add025ab3f21644a441d7c146cdc",
- "reference": "ca6647ffddd2add025ab3f21644a441d7c146cdc",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/c9394cb9d07ecfa9351b96f2e296bad473195f4d",
+ "reference": "c9394cb9d07ecfa9351b96f2e296bad473195f4d",
"shasum": ""
},
"require": {
"ext-dom": "*",
+ "ext-libxml": "*",
"ext-xmlwriter": "*",
- "php": "^7.3",
- "phpunit/php-file-iterator": "^3.0",
- "phpunit/php-text-template": "^2.0",
- "phpunit/php-token-stream": "^4.0",
- "sebastian/code-unit-reverse-lookup": "^2.0",
- "sebastian/environment": "^5.0",
- "sebastian/version": "^3.0",
- "theseer/tokenizer": "^1.1.3"
+ "nikic/php-parser": "^4.8",
+ "php": ">=7.3",
+ "phpunit/php-file-iterator": "^3.0.3",
+ "phpunit/php-text-template": "^2.0.2",
+ "sebastian/code-unit-reverse-lookup": "^2.0.2",
+ "sebastian/complexity": "^2.0",
+ "sebastian/environment": "^5.1.2",
+ "sebastian/lines-of-code": "^1.0",
+ "sebastian/version": "^3.0.1",
+ "theseer/tokenizer": "^1.2.0"
},
"require-dev": {
- "phpunit/phpunit": "^9.0"
+ "phpunit/phpunit": "^9.3"
},
"suggest": {
"ext-pcov": "*",
@@ -2879,7 +2954,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "8.0-dev"
+ "dev-master": "9.1-dev"
}
},
"autoload": {
@@ -2905,27 +2980,27 @@
"testing",
"xunit"
],
- "time": "2020-05-23T08:02:54+00:00"
+ "time": "2020-09-19T05:29:17+00:00"
},
{
"name": "phpunit/php-file-iterator",
- "version": "3.0.1",
+ "version": "3.0.5",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-file-iterator.git",
- "reference": "4ac5b3e13df14829daa60a2eb4fdd2f2b7d33cf4"
+ "reference": "aa4be8575f26070b100fccb67faabb28f21f66f8"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/4ac5b3e13df14829daa60a2eb4fdd2f2b7d33cf4",
- "reference": "4ac5b3e13df14829daa60a2eb4fdd2f2b7d33cf4",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/aa4be8575f26070b100fccb67faabb28f21f66f8",
+ "reference": "aa4be8575f26070b100fccb67faabb28f21f66f8",
"shasum": ""
},
"require": {
- "php": "^7.3"
+ "php": ">=7.3"
},
"require-dev": {
- "phpunit/phpunit": "^9.0"
+ "phpunit/phpunit": "^9.3"
},
"type": "library",
"extra": {
@@ -2955,28 +3030,28 @@
"filesystem",
"iterator"
],
- "time": "2020-04-18T05:02:12+00:00"
+ "time": "2020-09-28T05:57:25+00:00"
},
{
"name": "phpunit/php-invoker",
- "version": "3.0.0",
+ "version": "3.1.1",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-invoker.git",
- "reference": "7579d5a1ba7f3ac11c80004d205877911315ae7a"
+ "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/7579d5a1ba7f3ac11c80004d205877911315ae7a",
- "reference": "7579d5a1ba7f3ac11c80004d205877911315ae7a",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/5a10147d0aaf65b58940a0b72f71c9ac0423cc67",
+ "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67",
"shasum": ""
},
"require": {
- "php": "^7.3"
+ "php": ">=7.3"
},
"require-dev": {
"ext-pcntl": "*",
- "phpunit/phpunit": "^9.0"
+ "phpunit/phpunit": "^9.3"
},
"suggest": {
"ext-pcntl": "*"
@@ -2984,7 +3059,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.0-dev"
+ "dev-master": "3.1-dev"
}
},
"autoload": {
@@ -3008,24 +3083,27 @@
"keywords": [
"process"
],
- "time": "2020-02-07T06:06:11+00:00"
+ "time": "2020-09-28T05:58:55+00:00"
},
{
"name": "phpunit/php-text-template",
- "version": "2.0.0",
+ "version": "2.0.3",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-text-template.git",
- "reference": "526dc996cc0ebdfa428cd2dfccd79b7b53fee346"
+ "reference": "18c887016e60e52477e54534956d7b47bc52cd84"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/526dc996cc0ebdfa428cd2dfccd79b7b53fee346",
- "reference": "526dc996cc0ebdfa428cd2dfccd79b7b53fee346",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/18c887016e60e52477e54534956d7b47bc52cd84",
+ "reference": "18c887016e60e52477e54534956d7b47bc52cd84",
"shasum": ""
},
"require": {
- "php": "^7.3"
+ "php": ">=7.3"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^9.3"
},
"type": "library",
"extra": {
@@ -3054,32 +3132,32 @@
"keywords": [
"template"
],
- "time": "2020-02-01T07:43:44+00:00"
+ "time": "2020-09-28T06:03:05+00:00"
},
{
"name": "phpunit/php-timer",
- "version": "3.1.4",
+ "version": "5.0.2",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/php-timer.git",
- "reference": "dc9368fae6ef2ffa57eba80a7410bcef81df6258"
+ "reference": "c9ff14f493699e2f6adee9fd06a0245b276643b7"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/dc9368fae6ef2ffa57eba80a7410bcef81df6258",
- "reference": "dc9368fae6ef2ffa57eba80a7410bcef81df6258",
+ "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/c9ff14f493699e2f6adee9fd06a0245b276643b7",
+ "reference": "c9ff14f493699e2f6adee9fd06a0245b276643b7",
"shasum": ""
},
"require": {
- "php": "^7.3"
+ "php": ">=7.3"
},
"require-dev": {
- "phpunit/phpunit": "^9.0"
+ "phpunit/phpunit": "^9.3"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "3.1-dev"
+ "dev-master": "5.0-dev"
}
},
"autoload": {
@@ -3103,103 +3181,55 @@
"keywords": [
"timer"
],
- "time": "2020-04-20T06:00:37+00:00"
- },
- {
- "name": "phpunit/php-token-stream",
- "version": "4.0.1",
- "source": {
- "type": "git",
- "url": "https://github.com/sebastianbergmann/php-token-stream.git",
- "reference": "cdc0db5aed8fbfaf475fbd95bfd7bab83c7a779c"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/cdc0db5aed8fbfaf475fbd95bfd7bab83c7a779c",
- "reference": "cdc0db5aed8fbfaf475fbd95bfd7bab83c7a779c",
- "shasum": ""
- },
- "require": {
- "ext-tokenizer": "*",
- "php": "^7.3"
- },
- "require-dev": {
- "phpunit/phpunit": "^9.0"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "4.0-dev"
- }
- },
- "autoload": {
- "classmap": [
- "src/"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "BSD-3-Clause"
- ],
- "authors": [
- {
- "name": "Sebastian Bergmann",
- "email": "sebastian@phpunit.de"
- }
- ],
- "description": "Wrapper around PHP's tokenizer extension.",
- "homepage": "https://github.com/sebastianbergmann/php-token-stream/",
- "keywords": [
- "tokenizer"
- ],
- "time": "2020-05-06T09:56:31+00:00"
+ "time": "2020-09-28T06:00:25+00:00"
},
{
"name": "phpunit/phpunit",
- "version": "9.1.5",
+ "version": "9.3.11",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/phpunit.git",
- "reference": "1b570cd7edbe136055bf5f651857dc8af6b829d2"
+ "reference": "f7316ea106df7c9507f4fdaa88c47bc10a3b27a1"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/1b570cd7edbe136055bf5f651857dc8af6b829d2",
- "reference": "1b570cd7edbe136055bf5f651857dc8af6b829d2",
+ "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/f7316ea106df7c9507f4fdaa88c47bc10a3b27a1",
+ "reference": "f7316ea106df7c9507f4fdaa88c47bc10a3b27a1",
"shasum": ""
},
"require": {
- "doctrine/instantiator": "^1.2.0",
+ "doctrine/instantiator": "^1.3.1",
"ext-dom": "*",
"ext-json": "*",
"ext-libxml": "*",
"ext-mbstring": "*",
"ext-xml": "*",
"ext-xmlwriter": "*",
- "myclabs/deep-copy": "^1.9.1",
- "phar-io/manifest": "^1.0.3",
- "phar-io/version": "^2.0.1",
- "php": "^7.3",
- "phpspec/prophecy": "^1.8.1",
- "phpunit/php-code-coverage": "^8.0.1",
- "phpunit/php-file-iterator": "^3.0",
- "phpunit/php-invoker": "^3.0",
- "phpunit/php-text-template": "^2.0",
- "phpunit/php-timer": "^3.1.4",
- "sebastian/code-unit": "^1.0.2",
- "sebastian/comparator": "^4.0",
- "sebastian/diff": "^4.0",
- "sebastian/environment": "^5.0.1",
- "sebastian/exporter": "^4.0",
- "sebastian/global-state": "^4.0",
- "sebastian/object-enumerator": "^4.0",
- "sebastian/resource-operations": "^3.0",
- "sebastian/type": "^2.0",
- "sebastian/version": "^3.0"
+ "myclabs/deep-copy": "^1.10.1",
+ "phar-io/manifest": "^2.0.1",
+ "phar-io/version": "^3.0.2",
+ "php": ">=7.3",
+ "phpspec/prophecy": "^1.11.1",
+ "phpunit/php-code-coverage": "^9.1.11",
+ "phpunit/php-file-iterator": "^3.0.4",
+ "phpunit/php-invoker": "^3.1",
+ "phpunit/php-text-template": "^2.0.2",
+ "phpunit/php-timer": "^5.0.1",
+ "sebastian/cli-parser": "^1.0",
+ "sebastian/code-unit": "^1.0.5",
+ "sebastian/comparator": "^4.0.3",
+ "sebastian/diff": "^4.0.2",
+ "sebastian/environment": "^5.1.2",
+ "sebastian/exporter": "^4.0.2",
+ "sebastian/global-state": "^5.0",
+ "sebastian/object-enumerator": "^4.0.2",
+ "sebastian/resource-operations": "^3.0.2",
+ "sebastian/type": "^2.2.1",
+ "sebastian/version": "^3.0.1"
},
"require-dev": {
"ext-pdo": "*",
- "phpspec/prophecy-phpunit": "^2.0"
+ "phpspec/prophecy-phpunit": "^2.0.1"
},
"suggest": {
"ext-soap": "*",
@@ -3211,7 +3241,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "9.1-dev"
+ "dev-master": "9.3-dev"
}
},
"autoload": {
@@ -3240,7 +3270,7 @@
"testing",
"xunit"
],
- "time": "2020-05-22T13:54:05+00:00"
+ "time": "2020-09-24T08:08:49+00:00"
},
{
"name": "psr/event-dispatcher",
@@ -3376,24 +3406,70 @@
"time": "2019-03-08T08:55:37+00:00"
},
{
+ "name": "sebastian/cli-parser",
+ "version": "1.0.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/cli-parser.git",
+ "reference": "442e7c7e687e42adc03470c7b668bc4b2402c0b2"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/442e7c7e687e42adc03470c7b668bc4b2402c0b2",
+ "reference": "442e7c7e687e42adc03470c7b668bc4b2402c0b2",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=7.3"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^9.3"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.0-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de",
+ "role": "lead"
+ }
+ ],
+ "description": "Library for parsing CLI options",
+ "homepage": "https://github.com/sebastianbergmann/cli-parser",
+ "time": "2020-09-28T06:08:49+00:00"
+ },
+ {
"name": "sebastian/code-unit",
- "version": "1.0.2",
+ "version": "1.0.6",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/code-unit.git",
- "reference": "ac958085bc19fcd1d36425c781ef4cbb5b06e2a5"
+ "reference": "d3a241b6028ff9d8e97d2b6ebd4090d01f92fad8"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/code-unit/zipball/ac958085bc19fcd1d36425c781ef4cbb5b06e2a5",
- "reference": "ac958085bc19fcd1d36425c781ef4cbb5b06e2a5",
+ "url": "https://api.github.com/repos/sebastianbergmann/code-unit/zipball/d3a241b6028ff9d8e97d2b6ebd4090d01f92fad8",
+ "reference": "d3a241b6028ff9d8e97d2b6ebd4090d01f92fad8",
"shasum": ""
},
"require": {
- "php": "^7.3"
+ "php": ">=7.3"
},
"require-dev": {
- "phpunit/phpunit": "^9.0"
+ "phpunit/phpunit": "^9.3"
},
"type": "library",
"extra": {
@@ -3419,27 +3495,27 @@
],
"description": "Collection of value objects that represent the PHP code units",
"homepage": "https://github.com/sebastianbergmann/code-unit",
- "time": "2020-04-30T05:58:10+00:00"
+ "time": "2020-09-28T05:28:46+00:00"
},
{
"name": "sebastian/code-unit-reverse-lookup",
- "version": "2.0.0",
+ "version": "2.0.3",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git",
- "reference": "5b5dbe0044085ac41df47e79d34911a15b96d82e"
+ "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/5b5dbe0044085ac41df47e79d34911a15b96d82e",
- "reference": "5b5dbe0044085ac41df47e79d34911a15b96d82e",
+ "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5",
+ "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5",
"shasum": ""
},
"require": {
- "php": "^7.3"
+ "php": ">=7.3"
},
"require-dev": {
- "phpunit/phpunit": "^9.0"
+ "phpunit/phpunit": "^9.3"
},
"type": "library",
"extra": {
@@ -3464,29 +3540,29 @@
],
"description": "Looks up which function or method a line of code belongs to",
"homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/",
- "time": "2020-02-07T06:20:13+00:00"
+ "time": "2020-09-28T05:30:19+00:00"
},
{
"name": "sebastian/comparator",
- "version": "4.0.0",
+ "version": "4.0.4",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/comparator.git",
- "reference": "85b3435da967696ed618ff745f32be3ff4a2b8e8"
+ "reference": "e717aabeafe4eac045d3e947dad3207118664c72"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/85b3435da967696ed618ff745f32be3ff4a2b8e8",
- "reference": "85b3435da967696ed618ff745f32be3ff4a2b8e8",
+ "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/e717aabeafe4eac045d3e947dad3207118664c72",
+ "reference": "e717aabeafe4eac045d3e947dad3207118664c72",
"shasum": ""
},
"require": {
- "php": "^7.3",
+ "php": ">=7.3",
"sebastian/diff": "^4.0",
"sebastian/exporter": "^4.0"
},
"require-dev": {
- "phpunit/phpunit": "^9.0"
+ "phpunit/phpunit": "^9.3"
},
"type": "library",
"extra": {
@@ -3528,27 +3604,74 @@
"compare",
"equality"
],
- "time": "2020-02-07T06:08:51+00:00"
+ "time": "2020-09-28T05:31:46+00:00"
+ },
+ {
+ "name": "sebastian/complexity",
+ "version": "2.0.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/complexity.git",
+ "reference": "ba8cc2da0c0bfbc813d03b56406734030c7f1eff"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/ba8cc2da0c0bfbc813d03b56406734030c7f1eff",
+ "reference": "ba8cc2da0c0bfbc813d03b56406734030c7f1eff",
+ "shasum": ""
+ },
+ "require": {
+ "nikic/php-parser": "^4.7",
+ "php": ">=7.3"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^9.3"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "2.0-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de",
+ "role": "lead"
+ }
+ ],
+ "description": "Library for calculating the complexity of PHP code units",
+ "homepage": "https://github.com/sebastianbergmann/complexity",
+ "time": "2020-09-28T06:05:03+00:00"
},
{
"name": "sebastian/diff",
- "version": "4.0.1",
+ "version": "4.0.3",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/diff.git",
- "reference": "3e523c576f29dacecff309f35e4cc5a5c168e78a"
+ "reference": "ffc949a1a2aae270ea064453d7535b82e4c32092"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/3e523c576f29dacecff309f35e4cc5a5c168e78a",
- "reference": "3e523c576f29dacecff309f35e4cc5a5c168e78a",
+ "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/ffc949a1a2aae270ea064453d7535b82e4c32092",
+ "reference": "ffc949a1a2aae270ea064453d7535b82e4c32092",
"shasum": ""
},
"require": {
- "php": "^7.3"
+ "php": ">=7.3"
},
"require-dev": {
- "phpunit/phpunit": "^9.0",
+ "phpunit/phpunit": "^9.3",
"symfony/process": "^4.2 || ^5"
},
"type": "library",
@@ -3584,27 +3707,27 @@
"unidiff",
"unified diff"
],
- "time": "2020-05-08T05:01:12+00:00"
+ "time": "2020-09-28T05:32:55+00:00"
},
{
"name": "sebastian/environment",
- "version": "5.1.0",
+ "version": "5.1.3",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/environment.git",
- "reference": "c753f04d68cd489b6973cf9b4e505e191af3b05c"
+ "reference": "388b6ced16caa751030f6a69e588299fa09200ac"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/c753f04d68cd489b6973cf9b4e505e191af3b05c",
- "reference": "c753f04d68cd489b6973cf9b4e505e191af3b05c",
+ "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/388b6ced16caa751030f6a69e588299fa09200ac",
+ "reference": "388b6ced16caa751030f6a69e588299fa09200ac",
"shasum": ""
},
"require": {
- "php": "^7.3"
+ "php": ">=7.3"
},
"require-dev": {
- "phpunit/phpunit": "^9.0"
+ "phpunit/phpunit": "^9.3"
},
"suggest": {
"ext-posix": "*"
@@ -3612,7 +3735,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "5.0-dev"
+ "dev-master": "5.1-dev"
}
},
"autoload": {
@@ -3637,29 +3760,29 @@
"environment",
"hhvm"
],
- "time": "2020-04-14T13:36:52+00:00"
+ "time": "2020-09-28T05:52:38+00:00"
},
{
"name": "sebastian/exporter",
- "version": "4.0.0",
+ "version": "4.0.3",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/exporter.git",
- "reference": "80c26562e964016538f832f305b2286e1ec29566"
+ "reference": "d89cc98761b8cb5a1a235a6b703ae50d34080e65"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/80c26562e964016538f832f305b2286e1ec29566",
- "reference": "80c26562e964016538f832f305b2286e1ec29566",
+ "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/d89cc98761b8cb5a1a235a6b703ae50d34080e65",
+ "reference": "d89cc98761b8cb5a1a235a6b703ae50d34080e65",
"shasum": ""
},
"require": {
- "php": "^7.3",
+ "php": ">=7.3",
"sebastian/recursion-context": "^4.0"
},
"require-dev": {
"ext-mbstring": "*",
- "phpunit/phpunit": "^9.0"
+ "phpunit/phpunit": "^9.3"
},
"type": "library",
"extra": {
@@ -3704,30 +3827,30 @@
"export",
"exporter"
],
- "time": "2020-02-07T06:10:52+00:00"
+ "time": "2020-09-28T05:24:23+00:00"
},
{
"name": "sebastian/global-state",
- "version": "4.0.0",
+ "version": "5.0.1",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/global-state.git",
- "reference": "bdb1e7c79e592b8c82cb1699be3c8743119b8a72"
+ "reference": "ea779cb749a478b22a2564ac41cd7bda79c78dc7"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/bdb1e7c79e592b8c82cb1699be3c8743119b8a72",
- "reference": "bdb1e7c79e592b8c82cb1699be3c8743119b8a72",
+ "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/ea779cb749a478b22a2564ac41cd7bda79c78dc7",
+ "reference": "ea779cb749a478b22a2564ac41cd7bda79c78dc7",
"shasum": ""
},
"require": {
- "php": "^7.3",
+ "php": ">=7.3",
"sebastian/object-reflector": "^2.0",
"sebastian/recursion-context": "^4.0"
},
"require-dev": {
"ext-dom": "*",
- "phpunit/phpunit": "^9.0"
+ "phpunit/phpunit": "^9.3"
},
"suggest": {
"ext-uopz": "*"
@@ -3735,7 +3858,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "4.0-dev"
+ "dev-master": "5.0-dev"
}
},
"autoload": {
@@ -3758,29 +3881,76 @@
"keywords": [
"global state"
],
- "time": "2020-02-07T06:11:37+00:00"
+ "time": "2020-09-28T05:54:06+00:00"
+ },
+ {
+ "name": "sebastian/lines-of-code",
+ "version": "1.0.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/sebastianbergmann/lines-of-code.git",
+ "reference": "6514b8f21906b8b46f520d1fbd17a4523fa59a54"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/6514b8f21906b8b46f520d1fbd17a4523fa59a54",
+ "reference": "6514b8f21906b8b46f520d1fbd17a4523fa59a54",
+ "shasum": ""
+ },
+ "require": {
+ "nikic/php-parser": "^4.6",
+ "php": ">=7.3"
+ },
+ "require-dev": {
+ "phpunit/phpunit": "^9.3"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.0-dev"
+ }
+ },
+ "autoload": {
+ "classmap": [
+ "src/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "BSD-3-Clause"
+ ],
+ "authors": [
+ {
+ "name": "Sebastian Bergmann",
+ "email": "sebastian@phpunit.de",
+ "role": "lead"
+ }
+ ],
+ "description": "Library for counting the lines of code in PHP source code",
+ "homepage": "https://github.com/sebastianbergmann/lines-of-code",
+ "time": "2020-09-28T06:07:27+00:00"
},
{
"name": "sebastian/object-enumerator",
- "version": "4.0.0",
+ "version": "4.0.3",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/object-enumerator.git",
- "reference": "e67516b175550abad905dc952f43285957ef4363"
+ "reference": "f6f5957013d84725427d361507e13513702888a4"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/e67516b175550abad905dc952f43285957ef4363",
- "reference": "e67516b175550abad905dc952f43285957ef4363",
+ "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/f6f5957013d84725427d361507e13513702888a4",
+ "reference": "f6f5957013d84725427d361507e13513702888a4",
"shasum": ""
},
"require": {
- "php": "^7.3",
+ "php": ">=7.3",
"sebastian/object-reflector": "^2.0",
"sebastian/recursion-context": "^4.0"
},
"require-dev": {
- "phpunit/phpunit": "^9.0"
+ "phpunit/phpunit": "^9.3"
},
"type": "library",
"extra": {
@@ -3805,27 +3975,27 @@
],
"description": "Traverses array structures and object graphs to enumerate all referenced objects",
"homepage": "https://github.com/sebastianbergmann/object-enumerator/",
- "time": "2020-02-07T06:12:23+00:00"
+ "time": "2020-09-28T05:55:06+00:00"
},
{
"name": "sebastian/object-reflector",
- "version": "2.0.0",
+ "version": "2.0.3",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/object-reflector.git",
- "reference": "f4fd0835cabb0d4a6546d9fe291e5740037aa1e7"
+ "reference": "d9d0ab3b12acb1768bc1e0a89b23c90d2043cbe5"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/f4fd0835cabb0d4a6546d9fe291e5740037aa1e7",
- "reference": "f4fd0835cabb0d4a6546d9fe291e5740037aa1e7",
+ "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/d9d0ab3b12acb1768bc1e0a89b23c90d2043cbe5",
+ "reference": "d9d0ab3b12acb1768bc1e0a89b23c90d2043cbe5",
"shasum": ""
},
"require": {
- "php": "^7.3"
+ "php": ">=7.3"
},
"require-dev": {
- "phpunit/phpunit": "^9.0"
+ "phpunit/phpunit": "^9.3"
},
"type": "library",
"extra": {
@@ -3850,27 +4020,27 @@
],
"description": "Allows reflection of object attributes, including inherited and non-public ones",
"homepage": "https://github.com/sebastianbergmann/object-reflector/",
- "time": "2020-02-07T06:19:40+00:00"
+ "time": "2020-09-28T05:56:16+00:00"
},
{
"name": "sebastian/recursion-context",
- "version": "4.0.0",
+ "version": "4.0.3",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/recursion-context.git",
- "reference": "cdd86616411fc3062368b720b0425de10bd3d579"
+ "reference": "ed8c9cd355089134bc9cba421b5cfdd58f0eaef7"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/cdd86616411fc3062368b720b0425de10bd3d579",
- "reference": "cdd86616411fc3062368b720b0425de10bd3d579",
+ "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/ed8c9cd355089134bc9cba421b5cfdd58f0eaef7",
+ "reference": "ed8c9cd355089134bc9cba421b5cfdd58f0eaef7",
"shasum": ""
},
"require": {
- "php": "^7.3"
+ "php": ">=7.3"
},
"require-dev": {
- "phpunit/phpunit": "^9.0"
+ "phpunit/phpunit": "^9.3"
},
"type": "library",
"extra": {
@@ -3903,24 +4073,24 @@
],
"description": "Provides functionality to recursively process PHP variables",
"homepage": "http://www.github.com/sebastianbergmann/recursion-context",
- "time": "2020-02-07T06:18:20+00:00"
+ "time": "2020-09-28T05:17:32+00:00"
},
{
"name": "sebastian/resource-operations",
- "version": "3.0.0",
+ "version": "3.0.3",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/resource-operations.git",
- "reference": "8c98bf0dfa1f9256d0468b9803a1e1df31b6fa98"
+ "reference": "0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/8c98bf0dfa1f9256d0468b9803a1e1df31b6fa98",
- "reference": "8c98bf0dfa1f9256d0468b9803a1e1df31b6fa98",
+ "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8",
+ "reference": "0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8",
"shasum": ""
},
"require": {
- "php": "^7.3"
+ "php": ">=7.3"
},
"require-dev": {
"phpunit/phpunit": "^9.0"
@@ -3948,32 +4118,32 @@
],
"description": "Provides a list of PHP built-in functions that operate on resources",
"homepage": "https://www.github.com/sebastianbergmann/resource-operations",
- "time": "2020-02-07T06:13:02+00:00"
+ "time": "2020-09-28T06:45:17+00:00"
},
{
"name": "sebastian/type",
- "version": "2.0.0",
+ "version": "2.2.2",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/type.git",
- "reference": "9e8f42f740afdea51f5f4e8cec2035580e797ee1"
+ "reference": "e494dcaeb89d1458c9ccd8c819745245a1669aea"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/9e8f42f740afdea51f5f4e8cec2035580e797ee1",
- "reference": "9e8f42f740afdea51f5f4e8cec2035580e797ee1",
+ "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/e494dcaeb89d1458c9ccd8c819745245a1669aea",
+ "reference": "e494dcaeb89d1458c9ccd8c819745245a1669aea",
"shasum": ""
},
"require": {
- "php": "^7.3"
+ "php": ">=7.3"
},
"require-dev": {
- "phpunit/phpunit": "^9.0"
+ "phpunit/phpunit": "^9.3"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.0-dev"
+ "dev-master": "2.2-dev"
}
},
"autoload": {
@@ -3994,24 +4164,24 @@
],
"description": "Collection of value objects that represent the types of the PHP type system",
"homepage": "https://github.com/sebastianbergmann/type",
- "time": "2020-02-07T06:13:43+00:00"
+ "time": "2020-09-28T06:01:38+00:00"
},
{
"name": "sebastian/version",
- "version": "3.0.0",
+ "version": "3.0.2",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/version.git",
- "reference": "0411bde656dce64202b39c2f4473993a9081d39e"
+ "reference": "c6c1022351a901512170118436c764e473f6de8c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/0411bde656dce64202b39c2f4473993a9081d39e",
- "reference": "0411bde656dce64202b39c2f4473993a9081d39e",
+ "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/c6c1022351a901512170118436c764e473f6de8c",
+ "reference": "c6c1022351a901512170118436c764e473f6de8c",
"shasum": ""
},
"require": {
- "php": "^7.3"
+ "php": ">=7.3"
},
"type": "library",
"extra": {
@@ -4037,102 +4207,33 @@
],
"description": "Library that helps with managing the version number of Git-hosted PHP projects",
"homepage": "https://github.com/sebastianbergmann/version",
- "time": "2020-01-21T06:36:37+00:00"
- },
- {
- "name": "simpletest/simpletest",
- "version": "v1.2.0",
- "source": {
- "type": "git",
- "url": "https://github.com/simpletest/simpletest.git",
- "reference": "4fb6006517a1428785a0ea704fbedcc675421ec4"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/simpletest/simpletest/zipball/4fb6006517a1428785a0ea704fbedcc675421ec4",
- "reference": "4fb6006517a1428785a0ea704fbedcc675421ec4",
- "shasum": ""
- },
- "require": {
- "php": "^7.1"
- },
- "type": "library",
- "autoload": {
- "classmap": [
- "."
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "LGPL-2.0+"
- ],
- "authors": [
- {
- "name": "Marcus Baker",
- "email": "marcus@lastcraft.com",
- "role": "Original project lead"
- },
- {
- "name": "Jason Sweat",
- "role": "Original developer"
- },
- {
- "name": "Travis Swicegood",
- "role": "Original developer"
- },
- {
- "name": "Perrick Penet",
- "role": "Original developer"
- },
- {
- "name": "Edward Z. Yang",
- "role": "Original developer"
- },
- {
- "name": "Lachlan Donald",
- "email": "lachlan@ljd.cc"
- },
- {
- "name": "Lars Vierbergen",
- "email": "vierbergenlars@gmail.com"
- },
- {
- "name": "Jens A. Koch"
- }
- ],
- "description": "Unit testing, mock objects and web testing framework for PHP built around test cases.",
- "homepage": "http://simpletest.org/",
- "keywords": [
- "SimpleTest",
- "code-coverage",
- "selenium",
- "testing",
- "unit-test"
- ],
- "time": "2019-09-17T15:08:22+00:00"
+ "time": "2020-09-28T06:39:44+00:00"
},
{
"name": "symfony/console",
- "version": "v5.0.8",
+ "version": "v5.1.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/console.git",
- "reference": "5fa1caadc8cdaa17bcfb25219f3b53fe294a9935"
+ "reference": "04c3a31fe8ea94b42c9e2d1acc93d19782133b00"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/console/zipball/5fa1caadc8cdaa17bcfb25219f3b53fe294a9935",
- "reference": "5fa1caadc8cdaa17bcfb25219f3b53fe294a9935",
+ "url": "https://api.github.com/repos/symfony/console/zipball/04c3a31fe8ea94b42c9e2d1acc93d19782133b00",
+ "reference": "04c3a31fe8ea94b42c9e2d1acc93d19782133b00",
"shasum": ""
},
"require": {
- "php": "^7.2.5",
+ "php": ">=7.2.5",
"symfony/polyfill-mbstring": "~1.0",
"symfony/polyfill-php73": "^1.8",
- "symfony/service-contracts": "^1.1|^2"
+ "symfony/polyfill-php80": "^1.15",
+ "symfony/service-contracts": "^1.1|^2",
+ "symfony/string": "^5.1"
},
"conflict": {
"symfony/dependency-injection": "<4.4",
+ "symfony/dotenv": "<5.1",
"symfony/event-dispatcher": "<4.4",
"symfony/lock": "<4.4",
"symfony/process": "<4.4"
@@ -4158,7 +4259,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "5.0-dev"
+ "dev-master": "5.1-dev"
}
},
"autoload": {
@@ -4185,29 +4286,29 @@
],
"description": "Symfony Console Component",
"homepage": "https://symfony.com",
- "time": "2020-03-30T11:42:42+00:00"
+ "time": "2020-09-18T14:27:32+00:00"
},
{
"name": "symfony/css-selector",
- "version": "v5.0.8",
+ "version": "v5.1.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/css-selector.git",
- "reference": "5f8d5271303dad260692ba73dfa21777d38e124e"
+ "reference": "e544e24472d4c97b2d11ade7caacd446727c6bf9"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/css-selector/zipball/5f8d5271303dad260692ba73dfa21777d38e124e",
- "reference": "5f8d5271303dad260692ba73dfa21777d38e124e",
+ "url": "https://api.github.com/repos/symfony/css-selector/zipball/e544e24472d4c97b2d11ade7caacd446727c6bf9",
+ "reference": "e544e24472d4c97b2d11ade7caacd446727c6bf9",
"shasum": ""
},
"require": {
- "php": "^7.2.5"
+ "php": ">=7.2.5"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "5.0-dev"
+ "dev-master": "5.1-dev"
}
},
"autoload": {
@@ -4238,25 +4339,27 @@
],
"description": "Symfony CssSelector Component",
"homepage": "https://symfony.com",
- "time": "2020-03-27T16:56:45+00:00"
+ "time": "2020-05-20T17:43:50+00:00"
},
{
"name": "symfony/event-dispatcher",
- "version": "v5.0.8",
+ "version": "v5.1.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/event-dispatcher.git",
- "reference": "24f40d95385774ed5c71dbf014edd047e2f2f3dc"
+ "reference": "d5de97d6af175a9e8131c546db054ca32842dd0f"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/24f40d95385774ed5c71dbf014edd047e2f2f3dc",
- "reference": "24f40d95385774ed5c71dbf014edd047e2f2f3dc",
+ "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/d5de97d6af175a9e8131c546db054ca32842dd0f",
+ "reference": "d5de97d6af175a9e8131c546db054ca32842dd0f",
"shasum": ""
},
"require": {
- "php": "^7.2.5",
- "symfony/event-dispatcher-contracts": "^2"
+ "php": ">=7.2.5",
+ "symfony/deprecation-contracts": "^2.1",
+ "symfony/event-dispatcher-contracts": "^2",
+ "symfony/polyfill-php80": "^1.15"
},
"conflict": {
"symfony/dependency-injection": "<4.4"
@@ -4269,6 +4372,7 @@
"psr/log": "~1.0",
"symfony/config": "^4.4|^5.0",
"symfony/dependency-injection": "^4.4|^5.0",
+ "symfony/error-handler": "^4.4|^5.0",
"symfony/expression-language": "^4.4|^5.0",
"symfony/http-foundation": "^4.4|^5.0",
"symfony/service-contracts": "^1.1|^2",
@@ -4281,7 +4385,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "5.0-dev"
+ "dev-master": "5.1-dev"
}
},
"autoload": {
@@ -4308,24 +4412,24 @@
],
"description": "Symfony EventDispatcher Component",
"homepage": "https://symfony.com",
- "time": "2020-03-27T16:56:45+00:00"
+ "time": "2020-09-18T14:27:32+00:00"
},
{
"name": "symfony/event-dispatcher-contracts",
- "version": "v2.0.1",
+ "version": "v2.2.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/event-dispatcher-contracts.git",
- "reference": "af23c2584d4577d54661c434446fb8fbed6025dd"
+ "reference": "0ba7d54483095a198fa51781bc608d17e84dffa2"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/af23c2584d4577d54661c434446fb8fbed6025dd",
- "reference": "af23c2584d4577d54661c434446fb8fbed6025dd",
+ "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/0ba7d54483095a198fa51781bc608d17e84dffa2",
+ "reference": "0ba7d54483095a198fa51781bc608d17e84dffa2",
"shasum": ""
},
"require": {
- "php": "^7.2.5",
+ "php": ">=7.2.5",
"psr/event-dispatcher": "^1"
},
"suggest": {
@@ -4334,7 +4438,11 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.0-dev"
+ "dev-master": "2.2-dev"
+ },
+ "thanks": {
+ "name": "symfony/contracts",
+ "url": "https://github.com/symfony/contracts"
}
},
"autoload": {
@@ -4366,30 +4474,30 @@
"interoperability",
"standards"
],
- "time": "2019-11-18T17:27:11+00:00"
+ "time": "2020-09-07T11:33:47+00:00"
},
{
"name": "symfony/filesystem",
- "version": "v5.0.8",
+ "version": "v5.1.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/filesystem.git",
- "reference": "7cd0dafc4353a0f62e307df90b48466379c8cc91"
+ "reference": "f3194303d3077829dbbc1d18f50288b2a01146f2"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/filesystem/zipball/7cd0dafc4353a0f62e307df90b48466379c8cc91",
- "reference": "7cd0dafc4353a0f62e307df90b48466379c8cc91",
+ "url": "https://api.github.com/repos/symfony/filesystem/zipball/f3194303d3077829dbbc1d18f50288b2a01146f2",
+ "reference": "f3194303d3077829dbbc1d18f50288b2a01146f2",
"shasum": ""
},
"require": {
- "php": "^7.2.5",
+ "php": ">=7.2.5",
"symfony/polyfill-ctype": "~1.8"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "5.0-dev"
+ "dev-master": "5.1-dev"
}
},
"autoload": {
@@ -4416,29 +4524,29 @@
],
"description": "Symfony Filesystem Component",
"homepage": "https://symfony.com",
- "time": "2020-04-12T14:40:17+00:00"
+ "time": "2020-09-02T16:23:27+00:00"
},
{
"name": "symfony/finder",
- "version": "v5.0.8",
+ "version": "v5.1.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/finder.git",
- "reference": "600a52c29afc0d1caa74acbec8d3095ca7e9910d"
+ "reference": "2c3ba7ad6884e6c4451ce2340e2dc23f6fa3e0d8"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/finder/zipball/600a52c29afc0d1caa74acbec8d3095ca7e9910d",
- "reference": "600a52c29afc0d1caa74acbec8d3095ca7e9910d",
+ "url": "https://api.github.com/repos/symfony/finder/zipball/2c3ba7ad6884e6c4451ce2340e2dc23f6fa3e0d8",
+ "reference": "2c3ba7ad6884e6c4451ce2340e2dc23f6fa3e0d8",
"shasum": ""
},
"require": {
- "php": "^7.2.5"
+ "php": ">=7.2.5"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "5.0-dev"
+ "dev-master": "5.1-dev"
}
},
"autoload": {
@@ -4465,29 +4573,31 @@
],
"description": "Symfony Finder Component",
"homepage": "https://symfony.com",
- "time": "2020-03-27T16:56:45+00:00"
+ "time": "2020-09-02T16:23:27+00:00"
},
{
"name": "symfony/options-resolver",
- "version": "v5.0.8",
+ "version": "v5.1.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/options-resolver.git",
- "reference": "3707e3caeff2b797c0bfaadd5eba723dd44e6bf1"
+ "reference": "4c7e155bf7d93ea4ba3824d5a14476694a5278dd"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/options-resolver/zipball/3707e3caeff2b797c0bfaadd5eba723dd44e6bf1",
- "reference": "3707e3caeff2b797c0bfaadd5eba723dd44e6bf1",
+ "url": "https://api.github.com/repos/symfony/options-resolver/zipball/4c7e155bf7d93ea4ba3824d5a14476694a5278dd",
+ "reference": "4c7e155bf7d93ea4ba3824d5a14476694a5278dd",
"shasum": ""
},
"require": {
- "php": "^7.2.5"
+ "php": ">=7.2.5",
+ "symfony/deprecation-contracts": "^2.1",
+ "symfony/polyfill-php80": "^1.15"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "5.0-dev"
+ "dev-master": "5.1-dev"
}
},
"autoload": {
@@ -4519,20 +4629,151 @@
"configuration",
"options"
],
- "time": "2020-04-06T10:40:56+00:00"
+ "time": "2020-09-27T03:44:28+00:00"
+ },
+ {
+ "name": "symfony/polyfill-intl-grapheme",
+ "version": "v1.18.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/polyfill-intl-grapheme.git",
+ "reference": "b740103edbdcc39602239ee8860f0f45a8eb9aa5"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/b740103edbdcc39602239ee8860f0f45a8eb9aa5",
+ "reference": "b740103edbdcc39602239ee8860f0f45a8eb9aa5",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3.3"
+ },
+ "suggest": {
+ "ext-intl": "For best performance"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.18-dev"
+ },
+ "thanks": {
+ "name": "symfony/polyfill",
+ "url": "https://github.com/symfony/polyfill"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Symfony\\Polyfill\\Intl\\Grapheme\\": ""
+ },
+ "files": [
+ "bootstrap.php"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Nicolas Grekas",
+ "email": "p@tchwork.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "description": "Symfony polyfill for intl's grapheme_* functions",
+ "homepage": "https://symfony.com",
+ "keywords": [
+ "compatibility",
+ "grapheme",
+ "intl",
+ "polyfill",
+ "portable",
+ "shim"
+ ],
+ "time": "2020-07-14T12:35:20+00:00"
+ },
+ {
+ "name": "symfony/polyfill-intl-normalizer",
+ "version": "v1.18.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/polyfill-intl-normalizer.git",
+ "reference": "37078a8dd4a2a1e9ab0231af7c6cb671b2ed5a7e"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/37078a8dd4a2a1e9ab0231af7c6cb671b2ed5a7e",
+ "reference": "37078a8dd4a2a1e9ab0231af7c6cb671b2ed5a7e",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=5.3.3"
+ },
+ "suggest": {
+ "ext-intl": "For best performance"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.18-dev"
+ },
+ "thanks": {
+ "name": "symfony/polyfill",
+ "url": "https://github.com/symfony/polyfill"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Symfony\\Polyfill\\Intl\\Normalizer\\": ""
+ },
+ "files": [
+ "bootstrap.php"
+ ],
+ "classmap": [
+ "Resources/stubs"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Nicolas Grekas",
+ "email": "p@tchwork.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "description": "Symfony polyfill for intl's Normalizer class and related functions",
+ "homepage": "https://symfony.com",
+ "keywords": [
+ "compatibility",
+ "intl",
+ "normalizer",
+ "polyfill",
+ "portable",
+ "shim"
+ ],
+ "time": "2020-07-14T12:35:20+00:00"
},
{
"name": "symfony/polyfill-mbstring",
- "version": "v1.17.0",
+ "version": "v1.18.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-mbstring.git",
- "reference": "fa79b11539418b02fc5e1897267673ba2c19419c"
+ "reference": "a6977d63bf9a0ad4c65cd352709e230876f9904a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/fa79b11539418b02fc5e1897267673ba2c19419c",
- "reference": "fa79b11539418b02fc5e1897267673ba2c19419c",
+ "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/a6977d63bf9a0ad4c65cd352709e230876f9904a",
+ "reference": "a6977d63bf9a0ad4c65cd352709e230876f9904a",
"shasum": ""
},
"require": {
@@ -4544,7 +4785,11 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.17-dev"
+ "dev-master": "1.18-dev"
+ },
+ "thanks": {
+ "name": "symfony/polyfill",
+ "url": "https://github.com/symfony/polyfill"
}
},
"autoload": {
@@ -4578,20 +4823,20 @@
"portable",
"shim"
],
- "time": "2020-05-12T16:47:27+00:00"
+ "time": "2020-07-14T12:35:20+00:00"
},
{
"name": "symfony/polyfill-php70",
- "version": "v1.17.0",
+ "version": "v1.18.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-php70.git",
- "reference": "82225c2d7d23d7e70515496d249c0152679b468e"
+ "reference": "0dd93f2c578bdc9c72697eaa5f1dd25644e618d3"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-php70/zipball/82225c2d7d23d7e70515496d249c0152679b468e",
- "reference": "82225c2d7d23d7e70515496d249c0152679b468e",
+ "url": "https://api.github.com/repos/symfony/polyfill-php70/zipball/0dd93f2c578bdc9c72697eaa5f1dd25644e618d3",
+ "reference": "0dd93f2c578bdc9c72697eaa5f1dd25644e618d3",
"shasum": ""
},
"require": {
@@ -4601,7 +4846,11 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.17-dev"
+ "dev-master": "1.18-dev"
+ },
+ "thanks": {
+ "name": "symfony/polyfill",
+ "url": "https://github.com/symfony/polyfill"
}
},
"autoload": {
@@ -4637,20 +4886,20 @@
"portable",
"shim"
],
- "time": "2020-05-12T16:47:27+00:00"
+ "time": "2020-07-14T12:35:20+00:00"
},
{
"name": "symfony/polyfill-php72",
- "version": "v1.17.0",
+ "version": "v1.18.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-php72.git",
- "reference": "f048e612a3905f34931127360bdd2def19a5e582"
+ "reference": "639447d008615574653fb3bc60d1986d7172eaae"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/f048e612a3905f34931127360bdd2def19a5e582",
- "reference": "f048e612a3905f34931127360bdd2def19a5e582",
+ "url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/639447d008615574653fb3bc60d1986d7172eaae",
+ "reference": "639447d008615574653fb3bc60d1986d7172eaae",
"shasum": ""
},
"require": {
@@ -4659,7 +4908,11 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.17-dev"
+ "dev-master": "1.18-dev"
+ },
+ "thanks": {
+ "name": "symfony/polyfill",
+ "url": "https://github.com/symfony/polyfill"
}
},
"autoload": {
@@ -4692,20 +4945,20 @@
"portable",
"shim"
],
- "time": "2020-05-12T16:47:27+00:00"
+ "time": "2020-07-14T12:35:20+00:00"
},
{
"name": "symfony/polyfill-php73",
- "version": "v1.17.0",
+ "version": "v1.18.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-php73.git",
- "reference": "a760d8964ff79ab9bf057613a5808284ec852ccc"
+ "reference": "fffa1a52a023e782cdcc221d781fe1ec8f87fcca"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/a760d8964ff79ab9bf057613a5808284ec852ccc",
- "reference": "a760d8964ff79ab9bf057613a5808284ec852ccc",
+ "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/fffa1a52a023e782cdcc221d781fe1ec8f87fcca",
+ "reference": "fffa1a52a023e782cdcc221d781fe1ec8f87fcca",
"shasum": ""
},
"require": {
@@ -4714,7 +4967,11 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.17-dev"
+ "dev-master": "1.18-dev"
+ },
+ "thanks": {
+ "name": "symfony/polyfill",
+ "url": "https://github.com/symfony/polyfill"
}
},
"autoload": {
@@ -4750,29 +5007,96 @@
"portable",
"shim"
],
- "time": "2020-05-12T16:47:27+00:00"
+ "time": "2020-07-14T12:35:20+00:00"
+ },
+ {
+ "name": "symfony/polyfill-php80",
+ "version": "v1.18.1",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/polyfill-php80.git",
+ "reference": "d87d5766cbf48d72388a9f6b85f280c8ad51f981"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/d87d5766cbf48d72388a9f6b85f280c8ad51f981",
+ "reference": "d87d5766cbf48d72388a9f6b85f280c8ad51f981",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=7.0.8"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "1.18-dev"
+ },
+ "thanks": {
+ "name": "symfony/polyfill",
+ "url": "https://github.com/symfony/polyfill"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Symfony\\Polyfill\\Php80\\": ""
+ },
+ "files": [
+ "bootstrap.php"
+ ],
+ "classmap": [
+ "Resources/stubs"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Ion Bazan",
+ "email": "ion.bazan@gmail.com"
+ },
+ {
+ "name": "Nicolas Grekas",
+ "email": "p@tchwork.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions",
+ "homepage": "https://symfony.com",
+ "keywords": [
+ "compatibility",
+ "polyfill",
+ "portable",
+ "shim"
+ ],
+ "time": "2020-07-14T12:35:20+00:00"
},
{
"name": "symfony/process",
- "version": "v5.0.8",
+ "version": "v5.1.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/process.git",
- "reference": "3179f68dff5bad14d38c4114a1dab98030801fd7"
+ "reference": "d3a2e64866169586502f0cd9cab69135ad12cee9"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/process/zipball/3179f68dff5bad14d38c4114a1dab98030801fd7",
- "reference": "3179f68dff5bad14d38c4114a1dab98030801fd7",
+ "url": "https://api.github.com/repos/symfony/process/zipball/d3a2e64866169586502f0cd9cab69135ad12cee9",
+ "reference": "d3a2e64866169586502f0cd9cab69135ad12cee9",
"shasum": ""
},
"require": {
- "php": "^7.2.5"
+ "php": ">=7.2.5",
+ "symfony/polyfill-php80": "^1.15"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "5.0-dev"
+ "dev-master": "5.1-dev"
}
},
"autoload": {
@@ -4799,24 +5123,24 @@
],
"description": "Symfony Process Component",
"homepage": "https://symfony.com",
- "time": "2020-04-15T15:59:10+00:00"
+ "time": "2020-09-02T16:23:27+00:00"
},
{
"name": "symfony/service-contracts",
- "version": "v2.0.1",
+ "version": "v2.2.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/service-contracts.git",
- "reference": "144c5e51266b281231e947b51223ba14acf1a749"
+ "reference": "d15da7ba4957ffb8f1747218be9e1a121fd298a1"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/service-contracts/zipball/144c5e51266b281231e947b51223ba14acf1a749",
- "reference": "144c5e51266b281231e947b51223ba14acf1a749",
+ "url": "https://api.github.com/repos/symfony/service-contracts/zipball/d15da7ba4957ffb8f1747218be9e1a121fd298a1",
+ "reference": "d15da7ba4957ffb8f1747218be9e1a121fd298a1",
"shasum": ""
},
"require": {
- "php": "^7.2.5",
+ "php": ">=7.2.5",
"psr/container": "^1.0"
},
"suggest": {
@@ -4825,7 +5149,11 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.0-dev"
+ "dev-master": "2.2-dev"
+ },
+ "thanks": {
+ "name": "symfony/contracts",
+ "url": "https://github.com/symfony/contracts"
}
},
"autoload": {
@@ -4857,30 +5185,30 @@
"interoperability",
"standards"
],
- "time": "2019-11-18T17:27:11+00:00"
+ "time": "2020-09-07T11:33:47+00:00"
},
{
"name": "symfony/stopwatch",
- "version": "v5.0.8",
+ "version": "v5.1.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/stopwatch.git",
- "reference": "a1d86d30d4522423afc998f32404efa34fcf5a73"
+ "reference": "0f7c58cf81dbb5dd67d423a89d577524a2ec0323"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/stopwatch/zipball/a1d86d30d4522423afc998f32404efa34fcf5a73",
- "reference": "a1d86d30d4522423afc998f32404efa34fcf5a73",
+ "url": "https://api.github.com/repos/symfony/stopwatch/zipball/0f7c58cf81dbb5dd67d423a89d577524a2ec0323",
+ "reference": "0f7c58cf81dbb5dd67d423a89d577524a2ec0323",
"shasum": ""
},
"require": {
- "php": "^7.2.5",
+ "php": ">=7.2.5",
"symfony/service-contracts": "^1.0|^2"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "5.0-dev"
+ "dev-master": "5.1-dev"
}
},
"autoload": {
@@ -4907,27 +5235,98 @@
],
"description": "Symfony Stopwatch Component",
"homepage": "https://symfony.com",
- "time": "2020-03-27T16:56:45+00:00"
+ "time": "2020-05-20T17:43:50+00:00"
+ },
+ {
+ "name": "symfony/string",
+ "version": "v5.1.6",
+ "source": {
+ "type": "git",
+ "url": "https://github.com/symfony/string.git",
+ "reference": "4a9afe9d07bac506f75bcee8ed3ce76da5a9343e"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://api.github.com/repos/symfony/string/zipball/4a9afe9d07bac506f75bcee8ed3ce76da5a9343e",
+ "reference": "4a9afe9d07bac506f75bcee8ed3ce76da5a9343e",
+ "shasum": ""
+ },
+ "require": {
+ "php": ">=7.2.5",
+ "symfony/polyfill-ctype": "~1.8",
+ "symfony/polyfill-intl-grapheme": "~1.0",
+ "symfony/polyfill-intl-normalizer": "~1.0",
+ "symfony/polyfill-mbstring": "~1.0",
+ "symfony/polyfill-php80": "~1.15"
+ },
+ "require-dev": {
+ "symfony/error-handler": "^4.4|^5.0",
+ "symfony/http-client": "^4.4|^5.0",
+ "symfony/translation-contracts": "^1.1|^2",
+ "symfony/var-exporter": "^4.4|^5.0"
+ },
+ "type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "5.1-dev"
+ }
+ },
+ "autoload": {
+ "psr-4": {
+ "Symfony\\Component\\String\\": ""
+ },
+ "files": [
+ "Resources/functions.php"
+ ],
+ "exclude-from-classmap": [
+ "/Tests/"
+ ]
+ },
+ "notification-url": "https://packagist.org/downloads/",
+ "license": [
+ "MIT"
+ ],
+ "authors": [
+ {
+ "name": "Nicolas Grekas",
+ "email": "p@tchwork.com"
+ },
+ {
+ "name": "Symfony Community",
+ "homepage": "https://symfony.com/contributors"
+ }
+ ],
+ "description": "Symfony String component",
+ "homepage": "https://symfony.com",
+ "keywords": [
+ "grapheme",
+ "i18n",
+ "string",
+ "unicode",
+ "utf-8",
+ "utf8"
+ ],
+ "time": "2020-09-15T12:23:47+00:00"
},
{
"name": "theseer/tokenizer",
- "version": "1.1.3",
+ "version": "1.2.0",
"source": {
"type": "git",
"url": "https://github.com/theseer/tokenizer.git",
- "reference": "11336f6f84e16a720dae9d8e6ed5019efa85a0f9"
+ "reference": "75a63c33a8577608444246075ea0af0d052e452a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/theseer/tokenizer/zipball/11336f6f84e16a720dae9d8e6ed5019efa85a0f9",
- "reference": "11336f6f84e16a720dae9d8e6ed5019efa85a0f9",
+ "url": "https://api.github.com/repos/theseer/tokenizer/zipball/75a63c33a8577608444246075ea0af0d052e452a",
+ "reference": "75a63c33a8577608444246075ea0af0d052e452a",
"shasum": ""
},
"require": {
"ext-dom": "*",
"ext-tokenizer": "*",
"ext-xmlwriter": "*",
- "php": "^7.0"
+ "php": "^7.2 || ^8.0"
},
"type": "library",
"autoload": {
@@ -4947,7 +5346,7 @@
}
],
"description": "A small library for converting tokenized PHP source code into XML and potentially other formats",
- "time": "2019-06-13T22:48:21+00:00"
+ "time": "2020-07-12T23:59:07+00:00"
},
{
"name": "vimeo/psalm",
@@ -5047,23 +5446,24 @@
},
{
"name": "webmozart/assert",
- "version": "1.8.0",
+ "version": "1.9.1",
"source": {
"type": "git",
"url": "https://github.com/webmozart/assert.git",
- "reference": "ab2cb0b3b559010b75981b1bdce728da3ee90ad6"
+ "reference": "bafc69caeb4d49c39fd0779086c03a3738cbb389"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/webmozart/assert/zipball/ab2cb0b3b559010b75981b1bdce728da3ee90ad6",
- "reference": "ab2cb0b3b559010b75981b1bdce728da3ee90ad6",
+ "url": "https://api.github.com/repos/webmozart/assert/zipball/bafc69caeb4d49c39fd0779086c03a3738cbb389",
+ "reference": "bafc69caeb4d49c39fd0779086c03a3738cbb389",
"shasum": ""
},
"require": {
- "php": "^5.3.3 || ^7.0",
+ "php": "^5.3.3 || ^7.0 || ^8.0",
"symfony/polyfill-ctype": "^1.8"
},
"conflict": {
+ "phpstan/phpstan": "<0.12.20",
"vimeo/psalm": "<3.9.1"
},
"require-dev": {
@@ -5091,7 +5491,7 @@
"check",
"validate"
],
- "time": "2020-04-18T12:12:48+00:00"
+ "time": "2020-07-08T17:02:28+00:00"
},
{
"name": "webmozart/glob",
@@ -5194,7 +5594,11 @@
"prefer-lowest": false,
"platform": {
"php": ">=7.1",
- "ext-pgsql": "*"
+ "ext-json": "*",
+ "ext-mbstring": "*",
+ "ext-pgsql": "*",
+ "ext-xml": "*"
},
- "platform-dev": []
+ "platform-dev": [],
+ "plugin-api-version": "1.1.0"
}
diff --git a/mk_linters.mk b/mk_linters.mk
index 03373b14..8982be00 100644
--- a/mk_linters.mk
+++ b/mk_linters.mk
@@ -21,7 +21,7 @@ csfixer:
echo "XDEBUG was: "$(XDSWI_STATUS) ;\
${MAKE} disable_xdebug --no-print-directory ;\
mkdir -p .build/php-cs-fixer ;\
- vendor/bin/php-cs-fixer fix --config=.php_cs.php --diff --diff-format=udiff --dry-run --verbose ;\
+ vendor/bin/php-cs-fixer fix --config=.php_cs.php --verbose ;\
${MAKE} enable_xdebug new_status=$(XDSWI_STATUS) --no-print-directory;\
else \
echo -e "$(GREEN)php-cs-fixer$(WHITE) is $(RED)NOT$(WHITE) installed. " ;\
@@ -55,43 +55,36 @@ phpmd:
psalm:
- @${MAKE} disable_xdebug --no-print-directory
- @if [ ! -f "vendor/bin/psalm" ]; then \
- echo -e "$(GREEN)psalm$(WHITE) is $(RED)NOT$(WHITE) installed. " ;\
- echo -e "Install it with $(GREEN)composer require --dev vimeo/psalm$(WHITE)" ;\
- exit 0 ;\
- fi
-
+ @${MAKE} abort_suggesting_composer executable=vendor/bin/psalm package_name=vimeo/psalm --no-print-directory
@mkdir -p .build/psalm ;\
- vendor/bin/psalm --show-info=false --long-progress --threads=2 --config=psalm.xml | tee temp/psalm.output.txt
- @${MAKE} enable_xdebug new_status=$(XDSWI_STATUS) --no-print-directory ;\
+ echo -e "Running:"
+ echo -e "$(GREEN)vendor/bin/psalm$(GREEN) --show-info=false --long-progress --threads=2 --config=psalm.xml "
+
+ @vendor/bin/psalm --show-info=false --long-progress --threads=2 --config=psalm.xml
echo ""
-phpstan:
- @${MAKE} disable_xdebug --no-print-directory
- @if [ ! -f "vendor/bin/phpstan" ]; then \
- echo -e "$(GREEN)phpstan$(WHITE) is $(RED)NOT$(WHITE) installed. " ;\
- echo -e "Install it with $(GREEN)composer require --dev phpstan/phpstan$(WHITE)" ;\
- exit 0 ;\
+abort_suggesting_composer:
+ @if [ "0" != "$(XDSWI_STATUS)" ]; then \
+ $(YELLOW)Warn: $(GREEN)xdebug$(WHITE) is enabled. Just saying... ;\
fi
-
+ @if [ ! -f "$(executable)" ]; then \
+ echo -e "$(GREEN)$(package_name)$(WHITE) $(RED)NOT FOUND$(WHITE) on $(CYAN)$(executable)$(WHITE). " ;\
+ echo -e "Install it with $(GREEN)composer require --dev$(package_name)$(WHITE)" ;\
+ exit 1 ;\
+ fi
+
+phpstan:
+ @${MAKE} abort_suggesting_composer executable=vendor/bin/phpstan package_name=phpstan/phpstan --no-print-directory
@mkdir -p .build/phpstan ;\
- ./vendor/bin/phpstan analyse --memory-limit=2G --configuration phpstan.neon | tee temp/phpstan.output.txt
- @${MAKE} enable_xdebug new_status=$(XDSWI_STATUS) --no-print-directory ;\
+ echo -e "Running:" ;\
+ echo -e "$(GREEN)vendor/bin/phpstan$(GREEN) analyse --memory-limit=2G --configuration phpstan.neon "
+ ./vendor/bin/phpstan analyse --memory-limit=2G --configuration phpstan.neon
echo ""
lint:
- @if [ -f "vendor/bin/parallel-lint" ]; then \
- mkdir -p .build/parallel ;\
- ${MAKE} disable_xdebug --no-print-directory ;\
- vendor/bin/parallel-lint --ignore-fails --exclude vendor src ;\
- ${MAKE} enable_xdebug new_status=$(XDSWI_STATUS) --no-print-directory;\
- else \
- echo -e "$(GREEN)parallel-lint$(WHITE) is $(RED)NOT$(WHITE) installed. " ;\
- echo -e "Install it with $(GREEN)composer require --dev php-parallel-lint/php-parallel-lint$(WHITE)" ;\
- fi
- @find ./src -name \*.php -print0 | xargs -0 -n 1 php -l
- @echo ""
+ @${MAKE} abort_suggesting_composer executable=vendor/bin/parallel-lint package_name=php-parallel-lint/php-parallel-lint --no-print-directory
+ mkdir -p .build/parallel ;\
+ vendor/bin/parallel-lint --ignore-fails --exclude vendor src
update_baselines:
@${MAKE} disable_xdebug --no-print-directory ;\
@@ -102,7 +95,7 @@ update_baselines:
${MAKE} enable_xdebug new_status=$(XDSWI_STATUS) --no-print-directory
-fixers: lint csfixer dependency-analysis phpmd psalm phpstan
+fixers: phpmd psalm phpstan
diff --git a/package.json b/package.json
index e64c96ea..a1ce5fa3 100644
--- a/package.json
+++ b/package.json
@@ -13,16 +13,14 @@
},
"devDependencies": {
"@types/jquery": "^3.5.1",
- "@typescript-eslint/eslint-plugin": "^4.3.0",
- "@typescript-eslint/parser": "^4.3.0",
"babel-eslint": "^10.1.0",
- "eslint": "^7.10.0",
- "eslint-config-prettier": "^6.12.0",
+ "eslint": "^7.8.1",
+ "eslint-config-prettier": "^6.11.0",
"eslint-plugin-prettier": "^3.1.4",
"lessc": "^1.0.2",
"melody-idom": "^1.7.5",
"melody-runtime": "^1.7.5",
- "prettier": "^2.1.2",
+ "prettier": "^2.1.1",
"prettier-plugin-twig-melody": "^0.4.6",
"tslib": "^2.0.1",
"typescript": "^4.0.3"
diff --git a/phpstan-baseline.neon b/phpstan-baseline.neon
index 562e18f0..955c5fc6 100644
--- a/phpstan-baseline.neon
+++ b/phpstan-baseline.neon
@@ -1,33 +1,757 @@
parameters:
ignoreErrors:
+ -
+ message: "#^Method PHPPgAdmin\\\\Connection\\:\\:getDriver\\(\\) should return string but returns null\\.$#"
+ count: 2
+ path: src/classes/Connection.php
+
+ -
+ message: "#^Property PHPPgAdmin\\\\Connection\\:\\:\\$driver \\(string\\) does not accept null\\.$#"
+ count: 1
+ path: src/classes/Connection.php
+
+ -
+ message: "#^Call to method setFetchMode\\(\\) on an unknown class the\\.$#"
+ count: 2
+ path: src/classes/Connection.php
+
+ -
+ message: "#^Call to method connect\\(\\) on an unknown class the\\.$#"
+ count: 2
+ path: src/classes/Connection.php
+
+ -
+ message: "#^Method PHPPgAdmin\\\\Connection\\:\\:getPG9Connection\\(\\) should return ADODB_postgres9 but returns the\\.$#"
+ count: 1
+ path: src/classes/Connection.php
+
+ -
+ message: "#^Method PHPPgAdmin\\\\Connection\\:\\:getPDOConnection\\(\\) should return ADODB_pdo but returns the\\.$#"
+ count: 1
+ path: src/classes/Connection.php
+
+ -
+ message: "#^Access to an undefined property PHPPgAdmin\\\\ContainerUtils\\:\\:\\$container\\.$#"
+ count: 2
+ path: src/classes/ContainerUtils.php
+
+ -
+ message: "#^Unsafe usage of new static\\(\\)\\.$#"
+ count: 1
+ path: src/classes/ContainerUtils.php
+
+ -
+ message: "#^Access to an undefined property PHPPgAdmin\\\\ContainerUtils\\:\\:\\$misc\\.$#"
+ count: 2
+ path: src/classes/ContainerUtils.php
+
+ -
+ message: "#^Method PHPPgAdmin\\\\ContainerUtils\\:\\:getRedirectUrl\\(\\) invoked with 1 parameter, 0 required\\.$#"
+ count: 1
+ path: src/classes/ContainerUtils.php
+
+ -
+ message: "#^Access to an undefined property PHPPgAdmin\\\\ContainerUtils\\:\\:\\$THEME_PATH\\.$#"
+ count: 1
+ path: src/classes/ContainerUtils.php
+
+ -
+ message: "#^Access to an undefined property PHPPgAdmin\\\\ContainerUtils\\:\\:\\$subfolder\\.$#"
+ count: 1
+ path: src/classes/ContainerUtils.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$misc\\.$#"
+ count: 1
+ path: src/classes/ContainerUtils.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$settings\\.$#"
+ count: 1
+ path: src/classes/ContainerUtilsOld.php
+
+ -
+ message: "#^Property PHPPgAdmin\\\\ContainerUtilsOld\\:\\:\\$container \\(Slim\\\\Container\\) does not accept Psr\\\\Container\\\\ContainerInterface\\.$#"
+ count: 1
+ path: src/classes/ContainerUtilsOld.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$requestobj\\.$#"
+ count: 2
+ path: src/classes/ContainerUtilsOld.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$flash\\.$#"
+ count: 1
+ path: src/classes/ContainerUtilsOld.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$misc\\.$#"
+ count: 3
+ path: src/classes/ContainerUtilsOld.php
+
+ -
+ message: "#^Method PHPPgAdmin\\\\ContainerUtilsOld\\:\\:getRedirectUrl\\(\\) invoked with 1 parameter, 0 required\\.$#"
+ count: 1
+ path: src/classes/ContainerUtilsOld.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$BASE_PATH\\.$#"
+ count: 1
+ path: src/classes/ContainerUtilsOld.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 1
+ path: src/classes/ContainerUtilsOld.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$DEBUGMODE\\.$#"
+ count: 1
+ path: src/classes/ContainerUtilsOld.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$THEME_PATH\\.$#"
+ count: 1
+ path: src/classes/ContainerUtilsOld.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$IN_TEST\\.$#"
+ count: 1
+ path: src/classes/ContainerUtilsOld.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$subfolder\\.$#"
+ count: 2
+ path: src/classes/ContainerUtilsOld.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$requestobj\\.$#"
+ count: 2
+ path: src/classes/Misc.php
+
+ -
+ message: "#^Call to an undefined method Slim\\\\Container\\:\\:addError\\(\\)\\.$#"
+ count: 3
+ path: src/classes/Misc.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$server\\.$#"
+ count: 2
+ path: src/classes/Misc.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$database\\.$#"
+ count: 2
+ path: src/classes/Misc.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$schema\\.$#"
+ count: 1
+ path: src/classes/Misc.php
+
+ -
+ message: "#^Method PHPPgAdmin\\\\Misc\\:\\:escapeShellArg\\(\\) should return string\\|null but returns void\\.$#"
+ count: 1
+ path: src/classes/Misc.php
+
+ -
+ message: "#^Result of method PHPPgAdmin\\\\Misc\\:\\:halt\\(\\) \\(void\\) is used\\.$#"
+ count: 1
+ path: src/classes/Misc.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$subfolder\\.$#"
+ count: 1
+ path: src/classes/Misc.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 5
+ path: src/classes/Misc.php
+
+ -
+ message: "#^Call to an undefined method PHPPgAdmin\\\\Database\\\\ADOdbBase\\:\\:isSuperUser\\(\\)\\.$#"
+ count: 1
+ path: src/classes/Misc.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 8
+ path: src/classes/ViewManager.php
+
+ -
+ message: "#^Method PHPPgAdmin\\\\ViewManager\\:\\:maybeRenderIframes\\(\\) should return Slim\\\\Http\\\\Response but returns Psr\\\\Http\\\\Message\\\\ResponseInterface\\.$#"
+ count: 1
+ path: src/classes/ViewManager.php
-# -
-# message: "#^Offset '[a-zA-Z0-9_]+' does not exist on array[.*].$#"
-# path: src/*
-
- message: "#^PHPDoc tag @param references unknown parameter\\: \\$[a-zA-Z0-9_]+$#"
- path: src/*
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$server\\.$#"
+ count: 1
+ path: src/classes/ViewManager.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$database\\.$#"
+ count: 1
+ path: src/classes/ViewManager.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$schema\\.$#"
+ count: 1
+ path: src/classes/ViewManager.php
+
-
- message: "#^Access to an undefined property Psr\\\\[a-zA-Z0-9_]+\\\\[a-zA-Z0-9_]+\\:\\:\\$[a-zA-Z0-9_]+\\.$#"
- path: src/*
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$BASE_PATH\\.$#"
+ count: 6
+ path: src/classes/ViewManager.php
-
- message: "#^Access to an undefined property PHPPgAdmin\\\\[a-zA-Z0-9_]+\\\\[a-zA-Z0-9_]+\\:\\:\\$[a-zA-Z0-9_]+\\.$#"
- path: src/*
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$THEME_PATH\\.$#"
+ count: 2
+ path: src/classes/ViewManager.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$subfolder\\.$#"
+ count: 1
+ path: src/classes/ViewManager.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 3
+ path: src/controllers/AggregatesController.php
+
-
- message: "#^Result of method PHPPgAdmin\\\\[a-zA-Z0-9_]+\\\\[a-zA-Z0-9_]+\\:\\:[a-zA-Z0-9_]+\\(\\) \\(void\\) is used\\.$#"
- path: src/*
+ message: "#^Call to an undefined method Slim\\\\Container\\:\\:getDestinationWithLastTab\\(\\)\\.$#"
+ count: 1
+ path: src/controllers/AlldbController.php
- -
- message: "#^Call to static method br2ln\\(\\) on trait PHPPgAdmin\\Traits\\HelperTrait\\.#"
- path: src/*
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 5
+ path: src/controllers/AlldbController.php
+
+ -
+ message: "#^Method PHPPgAdmin\\\\Controller\\\\BaseController\\:\\:__construct\\(\\) with return type void returns string\\|void but should not return anything\\.$#"
+ count: 2
+ path: src/controllers/BaseController.php
+
+ -
+ message: "#^Call to static method br2ln\\(\\) on trait PHPPgAdmin\\\\Traits\\\\HelperTrait\\.$#"
+ count: 1
+ path: src/controllers/BaseController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$subfolder\\.$#"
+ count: 1
+ path: src/controllers/BaseController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 2
+ path: src/controllers/ColpropertiesController.php
+
+ -
+ message: "#^Call to an undefined method PHPPgAdmin\\\\Controller\\\\ConstraintsController\\:\\:doTree\\(\\)\\.$#"
+ count: 1
+ path: src/controllers/ConstraintsController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 2
+ path: src/controllers/ConstraintsController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 36
+ path: src/controllers/DatabaseController.php
+
+ -
+ message: "#^Call to an undefined method Slim\\\\Container\\:\\:getDestinationWithLastTab\\(\\)\\.$#"
+ count: 16
+ path: src/controllers/DatabaseController.php
+
+ -
+ message: "#^Call to sprintf contains 2 placeholders, 3 values given\\.$#"
+ count: 1
+ path: src/controllers/DatabaseController.php
+
+ -
+ message: "#^Cannot unset offset 'vars' on array\\('content' \\=\\> mixed, 'attr' \\=\\> array\\('href' \\=\\> array\\('url' \\=\\> mixed, 'urlvars' \\=\\> array\\('subject' \\=\\> mixed, 'action' \\=\\> 'confeditautovac', 'schema' \\=\\> mixed, 'table' \\=\\> mixed\\)\\)\\)\\)\\.$#"
+ count: 1
+ path: src/controllers/DatabaseController.php
+
+ -
+ message: "#^Offset 'vars' does not exist on array\\('content' \\=\\> mixed, 'attr' \\=\\> array\\('href' \\=\\> array\\('url' \\=\\> mixed, 'urlvars' \\=\\> array\\('subject' \\=\\> mixed, 'action' \\=\\> 'confeditautovac', 'schema' \\=\\> mixed, 'table' \\=\\> mixed\\)\\)\\)\\)\\.$#"
+ count: 1
+ path: src/controllers/DatabaseController.php
+
+ -
+ message: "#^Cannot unset offset 'vars' on array\\('content' \\=\\> mixed, 'attr' \\=\\> array\\('href' \\=\\> array\\('url' \\=\\> mixed, 'urlvars' \\=\\> array\\('subject' \\=\\> mixed, 'action' \\=\\> 'confdelautovac', 'schema' \\=\\> mixed, 'table' \\=\\> mixed\\)\\)\\)\\)\\.$#"
+ count: 1
+ path: src/controllers/DatabaseController.php
+
+ -
+ message: "#^Offset 'vars' does not exist on array\\('content' \\=\\> mixed, 'attr' \\=\\> array\\('href' \\=\\> array\\('url' \\=\\> mixed, 'urlvars' \\=\\> array\\('subject' \\=\\> mixed, 'action' \\=\\> 'confdelautovac', 'schema' \\=\\> mixed, 'table' \\=\\> mixed\\)\\)\\)\\)\\.$#"
+ count: 1
+ path: src/controllers/DatabaseController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 1
+ path: src/controllers/DataexportController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$responseobj\\.$#"
+ count: 1
+ path: src/controllers/DataexportController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$responseobj\\.$#"
+ count: 1
+ path: src/controllers/DbexportController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 6
+ path: src/controllers/DisplayController.php
+
+ -
+ message: "#^Offset 'subject' does not exist on array\\('server' \\=\\> mixed, 'database' \\=\\> mixed, 'schema' \\=\\> mixed, 'query' \\=\\> mixed, 'count' \\=\\> mixed, 'return' \\=\\> mixed, 'search_path' \\=\\> mixed, 'table' \\=\\> mixed, \\.\\.\\.\\)\\.$#"
+ count: 1
+ path: src/controllers/DisplayController.php
+
+ -
+ message: "#^Offset 'schema' does not exist on array\\('server' \\=\\> mixed, 'database' \\=\\> mixed\\)\\.$#"
+ count: 1
+ path: src/controllers/DisplayController.php
+
+ -
+ message: "#^Offset 'search_path' does not exist on array\\(\\)\\.$#"
+ count: 1
+ path: src/controllers/DisplayController.php
+
+ -
+ message: "#^Variable \\$subject in isset\\(\\) always exists and is not nullable\\.$#"
+ count: 1
+ path: src/controllers/DisplayController.php
+
+ -
+ message: "#^Access to property \\$name on an unknown class the\\.$#"
+ count: 2
+ path: src/controllers/DisplayController.php
+
+ -
+ message: "#^Access to property \\$type on an unknown class the\\.$#"
+ count: 1
+ path: src/controllers/DisplayController.php
+
+ -
+ message: "#^Parameter \\#1 \\(void\\) of echo cannot be converted to string\\.$#"
+ count: 1
+ path: src/controllers/DisplayController.php
+
+ -
+ message: "#^Method PHPPgAdmin\\\\Controller\\\\DisplayController\\:\\:_printPages\\(\\) should return string\\|null but empty return statement found\\.$#"
+ count: 1
+ path: src/controllers/DisplayController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 5
+ path: src/controllers/DomainsController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 9
+ path: src/controllers/FulltextController.php
+
+ -
+ message: "#^Variable \\$mapping might not be defined\\.$#"
+ count: 1
+ path: src/controllers/FulltextController.php
+
+ -
+ message: "#^Method PHPPgAdmin\\\\Controller\\\\FunctionsController\\:\\:showDefinition\\(\\) invoked with 0 parameters, 2 required\\.$#"
+ count: 1
+ path: src/controllers/FunctionsController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 12
+ path: src/controllers/FunctionsController.php
+
+ -
+ message: "#^Undefined variable\\: \\$f$#"
+ count: 1
+ path: src/controllers/FunctionsController.php
-
- message: "#^Constructor of class [a-zA-Z0-9_]+\\\\[a-zA-Z0-9_]+\\\\[a-zA-Z0-9_]+ has an unused parameter \\$[a-zA-Z0-9_]+\\.$#"
- path: src/*
- #- '#Property [^\s] has no typehint specified#'
- #- '#Call to an undefined method [a-zA-Z0-9\\_]+::expects\(\)#'
- #- '#Access to an undefined property PHPPgAdmin::\$[a-zA-Z0-9_]+#'
- #- '#Call to an undefined method PHPUnit_Framework_MockObject_MockObject::[a-zA-Z0-9_]+\(\)#'
+ message: "#^Method PHPPgAdmin\\\\Controller\\\\FunctionsController\\:\\:showDefinition\\(\\) should return string but returns void\\.$#"
+ count: 2
+ path: src/controllers/FunctionsController.php
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 3
+ path: src/controllers/GroupsController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 3
+ path: src/controllers/HistoryController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 4
+ path: src/controllers/IndexesController.php
+
+ -
+ message: "#^Comparison operation \"\\<\" between 0 and \\(array\\|float\\|int\\) results in an error\\.$#"
+ count: 5
+ path: src/controllers/InfoController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 1
+ path: src/controllers/LoginController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 4
+ path: src/controllers/MaterializedviewpropertiesController.php
+
+ -
+ message: "#^Call to an undefined method PHPPgAdmin\\\\Database\\\\Postgres\\:\\:alterMatView\\(\\)\\.$#"
+ count: 1
+ path: src/controllers/MaterializedviewpropertiesController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 6
+ path: src/controllers/MaterializedviewsController.php
+
+ -
+ message: "#^Parameter \\#2 \\(void\\) of echo cannot be converted to string\\.$#"
+ count: 1
+ path: src/controllers/MaterializedviewsController.php
+
+ -
+ message: "#^Offset int does not exist on array\\(\\)\\.$#"
+ count: 2
+ path: src/controllers/MaterializedviewsController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 1
+ path: src/controllers/OperatorsController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$utils\\.$#"
+ count: 1
+ path: src/controllers/PrivilegesController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 1
+ path: src/controllers/PrivilegesController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 5
+ path: src/controllers/RolesController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 2
+ path: src/controllers/RulesController.php
+
+ -
+ message: "#^Call to an undefined method Slim\\\\Container\\:\\:getDestinationWithLastTab\\(\\)\\.$#"
+ count: 1
+ path: src/controllers/SchemasController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 5
+ path: src/controllers/SchemasController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 4
+ path: src/controllers/SequencesController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 1
+ path: src/controllers/ServersController.php
+
+ -
+ message: "#^Call to method recordCount\\(\\) on an unknown class RecordSet\\.$#"
+ count: 2
+ path: src/controllers/SqlController.php
+
+ -
+ message: "#^Access to property \\$fields on an unknown class RecordSet\\.$#"
+ count: 2
+ path: src/controllers/SqlController.php
+
+ -
+ message: "#^Call to method fetchField\\(\\) on an unknown class RecordSet\\.$#"
+ count: 2
+ path: src/controllers/SqlController.php
+
+ -
+ message: "#^Access to property \\$EOF on an unknown class RecordSet\\.$#"
+ count: 1
+ path: src/controllers/SqlController.php
+
+ -
+ message: "#^Call to method moveNext\\(\\) on an unknown class RecordSet\\.$#"
+ count: 1
+ path: src/controllers/SqlController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 1
+ path: src/controllers/SqleditController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$responseobj\\.$#"
+ count: 1
+ path: src/controllers/TablesController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 28
+ path: src/controllers/TablesController.php
+
+ -
+ message: "#^Iterating over an object of an unknown class an\\.$#"
+ count: 2
+ path: src/controllers/TablesController.php
+
+ -
+ message: "#^Parameter \\#2 \\(void\\) of echo cannot be converted to string\\.$#"
+ count: 1
+ path: src/controllers/TablesController.php
+
+ -
+ message: "#^Parameter \\#1 \\(void\\) of echo cannot be converted to string\\.$#"
+ count: 2
+ path: src/controllers/TablesController.php
+
+ -
+ message: "#^Call to sprintf contains 2 placeholders, 3 values given\\.$#"
+ count: 1
+ path: src/controllers/TablesController.php
+
+ -
+ message: "#^Cannot unset offset 'vars' on array\\('content' \\=\\> mixed, 'attr' \\=\\> array\\('href' \\=\\> array\\('url' \\=\\> mixed, 'urlvars' \\=\\> array\\('subject' \\=\\> mixed, 'action' \\=\\> 'confeditautovac', 'schema' \\=\\> mixed, 'table' \\=\\> mixed\\)\\)\\)\\)\\.$#"
+ count: 1
+ path: src/controllers/TablesController.php
+
+ -
+ message: "#^Offset 'vars' does not exist on array\\('content' \\=\\> mixed, 'attr' \\=\\> array\\('href' \\=\\> array\\('url' \\=\\> mixed, 'urlvars' \\=\\> array\\('subject' \\=\\> mixed, 'action' \\=\\> 'confeditautovac', 'schema' \\=\\> mixed, 'table' \\=\\> mixed\\)\\)\\)\\)\\.$#"
+ count: 1
+ path: src/controllers/TablesController.php
+
+ -
+ message: "#^Cannot unset offset 'vars' on array\\('content' \\=\\> mixed, 'attr' \\=\\> array\\('href' \\=\\> array\\('url' \\=\\> mixed, 'urlvars' \\=\\> array\\('subject' \\=\\> mixed, 'action' \\=\\> 'confdelautovac', 'schema' \\=\\> mixed, 'table' \\=\\> mixed\\)\\)\\)\\)\\.$#"
+ count: 1
+ path: src/controllers/TablesController.php
+
+ -
+ message: "#^Offset 'vars' does not exist on array\\('content' \\=\\> mixed, 'attr' \\=\\> array\\('href' \\=\\> array\\('url' \\=\\> mixed, 'urlvars' \\=\\> array\\('subject' \\=\\> mixed, 'action' \\=\\> 'confdelautovac', 'schema' \\=\\> mixed, 'table' \\=\\> mixed\\)\\)\\)\\)\\.$#"
+ count: 1
+ path: src/controllers/TablesController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 3
+ path: src/controllers/TablespacesController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 6
+ path: src/controllers/TblpropertiesController.php
+
+ -
+ message: "#^Variable \\$icon might not be defined\\.$#"
+ count: 1
+ path: src/controllers/TblpropertiesController.php
+
+ -
+ message: "#^Variable \\$type might not be defined\\.$#"
+ count: 1
+ path: src/controllers/TblpropertiesController.php
+
+ -
+ message: "#^Method PHPPgAdmin\\\\Controller\\\\TreeController\\:\\:printTree\\(\\) should return Slim\\\\Http\\\\Response\\|string but returns array\\<int\\|string, array\\<string, mixed\\>\\|bool\\|string\\>\\.$#"
+ count: 1
+ path: src/controllers/TreeController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 4
+ path: src/controllers/TreeController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$responseobj\\.$#"
+ count: 1
+ path: src/controllers/TreeController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$subfolder\\.$#"
+ count: 1
+ path: src/controllers/TreeController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 5
+ path: src/controllers/TriggersController.php
+
+ -
+ message: "#^Cannot unset offset 'enum' on array\\('create' \\=\\> array\\('attr' \\=\\> array\\('href' \\=\\> array\\('url' \\=\\> 'types', 'urlvars' \\=\\> array\\('action' \\=\\> 'create', 'server' \\=\\> mixed, 'database' \\=\\> mixed, 'schema' \\=\\> mixed\\)\\)\\), 'content' \\=\\> mixed\\), 'createcomp' \\=\\> array\\('attr' \\=\\> array\\('href' \\=\\> array\\('url' \\=\\> 'types', 'urlvars' \\=\\> array\\('action' \\=\\> 'create_comp', 'server' \\=\\> mixed, 'database' \\=\\> mixed, 'schema' \\=\\> mixed\\)\\)\\), 'content' \\=\\> mixed\\), 'createenum' \\=\\> array\\('attr' \\=\\> array\\('href' \\=\\> array\\('url' \\=\\> 'types', 'urlvars' \\=\\> array\\('action' \\=\\> 'create_enum', 'server' \\=\\> mixed, 'database' \\=\\> mixed, 'schema' \\=\\> mixed\\)\\)\\), 'content' \\=\\> mixed\\)\\)\\.$#"
+ count: 1
+ path: src/controllers/TypesController.php
+
+ -
+ message: "#^Access to offset 0 on an unknown class an\\.$#"
+ count: 1
+ path: src/controllers/TypesController.php
+
+ -
+ message: "#^Access to offset int on an unknown class an\\.$#"
+ count: 1
+ path: src/controllers/TypesController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 4
+ path: src/controllers/TypesController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 4
+ path: src/controllers/UsersController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 4
+ path: src/controllers/ViewpropertiesController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 6
+ path: src/controllers/ViewsController.php
+
+ -
+ message: "#^Parameter \\#2 \\(void\\) of echo cannot be converted to string\\.$#"
+ count: 1
+ path: src/controllers/ViewsController.php
+
+ -
+ message: "#^Offset int does not exist on array\\(\\)\\.$#"
+ count: 2
+ path: src/controllers/ViewsController.php
+
+ -
+ message: "#^Method PHPPgAdmin\\\\Database\\\\ADOdbBase\\:\\:selectSet\\(\\) should return int\\|PHPPgAdmin\\\\ADORecordSet but returns RecordSet\\.$#"
+ count: 1
+ path: src/database/ADOdbBase.php
+
+ -
+ message: "#^Method PHPPgAdmin\\\\Database\\\\ADOdbBase\\:\\:ErrorNo\\(\\) should return int but returns the\\.$#"
+ count: 1
+ path: src/database/ADOdbBase.php
+
+ -
+ message: "#^Method PHPPgAdmin\\\\Database\\\\ADOdbBase\\:\\:ErrorMsg\\(\\) should return string but returns the\\.$#"
+ count: 1
+ path: src/database/ADOdbBase.php
+
+ -
+ message: "#^Call to method recordCount\\(\\) on an unknown class RecordSet\\.$#"
+ count: 1
+ path: src/database/ADOdbBase.php
+
+ -
+ message: "#^Access to property \\$fields on an unknown class RecordSet\\.$#"
+ count: 1
+ path: src/database/ADOdbBase.php
+
+ -
+ message: "#^Access to an undefined property ADODB_postgres9\\:\\:\\$platform\\.$#"
+ count: 1
+ path: src/database/ADOdbBase.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$subfolder\\.$#"
+ count: 1
+ path: src/database/ADOdbBase.php
+
+ -
+ message: "#^Method PHPPgAdmin\\\\Database\\\\Postgres\\:\\:_alterTable\\(\\) invoked with 8 parameters, 6\\-7 required\\.$#"
+ count: 1
+ path: src/database/Postgres.php
+
+ -
+ message: "#^Method PHPPgAdmin\\\\Database\\\\Postgres\\:\\:endDump\\(\\) should return bool but returns int\\.$#"
+ count: 1
+ path: src/database/Postgres.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$subfolder\\.$#"
+ count: 1
+ path: src/database/Postgres.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 1
+ path: src/decorators/ActionUrlDecorator.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 3
+ path: src/decorators/BranchUrlDecorator.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 3
+ path: src/decorators/RedirectUrlDecorator.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 3
+ path: src/decorators/UrlDecorator.php
+
+ -
+ message: "#^PHPDoc tag @return with type array\\<string\\>\\|string\\|null is not subtype of native type array\\.$#"
+ count: 1
+ path: src/help/PostgresDoc.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$request\\.$#"
+ count: 1
+ path: src/lib.inc.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$response\\.$#"
+ count: 1
+ path: src/lib.inc.php
+
+ -
+ message: "#^Anonymous function has an unused use \\$c\\.$#"
+ count: 1
+ path: src/lib.inc.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 5
+ path: src/xhtml/HTMLNavbarController.php
+
+ -
+ message: "#^Access to an undefined property Slim\\\\Container\\:\\:\\$SUBFOLDER\\.$#"
+ count: 1
+ path: src/xhtml/HTMLTableController.php
diff --git a/phpstan.neon b/phpstan.neon
index ca5b831a..28dcc220 100644
--- a/phpstan.neon
+++ b/phpstan.neon
@@ -1,5 +1,4 @@
-includes:
- - phpstan-baseline.neon
+
parameters:
@@ -10,8 +9,8 @@ parameters:
# The level 8 is the highest level
level: 3
-
- autoload_files:
+
+ scanFiles:
- vendor/adodb/adodb-php/adodb.inc.php
- .configs/debug.kint.php
- src/lib.inc.php
@@ -32,3 +31,30 @@ parameters:
+ ignoreErrors:
+
+ -
+ message: "#^PHPDoc tag @param references unknown parameter\\: \\$[a-zA-Z0-9_]+$#"
+ path: src/*
+ -
+ message: "#^Access to an undefined property Psr\\\\[a-zA-Z0-9_]+\\\\[a-zA-Z0-9_]+\\:\\:\\$[a-zA-Z0-9_]+\\.$#"
+ path: src/*
+
+ -
+ message: "#^Access to an undefined property PHPPgAdmin\\\\[a-zA-Z0-9_]+\\\\[a-zA-Z0-9_]+\\:\\:\\$[a-zA-Z0-9_]+\\.$#"
+ path: src/*
+ -
+ message: "#^Result of method PHPPgAdmin\\\\[a-zA-Z0-9_]+\\\\[a-zA-Z0-9_]+\\:\\:[a-zA-Z0-9_]+\\(\\) \\(void\\) is used\\.$#"
+ path: src/*
+
+ -
+ message: "#^Call to static method br2ln\\(\\) on trait PHPPgAdmin\\Traits\\HelperTrait\\.#"
+ path: src/*
+
+ -
+ message: "#^Constructor of class [a-zA-Z0-9_]+\\\\[a-zA-Z0-9_]+\\\\[a-zA-Z0-9_]+ has an unused parameter \\$[a-zA-Z0-9_]+\\.$#"
+ path: src/*
+ #- '#Property [^\s] has no typehint specified#'
+ #- '#Call to an undefined method [a-zA-Z0-9\\_]+::expects\(\)#'
+ #- '#Access to an undefined property PHPPgAdmin::\$[a-zA-Z0-9_]+#'
+ #- '#Call to an undefined method PHPUnit_Framework_MockObject_MockObject::[a-zA-Z0-9_]+\(\)#'
diff --git a/psalm-baseline.xml b/psalm-baseline.xml
index 189d773b..889bd931 100644
--- a/psalm-baseline.xml
+++ b/psalm-baseline.xml
@@ -1,18 +1,68 @@
<?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>
+<files psalm-version="3.9.5@0cfe565d0afbcd31eadcc281b9017b5692911661">
+ <file src=".configs/debug.var_dumper.php">
+ <UndefinedClass occurrences="4">
+ <code>VarCloner</code>
+ <code>CliDumper</code>
+ <code>HtmlDumper</code>
+ <code>ServerDumper</code>
</UndefinedClass>
</file>
+ <file src="src/classes/ADORecordSet.php">
+ <InvalidReturnStatement occurrences="1">
+ <code>parent::fetchField()</code>
+ </InvalidReturnStatement>
+ <InvalidReturnType occurrences="1">
+ <code>\ADOFieldObject</code>
+ </InvalidReturnType>
+ <UndefinedDocblockClass occurrences="1">
+ <code>parent::fetchField()</code>
+ </UndefinedDocblockClass>
+ </file>
<file src="src/classes/ADOdbException.php">
+ <UndefinedThisPropertyAssignment occurrences="1">
+ <code>$this-&gt;msg</code>
+ </UndefinedThisPropertyAssignment>
+ </file>
+ <file src="src/classes/Connection.php">
+ <NullableReturnStatement occurrences="2">
+ <code>null</code>
+ <code>null</code>
+ </NullableReturnStatement>
<UndefinedDocblockClass occurrences="2">
- <code>number</code>
- <code>number</code>
+ <code>$this-&gt;conn</code>
+ <code>$this-&gt;conn</code>
</UndefinedDocblockClass>
+ <UndefinedFunction occurrences="1">
+ <code>dump($serverInfo)</code>
+ </UndefinedFunction>
</file>
<file src="src/classes/ContainerUtils.php">
- <UndefinedInterfaceMethod occurrences="8">
+ <UndefinedConstant occurrences="2">
+ <code>BASE_PATH</code>
+ <code>BASE_PATH</code>
+ </UndefinedConstant>
+ <UndefinedMagicPropertyFetch occurrences="1">
+ <code>$container-&gt;misc</code>
+ </UndefinedMagicPropertyFetch>
+ <UndefinedPropertyAssignment occurrences="6">
+ <code>$container-&gt;BASE_PATH</code>
+ <code>$container-&gt;SUBFOLDER</code>
+ <code>$container-&gt;DEBUGMODE</code>
+ <code>$container-&gt;THEME_PATH</code>
+ <code>$container-&gt;IN_TEST</code>
+ <code>$container-&gt;subfolder</code>
+ </UndefinedPropertyAssignment>
+ <UndefinedThisPropertyAssignment occurrences="1">
+ <code>$this-&gt;container</code>
+ </UndefinedThisPropertyAssignment>
+ </file>
+ <file src="src/classes/ContainerUtilsOld.php">
+ <UndefinedConstant occurrences="2">
+ <code>BASE_PATH</code>
+ <code>BASE_PATH</code>
+ </UndefinedConstant>
+ <UndefinedInterfaceMethod occurrences="7">
<code>$container</code>
<code>$container</code>
<code>$container</code>
@@ -20,22 +70,58 @@
<code>$container</code>
<code>$container</code>
<code>$container</code>
- <code>offsetSet</code>
</UndefinedInterfaceMethod>
+ <UndefinedPropertyAssignment occurrences="6">
+ <code>$container-&gt;BASE_PATH</code>
+ <code>$container-&gt;SUBFOLDER</code>
+ <code>$container-&gt;DEBUGMODE</code>
+ <code>$container-&gt;THEME_PATH</code>
+ <code>$container-&gt;IN_TEST</code>
+ <code>$container-&gt;subfolder</code>
+ </UndefinedPropertyAssignment>
</file>
<file src="src/classes/Misc.php">
- <NullableReturnStatement occurrences="2">
- <code>$this-&gt;_server_info</code>
- <code>$this-&gt;halt($this-&gt;lang['strinvalidserverparam'])</code>
+ <InvalidNullableReturnType occurrences="1">
+ <code>string</code>
+ </InvalidNullableReturnType>
+ <NullableReturnStatement occurrences="1">
+ <code>$this-&gt;_server_id</code>
</NullableReturnStatement>
- <UndefinedMethod occurrences="1">
- <code>setSchema</code>
+ <UndefinedMethod occurrences="3">
+ <code>addError</code>
+ <code>addError</code>
+ <code>addError</code>
</UndefinedMethod>
</file>
+ <file src="src/classes/ViewManager.php">
+ <UndefinedFunction occurrences="16">
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>containerInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
+ </file>
<file src="src/controllers/AggregatesController.php">
<NullReference occurrences="1">
<code>$_REQUEST</code>
</NullReference>
+ <UndefinedFunction occurrences="3">
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
</file>
<file src="src/controllers/AlldbController.php">
<NullReference occurrences="3">
@@ -43,12 +129,31 @@
<code>$_POST</code>
<code>$_POST</code>
</NullReference>
+ <UndefinedFunction occurrences="4">
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
+ <UndefinedMethod occurrences="1">
+ <code>getDestinationWithLastTab</code>
+ </UndefinedMethod>
</file>
<file src="src/controllers/BaseController.php">
+ <UndefinedFunction occurrences="3">
+ <code>\requestInstance()</code>
+ <code>\requestInstance()</code>
+ <code>\requestInstance()</code>
+ </UndefinedFunction>
<UndefinedThisPropertyAssignment occurrences="1">
<code>$this-&gt;postgresqlMinVer</code>
</UndefinedThisPropertyAssignment>
</file>
+ <file src="src/controllers/CastsController.php">
+ <InvalidArgument occurrences="1">
+ <code>$casts</code>
+ </InvalidArgument>
+ </file>
<file src="src/controllers/ColpropertiesController.php">
<NullArgument occurrences="1">
<code>null</code>
@@ -56,6 +161,10 @@
<NullReference occurrences="1">
<code>$_REQUEST</code>
</NullReference>
+ <UndefinedFunction occurrences="2">
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
</file>
<file src="src/controllers/ConstraintsController.php">
<NullReference occurrences="5">
@@ -65,6 +174,10 @@
<code>$_POST</code>
<code>$_POST</code>
</NullReference>
+ <UndefinedFunction occurrences="2">
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
<UndefinedMethod occurrences="1">
<code>doTree</code>
</UndefinedMethod>
@@ -73,6 +186,50 @@
<NullReference occurrences="1">
<code>$_REQUEST</code>
</NullReference>
+ <UndefinedFunction occurrences="19">
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
+ <UndefinedMethod occurrences="16">
+ <code>getDestinationWithLastTab</code>
+ <code>getDestinationWithLastTab</code>
+ <code>getDestinationWithLastTab</code>
+ <code>getDestinationWithLastTab</code>
+ <code>getDestinationWithLastTab</code>
+ <code>getDestinationWithLastTab</code>
+ <code>getDestinationWithLastTab</code>
+ <code>getDestinationWithLastTab</code>
+ <code>getDestinationWithLastTab</code>
+ <code>getDestinationWithLastTab</code>
+ <code>getDestinationWithLastTab</code>
+ <code>getDestinationWithLastTab</code>
+ <code>getDestinationWithLastTab</code>
+ <code>getDestinationWithLastTab</code>
+ <code>getDestinationWithLastTab</code>
+ <code>getDestinationWithLastTab</code>
+ </UndefinedMethod>
+ </file>
+ <file src="src/controllers/DataexportController.php">
+ <UndefinedFunction occurrences="1">
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
</file>
<file src="src/controllers/DbexportController.php">
<EmptyArrayAccess occurrences="1">
@@ -86,15 +243,8 @@
<InvalidArgument occurrences="1">
<code>$resultset-&gt;recordCount()</code>
</InvalidArgument>
- <InvalidArrayOffset occurrences="9">
- <code>$_gets['schema']</code>
+ <InvalidArrayOffset occurrences="2">
<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>
<NullReference occurrences="5">
@@ -119,6 +269,12 @@
<code>$resultset-&gt;fetchField($j++)</code>
<code>$finfo-&gt;type</code>
</UndefinedDocblockClass>
+ <UndefinedFunction occurrences="4">
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
</file>
<file src="src/controllers/DomainsController.php">
<NullReference occurrences="3">
@@ -126,8 +282,18 @@
<code>$_POST</code>
<code>$_POST</code>
</NullReference>
+ <UndefinedFunction occurrences="5">
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
</file>
<file src="src/controllers/FulltextController.php">
+ <InvalidArgument occurrences="1">
+ <code>$items</code>
+ </InvalidArgument>
<NullReference occurrences="6">
<code>$_POST</code>
<code>$_POST</code>
@@ -136,8 +302,40 @@
<code>$_POST</code>
<code>$_POST</code>
</NullReference>
+ <UndefinedDocblockClass occurrences="4">
+ <code>$ftscfg-&gt;recordCount()</code>
+ <code>$ftsdict-&gt;recordCount()</code>
+ <code>$ftsdicts-&gt;recordCount()</code>
+ <code>$ftsdicts-&gt;recordCount()</code>
+ </UndefinedDocblockClass>
+ <UndefinedFunction occurrences="9">
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
</file>
<file src="src/controllers/FunctionsController.php">
+ <InvalidArgument occurrences="13">
+ <code>$_POST['formFunction']</code>
+ <code>$_POST['formObjectFile']</code>
+ <code>$_POST['formLinkSymbol']</code>
+ <code>$_POST['formLinkSymbol']</code>
+ <code>$_POST['formDefinition']</code>
+ <code>$_POST['formComment']</code>
+ <code>$_POST['formObjectFile']</code>
+ <code>$_POST['formLinkSymbol']</code>
+ <code>$_POST['formLinkSymbol']</code>
+ <code>$_POST['formDefinition']</code>
+ <code>$_POST['formComment']</code>
+ <code>$_POST['formCost']</code>
+ <code>$_POST['formRows']</code>
+ </InvalidArgument>
<InvalidNullableReturnType occurrences="1">
<code>string</code>
</InvalidNullableReturnType>
@@ -148,6 +346,20 @@
<TooFewArguments occurrences="1">
<code>showDefinition</code>
</TooFewArguments>
+ <UndefinedFunction occurrences="12">
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
<UndefinedVariable occurrences="1">
<code>$f</code>
</UndefinedVariable>
@@ -158,14 +370,44 @@
<code>$_POST</code>
<code>$_POST</code>
</NullReference>
+ <UndefinedFunction occurrences="3">
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
+ </file>
+ <file src="src/controllers/HistoryController.php">
+ <UndefinedFunction occurrences="3">
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
</file>
<file src="src/controllers/IndexesController.php">
+ <InvalidArgument occurrences="10">
+ <code>$formIndexName</code>
+ <code>$formWhere</code>
+ <code>$this-&gt;getPostParam('formIndexName', '')</code>
+ <code>$this-&gt;getPostParam('formIndexType')</code>
+ <code>$this-&gt;getPostParam('formUnique')</code>
+ <code>$formWhere</code>
+ <code>$formSpc</code>
+ <code>$this-&gt;getPostParam('formConcur')</code>
+ <code>$this-&gt;getPostParam('index')</code>
+ <code>$this-&gt;getPostParam('cascade')</code>
+ </InvalidArgument>
<NullReference occurrences="4">
<code>$_REQUEST</code>
<code>$_REQUEST</code>
<code>$_REQUEST</code>
<code>$_POST</code>
</NullReference>
+ <UndefinedFunction occurrences="4">
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
</file>
<file src="src/controllers/InfoController.php">
<UndefinedThisPropertyAssignment occurrences="1">
@@ -178,23 +420,58 @@
<code>$this-&gt;shownull</code>
</UndefinedThisPropertyFetch>
</file>
+ <file src="src/controllers/IntroController.php">
+ <UndefinedFunction occurrences="4">
+ <code>\requestInstance()</code>
+ <code>\responseInstance()</code>
+ <code>\responseInstance()</code>
+ <code>\requestInstance()</code>
+ </UndefinedFunction>
+ </file>
+ <file src="src/controllers/LoginController.php">
+ <UndefinedFunction occurrences="5">
+ <code>\requestInstance()</code>
+ <code>\responseInstance()</code>
+ <code>\responseInstance()</code>
+ <code>\requestInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
+ </file>
<file src="src/controllers/MaterializedviewpropertiesController.php">
<NullReference occurrences="2">
<code>$_REQUEST</code>
<code>$_POST</code>
</NullReference>
+ <UndefinedFunction occurrences="3">
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
</file>
<file src="src/controllers/MaterializedviewsController.php">
<NullReference occurrences="2">
<code>$_REQUEST</code>
<code>$_REQUEST</code>
</NullReference>
+ <UndefinedFunction occurrences="3">
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
+ </file>
+ <file src="src/controllers/OperatorsController.php">
+ <UndefinedFunction occurrences="1">
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
</file>
<file src="src/controllers/PrivilegesController.php">
<NullReference occurrences="2">
<code>$_REQUEST</code>
<code>$_REQUEST</code>
</NullReference>
+ <UndefinedFunction occurrences="1">
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
</file>
<file src="src/controllers/RolesController.php">
<NullReference occurrences="4">
@@ -203,30 +480,81 @@
<code>$_POST</code>
<code>$_POST</code>
</NullReference>
+ <UndefinedFunction occurrences="5">
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
</file>
<file src="src/controllers/RulesController.php">
<NullReference occurrences="1">
<code>$_POST</code>
</NullReference>
+ <UndefinedFunction occurrences="2">
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
</file>
<file src="src/controllers/SchemasController.php">
<NullReference occurrences="2">
<code>$_POST</code>
<code>$_POST</code>
</NullReference>
+ <UndefinedFunction occurrences="4">
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
+ <UndefinedMethod occurrences="1">
+ <code>getDestinationWithLastTab</code>
+ </UndefinedMethod>
</file>
<file src="src/controllers/SequencesController.php">
+ <InvalidArgument occurrences="1">
+ <code>$sequences</code>
+ </InvalidArgument>
<NullReference occurrences="3">
<code>$_POST</code>
<code>$_POST</code>
<code>$_POST</code>
</NullReference>
+ <UndefinedDocblockClass occurrences="3">
+ <code>$sequence-&gt;recordCount()</code>
+ <code>$sequence-&gt;recordCount()</code>
+ <code>$sequence-&gt;recordCount()</code>
+ </UndefinedDocblockClass>
+ <UndefinedFunction occurrences="4">
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
+ </file>
+ <file src="src/controllers/ServersController.php">
+ <UndefinedFunction occurrences="4">
+ <code>\requestInstance()</code>
+ <code>\responseInstance()</code>
+ <code>\responseInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
+ </file>
+ <file src="src/controllers/SqlController.php">
+ <UndefinedDocblockClass occurrences="2">
+ <code>$data-&gt;conn-&gt;Execute($this-&gt;query)</code>
+ <code>$rs</code>
+ </UndefinedDocblockClass>
</file>
<file src="src/controllers/SqleditController.php">
<NullReference occurrences="2">
<code>$_REQUEST</code>
<code>$_REQUEST</code>
</NullReference>
+ <UndefinedFunction occurrences="1">
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
</file>
<file src="src/controllers/TablesController.php">
<NullReference occurrences="3">
@@ -237,12 +565,31 @@
<UndefinedDocblockClass occurrences="1">
<code>$tables-&gt;recordCount()</code>
</UndefinedDocblockClass>
+ <UndefinedFunction occurrences="12">
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
</file>
<file src="src/controllers/TablespacesController.php">
<NullReference occurrences="2">
<code>$_POST</code>
<code>$_POST</code>
</NullReference>
+ <UndefinedFunction occurrences="3">
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
</file>
<file src="src/controllers/TblpropertiesController.php">
<NullReference occurrences="4">
@@ -251,18 +598,48 @@
<code>$_REQUEST</code>
<code>$_POST</code>
</NullReference>
+ <UndefinedFunction occurrences="5">
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
</file>
<file src="src/controllers/TreeController.php">
<InvalidReturnStatement occurrences="1">
- <code>$parent</code>
+ <code>$this-&gt;printTreeJSON($treedata, $attrs, $print)</code>
</InvalidReturnStatement>
+ <InvalidReturnType occurrences="1">
+ <code>\Slim\Http\Response|string</code>
+ </InvalidReturnType>
+ <MoreSpecificImplementedParamType occurrences="1">
+ <code>$_treedata</code>
+ </MoreSpecificImplementedParamType>
+ <UndefinedFunction occurrences="4">
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
</file>
<file src="src/controllers/TriggersController.php">
<NullReference occurrences="1">
<code>$_POST</code>
</NullReference>
+ <UndefinedFunction occurrences="5">
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
</file>
<file src="src/controllers/TypesController.php">
+ <InvalidArgument occurrences="2">
+ <code>$types</code>
+ <code>$vals</code>
+ </InvalidArgument>
<InvalidArrayOffset occurrences="1">
<code>$navlinks['enum']</code>
</InvalidArrayOffset>
@@ -271,119 +648,88 @@
<code>$_REQUEST</code>
<code>$_POST</code>
</NullReference>
+ <UndefinedDocblockClass occurrences="4">
+ <code>$typedata-&gt;recordCount()</code>
+ <code>$vals-&gt;getArray()</code>
+ <code>$vals</code>
+ <code>$vals</code>
+ </UndefinedDocblockClass>
+ <UndefinedFunction occurrences="6">
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
</file>
<file src="src/controllers/UsersController.php">
<NullReference occurrences="2">
<code>$_POST</code>
<code>$_POST</code>
</NullReference>
+ <UndefinedFunction occurrences="4">
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
</file>
<file src="src/controllers/ViewpropertiesController.php">
<NullReference occurrences="2">
<code>$_REQUEST</code>
<code>$_POST</code>
</NullReference>
+ <UndefinedFunction occurrences="3">
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
</file>
<file src="src/controllers/ViewsController.php">
<NullReference occurrences="2">
<code>$_REQUEST</code>
<code>$_REQUEST</code>
</NullReference>
+ <UndefinedFunction occurrences="3">
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
</file>
<file src="src/database/ADOdbBase.php">
- <InvalidReturnStatement occurrences="2">
+ <InvalidReturnStatement occurrences="5">
<code>$e-&gt;getCode()</code>
+ <code>$this-&gt;conn-&gt;Execute($sql)</code>
<code>$e-&gt;getCode()</code>
+ <code>$this-&gt;conn-&gt;ErrorNo()</code>
+ <code>$this-&gt;conn-&gt;ErrorMsg()</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>
+ <InvalidReturnType occurrences="4">
+ <code>int|\PHPPgAdmin\ADORecordSet</code>
+ <code>int|\PHPPgAdmin\ADORecordSet</code>
+ <code>int</code>
+ <code>string</code>
+ </InvalidReturnType>
+ <UndefinedDocblockClass occurrences="9">
+ <code>$this-&gt;conn-&gt;Execute($sql)</code>
+ <code>$this-&gt;conn-&gt;Execute($sql)</code>
+ <code>$this-&gt;conn-&gt;ErrorNo()</code>
+ <code>$this-&gt;conn-&gt;ErrorMsg()</code>
+ <code>$this-&gt;conn-&gt;Execute($sql)</code>
+ <code>$rs</code>
+ <code>$this-&gt;conn-&gt;Execute($sql)</code>
+ <code>$this-&gt;conn-&gt;Execute($sql)</code>
+ <code>$this-&gt;conn-&gt;Execute($setClause . $whereClause)</code>
</UndefinedDocblockClass>
</file>
<file src="src/database/Postgres.php">
<LoopInvalidation occurrences="1">
<code>$i</code>
</LoopInvalidation>
- <UndefinedDocblockClass occurrences="1">
- <code>$rs-&gt;recordCount()</code>
- </UndefinedDocblockClass>
- </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>
+ <InvalidArrayOffset occurrences="4">
<code>$template['schema']</code>
<code>$template['name']</code>
<code>$template['schema']</code>
@@ -394,79 +740,42 @@
<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 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>
+ <UndefinedDocblockClass occurrences="2">
<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>
+ <code>$data-&gt;recordCount()</code>
</UndefinedDocblockClass>
</file>
<file src="src/database/databasetraits/TableTrait.php">
- <InvalidArgument occurrences="2">
- <code>$privs</code>
+ <InvalidArgument occurrences="1">
<code>$privs</code>
</InvalidArgument>
- <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>
+ <InvalidReturnType occurrences="2">
+ <code>\PHPPgAdmin\ADORecordSet</code>
+ <code>bool</code>
+ </InvalidReturnType>
</file>
- <file src="src/database/databasetraits/ViewTrait.php">
- <UndefinedDocblockClass occurrences="1">
- <code>$data-&gt;recordCount()</code>
- </UndefinedDocblockClass>
+ <file src="src/database/databasetraits/TriggerTrait.php">
+ <InvalidReturnType occurrences="1">
+ <code>int</code>
+ </InvalidReturnType>
</file>
<file src="src/decorators/ActionUrlDecorator.php">
+ <UndefinedFunction occurrences="1">
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
<UndefinedThisPropertyAssignment occurrences="4">
<code>$this-&gt;base</code>
<code>$this-&gt;queryVars</code>
@@ -486,6 +795,11 @@
</UndefinedThisPropertyFetch>
</file>
<file src="src/decorators/BranchUrlDecorator.php">
+ <UndefinedFunction occurrences="3">
+ <code>containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
<UndefinedThisPropertyAssignment occurrences="4">
<code>$this-&gt;base</code>
<code>$this-&gt;queryVars</code>
@@ -547,6 +861,11 @@
</UndefinedThisPropertyFetch>
</file>
<file src="src/decorators/RedirectUrlDecorator.php">
+ <UndefinedFunction occurrences="3">
+ <code>containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
<UndefinedThisPropertyAssignment occurrences="4">
<code>$this-&gt;base</code>
<code>$this-&gt;queryVars</code>
@@ -568,6 +887,11 @@
</UndefinedThisPropertyFetch>
</file>
<file src="src/decorators/UrlDecorator.php">
+ <UndefinedFunction occurrences="3">
+ <code>containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
<UndefinedThisPropertyAssignment occurrences="4">
<code>$this-&gt;base</code>
<code>$this-&gt;queryVars</code>
@@ -578,23 +902,10 @@
<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 src="src/help/PostgresDoc.php">
+ <MismatchingDocblockReturnType occurrences="1">
+ <code>null|string|string[]</code>
+ </MismatchingDocblockReturnType>
</file>
<file src="src/router.php">
<InvalidScope occurrences="6">
@@ -617,23 +928,57 @@
<UndefinedDocblockClass occurrences="1">
<code>$autovac-&gt;recordCount()</code>
</UndefinedDocblockClass>
+ <UndefinedFunction occurrences="16">
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
+ </file>
+ <file src="src/traits/ExportTrait.php">
+ <UndefinedFunction occurrences="1">
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
</file>
<file src="src/traits/HelperTrait.php">
<UndefinedDocblockClass occurrences="1">
<code>$set-&gt;recordCount()</code>
</UndefinedDocblockClass>
- <UndefinedThisPropertyFetch occurrences="2">
- <code>$this-&gt;container</code>
+ <UndefinedFunction occurrences="3">
+ <code>\responseInstance()</code>
+ <code>\requestInstance()</code>
+ <code>\responseInstance()</code>
+ </UndefinedFunction>
+ <UndefinedThisPropertyFetch occurrences="1">
<code>$this-&gt;container</code>
</UndefinedThisPropertyFetch>
</file>
<file src="src/traits/InsertEditRowTrait.php">
- <UndefinedConstant occurrences="2">
- <code>SUBFOLDER</code>
- <code>SUBFOLDER</code>
- </UndefinedConstant>
+ <UndefinedFunction occurrences="2">
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
</file>
<file src="src/traits/MiscTrait.php">
+ <UndefinedFunction occurrences="5">
+ <code>\containerInstance()</code>
+ <code>containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
<UndefinedMethod occurrences="1">
<code>isSuperUser</code>
</UndefinedMethod>
@@ -645,6 +990,11 @@
<NullReference occurrences="1">
<code>$_POST</code>
</NullReference>
+ <UndefinedFunction occurrences="3">
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
</file>
<file src="src/xhtml/HTMLController.php">
<ConflictingReferenceConstraint occurrences="1">
@@ -655,13 +1005,17 @@
<InvalidArgument occurrences="1">
<code>$alltabs</code>
</InvalidArgument>
- <InvalidReturnType occurrences="1">
- <code>? string</code>
- </InvalidReturnType>
+ <UndefinedFunction occurrences="5">
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
</file>
<file src="src/xhtml/HTMLTableController.php">
- <UndefinedConstant occurrences="1">
- <code>SUBFOLDER</code>
- </UndefinedConstant>
+ <UndefinedFunction occurrences="1">
+ <code>\containerInstance()</code>
+ </UndefinedFunction>
</file>
</files>
diff --git a/psalm.xml b/psalm.xml
index 2ed15e95..4d52e5f8 100644
--- a/psalm.xml
+++ b/psalm.xml
@@ -1,14 +1,13 @@
<?xml version="1.0"?>
<psalm totallyTyped="false" errorLevel="3" resolveFromConfigFile="true"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" autoloader="src/lib.inc.php"
- xmlns="https://getpsalm.org/schema/config" cacheDirectory=".build/psalm" xsi:schemaLocation="https://getpsalm.org/schema/config vendor/vimeo/psalm/config.xsd" errorBaseline="psalm-baseline.xml">
+ 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="psalm-baseline.xml">
<projectFiles>
<directory name="src" />
<ignoreFiles>
<directory name="vendor" />
<directory name="temp" />
- <directory name="tests" />
- <directory name=".build" />
+ <directory name="src/translations" />
</ignoreFiles>
</projectFiles>
diff --git a/src/classes/ADONewConnection.php b/src/classes/ADONewConnection.php
index 8f998c3b..ce041cc5 100644
--- a/src/classes/ADONewConnection.php
+++ b/src/classes/ADONewConnection.php
@@ -6,10 +6,7 @@
namespace PHPPgAdmin;
-/**
- * @file
- * Extends \ADODB_postgres9 to let correct inference on PHPDoc params
- */
+
/**
* Extends \ADODB_postgres9 to let correct inference on PHPDoc params.
diff --git a/src/classes/ADORecordSet.php b/src/classes/ADORecordSet.php
index 74c3f989..0b88ccd9 100644
--- a/src/classes/ADORecordSet.php
+++ b/src/classes/ADORecordSet.php
@@ -6,10 +6,7 @@
namespace PHPPgAdmin;
-/**
- * @file
- * Extends ADORecordSet to let correct inference on PHPDoc params
- */
+
/**
* Extends ADORecordSet to let correct inference on PHPDoc params.
diff --git a/src/classes/ADOdbException.php b/src/classes/ADOdbException.php
index dde45a8b..e55d610a 100644
--- a/src/classes/ADOdbException.php
+++ b/src/classes/ADOdbException.php
@@ -122,9 +122,9 @@ class ADOdbException extends \Exception
'line' => $backtrace[0]['line'],
];
- $errmsg = \htmlentities(\PHPPgAdmin\Traits\HelperTrait::br2ln($errmsg), \ENT_NOQUOTES);
- $p1 = \htmlentities(\PHPPgAdmin\Traits\HelperTrait::br2ln($p1), \ENT_NOQUOTES);
- $p2 = \htmlentities(\PHPPgAdmin\Traits\HelperTrait::br2ln($p2), \ENT_NOQUOTES);
+ $errmsg = \htmlentities(\PHPPgAdmin\ContainerUtils::br2ln($errmsg), \ENT_NOQUOTES);
+ $p1 = \htmlentities(\PHPPgAdmin\ContainerUtils::br2ln($p1), \ENT_NOQUOTES);
+ $p2 = \htmlentities(\PHPPgAdmin\ContainerUtils::br2ln($p2), \ENT_NOQUOTES);
switch ($fn) {
case 'EXECUTE':
diff --git a/src/classes/Connection.php b/src/classes/Connection.php
index d0eec0bf..d7a8d5d9 100644
--- a/src/classes/Connection.php
+++ b/src/classes/Connection.php
@@ -60,7 +60,7 @@ class Connection
*
* @param array $server_info
* @param string $database database name
- * @param \Slim\Container $container
+ * @param \PHPPgAdmin\ContainerUtils $container
* @param int $fetchMode Defaults to associative. Override for different behaviour
*/
public function __construct($server_info, $database, $container, $fetchMode = ADODB_FETCH_ASSOC)
@@ -78,7 +78,7 @@ class Connection
// ADODB_Postgres9 Approach
//$driver='postgres9';
$this->conn = \ADONewConnection($this->adodb_driver);
- $this->conn->setFetchMode($fetchMode);
+
// PDO Approach
@@ -89,23 +89,19 @@ class Connection
$this->prtrace(['message' => $e->getMessage(), 'trace' => $e->getTraceAsString()]);
*/
try {
- $this->_connection_result = 'pdo' === $this->adodb_driver ?
+ $this->conn = 'pdo' === $this->adodb_driver ?
$this->getPDOConnection($host, $port, $sslmode, $database, $user, $password, $fetchMode) :
$this->getPG9Connection($host, $port, $sslmode, $database, $user, $password, $fetchMode);
-
+ $this->conn->setFetchMode($fetchMode);
//$this->prtrace($this->conn);
} catch (\Exception $e) {
//dump($dsnString, $this->adodb_driver);
$this->prtrace($e->getMessage(), \array_slice($e->getTrace(), 0, 10));
}
}
+
- public function getConnectionResult()
- {
- return $this->_connection_result;
- }
-
- public function getVersion()
+ public function getVersion():string
{
return $this->pgVersion;
}
@@ -124,6 +120,7 @@ class Connection
return null;
}
$serverInfo = $this->conn->ServerInfo();
+ dump($serverInfo);
$this->pgVersion = $serverInfo['version'];
$description = "PostgreSQL {$this->pgVersion}";
diff --git a/src/classes/ContainerUtils.php b/src/classes/ContainerUtils.php
index 10498c57..21ae51b1 100644
--- a/src/classes/ContainerUtils.php
+++ b/src/classes/ContainerUtils.php
@@ -1,102 +1,113 @@
<?php
-/**
- * PHPPgAdmin 6.0.0
- */
-
+
namespace PHPPgAdmin;
-use Slim\App;
-use Slim\Container;
-use requestInstance;
-
-\defined('BASE_PATH') || \define('BASE_PATH', \dirname(__DIR__, 2));
-\defined('THEME_PATH') || \define('THEME_PATH', BASE_PATH . '/assets/themes');
-
-\defined('DEBUGMODE') || \define('DEBUGMODE', false);
-\defined('IN_TEST') || \define('IN_TEST', false);
+use Kint\Kint;
+use Psr\Container\ContainerInterface;
+use Slim\Collection;
+use Slim\DefaultServicesProvider;
/**
- * A class that adds convenience methods to the container.
+ * @property array $deploy_info
+ * @property \Slim\Flash\Messages $flash
+ * @property \GuzzleHttp\Client $fcIntranetClient
+ * @property \GuzzleHttp\Client $apiDteClient
+ * @property \Slim\Views\Twig $view
+ * @property \Slim\Http\Request $request
+ * @property \Slim\Http\Response $response
+ * @property string $BASE_PATH
+ * @property string $THEME_PATH
+ * @property string $subFolder
+ * @property bool $DEBUGMODE
+ * @property bool $IN_TEST
+ * @property string $server
+ * @property string $database
+ * @property string $schema
*/
-class ContainerUtils
-{
- use \PHPPgAdmin\Traits\HelperTrait;
- /**
- * @var string
- */
- const BASE_PATH = BASE_PATH;
- /**
- * @var string
- */
- const SUBFOLDER = PHPPGA_SUBFOLDER;
- /**
- * @var string
- */
- const DEBUGMODE = DEBUGMODE;
+class ContainerUtils extends \Slim\Container implements ContainerInterface
+{ use \PHPPgAdmin\Traits\HelperTrait;
/**
- * @var string
+ * @var self|null
*/
- const THEME_PATH = THEME_PATH;
+ private static $instance;
- /**
- * @var \Slim\Container
- */
- protected $container;
/**
- * @var App
+ * $appInstance.
+ *
+ * @var null|\Slim\App
*/
- protected $_app;
+ private static $appInstance;
/**
+ * Default settings.
+ *
* @var array
*/
- protected $conf;
+ private $defaultSettings = [
+ 'httpVersion' => '1.1',
+ 'responseChunkSize' => 4096,
+ 'outputBuffering' => 'append',
+ 'determineRouteBeforeAppMiddleware' => false,
+ 'displayErrorDetails' => false,
+ 'addContentLengthHeader' => true,
+ 'routerCacheFile' => false,
+ ];
+ /**
+ * Undocumented variable
+ *
+ * @var array
+ */
+ private static $envConfig=[
+ 'BASE_PATH'=>'',
+ 'subFolder'=>'',
+ 'DEBUGMODE'=>false,
+ 'THEME_PATH'=>'',
+
+ ];
/**
- * @var self
+ * @param array $values the parameters or objects
*/
- protected static $_instance;
+ public function __construct(array $values = [])
+ {
+ parent::__construct($values);
- /**
- * Constructor of the ContainerUtils class.
+ $userSettings = $values['settings'] ?? [];
+ $this->registerDefaultServices($userSettings);
+ $this->container = $this;
+ self::$instance = $this;
+ }
+ /**
+ * Gets the subfolder.
+ *
+ * @param string $path The path
+ *
+ * @return string the subfolder
*/
- public function __construct()
+ public function getSubfolder(string $path = ''): string
{
- $composerinfo = \json_decode(\file_get_contents(BASE_PATH . '/composer.json'));
- $appVersion = $composerinfo->extra->version;
-
- $phpMinVer = (\str_replace(['<', '>', '='], '', $composerinfo->require->php));
- //$this->prtrace($appVersion);
- //$this->dump($composerinfo);
- $settings = [
- 'determineRouteBeforeAppMiddleware' => true,
- 'base_path' => self::BASE_PATH,
- 'subfolder' => self::SUBFOLDER,
- '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' => 61,
- // Application version
- 'appVersion' => 'v' . $appVersion,
- // Application name
- 'appName' => 'phpPgAdmin6',
-
- // PostgreSQL and PHP minimum version
- 'postgresqlMinVer' => '9.3',
- 'phpMinVer' => $phpMinVer,
- 'displayErrorDetails' => self::DEBUGMODE,
- 'addContentLengthHeader' => false,
- ];
+
+ return \implode(\DIRECTORY_SEPARATOR, [$this->subFolder, $path]);
+ }
+ public static function getAppInstance(array $config = []): \Slim\App
+ {
+
+ $config = \array_merge(self::getDefaultConfig(), $config);
+ $container = self::getContainerInstance($config);
- if (!self::DEBUGMODE && !IN_TEST) {
- $settings['routerCacheFile'] = self::BASE_PATH . '/temp/route.cache.php';
+ if (!self::$appInstance) {
+ self::$appInstance = new \Slim\App($container);
}
- $config = [
+
+ return self::$appInstance;
+ }
+
+ public static function getContainerInstance(array $config = []): self
+ {
+ self::$envConfig = [
'msg' => '',
'appThemes' => [
'default' => 'Default',
@@ -104,286 +115,296 @@ class ContainerUtils
'gotar' => 'Blue/Green',
'bootstrap' => 'Bootstrap3',
],
- 'settings' => $settings,
+ 'BASE_PATH'=>$config['BASE_PATH']??dirname(__DIR__,2),
+ 'subFolder'=>$config['subfolder']??'',
+ 'DEBUGMODE'=>$config['debugmode']??false,
+ 'THEME_PATH'=>$config['theme_path']??dirname(__DIR__,2).'/assets/themes',
+ 'IN_TEST'=>$config['IN_TEST']??false,
+ 'webdbLastTab'=>[]
];
- $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['responseobj'] = $container['response'];
+ self::$envConfig=array_merge( self::$envConfig,$config);
+ if (!self::$instance) {
+ self::$instance = new static(self::$envConfig);
+
+ self::$instance
+ ->withConf(self::$envConfig)
+ ->setExtra()
+ ->setMisc()
+ ->setViews();
+ }
+ //ddd($container->subfolder);
+ return self::$instance;
+}
- $this->container = $container;
+/**
+ * Determines the redirection url according to query string.
+ *
+ * @return string the redirect url
+ */
+public function getRedirectUrl()
+{$container=self::getContainerInstance();
+ $query_string = $container->request->getUri()->getQuery();
+
+ // if server_id isn't set, then you will be redirected to intro
+ if (null === $container->request->getQueryParam('server')) {
+ $destinationurl = self::$envConfig['subFolder'] . '/src/views/intro';
+ } else {
+ // otherwise, you'll be redirected to the login page for that server;
+ $destinationurl = self::$envConfig['subFolder'] . '/src/views/login' . ($query_string ? '?' . $query_string : '');
}
- /**
- * Gets the container instance.
- *
- * @throws \Exception (description)
- *
- * @return \Slim\Container the container instance
- */
- public static function getContainerInstance()
- {
- $_instance = self::getInstance();
+ return $destinationurl;
+}
- if (!$container = $_instance->container) {
- throw new \Exception('Could not get a container');
- }
+/**
+ * Adds a flash message to the session that will be displayed on the next request.
+ *
+ * @param mixed $content msg content (can be object, array, etc)
+ * @param string $key The key to associate with the message. Defaults to the stack
+ * trace of the closure or method that called addFlassh
+ */
+public function addFlash($content, $key = ''): void
+{
+ if ('' === $key) {
+ $key = self::getBackTrace();
+ }$container=self::getContainerInstance();
+ // $this->dump(__METHOD__ . ': addMessage ' . $key . ' ' . json_encode($content));
+ if ($container->flash) {
+ $container->flash->addMessage($key, $content);
+ }
+}
- return $container;
+/**
+ * Gets the destination with the last active tab selected for that controller
+ * Usually used after going through a redirect route.
+ *
+ * @param string $subject The subject, usually a view name like 'server' or 'table'
+ *
+ * @return string The destination url with last tab set in the query string
+ */
+public function getDestinationWithLastTab($subject)
+{$container=self::getContainerInstance();
+ $_server_info = $container->misc->getServerInfo();
+ $this->addFlash($subject, 'getDestinationWithLastTab');
+ //$this->prtrace('$_server_info', $_server_info);
+ // If username isn't set in server_info, you should login
+ $url = $container->misc->getLastTabURL($subject) ?? ['url' => 'alldb', 'urlvars' => ['subject' => 'server']];
+ $destinationurl = $this->getRedirectUrl();
+
+ if (!isset($_server_info['username'])) {
+ return $destinationurl;
}
- /**
- * Gets the instance.
- */
- public static function getInstance(): self
- {
- if (!$_instance = self::$_instance) {
- self::$_instance = new self();
- $_instance = self::$_instance;
+ if (!\is_array($url)) {
+ return $this->getRedirectUrl($subject);
+ }
+ $this->addFlash($url, 'getLastTabURL for ' . $subject);
+ // Load query vars into superglobal arrays
+ if (isset($url['urlvars'])) {
+ $urlvars = [];
+
+ foreach ($url['urlvars'] as $key => $urlvar) {
+ //$this->prtrace($key, $urlvar);
+ $urlvars[$key] = \PHPPgAdmin\Decorators\Decorator::get_sanitized_value($urlvar, $_REQUEST);
}
-
- return $_instance;
+ $_REQUEST = \array_merge($_REQUEST, $urlvars);
+ $_GET = \array_merge($_GET, $urlvars);
}
+ $actionurl = \PHPPgAdmin\Decorators\Decorator::actionurl($url['url'], $_GET);
+ $destinationurl = $actionurl->value($_GET);
- /**
- * Creates a container.
- *
- * @param array $conf The conf
- *
- * @return \Slim\App ( description_of_the_return_value )
- */
- public static function createApp($conf)
- {
- $_instance = self::getInstance();
-
- $_instance
- ->withConf($conf)
- ->setExtra()
- ->setMisc()
- ->setViews();
+ return \str_replace('views/?', "views/{$subject}?", $destinationurl);
+}
- //ddd($container->subfolder);
- return $_instance->_app;
- }
+/**
+ * Adds an error to the errors array property of the container.
+ *
+ * @param string $errormsg The error msg
+ *
+ * @return\Slim\Container The app container
+ */
+public function addError(string $errormsg): \Slim\Container
+{
+ $container=self::getContainerInstance();
+ $errors = $container->get('errors');
+ $errors[] = $errormsg;
+ $container->offsetSet('errors', $errors);
- /**
- * Determines the redirection url according to query string.
- *
- * @return string the redirect url
- */
- public function getRedirectUrl()
- {
- $query_string = requestInstance()->getUri()->getQuery();
+ return $container;
+}
- // if server_id isn't set, then you will be redirected to intro
- if (null === requestInstance()->getQueryParam('server')) {
- $destinationurl = self::SUBFOLDER . '/src/views/intro';
+/**
+ * @param array $conf
+ */
+private function withConf($conf): self
+{
+ $container = self::getContainerInstance();
+ $conf['plugins'] = [];
+
+ $container->BASE_PATH=$conf['BASE_PATH'];
+ $container->subFolder=$conf['subfolder'];
+ $container->DEBUGMODE=$conf['debugmode'];
+ $container->THEME_PATH=$conf['theme_path'];
+ $container->IN_TEST=$conf['IN_TEST'];
+ $container['errors'] = [];
+ $container['conf'] = static function (\Slim\Container $c) use ($conf): array {
+ $display_sizes = $conf['display_sizes'];
+
+ if (\is_array($display_sizes)) {
+ $conf['display_sizes'] = [
+ 'schemas' => (bool) isset($display_sizes['schemas']) && true === $display_sizes['schemas'],
+ 'tables' => (bool) isset($display_sizes['tables']) && true === $display_sizes['tables'],
+ ];
} else {
- // otherwise, you'll be redirected to the login page for that server;
- $destinationurl = self::SUBFOLDER . '/src/views/login' . ($query_string ? '?' . $query_string : '');
+ $conf['display_sizes'] = [
+ 'schemas' => (bool) $display_sizes,
+ 'tables' => (bool) $display_sizes,
+ ];
}
- return $destinationurl;
- }
-
- /**
- * Adds a flash message to the session that will be displayed on the next request.
- *
- * @param mixed $content msg content (can be object, array, etc)
- * @param string $key The key to associate with the message. Defaults to the stack
- * trace of the closure or method that called addFlassh
- */
- public function addFlash($content, $key = ''): void
- {
- if ('' === $key) {
- $key = self::getBackTrace();
+ if (!isset($conf['theme'])) {
+ $conf['theme'] = 'default';
}
- // $this->dump(__METHOD__ . ': addMessage ' . $key . ' ' . json_encode($content));
- if ($this->container->flash) {
- $this->container->flash->addMessage($key, $content);
- }
- }
- /**
- * Gets the destination with the last active tab selected for that controller
- * Usually used after going through a redirect route.
- *
- * @param string $subject The subject, usually a view name like 'server' or 'table'
- *
- * @return string The destination url with last tab set in the query string
- */
- public function getDestinationWithLastTab($subject)
- {
- $_server_info = $this->container->misc->getServerInfo();
- $this->addFlash($subject, 'getDestinationWithLastTab');
- //$this->prtrace('$_server_info', $_server_info);
- // If username isn't set in server_info, you should login
- $url = $this->container->misc->getLastTabURL($subject) ?? ['url' => 'alldb', 'urlvars' => ['subject' => 'server']];
- $destinationurl = $this->getRedirectUrl();
-
- if (!isset($_server_info['username'])) {
- return $destinationurl;
- }
+ foreach ($conf['servers'] as &$server) {
+ if (!isset($server['port'])) {
+ $server['port'] = 5432;
+ }
- if (!\is_array($url)) {
- return $this->getRedirectUrl($subject);
- }
- $this->addFlash($url, 'getLastTabURL for ' . $subject);
- // Load query vars into superglobal arrays
- if (isset($url['urlvars'])) {
- $urlvars = [];
-
- foreach ($url['urlvars'] as $key => $urlvar) {
- //$this->prtrace($key, $urlvar);
- $urlvars[$key] = \PHPPgAdmin\Decorators\Decorator::get_sanitized_value($urlvar, $_REQUEST);
+ if (!isset($server['sslmode'])) {
+ $server['sslmode'] = 'unspecified';
}
- $_REQUEST = \array_merge($_REQUEST, $urlvars);
- $_GET = \array_merge($_GET, $urlvars);
}
- $actionurl = \PHPPgAdmin\Decorators\Decorator::actionurl($url['url'], $_GET);
- $destinationurl = $actionurl->value($_GET);
+ //self::$envConfig=[
+ //'BASE_PATH'=>$conf['BASE_PATH'],
+ //'subFolder'=>$conf['subfolder'],
+ //'DEBUGMODE'=>$conf['debugmode'],
+ //'THEME_PATH'=>$conf['theme_path'],
+ //'IN_TEST'=>$conf['IN_TEST']
+ //];
+
+ return $conf;
+ };
+
+ $container->subfolder = $conf['subfolder'];
+
+
+ return $this;
+}
- return \str_replace('views/?', "views/{$subject}?", $destinationurl);
- }
+/**
+ * Sets the views.
+ *
+ * @return self ( description_of_the_return_value )
+ */
+private function setViews()
+{
+ $container = self::getContainerInstance();
/**
- * Adds an error to the errors array property of the container.
- *
- * @param string $errormsg The error msg
- *
- * @return\Slim\Container The app container
+ * @return \PHPPgAdmin\ViewManager
*/
- public function addError(string $errormsg): \Slim\Container
- {
- //dump($errormsg);
- $errors = $this->container->get('errors');
- $errors[] = $errormsg;
- $this->container->offsetSet('errors', $errors);
+ $container['view'] = static function (\Slim\Container $c): \PHPPgAdmin\ViewManager {
+ $misc = $c->misc;
+ $view = new ViewManager(BASE_PATH . '/assets/templates', [
+ 'cache' => BASE_PATH . '/temp/twigcache',
+ 'auto_reload' => $c->get('settings')['debug'],
+ 'debug' => $c->get('settings')['debug'],
+ ], $c);
- return $this->container;
- }
+ $misc->setView($view);
+
+ return $view;
+ };
+ return $this;
+}
+
+/**
+ * Sets the instance of Misc class.
+ *
+ * @return self ( description_of_the_return_value )
+ */
+private function setMisc()
+{
+ $container = self::getContainerInstance();
/**
- * @param array $conf
+ * @return \PHPPgAdmin\Misc
*/
- private function withConf($conf): self
- {
- $container = self::getContainerInstance();
- $conf['plugins'] = [];
-
- $container['conf'] = static function (\Slim\Container $c) use ($conf): array {
- $display_sizes = $conf['display_sizes'];
-
- if (\is_array($display_sizes)) {
- $conf['display_sizes'] = [
- 'schemas' => (bool) isset($display_sizes['schemas']) && true === $display_sizes['schemas'],
- 'tables' => (bool) isset($display_sizes['tables']) && true === $display_sizes['tables'],
- ];
- } else {
- $conf['display_sizes'] = [
- 'schemas' => (bool) $display_sizes,
- 'tables' => (bool) $display_sizes,
- ];
- }
+ $container['misc'] = static function (\Slim\Container $c): \PHPPgAdmin\Misc {
+ $misc = new \PHPPgAdmin\Misc($c);
- if (!isset($conf['theme'])) {
- $conf['theme'] = 'default';
- }
+ $conf = $c->get('conf');
- foreach ($conf['servers'] as &$server) {
- if (!isset($server['port'])) {
- $server['port'] = 5432;
- }
+ // 4. Check for theme by server/db/user
+ $_server_info = $misc->getServerInfo();
- if (!isset($server['sslmode'])) {
- $server['sslmode'] = 'unspecified';
- }
- }
+ /* starting with PostgreSQL 9.0, we can set the application name */
+ if (isset($_server_info['pgVersion']) && 9 <= $_server_info['pgVersion']) {
+ \putenv('PGAPPNAME=' . $c->get('settings')['appName'] . '_' . $c->get('settings')['appVersion']);
+ }
- return $conf;
- };
- $container->subfolder = self::SUBFOLDER;
+ return $misc;
+ };
- return $this;
- }
+ return $this;
+}
- /**
- * Sets the views.
- *
- * @return self ( description_of_the_return_value )
- */
- private function setViews()
- {
- $container = self::getContainerInstance();
+private function setExtra()
+{
+ $container = self::getContainerInstance();
+ $container['flash'] = static function (): \Slim\Flash\Messages {
+ return new \Slim\Flash\Messages();
+ };
- /**
- * @return \PHPPgAdmin\ViewManager
- */
- $container['view'] = static function (\Slim\Container $c): \PHPPgAdmin\ViewManager {
- $misc = $c->misc;
- $view = new ViewManager(BASE_PATH . '/assets/templates', [
- 'cache' => BASE_PATH . '/temp/twigcache',
- 'auto_reload' => $c->get('settings')['debug'],
- 'debug' => $c->get('settings')['debug'],
- ], $c);
+ $container['lang'] = static function (\Slim\Container $c): array {
+ $translations = new \PHPPgAdmin\Translations($c);
- $misc->setView($view);
+ return $translations->lang;
+ };
- return $view;
- };
+ return $this;
+}
- return $this;
+ public static function getDefaultConfig():array
+ {
+ return [
+ 'settings' => [
+ 'displayErrorDetails' => self::$envConfig['DEBUGMODE'],
+ 'determineRouteBeforeAppMiddleware' => true,
+ 'base_path' => \dirname(__DIR__, 2),
+ 'debug' => self::$envConfig['DEBUGMODE'],
+ 'phpMinVer' => '7.1', // PHP minimum version
+ 'addContentLengthHeader' => false,
+ 'appName' => 'PHPPgAdmin6'
+ ],
+ ];
}
/**
- * Sets the instance of Misc class.
+ * This function registers the default services that Slim needs to work.
*
- * @return self ( description_of_the_return_value )
+ * All services are shared, they are registered such that the
+ * same instance is returned on subsequent calls.
+ *
+ * @param array $userSettings Associative array of application settings
*/
- private function setMisc()
+ private function registerDefaultServices($userSettings): void
{
- $container = self::getContainerInstance();
+ $defaultSettings = $this->defaultSettings;
+
/**
- * @return \PHPPgAdmin\Misc
+ * This service MUST return an array or an instance of ArrayAccess.
+ *
+ * @return array|ArrayAccess
*/
- $container['misc'] = static function (\Slim\Container $c): \PHPPgAdmin\Misc {
- $misc = new \PHPPgAdmin\Misc($c);
-
- $conf = $c->get('conf');
-
- // 4. Check for theme by server/db/user
- $_server_info = $misc->getServerInfo();
-
- /* starting with PostgreSQL 9.0, we can set the application name */
- if (isset($_server_info['pgVersion']) && 9 <= $_server_info['pgVersion']) {
- \putenv('PGAPPNAME=' . $c->get('settings')['appName'] . '_' . $c->get('settings')['appVersion']);
- }
-
- return $misc;
- };
-
- return $this;
- }
-
- private function setExtra()
- {
- $container = self::getContainerInstance();
- $container['flash'] = static function (): \Slim\Flash\Messages {
- return new \Slim\Flash\Messages();
- };
-
- $container['lang'] = static function (\Slim\Container $c): array {
- $translations = new \PHPPgAdmin\Translations($c);
-
- return $translations->lang;
+ $this['settings'] = static function () use ($userSettings, $defaultSettings):\Slim\Collection {
+ return new Collection(\array_merge($defaultSettings, $userSettings));
};
- return $this;
+ $defaultProvider = new DefaultServicesProvider();
+ $defaultProvider->register($this);
}
}
diff --git a/src/classes/Misc.php b/src/classes/Misc.php
index 0cd3b75d..37ea9b8c 100644
--- a/src/classes/Misc.php
+++ b/src/classes/Misc.php
@@ -25,18 +25,9 @@ class Misc
use \PHPPgAdmin\Traits\HelperTrait;
use \PHPPgAdmin\Traits\MiscTrait;
- /**
- * @var string
- */
- const BASE_PATH = ContainerUtils::BASE_PATH;
- /**
- * @var string
- */
- const SUBFOLDER = ContainerUtils::SUBFOLDER;
- /**
- * @var string
- */
- const DEBUGMODE = ContainerUtils::DEBUGMODE;
+
+
+
/**
* @var array
@@ -86,7 +77,7 @@ class Misc
public $view;
/**
- * @var \Slim\Container
+ * @var \PHPPgAdmin\ContainerUtils
*/
protected $container;
@@ -131,9 +122,9 @@ class Misc
private $_error_msg = '';
/**
- * @param \Slim\Container $container The container
+ * @param \PHPPgAdmin\ContainerUtils $container The container
*/
- public function __construct(\Slim\Container $container)
+ public function __construct(\PHPPgAdmin\ContainerUtils $container)
{
$this->container = $container;
@@ -210,7 +201,7 @@ class Misc
*/
public function serverToSha()
{
- $request_server = \requestInstance()->getParam('server');
+ $request_server = $this->container->request->getParam('server');
if (null === $request_server) {
return null;
@@ -372,7 +363,7 @@ class Misc
}
if (!$_connection) {
- $this->container->utils->addError($lang['strloginfailed']);
+ $this->container->addError($lang['strloginfailed']);
$this->setErrorMsg($lang['strloginfailed']);
return null;
@@ -384,7 +375,7 @@ class Misc
if (null === $_type) {
$errormsg = \sprintf($lang['strpostgresqlversionnotsupported'], $this->postgresqlMinVer);
- $this->container->utils->addError($errormsg);
+ $this->container->addError($errormsg);
$this->setErrorMsg($errormsg);
return null;
@@ -418,7 +409,7 @@ class Misc
$status = $this->_data->setSchema($_REQUEST['schema']);
if (0 !== $status) {
- $this->container->utils->addError($this->lang['strbadschema']);
+ $this->container->addError($this->lang['strbadschema']);
$this->setErrorMsg($this->lang['strbadschema']);
return null;
@@ -563,7 +554,7 @@ class Misc
public function setServerInfo($key, $value, $server_id = null): void
{
if (null === $server_id) {
- $server_id = requestInstance()->getParam('server');
+ $server_id = $this->container->request->getParam('server');
}
if (null === $key) {
diff --git a/src/classes/ViewManager.php b/src/classes/ViewManager.php
index 246448b8..ecd9f5dd 100644
--- a/src/classes/ViewManager.php
+++ b/src/classes/ViewManager.php
@@ -6,7 +6,6 @@
namespace PHPPgAdmin;
-use Psr\Http\Message\ResponseInterface;
/**
* @file
@@ -24,23 +23,10 @@ class ViewManager extends \Slim\Views\Twig
{
use \PHPPgAdmin\Traits\HelperTrait;
- /**
- * @var string
- */
- const BASE_PATH = ContainerUtils::BASE_PATH;
- /**
- * @var string
- */
- const THEME_PATH = ContainerUtils::THEME_PATH;
- /**
- * @var string
- */
- const SUBFOLDER = ContainerUtils::SUBFOLDER;
- /**
- * @var string
- */
- const DEBUGMODE = ContainerUtils::DEBUGMODE;
+
+
+
/**
* @var array
@@ -95,7 +81,7 @@ class ViewManager extends \Slim\Views\Twig
public $misc;
/**
- * @var \Slim\Container
+ * @var \PHPPgAdmin\ContainerUtils
*/
protected $container;
@@ -135,12 +121,12 @@ class ViewManager extends \Slim\Views\Twig
private static $instance;
/**
- * @param \Slim\Container $container The container
+ * @param \PHPPgAdmin\ContainerUtils $container The container
* @param mixed $path
* @param mixed $settings
- * @param \Slim\Container $c
+ * @param \PHPPgAdmin\ContainerUtils $c
*/
- public function __construct($path, $settings, \Slim\Container $c)
+ public function __construct($path, $settings, \PHPPgAdmin\ContainerUtils $c)
{
$this->lang = $c->get('lang');
$this->conf = $c->get('conf');
@@ -155,7 +141,7 @@ class ViewManager extends \Slim\Views\Twig
$this->addExtension(new \Slim\Views\TwigExtension($c['router'], $basePath));
- $this->offsetSet('subfolder', self::SUBFOLDER);
+ $this->offsetSet('subfolder', \containerInstance()->subFolder);
$this->offsetSet('theme', $this->misc->getConf('theme'));
$this->offsetSet('Favicon', $this->icon('Favicon'));
$this->offsetSet('Introduction', $this->icon('Introduction'));
@@ -175,7 +161,7 @@ class ViewManager extends \Slim\Views\Twig
}
}
- public function maybeRenderIframes(ResponseInterface $response, string $subject, string $query_string): ResponseInterface
+ public function maybeRenderIframes(\Slim\Http\Response $response, string $subject, string $query_string): \Slim\Http\Response
{
$c = $this->getContainer();
@@ -310,7 +296,7 @@ class ViewManager extends \Slim\Views\Twig
public function getHelpLink($help)
{
return \htmlspecialchars(
- $this->getSubfolder('help?help=') .
+ $this->container->getSubfolder('help?help=') .
\urlencode($help) .
'&server=' .
\urlencode($this->misc->getServerId())
@@ -328,30 +314,30 @@ class ViewManager extends \Slim\Views\Twig
$theme = $this->conf['theme'];
$path = 'assets/images/themes';
- $default_icon = \sprintf('%s/%s/default/DisconnectedServer.png', self::SUBFOLDER, $path);
+ $default_icon = \sprintf('%s/%s/default/DisconnectedServer.png', \containerInstance()->subFolder, $path);
- if (\is_readable(\sprintf('%s/%s/%s/%s.png', self::BASE_PATH, $path, $theme, $icon))) {
- return \sprintf('%s/%s/%s/%s.png', self::SUBFOLDER, $path, $theme, $icon);
+ if (\is_readable(\sprintf('%s/%s/%s/%s.png', \containerInstance()->BASE_PATH, $path, $theme, $icon))) {
+ return \sprintf('%s/%s/%s/%s.png', \containerInstance()->subFolder, $path, $theme, $icon);
}
- if (\is_readable(\sprintf('%s/%s/%s/%s.gif', self::BASE_PATH, $path, $theme, $icon))) {
- return \sprintf('%s/%s/%s/%s.gif', self::SUBFOLDER, $path, $theme, $icon);
+ if (\is_readable(\sprintf('%s/%s/%s/%s.gif', \containerInstance()->BASE_PATH, $path, $theme, $icon))) {
+ return \sprintf('%s/%s/%s/%s.gif', \containerInstance()->subFolder, $path, $theme, $icon);
}
- if (\is_readable(\sprintf('%s/%s/%s/%s.ico', self::BASE_PATH, $path, $theme, $icon))) {
- return \sprintf('%s/%s/%s/%s.ico', self::SUBFOLDER, $path, $theme, $icon);
+ if (\is_readable(\sprintf('%s/%s/%s/%s.ico', \containerInstance()->BASE_PATH, $path, $theme, $icon))) {
+ return \sprintf('%s/%s/%s/%s.ico', \containerInstance()->subFolder, $path, $theme, $icon);
}
- if (\is_readable(\sprintf('%s/%s/default/%s.png', self::BASE_PATH, $path, $icon))) {
- return \sprintf('%s/%s/default/%s.png', self::SUBFOLDER, $path, $icon);
+ if (\is_readable(\sprintf('%s/%s/default/%s.png', \containerInstance()->BASE_PATH, $path, $icon))) {
+ return \sprintf('%s/%s/default/%s.png', \containerInstance()->subFolder, $path, $icon);
}
- if (\is_readable(\sprintf('%s/%s/default/%s.gif', self::BASE_PATH, $path, $icon))) {
- return \sprintf('%s/%s/default/%s.gif', self::SUBFOLDER, $path, $icon);
+ if (\is_readable(\sprintf('%s/%s/default/%s.gif', \containerInstance()->BASE_PATH, $path, $icon))) {
+ return \sprintf('%s/%s/default/%s.gif', \containerInstance()->subFolder, $path, $icon);
}
- if (\is_readable(\sprintf('%s/%s/default/%s.ico', self::BASE_PATH, $path, $icon))) {
- return \sprintf('%s/%s/default/%s.ico', self::SUBFOLDER, $path, $icon);
+ if (\is_readable(\sprintf('%s/%s/default/%s.ico', \containerInstance()->BASE_PATH, $path, $icon))) {
+ return \sprintf('%s/%s/default/%s.ico', \containerInstance()->subFolder, $path, $icon);
}
return $default_icon;
@@ -371,7 +357,7 @@ class ViewManager extends \Slim\Views\Twig
return '\PHPPgAdmin\Controller\\' . \ucfirst($subject) . 'Controller';
}
- private function getContainer(): \Slim\Container
+ private function getContainer(): \PHPPgAdmin\ContainerUtils
{
return $this->container;
}
@@ -385,7 +371,7 @@ class ViewManager extends \Slim\Views\Twig
private function getThemeFolders(): array
{
// no THEME_PATH (how?) then return empty array
- if (!$gestor = \opendir(self::THEME_PATH)) {
+ if (!$gestor = \opendir(containerInstance()->THEME_PATH)) {
\closedir($gestor);
return [];
@@ -398,7 +384,7 @@ class ViewManager extends \Slim\Views\Twig
continue;
}
- $folderpath = \sprintf('%s%s%s', self::THEME_PATH, \DIRECTORY_SEPARATOR, $foldername);
+ $folderpath = \sprintf('%s%s%s', \containerInstance()->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/controllers/AggregatesController.php b/src/controllers/AggregatesController.php
index 2fa97293..e6941c8e 100644
--- a/src/controllers/AggregatesController.php
+++ b/src/controllers/AggregatesController.php
@@ -276,7 +276,7 @@ class AggregatesController extends BaseController
$this->printTitle($this->lang['strcreateaggregate'], 'pg.aggregate.create');
$this->printMsg($msg);
- echo '<form action="' . self::SUBFOLDER . '/src/views/aggregates" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/aggregates" method="post">' . \PHP_EOL;
echo '<table>' . \PHP_EOL;
echo "\t<tr>\n\t\t<th class=\"data left required\">{$this->lang['strname']}</th>" . \PHP_EOL;
echo "\t\t<td class=\"data\"><input name=\"name\" size=\"32\" maxlength=\"{$this->data->_maxNameLen}\" value=\"",
@@ -359,7 +359,7 @@ class AggregatesController extends BaseController
$this->printTitle($this->lang['stralter'], 'pg.aggregate.alter');
$this->printMsg($msg);
- echo '<form action="' . self::SUBFOLDER . '/src/views/aggregates" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/aggregates" method="post">' . \PHP_EOL;
$aggrdata = $this->data->getAggregate($_REQUEST['aggrname'], $_REQUEST['aggrtype']);
if (0 < $aggrdata->recordCount()) {
@@ -408,7 +408,7 @@ class AggregatesController extends BaseController
echo '<p>', \sprintf($this->lang['strconfdropaggregate'], \htmlspecialchars($_REQUEST['aggrname'])), '</p>' . \PHP_EOL;
- echo '<form action="' . self::SUBFOLDER . '/src/views/aggregates" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/aggregates" method="post">' . \PHP_EOL;
echo "<p><input type=\"checkbox\" id=\"cascade\" name=\"cascade\" /> <label for=\"cascade\">{$this->lang['strcascade']}</label></p>" . \PHP_EOL;
echo '<p><input type="hidden" name="action" value="drop" />' . \PHP_EOL;
echo '<input type="hidden" name="aggrname" value="', \htmlspecialchars($_REQUEST['aggrname']), '" />' . \PHP_EOL;
diff --git a/src/controllers/AlldbController.php b/src/controllers/AlldbController.php
index 9e184d3b..49f85936 100644
--- a/src/controllers/AlldbController.php
+++ b/src/controllers/AlldbController.php
@@ -112,7 +112,7 @@ class AlldbController extends BaseController
'database' => [
'title' => $this->lang['strdatabase'],
'field' => Decorator::field('datname'),
- 'url' => self::SUBFOLDER . $redirecturl . '&amp;',
+ 'url' => \containerInstance()->subFolder . $redirecturl . '&amp;',
'vars' => ['database' => 'datname'],
],
'owner' => [
@@ -267,7 +267,7 @@ class AlldbController extends BaseController
$this->printTrail('database');
$this->printTitle($this->lang['stralter'], 'pg.database.alter');
- echo '<form action="' . self::SUBFOLDER . '/src/views/alldb" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/alldb" method="post">' . \PHP_EOL;
echo '<table>' . \PHP_EOL;
echo "<tr><th class=\"data left required\">{$this->lang['strname']}</th>" . \PHP_EOL;
echo '<td class="data1">';
@@ -340,7 +340,7 @@ class AlldbController extends BaseController
$this->printTrail('database');
$this->printTitle($this->lang['strdrop'], 'pg.database.drop');
- echo '<form action="' . self::SUBFOLDER . '/src/views/alldb" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/alldb" method="post">' . \PHP_EOL;
//If multi drop
if (isset($_REQUEST['ma'])) {
foreach ($_REQUEST['ma'] as $v) {
@@ -427,7 +427,7 @@ class AlldbController extends BaseController
$tablespaces = $data->getTablespaces();
}
- echo '<form action="' . self::SUBFOLDER . '/src/views/alldb" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/alldb" method="post">' . \PHP_EOL;
echo '<table>' . \PHP_EOL;
echo "\t<tr>\n\t\t<th class=\"data left required\">{$this->lang['strname']}</th>" . \PHP_EOL;
echo "\t\t<td class=\"data1\"><input name=\"formName\" size=\"32\" maxlength=\"{$data->_maxNameLen}\" value=\"",
diff --git a/src/controllers/BaseController.php b/src/controllers/BaseController.php
index e56c3561..4cc39670 100644
--- a/src/controllers/BaseController.php
+++ b/src/controllers/BaseController.php
@@ -9,25 +9,14 @@ namespace PHPPgAdmin\Controller;
use PHPPgAdmin\ContainerUtils;
use PHPPgAdmin\XHtml;
-\ini_set('display_errors', ContainerUtils::DEBUGMODE);
+
/**
* Base controller class.
*/
class BaseController
{
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 $appLangFiles = [];
@@ -160,27 +149,25 @@ class BaseController
if (true === $this->no_db_connection) {
$this->misc->setNoDBConnection(true);
}
-$this->renderInitialPageIfNotLogged();
-
- }
-private function renderInitialPageIfNotLogged() {
- if (false === $this->misc->getNoDBConnection()) {
- if (null === $this->misc->getServerId()) {
- $servers_controller = new \PHPPgAdmin\Controller\ServersController($this->container);
- return $servers_controller->render();
- }
- $_server_info = $this->misc->getServerInfo();
- // Redirect to the login form if not logged in
- if (!isset($_server_info['username'])) {
- $msg = \sprintf($this->lang['strlogoutmsg'], $_server_info['desc']??'');
+ if (false === $this->misc->getNoDBConnection()) {
+ if (null === $this->misc->getServerId()) {
+ $servers_controller = new \PHPPgAdmin\Controller\ServersController($container);
- $servers_controller = new \PHPPgAdmin\Controller\ServersController($this->container);
+ return $servers_controller->render();
+ }
+ $_server_info = $this->misc->getServerInfo();
+ // Redirect to the login form if not logged in
+ if (!isset($_server_info['username'])) {
+ $msg = \sprintf($this->lang['strlogoutmsg'], $_server_info['desc']);
- return $servers_controller->render();
+ $servers_controller = new \PHPPgAdmin\Controller\ServersController($container);
+
+ return $servers_controller->render();
+ }
}
}
-}
+
/**
* Default method to render the controller according to the action parameter. It should return with a PSR
* responseObject but it prints texts whatsoeever.
@@ -259,7 +246,7 @@ private function renderInitialPageIfNotLogged() {
*
* @param array $tabs The tabs
*
- * @return \PHPPgAdmin\ArrayRecordSet filtered tabs in the form of an ArrayRecordSet
+ * @return \PHPPgAdmin\ArrayRecordSet|\PHPPgAdmin\ADORecordSet filtered tabs in the form of an ArrayRecordSet
*/
public function adjustTabsForTree(&$tabs)
{
@@ -271,7 +258,7 @@ private function renderInitialPageIfNotLogged() {
/**
* Produce JSON data for the browser tree.
*
- * @param \PHPPgAdmin\ArrayRecordSet $_treedata a set of records to populate the tree
+ * @param \PHPPgAdmin\ArrayRecordSet|\PHPPgAdmin\ADORecordSet $_treedata a set of records to populate the tree
* @param array $attrs Attributes for tree items
* @param string $section The section where the branch is linked in the tree
* @param bool $print either to return or echo the result
diff --git a/src/controllers/ColpropertiesController.php b/src/controllers/ColpropertiesController.php
index 2bd3bc4d..6f033204 100644
--- a/src/controllers/ColpropertiesController.php
+++ b/src/controllers/ColpropertiesController.php
@@ -238,8 +238,8 @@ class ColpropertiesController extends BaseController
$this->printTitle($this->lang['stralter'], 'pg.column.alter');
$this->printMsg($msg);
- echo '<script src="' . self::SUBFOLDER . '/assets/js/tables.js" type="text/javascript"></script>';
- echo '<form action="' . self::SUBFOLDER . '/src/views/colproperties" method="post">' . \PHP_EOL;
+ echo '<script src="' . \containerInstance()->subFolder . '/assets/js/tables.js" type="text/javascript"></script>';
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/colproperties" method="post">' . \PHP_EOL;
// Output table header
echo '<table>' . \PHP_EOL;
diff --git a/src/controllers/ConstraintsController.php b/src/controllers/ConstraintsController.php
index edbbaf4a..f3c016cb 100644
--- a/src/controllers/ConstraintsController.php
+++ b/src/controllers/ConstraintsController.php
@@ -26,7 +26,7 @@ class ConstraintsController extends BaseController
$this->printHeader(
$this->lang['strtables'] . ' - ' . $_REQUEST['table'] . ' - ' . $this->lang['strconstraints'],
- '<script src="' . self::SUBFOLDER . '/assets/js/indexes.js" type="text/javascript"></script>',
+ '<script src="' . \containerInstance()->subFolder . '/assets/js/indexes.js" type="text/javascript"></script>',
true,
'header_select2.twig'
);
@@ -540,7 +540,7 @@ class ConstraintsController extends BaseController
$this->printTitle($this->lang['straddcheck'], 'pg.constraint.check');
$this->printMsg($msg);
- echo '<form action="' . self::SUBFOLDER . '/src/views/constraints" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/constraints" method="post">' . \PHP_EOL;
echo '<table>' . \PHP_EOL;
echo "<tr><th class=\"data\">{$this->lang['strname']}</th>" . \PHP_EOL;
echo "<th class=\"data required\">{$this->lang['strdefinition']}</th></tr>" . \PHP_EOL;
diff --git a/src/controllers/DatabaseController.php b/src/controllers/DatabaseController.php
index f6cc5ec3..4da3d561 100644
--- a/src/controllers/DatabaseController.php
+++ b/src/controllers/DatabaseController.php
@@ -41,7 +41,7 @@ class DatabaseController extends BaseController
$scripts = '';
// normal flow
if ('locks' === $this->action || 'processes' === $this->action) {
- $scripts .= '<script src="' . self::SUBFOLDER . '/assets/js/database.js" type="text/javascript"></script>';
+ $scripts .= '<script src="' . \containerInstance()->subFolder . '/assets/js/database.js" type="text/javascript"></script>';
$refreshTime = $this->conf['ajax_refresh'] * 1500;
@@ -184,7 +184,7 @@ class DatabaseController extends BaseController
$this->printTabs('database', 'find');
$this->printMsg($msg);
- echo '<form action="' . self::SUBFOLDER . '/src/views/database" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/database" method="post">' . \PHP_EOL;
echo '<p><input name="term" value="', \htmlspecialchars($_REQUEST['term']),
"\" size=\"32\" maxlength=\"{$data->_maxNameLen}\" />" . \PHP_EOL;
// Output list of filters. This is complex due to all the 'has' and 'conf' feature possibilities
@@ -546,7 +546,7 @@ class DatabaseController extends BaseController
$this->printTrail('database');
$this->printTabs('database', 'sql');
echo "<p>{$this->lang['strentersql']}</p>" . \PHP_EOL;
- echo '<form action="' . self::SUBFOLDER . '/src/views/sql" method="post" enctype="multipart/form-data" id="sqlform">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/sql" method="post" enctype="multipart/form-data" id="sqlform">' . \PHP_EOL;
echo "<p>{$this->lang['strsql']}<br />" . \PHP_EOL;
echo '<textarea style="width:95%;" rows="15" cols="50" name="query" id="query">',
\htmlspecialchars($_SESSION['sqlquery']), '</textarea></p>' . \PHP_EOL;
@@ -643,7 +643,7 @@ class DatabaseController extends BaseController
switch ($curr) {
case 'SCHEMA':
$destination = $this->container->getDestinationWithLastTab('schema');
- echo '<li><a href="' . self::SUBFOLDER . "{$destination}";
+ echo '<li><a href="' . \containerInstance()->subFolder . "{$destination}";
echo $this->misc->printVal($rs->fields['name']), '">';
echo $this->_highlight($this->misc->printVal($rs->fields['name']), $_REQUEST['term']);
echo '</a></li>' . \PHP_EOL;
@@ -653,7 +653,7 @@ class DatabaseController extends BaseController
echo '<li>';
echo "<a href=\"tables?subject=schema&{$this->misc->href}&schema=", \urlencode($rs->fields['schemaname']), '">', $this->misc->printVal($rs->fields['schemaname']), '</a>.';
$destination = $this->container->getDestinationWithLastTab('table');
- echo '<a href="' . self::SUBFOLDER . "{$destination}?{$this->misc->href}&schema=", \urlencode($rs->fields['schemaname']), '&amp;table=',
+ echo '<a href="' . \containerInstance()->subFolder . "{$destination}?{$this->misc->href}&schema=", \urlencode($rs->fields['schemaname']), '&amp;table=',
\urlencode($rs->fields['name']), '">', $this->_highlight($this->misc->printVal($rs->fields['name']), $_REQUEST['term']), '</a></li>' . \PHP_EOL;
break;
@@ -661,7 +661,7 @@ class DatabaseController extends BaseController
echo '<li>';
echo "<a href=\"views?subject=schema&{$this->misc->href}&schema=", \urlencode($rs->fields['schemaname']), '">', $this->misc->printVal($rs->fields['schemaname']), '</a>.';
$destination = $this->container->getDestinationWithLastTab('view');
- echo '<a href="' . self::SUBFOLDER . "{$destination}?{$this->misc->href}&schema=", \urlencode($rs->fields['schemaname']), '&amp;view=',
+ echo '<a href="' . \containerInstance()->subFolder . "{$destination}?{$this->misc->href}&schema=", \urlencode($rs->fields['schemaname']), '&amp;view=',
\urlencode($rs->fields['name']), '">', $this->_highlight($this->misc->printVal($rs->fields['name']), $_REQUEST['term']), '</a></li>' . \PHP_EOL;
break;
@@ -675,7 +675,7 @@ class DatabaseController extends BaseController
case 'COLUMNTABLE':
echo '<li>';
$destination = $this->container->getDestinationWithLastTab('schema');
- echo '<a href="' . self::SUBFOLDER . "{$destination}?{$this->misc->href}&schema=", \urlencode($rs->fields['schemaname']), '">', $this->misc->printVal($rs->fields['schemaname']), '</a>.';
+ echo '<a href="' . \containerInstance()->subFolder . "{$destination}?{$this->misc->href}&schema=", \urlencode($rs->fields['schemaname']), '">', $this->misc->printVal($rs->fields['schemaname']), '</a>.';
echo "<a href=\"tblproperties?subject=table&{$this->misc->href}&table=", \urlencode($rs->fields['relname']), '&amp;schema=', \urlencode($rs->fields['schemaname']), '">', $this->misc->printVal($rs->fields['relname']), '</a>.';
echo "<a href=\"colproperties?{$this->misc->href}&schema=", \urlencode($rs->fields['schemaname']), '&amp;table=',
\urlencode($rs->fields['relname']), '&amp;column=', \urlencode($rs->fields['name']), '">',
@@ -685,7 +685,7 @@ class DatabaseController extends BaseController
case 'COLUMNVIEW':
echo '<li>';
$destination = $this->container->getDestinationWithLastTab('schema');
- echo '<a href="' . self::SUBFOLDER . "{$destination}?{$this->misc->href}&schema=", \urlencode($rs->fields['schemaname']), '">', $this->misc->printVal($rs->fields['schemaname']), '</a>.';
+ echo '<a href="' . \containerInstance()->subFolder . "{$destination}?{$this->misc->href}&schema=", \urlencode($rs->fields['schemaname']), '">', $this->misc->printVal($rs->fields['schemaname']), '</a>.';
echo "<a href=\"viewproperties?subject=view&{$this->misc->href}&view=", \urlencode($rs->fields['relname']), '&amp;schema=', \urlencode($rs->fields['schemaname']), '">', $this->misc->printVal($rs->fields['relname']), '</a>.';
echo "<a href=\"colproperties?{$this->misc->href}&schema=", \urlencode($rs->fields['schemaname']), '&amp;view=',
\urlencode($rs->fields['relname']), '&amp;column=', \urlencode($rs->fields['name']), '">',
@@ -695,18 +695,18 @@ class DatabaseController extends BaseController
case 'INDEX':
echo '<li>';
$destination = $this->container->getDestinationWithLastTab('schema');
- echo '<a href="' . self::SUBFOLDER . "{$destination}?{$this->misc->href}&schema=", \urlencode($rs->fields['schemaname']), '">', $this->misc->printVal($rs->fields['schemaname']), '</a>.';
+ echo '<a href="' . \containerInstance()->subFolder . "{$destination}?{$this->misc->href}&schema=", \urlencode($rs->fields['schemaname']), '">', $this->misc->printVal($rs->fields['schemaname']), '</a>.';
$destination = $this->container->getDestinationWithLastTab('table');
- echo '<a href="' . self::SUBFOLDER . "{$destination}?{$this->misc->href}&table=", \urlencode($rs->fields['relname']), '&amp;schema=', \urlencode($rs->fields['schemaname']), '">', $this->misc->printVal($rs->fields['relname']), '</a>.';
+ echo '<a href="' . \containerInstance()->subFolder . "{$destination}?{$this->misc->href}&table=", \urlencode($rs->fields['relname']), '&amp;schema=', \urlencode($rs->fields['schemaname']), '">', $this->misc->printVal($rs->fields['relname']), '</a>.';
echo "<a href=\"indexes?{$this->misc->href}&schema=", \urlencode($rs->fields['schemaname']), '&amp;table=', \urlencode($rs->fields['relname']), '">', $this->_highlight($this->misc->printVal($rs->fields['name']), $_REQUEST['term']), '</a></li>' . \PHP_EOL;
break;
case 'CONSTRAINTTABLE':
echo '<li>';
$destination = $this->container->getDestinationWithLastTab('schema');
- echo '<a href="' . self::SUBFOLDER . "{$destination}?{$this->misc->href}&schema=", \urlencode($rs->fields['schemaname']), '">', $this->misc->printVal($rs->fields['schemaname']), '</a>.';
+ echo '<a href="' . \containerInstance()->subFolder . "{$destination}?{$this->misc->href}&schema=", \urlencode($rs->fields['schemaname']), '">', $this->misc->printVal($rs->fields['schemaname']), '</a>.';
$destination = $this->container->getDestinationWithLastTab('table');
- echo '<a href="' . self::SUBFOLDER . "{$destination}?{$this->misc->href}&table=", \urlencode($rs->fields['relname']), '&amp;schema=', \urlencode($rs->fields['schemaname']), '">', $this->misc->printVal($rs->fields['relname']), '</a>.';
+ echo '<a href="' . \containerInstance()->subFolder . "{$destination}?{$this->misc->href}&table=", \urlencode($rs->fields['relname']), '&amp;schema=', \urlencode($rs->fields['schemaname']), '">', $this->misc->printVal($rs->fields['relname']), '</a>.';
echo "<a href=\"constraints?{$this->misc->href}&schema=", \urlencode($rs->fields['schemaname']), '&amp;table=',
\urlencode($rs->fields['relname']), '">', $this->_highlight($this->misc->printVal($rs->fields['name']), $_REQUEST['term']), '</a></li>' . \PHP_EOL;
@@ -721,9 +721,9 @@ class DatabaseController extends BaseController
case 'TRIGGER':
echo '<li>';
$destination = $this->container->getDestinationWithLastTab('schema');
- echo '<a href="' . self::SUBFOLDER . "{$destination}?{$this->misc->href}&schema=", \urlencode($rs->fields['schemaname']), '">', $this->misc->printVal($rs->fields['schemaname']), '</a>.';
+ echo '<a href="' . \containerInstance()->subFolder . "{$destination}?{$this->misc->href}&schema=", \urlencode($rs->fields['schemaname']), '">', $this->misc->printVal($rs->fields['schemaname']), '</a>.';
$destination = $this->container->getDestinationWithLastTab('table');
- echo '<a href="' . self::SUBFOLDER . "{$destination}?{$this->misc->href}&table=", \urlencode($rs->fields['relname']), '&amp;schema=', \urlencode($rs->fields['schemaname']), '">', $this->misc->printVal($rs->fields['relname']), '</a>.';
+ echo '<a href="' . \containerInstance()->subFolder . "{$destination}?{$this->misc->href}&table=", \urlencode($rs->fields['relname']), '&amp;schema=', \urlencode($rs->fields['schemaname']), '">', $this->misc->printVal($rs->fields['relname']), '</a>.';
echo "<a href=\"triggers?{$this->misc->href}&schema=", \urlencode($rs->fields['schemaname']), '&amp;table=', \urlencode($rs->fields['relname']), '">',
$this->_highlight($this->misc->printVal($rs->fields['name']), $_REQUEST['term']), '</a></li>' . \PHP_EOL;
@@ -731,9 +731,9 @@ class DatabaseController extends BaseController
case 'RULETABLE':
echo '<li>';
$destination = $this->container->getDestinationWithLastTab('schema');
- echo '<a href="' . self::SUBFOLDER . "{$destination}?{$this->misc->href}&schema=", \urlencode($rs->fields['schemaname']), '">', $this->misc->printVal($rs->fields['schemaname']), '</a>.';
+ echo '<a href="' . \containerInstance()->subFolder . "{$destination}?{$this->misc->href}&schema=", \urlencode($rs->fields['schemaname']), '">', $this->misc->printVal($rs->fields['schemaname']), '</a>.';
$destination = $this->container->getDestinationWithLastTab('table');
- echo '<a href="' . self::SUBFOLDER . "{$destination}?{$this->misc->href}&table=", \urlencode($rs->fields['relname']), '&amp;schema=', \urlencode($rs->fields['schemaname']), '">', $this->misc->printVal($rs->fields['relname']), '</a>.';
+ echo '<a href="' . \containerInstance()->subFolder . "{$destination}?{$this->misc->href}&table=", \urlencode($rs->fields['relname']), '&amp;schema=', \urlencode($rs->fields['schemaname']), '">', $this->misc->printVal($rs->fields['relname']), '</a>.';
echo "<a href=\"rules?subject=table&{$this->misc->href}&schema=", \urlencode($rs->fields['schemaname']), '&amp;reltype=table&amp;table=',
\urlencode($rs->fields['relname']), '">', $this->_highlight($this->misc->printVal($rs->fields['name']), $_REQUEST['term']), '</a></li>' . \PHP_EOL;
@@ -741,9 +741,9 @@ class DatabaseController extends BaseController
case 'RULEVIEW':
echo '<li>';
$destination = $this->container->getDestinationWithLastTab('schema');
- echo '<a href="' . self::SUBFOLDER . "{$destination}?{$this->misc->href}&schema=", \urlencode($rs->fields['schemaname']), '">', $this->misc->printVal($rs->fields['schemaname']), '</a>.';
+ echo '<a href="' . \containerInstance()->subFolder . "{$destination}?{$this->misc->href}&schema=", \urlencode($rs->fields['schemaname']), '">', $this->misc->printVal($rs->fields['schemaname']), '</a>.';
$destination = $this->container->getDestinationWithLastTab('view');
- echo '<a href="' . self::SUBFOLDER . "{$destination}?{$this->misc->href}&view=", \urlencode($rs->fields['relname']), '&amp;schema=', \urlencode($rs->fields['schemaname']), '">', $this->misc->printVal($rs->fields['relname']), '</a>.';
+ echo '<a href="' . \containerInstance()->subFolder . "{$destination}?{$this->misc->href}&view=", \urlencode($rs->fields['relname']), '&amp;schema=', \urlencode($rs->fields['schemaname']), '">', $this->misc->printVal($rs->fields['relname']), '</a>.';
echo "<a href=\"rules?subject=view&{$this->misc->href}&schema=", \urlencode($rs->fields['schemaname']), '&amp;reltype=view&amp;view=',
\urlencode($rs->fields['relname']), '">', $this->_highlight($this->misc->printVal($rs->fields['name']), $_REQUEST['term']), '</a></li>' . \PHP_EOL;
@@ -798,7 +798,7 @@ class DatabaseController extends BaseController
case 'OPCLASS':
echo '<li>';
$destination = $this->container->getDestinationWithLastTab('schema');
- echo '<a href="' . self::SUBFOLDER . "{$destination}?{$this->misc->href}&schema=", \urlencode($rs->fields['schemaname']), '">', $this->misc->printVal($rs->fields['schemaname']), '</a>.';
+ echo '<a href="' . \containerInstance()->subFolder . "{$destination}?{$this->misc->href}&schema=", \urlencode($rs->fields['schemaname']), '">', $this->misc->printVal($rs->fields['schemaname']), '</a>.';
echo "<a href=\"opclasses?{$this->misc->href}&schema=", \urlencode($rs->fields['schemaname']), '">',
$this->_highlight($this->misc->printVal($rs->fields['name']), $_REQUEST['term']), '</a></li>' . \PHP_EOL;
diff --git a/src/controllers/DataexportController.php b/src/controllers/DataexportController.php
index 01fafcb0..e205d562 100644
--- a/src/controllers/DataexportController.php
+++ b/src/controllers/DataexportController.php
@@ -109,7 +109,7 @@ class DataexportController extends BaseController
$this->printMsg($msg);
}
- echo '<form action="' . self::SUBFOLDER . '/src/views/dataexport" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/dataexport" method="post">' . \PHP_EOL;
echo '<table>' . \PHP_EOL;
echo "<tr><th class=\"data\">{$this->lang['strformat']}:</th><td><select name=\"d_format\">" . \PHP_EOL;
// COPY and SQL require a table
@@ -243,7 +243,7 @@ class DataexportController extends BaseController
{
$response = $this
->container
- ->responseobj;
+ ->response;
// Make it do a download, if necessary
if ('download' !== $_REQUEST['output']) {
diff --git a/src/controllers/DbexportController.php b/src/controllers/DbexportController.php
index 3e095a1e..95c72b07 100644
--- a/src/controllers/DbexportController.php
+++ b/src/controllers/DbexportController.php
@@ -23,7 +23,7 @@ class DbexportController extends BaseController
$response = $this
->container
- ->responseobj;
+ ->response;
// Include application functions
$f_schema = $f_object = '';
diff --git a/src/controllers/DisplayController.php b/src/controllers/DisplayController.php
index cf2fc06e..1ff56444 100644
--- a/src/controllers/DisplayController.php
+++ b/src/controllers/DisplayController.php
@@ -26,7 +26,7 @@ class DisplayController extends BaseController
\set_time_limit(0);
- $scripts = '<script src="' . self::SUBFOLDER . '/assets/js/display.js" type="text/javascript"></script>';
+ $scripts = '<script src="' . \containerInstance()->subFolder . '/assets/js/display.js" type="text/javascript"></script>';
$scripts .= '<script type="text/javascript">' . \PHP_EOL;
$scripts .= "var Display = {\n";
@@ -213,7 +213,6 @@ class DisplayController extends BaseController
'search_path' => $_REQUEST['search_path'] ?? null,
'table' => $_REQUEST['table'] ?? null,
'nohistory' => $_REQUEST['nohistory'] ?? null,
- 'subject'=>$subject
];
$this->coalesceArr($_REQUEST, 'query');
@@ -623,7 +622,7 @@ class DisplayController extends BaseController
$fksprops = $this->_getFKProps();
- echo '<form action="' . self::SUBFOLDER . '/src/views/display" method="post" id="ac_form">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/display" method="post" id="ac_form">' . \PHP_EOL;
$elements = 0;
$error = true;
@@ -747,7 +746,7 @@ class DisplayController extends BaseController
echo '</p>' . \PHP_EOL;
echo '</form>' . \PHP_EOL;
- echo '<script src="' . self::SUBFOLDER . '/assets/js/insert_or_edit_row.js" type="text/javascript"></script>';
+ echo '<script src="' . \containerInstance()->subFolder . '/assets/js/insert_or_edit_row.js" type="text/javascript"></script>';
}
/**
@@ -798,7 +797,7 @@ class DisplayController extends BaseController
$resultset = $data->browseRow($_REQUEST['table'], $_REQUEST['key']);
- echo '<form action="' . self::SUBFOLDER . '/src/views/display" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/display" method="post">' . \PHP_EOL;
echo $this->view->form;
if (1 === $resultset->recordCount()) {
diff --git a/src/controllers/DomainsController.php b/src/controllers/DomainsController.php
index 48815930..4be8c1cf 100644
--- a/src/controllers/DomainsController.php
+++ b/src/controllers/DomainsController.php
@@ -284,7 +284,7 @@ class DomainsController extends BaseController
}
// Display domain info
- echo '<form action="' . self::SUBFOLDER . '/src/views/domains" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/domains" method="post">' . \PHP_EOL;
echo '<table>' . \PHP_EOL;
echo "<tr><th class=\"data left required\" style=\"width: 70px\">{$this->lang['strname']}</th>" . \PHP_EOL;
echo '<td class="data1">', $this->misc->printVal($domaindata->fields['domname']), '</td></tr>' . \PHP_EOL;
@@ -336,7 +336,7 @@ class DomainsController extends BaseController
$this->printTitle($this->lang['straddcheck'], 'pg.constraint.check');
$this->printMsg($msg);
- echo '<form action="' . self::SUBFOLDER . '/src/views/domains" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/domains" method="post">' . \PHP_EOL;
echo '<table>' . \PHP_EOL;
echo "<tr><th class=\"data\">{$this->lang['strname']}</th>" . \PHP_EOL;
echo "<th class=\"data required\">{$this->lang['strdefinition']}</th></tr>" . \PHP_EOL;
@@ -393,7 +393,7 @@ class DomainsController extends BaseController
$this->misc->printVal($_REQUEST['constraint']),
$this->misc->printVal($_REQUEST['domain'])
), '</p>' . \PHP_EOL;
- echo '<form action="' . self::SUBFOLDER . '/src/views/domains" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/domains" method="post">' . \PHP_EOL;
echo '<input type="hidden" name="action" value="drop_con" />' . \PHP_EOL;
echo '<input type="hidden" name="domain" value="', \htmlspecialchars($_REQUEST['domain']), '" />' . \PHP_EOL;
echo '<input type="hidden" name="constraint" value="', \htmlspecialchars($_REQUEST['constraint']), '" />' . \PHP_EOL;
@@ -560,7 +560,7 @@ class DomainsController extends BaseController
$this->printTitle($this->lang['strdrop'], 'pg.domain.drop');
echo '<p>', \sprintf($this->lang['strconfdropdomain'], $this->misc->printVal($_REQUEST['domain'])), '</p>' . \PHP_EOL;
- echo '<form action="' . self::SUBFOLDER . '/src/views/domains" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/domains" method="post">' . \PHP_EOL;
echo "<p><input type=\"checkbox\" id=\"cascade\" name=\"cascade\" /><label for=\"cascade\">{$this->lang['strcascade']}</label></p>" . \PHP_EOL;
echo '<p><input type="hidden" name="action" value="drop" />' . \PHP_EOL;
echo '<input type="hidden" name="domain" value="', \htmlspecialchars($_REQUEST['domain']), '" />' . \PHP_EOL;
@@ -606,7 +606,7 @@ class DomainsController extends BaseController
$this->printTitle($this->lang['strcreatedomain'], 'pg.domain.create');
$this->printMsg($msg);
- echo '<form action="' . self::SUBFOLDER . '/src/views/domains" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/domains" method="post">' . \PHP_EOL;
echo '<table>' . \PHP_EOL;
echo "<tr><th class=\"data left required\" style=\"width: 70px\">{$this->lang['strname']}</th>" . \PHP_EOL;
echo "<td class=\"data1\"><input name=\"domname\" size=\"32\" maxlength=\"{$data->_maxNameLen}\" value=\"",
diff --git a/src/controllers/FulltextController.php b/src/controllers/FulltextController.php
index 3760dd0f..45f9b0fd 100644
--- a/src/controllers/FulltextController.php
+++ b/src/controllers/FulltextController.php
@@ -308,7 +308,7 @@ class FulltextController extends BaseController
echo '<p>', \sprintf($this->lang['strconfdropftsconfig'], $this->misc->printVal($_REQUEST['ftscfg'])), '</p>' . \PHP_EOL;
- echo '<form action="' . self::SUBFOLDER . '/src/views/fulltext" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/fulltext" method="post">' . \PHP_EOL;
echo "<p><input type=\"checkbox\" id=\"cascade\" name=\"cascade\" /> <label for=\"cascade\">{$this->lang['strcascade']}</label></p>" . \PHP_EOL;
echo '<p><input type="hidden" name="action" value="dropconfig" />' . \PHP_EOL;
echo '<input type="hidden" name="database" value="', \htmlspecialchars($_REQUEST['database']), '" />' . \PHP_EOL;
@@ -339,7 +339,7 @@ class FulltextController extends BaseController
echo '<p>', \sprintf($this->lang['strconfdropftsdict'], $this->misc->printVal($_REQUEST['ftsdict'])), '</p>' . \PHP_EOL;
- echo '<form action="' . self::SUBFOLDER . '/src/views/fulltext" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/fulltext" method="post">' . \PHP_EOL;
echo "<p><input type=\"checkbox\" id=\"cascade\" name=\"cascade\" /> <label for=\"cascade\">{$this->lang['strcascade']}</label></p>" . \PHP_EOL;
echo '<p><input type="hidden" name="action" value="dropdict" />' . \PHP_EOL;
echo '<input type="hidden" name="database" value="', \htmlspecialchars($_REQUEST['database']), '" />' . \PHP_EOL;
@@ -390,7 +390,7 @@ class FulltextController extends BaseController
$this->printTitle($this->lang['strftscreateconfig'], 'pg.ftscfg.create');
$this->printMsg($msg);
- echo '<form action="' . self::SUBFOLDER . '/src/views/fulltext" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/fulltext" method="post">' . \PHP_EOL;
echo '<table>' . \PHP_EOL;
// conf name
echo "\t<tr>\n\t\t<th class=\"data left required\">{$this->lang['strname']}</th>" . \PHP_EOL;
@@ -531,7 +531,7 @@ class FulltextController extends BaseController
// Fetch all FTS parsers from the database
$ftsparsers = $data->getFtsParsers();
- echo '<form action="' . self::SUBFOLDER . '/src/views/fulltext" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/fulltext" method="post">' . \PHP_EOL;
echo '<table>' . \PHP_EOL;
echo "\t<tr>" . \PHP_EOL;
@@ -822,7 +822,7 @@ class FulltextController extends BaseController
$this->printTitle($this->lang['strftscreatedict'], 'pg.ftsdict.create');
$this->printMsg($msg);
- echo '<form action="' . self::SUBFOLDER . '/src/views/fulltext" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/fulltext" method="post">' . \PHP_EOL;
echo '<table>' . \PHP_EOL;
echo "\t<tr>\n\t\t<th class=\"data left required\">{$this->lang['strname']}</th>" . \PHP_EOL;
echo "\t\t<td class=\"data1\"><input name=\"formName\" size=\"32\" maxlength=\"{$data->_maxNameLen}\" value=\"",
@@ -966,7 +966,7 @@ class FulltextController extends BaseController
$this->coalesceArr($_POST, 'formName', $_REQUEST['ftsdict']);
- echo '<form action="' . self::SUBFOLDER . '/src/views/fulltext" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/fulltext" method="post">' . \PHP_EOL;
echo '<table>' . \PHP_EOL;
echo "\t<tr>" . \PHP_EOL;
@@ -1036,7 +1036,7 @@ class FulltextController extends BaseController
$this->printTrail('ftscfg'); // TODO: proper breadcrumbs
$this->printTitle($this->lang['strdrop'], 'pg.ftscfg.alter');
- echo '<form action="' . self::SUBFOLDER . '/src/views/fulltext" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/fulltext" method="post">' . \PHP_EOL;
// Case of multiaction drop
if (isset($_REQUEST['ma'])) {
@@ -1096,7 +1096,7 @@ class FulltextController extends BaseController
$this->coalesceArr($_POST, 'ftscfg', $_REQUEST['ftscfg']);
- echo '<form action="' . self::SUBFOLDER . '/src/views/fulltext" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/fulltext" method="post">' . \PHP_EOL;
echo '<table>' . \PHP_EOL;
echo "\t<tr>" . \PHP_EOL;
@@ -1199,7 +1199,7 @@ class FulltextController extends BaseController
$mappings = $data->getFtsMappings($_POST['ftscfg']);
- echo '<form action="' . self::SUBFOLDER . '/src/views/fulltext" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/fulltext" method="post">' . \PHP_EOL;
echo '<table>' . \PHP_EOL;
echo "\t<tr>" . \PHP_EOL;
echo "\t\t<th class=\"data left required\">{$this->lang['strftsmapping']}</th>" . \PHP_EOL;
diff --git a/src/controllers/FunctionsController.php b/src/controllers/FunctionsController.php
index b5ef9820..262cd144 100644
--- a/src/controllers/FunctionsController.php
+++ b/src/controllers/FunctionsController.php
@@ -117,7 +117,7 @@ class FunctionsController extends BaseController
'function' => [
'title' => $this->lang['strfunction'],
'field' => Decorator::field('proproto'),
- 'url' => self::SUBFOLDER . "/redirect/function?action=properties&amp;{$this->misc->href}&amp;",
+ 'url' => \containerInstance()->subFolder . "/redirect/function?action=properties&amp;{$this->misc->href}&amp;",
'vars' => ['function' => 'proproto', 'function_oid' => 'prooid'],
],
'returns' => [
@@ -331,7 +331,7 @@ class FunctionsController extends BaseController
$args = $fndata->fields['proarguments'];
}
- echo '<form action="' . self::SUBFOLDER . '/src/views/functions" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/functions" method="post">' . \PHP_EOL;
echo '<table style="width: 95%">' . \PHP_EOL;
echo '<tr>' . \PHP_EOL;
echo "<th class=\"data required\">{$this->lang['strschema']}</th>" . \PHP_EOL;
@@ -643,7 +643,7 @@ class FunctionsController extends BaseController
$this->printTabs('function', 'definition');
$this->printTitle($this->lang['strdrop'], 'pg.function.drop');
- echo '<form action="' . self::SUBFOLDER . '/src/views/functions" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/functions" method="post">' . \PHP_EOL;
//If multi drop
if (isset($_REQUEST['ma'])) {
@@ -856,12 +856,12 @@ class FunctionsController extends BaseController
$szArgReturns .= '<option value=""></option>';
$szArgReturns .= '<option value="[]">[]</option>';
$szArgReturns .= '</select>';
- $subfolder = self::SUBFOLDER;
+ $subfolder = \containerInstance()->subFolder;
if (!empty($this->conf['theme'])) {
- $szImgPath = self::SUBFOLDER . "/assets/images/themes/{$this->conf['theme']}";
+ $szImgPath = \containerInstance()->subFolder . "/assets/images/themes/{$this->conf['theme']}";
} else {
- $szImgPath = self::SUBFOLDER . '/assets/images/themes/default';
+ $szImgPath = \containerInstance()->subFolder . '/assets/images/themes/default';
}
if (empty($msg)) {
@@ -874,7 +874,7 @@ class FunctionsController extends BaseController
$szJSAddTR .= "<img src=\"{$szImgPath}/AddArguments.png\" alt=\"Add Argument\" /></td>";
$szJSAddTR .= "<td class=\"data3\"><span style=\"font-size: 8pt\">{$this->lang['strargadd']}</span></td></tr></table></td>\n</tr>" . \PHP_EOL;
- echo '<script src="' . self::SUBFOLDER . "/assets/js/functions.js\" type=\"text/javascript\"></script>
+ echo '<script src="' . \containerInstance()->subFolder . "/assets/js/functions.js\" type=\"text/javascript\"></script>
<script type=\"text/javascript\">
//<![CDATA[
var g_types_select = '<select class=\"select2\" name=\"formArgType[]\">{$szTypes}</select>{$szArgReturns}';
@@ -891,7 +891,7 @@ class FunctionsController extends BaseController
//]]>
</script>
";
- echo '<form action="' . self::SUBFOLDER . '/src/views/functions" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/functions" method="post">' . \PHP_EOL;
echo '<table><tbody id="args_table">' . \PHP_EOL;
echo "<tr><th class=\"data required\">{$this->lang['strname']}</th>" . \PHP_EOL;
echo "<th class=\"data required\" colspan=\"2\">{$this->lang['strreturns']}</th>" . \PHP_EOL;
@@ -990,14 +990,14 @@ class FunctionsController extends BaseController
$szJS = '';
- echo '<script src="' . self::SUBFOLDER . '/assets/js/functions.js" type="text/javascript"></script>';
+ echo '<script src="' . \containerInstance()->subFolder . '/assets/js/functions.js" type="text/javascript"></script>';
echo '<script type="text/javascript">' . $this->_buildJSData() . '</script>';
if (!empty($_POST['formArgName'])) {
$szJS = $this->_buildJSRows($this->_buildFunctionArguments($_POST));
} else {
- $subfolder = self::SUBFOLDER;
- $szJS = '<script type="text/javascript" src="' . self::SUBFOLDER . '/assets/js/functions.js">noArgsRebuild(addArg("' . $subfolder . '"));</script>';
+ $subfolder = \containerInstance()->subFolder;
+ $szJS = '<script type="text/javascript" src="' . \containerInstance()->subFolder . '/assets/js/functions.js">noArgsRebuild(addArg("' . $subfolder . '"));</script>';
}
$cost = (isset($_POST['formCost'])) ? $_POST['formCost'] : null;
@@ -1250,7 +1250,7 @@ class FunctionsController extends BaseController
$bArgIsArray = 'true';
}
$arrayProperArgs[] = [$szMode, $szArgName, $szArgType, $bArgIsArray];
- $subfolder = self::SUBFOLDER;
+ $subfolder = \containerInstance()->subFolder;
$szReturn .= '<script type="text/javascript">';
$szReturn .= "RebuildArgTR('{$szMode}','{$szArgName}','{$szArgType}',new Boolean({$bArgIsArray},{$subfolder}));";
$szReturn .= '</script>;';
diff --git a/src/controllers/GroupsController.php b/src/controllers/GroupsController.php
index f748d162..0f88d4b8 100644
--- a/src/controllers/GroupsController.php
+++ b/src/controllers/GroupsController.php
@@ -180,7 +180,7 @@ class GroupsController extends BaseController
echo '<p>', \sprintf($this->lang['strconfdropmember'], $this->misc->printVal($_REQUEST['user']), $this->misc->printVal($_REQUEST['group'])), '</p>' . \PHP_EOL;
- echo '<form action="' . self::SUBFOLDER . '/src/views/groups" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/groups" method="post">' . \PHP_EOL;
echo $this->view->form;
echo '<input type="hidden" name="action" value="drop_member" />' . \PHP_EOL;
echo '<input type="hidden" name="group" value="', \htmlspecialchars($_REQUEST['group']), '" />' . \PHP_EOL;
@@ -248,7 +248,7 @@ class GroupsController extends BaseController
}
// Display form for adding a user to the group
- echo '<form action="' . self::SUBFOLDER . '/src/views/groups" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/groups" method="post">' . \PHP_EOL;
echo '<select name="user">';
while (!$users->EOF) {
@@ -292,7 +292,7 @@ class GroupsController extends BaseController
echo '<p>', \sprintf($this->lang['strconfdropgroup'], $this->misc->printVal($_REQUEST['group'])), '</p>' . \PHP_EOL;
- echo '<form action="' . self::SUBFOLDER . '/src/views/groups" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/groups" method="post">' . \PHP_EOL;
echo $this->view->form;
echo '<input type="hidden" name="action" value="drop" />' . \PHP_EOL;
echo '<input type="hidden" name="group" value="', \htmlspecialchars($_REQUEST['group']), '" />' . \PHP_EOL;
diff --git a/src/controllers/HistoryController.php b/src/controllers/HistoryController.php
index f26d08b5..6c608695 100644
--- a/src/controllers/HistoryController.php
+++ b/src/controllers/HistoryController.php
@@ -75,7 +75,7 @@ class HistoryController extends BaseController
// Bring to the front always
echo '<body onload="window.focus();">' . \PHP_EOL;
- echo '<form action="' . self::SUBFOLDER . '/src/views/history" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/history" method="post">' . \PHP_EOL;
$this->printConnection('history');
echo '</form><br />';
@@ -200,7 +200,7 @@ class HistoryController extends BaseController
echo "<p>{$this->lang['strconfdelhistory']}</p>" . \PHP_EOL;
echo '<pre>', \htmlentities($_SESSION['history'][$_REQUEST['server']][$_REQUEST['database']][$qid]['query'], \ENT_QUOTES, 'UTF-8'), '</pre>';
- echo '<form action="' . self::SUBFOLDER . '/src/views/history" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/history" method="post">' . \PHP_EOL;
echo '<input type="hidden" name="action" value="delhistory" />' . \PHP_EOL;
echo "<input type=\"hidden\" name=\"queryid\" value=\"{$qid}\" />" . \PHP_EOL;
echo $this->view->form;
@@ -223,7 +223,7 @@ class HistoryController extends BaseController
echo "<h3>{$this->lang['strclearhistory']}</h3>" . \PHP_EOL;
echo "<p>{$this->lang['strconfclearhistory']}</p>" . \PHP_EOL;
- echo '<form action="' . self::SUBFOLDER . '/src/views/history" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/history" method="post">' . \PHP_EOL;
echo '<input type="hidden" name="action" value="clearhistory" />' . \PHP_EOL;
echo $this->view->form;
echo "<input type=\"submit\" name=\"yes\" value=\"{$this->lang['stryes']}\" />" . \PHP_EOL;
diff --git a/src/controllers/IndexesController.php b/src/controllers/IndexesController.php
index c7134d6e..27c3fc1a 100644
--- a/src/controllers/IndexesController.php
+++ b/src/controllers/IndexesController.php
@@ -7,7 +7,9 @@
namespace PHPPgAdmin\Controller;
use PHPPgAdmin\Decorators\Decorator;
+use PHPPgAdmin\ContainerUtils;
+use \containerInstance;
/**
* Base controller class.
*/
@@ -15,7 +17,7 @@ class IndexesController extends BaseController
{
public $controller_title = 'strindexes';
- public $scripts = '<script src="' . self::SUBFOLDER . '/assets/js/indexes.js" type="text/javascript"></script>';
+ public $scripts = '<script src="/assets/js/indexes.js" type="text/javascript"></script>';
/**
* Default method to render the controller according to the action parameter.
@@ -25,7 +27,7 @@ class IndexesController extends BaseController
if ('tree' === $this->action) {
return $this->doTree();
}
-
+ $this->scripts = '<script src="' . \containerInstance()->subFolder . '/assets/js/indexes.js" type="text/javascript"></script>';
$this->printHeader($this->headerTitle(), $this->scripts);
$onloadInit = false;
@@ -144,7 +146,7 @@ class IndexesController extends BaseController
],
];
- $url = self::SUBFOLDER . '/src/views/indexes';
+ $url = \containerInstance()->subFolder . '/src/views/indexes';
$actions = [
'cluster' => [
@@ -268,7 +270,7 @@ class IndexesController extends BaseController
echo '<p>', \sprintf($this->lang['strconfcluster'], $this->misc->printVal($_REQUEST['index'])), '</p>' . \PHP_EOL;
- echo '<form action="' . self::SUBFOLDER . '/src/views/indexes" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/indexes" method="post">' . \PHP_EOL;
echo '<p><input type="checkbox" id="analyze" name="analyze"', (isset($_REQUEST['analyze']) ? ' checked="checked"' : ''), ' />';
echo "<label for=\"analyze\">{$this->lang['stranalyze']}</label></p>" . \PHP_EOL;
echo '<input type="hidden" name="action" value="cluster_index" />' . \PHP_EOL;
@@ -503,7 +505,7 @@ class IndexesController extends BaseController
$this->printTitle($this->lang['strdrop'], 'pg.index.drop');
echo '<p>', \sprintf($this->lang['strconfdropindex'], $this->misc->printVal($this->getRequestParam('index'))), '</p>' . \PHP_EOL;
- echo '<form action="' . self::SUBFOLDER . '/src/views/indexes" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/indexes" method="post">' . \PHP_EOL;
echo '<input type="hidden" name="action" value="drop_index" />' . \PHP_EOL;
echo '<input type="hidden" name="table" value="', \htmlspecialchars($object), '" />' . \PHP_EOL;
echo '<input type="hidden" name="index" value="', \htmlspecialchars($this->getRequestParam('index')), '" />' . \PHP_EOL;
diff --git a/src/controllers/LoginController.php b/src/controllers/LoginController.php
index fe7e40ec..770be030 100644
--- a/src/controllers/LoginController.php
+++ b/src/controllers/LoginController.php
@@ -96,7 +96,7 @@ class LoginController extends BaseController
$login_html .= $this->printMsg($msg, false);
}
- $login_html .= '<form id="login_form" method="post" name="login_form" action="' . self::SUBFOLDER . '/redirect/server?server=' . \htmlspecialchars($server_id) . '">';
+ $login_html .= '<form id="login_form" method="post" name="login_form" action="' . \containerInstance()->subFolder . '/redirect/server?server=' . \htmlspecialchars($server_id) . '">';
$md5_server = \md5($server_id);
// Pass request vars through form (is this a security risk???)
diff --git a/src/controllers/MaterializedviewpropertiesController.php b/src/controllers/MaterializedviewpropertiesController.php
index 2a4429dd..0127a2a8 100644
--- a/src/controllers/MaterializedviewpropertiesController.php
+++ b/src/controllers/MaterializedviewpropertiesController.php
@@ -150,7 +150,7 @@ class MaterializedviewpropertiesController extends BaseController
$_POST['formComment'] = $viewdata->fields['relcomment'];
}
- echo '<form action="' . self::SUBFOLDER . '/src/views/materializedviewproperties" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/materializedviewproperties" method="post">' . \PHP_EOL;
echo '<table style="width: 100%">' . \PHP_EOL;
echo "\t<tr>\n\t\t<th class=\"data left required\">{$this->lang['strdefinition']}</th>" . \PHP_EOL;
echo "\t\t<td class=\"data1\"><textarea style=\"width: 100%;\" rows=\"20\" cols=\"50\" name=\"formDefinition\">",
@@ -187,7 +187,7 @@ class MaterializedviewpropertiesController extends BaseController
$this->printTitle($this->lang['stralter'], 'pg.column.alter');
$this->printMsg($msg);
- echo '<form action="' . self::SUBFOLDER . '/src/views/materializedviewproperties" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/materializedviewproperties" method="post">' . \PHP_EOL;
// Output matview header
echo '<table>' . \PHP_EOL;
@@ -285,7 +285,7 @@ class MaterializedviewpropertiesController extends BaseController
$this->coalesceArr($_POST, 'comment', $matview->fields['relcomment']);
- echo '<form action="' . self::SUBFOLDER . '/src/views/materializedviewproperties" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/materializedviewproperties" method="post">' . \PHP_EOL;
echo '<table>' . \PHP_EOL;
echo "<tr><th class=\"data left required\">{$this->lang['strname']}</th>" . \PHP_EOL;
echo '<td class="data1">';
diff --git a/src/controllers/MaterializedviewsController.php b/src/controllers/MaterializedviewsController.php
index 2d765e4e..592a9576 100644
--- a/src/controllers/MaterializedviewsController.php
+++ b/src/controllers/MaterializedviewsController.php
@@ -124,7 +124,7 @@ class MaterializedviewsController extends BaseController
$this->keystring => [
'title' => 'M ' . $this->lang['strview'],
'field' => Decorator::field('relname'),
- 'url' => self::SUBFOLDER . "/redirect/matview?{$this->misc->href}&amp;",
+ 'url' => \containerInstance()->subFolder . "/redirect/matview?{$this->misc->href}&amp;",
'vars' => [$this->keystring => 'relname'],
],
'owner' => [
@@ -281,7 +281,7 @@ class MaterializedviewsController extends BaseController
$this->printTrail('getTrail');
$this->printTitle($this->lang['strdrop'], 'pg.matview.drop');
- echo '<form action="' . self::SUBFOLDER . '/src/views/materializedviews" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/materializedviews" method="post">' . \PHP_EOL;
//If multi drop
if (isset($_REQUEST['ma'])) {
@@ -403,7 +403,7 @@ class MaterializedviewsController extends BaseController
$this->printTitle($this->lang['strcreateview'], 'pg.matview.create');
$this->printMsg($msg);
- echo '<form action="' . self::SUBFOLDER . "/src/views/{$this->view_name}\" method=\"post\">" . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . "/src/views/{$this->view_name}\" method=\"post\">" . \PHP_EOL;
echo '<table style="width: 100%">' . \PHP_EOL;
echo "\t<tr>\n\t\t<th class=\"data left required\">{$this->lang['strname']}</th>" . \PHP_EOL;
echo "\t<td class=\"data1\"><input name=\"formView\" size=\"32\" maxlength=\"{$data->_maxNameLen}\" value=\"",
diff --git a/src/controllers/OperatorsController.php b/src/controllers/OperatorsController.php
index baa78c46..602fbaaf 100644
--- a/src/controllers/OperatorsController.php
+++ b/src/controllers/OperatorsController.php
@@ -256,7 +256,7 @@ class OperatorsController extends BaseController
echo '<p>', \sprintf($this->lang['strconfdropoperator'], $this->misc->printVal($_REQUEST['operator'])), '</p>' . \PHP_EOL;
- echo '<form action="' . self::SUBFOLDER . '/src/views/operators" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/operators" method="post">' . \PHP_EOL;
echo "<p><input type=\"checkbox\" id=\"cascade\" name=\"cascade\" /> <label for=\"cascade\">{$this->lang['strcascade']}</label></p>" . \PHP_EOL;
echo '<p><input type="hidden" name="action" value="drop" />' . \PHP_EOL;
echo '<input type="hidden" name="operator" value="', \htmlspecialchars($_REQUEST['operator']), '" />' . \PHP_EOL;
diff --git a/src/controllers/PrivilegesController.php b/src/controllers/PrivilegesController.php
index 028d940f..18c6dc96 100644
--- a/src/controllers/PrivilegesController.php
+++ b/src/controllers/PrivilegesController.php
@@ -79,7 +79,7 @@ class PrivilegesController extends BaseController
$this->printMsg($msg);
if (!isset($data->privlist[$subject])) {
- $this->halt('No privileges defined for subject ' . $subject);
+ $this->container->halt('No privileges defined for subject ' . $subject);
return;
}
@@ -316,7 +316,7 @@ class PrivilegesController extends BaseController
$this->printMsg($msg);
- echo '<form action="' . self::SUBFOLDER . '/src/views/privileges" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/privileges" method="post">' . \PHP_EOL;
echo '<table>' . \PHP_EOL;
echo "<tr><th class=\"data left\">{$this->lang['strusers']}</th>" . \PHP_EOL;
echo '<td class="data1"><select name="username[]" multiple="multiple" size="', \min(6, $users->recordCount()), '">' . \PHP_EOL;
diff --git a/src/controllers/RolesController.php b/src/controllers/RolesController.php
index 2fea45c9..653db4c1 100644
--- a/src/controllers/RolesController.php
+++ b/src/controllers/RolesController.php
@@ -116,7 +116,7 @@ class RolesController extends BaseController
'role' => [
'title' => $this->lang['strrole'],
'field' => Decorator::field('rolname'),
- 'url' => self::SUBFOLDER . "/redirect/role?action=properties&amp;{$this->misc->href}&amp;",
+ 'url' => \containerInstance()->subFolder . "/redirect/role?action=properties&amp;{$this->misc->href}&amp;",
'vars' => ['rolename' => 'rolname'],
],
'group' => [
@@ -240,7 +240,7 @@ class RolesController extends BaseController
$this->printTitle($this->lang['strcreaterole'], 'pg.role.create');
$this->printMsg($msg);
- echo '<form action="' . self::SUBFOLDER . '/src/views/roles" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/roles" method="post">' . \PHP_EOL;
echo '<table>' . \PHP_EOL;
echo "\t<tr>\n\t\t<th class=\"data left required\" style=\"width: 130px\">{$this->lang['strname']}</th>" . \PHP_EOL;
echo "\t\t<td class=\"data1\"><input size=\"15\" maxlength=\"{$data->_maxNameLen}\" name=\"formRolename\" value=\"", \htmlspecialchars($_POST['formRolename']), "\" /></td>\n\t</tr>" . \PHP_EOL;
@@ -393,7 +393,7 @@ class RolesController extends BaseController
$this->_adjustPostVars($roledata, $canRename);
- echo '<form action="' . self::SUBFOLDER . '/src/views/roles" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/roles" method="post">' . \PHP_EOL;
echo '<table>' . \PHP_EOL;
echo "\t<tr>\n\t\t<th class=\"data left\" style=\"width: 130px\">{$this->lang['strname']}</th>" . \PHP_EOL;
echo "\t\t<td class=\"data1\">", ($canRename ? "<input name=\"formNewRoleName\" size=\"15\" maxlength=\"{$data->_maxNameLen}\" value=\"" . \htmlspecialchars($_POST['formNewRoleName']) . '" />' : $this->misc->printVal($roledata->fields['rolname'])), "</td>\n\t</tr>" . \PHP_EOL;
@@ -535,7 +535,7 @@ class RolesController extends BaseController
echo '<p>', \sprintf($this->lang['strconfdroprole'], $this->misc->printVal($_REQUEST['rolename'])), '</p>' . \PHP_EOL;
- echo '<form action="' . self::SUBFOLDER . '/src/views/roles" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/roles" method="post">' . \PHP_EOL;
echo '<p><input type="hidden" name="action" value="drop" />' . \PHP_EOL;
echo '<input type="hidden" name="rolename" value="', \htmlspecialchars($_REQUEST['rolename']), '" />' . \PHP_EOL;
echo $this->view->form;
@@ -762,7 +762,7 @@ class RolesController extends BaseController
$this->coalesceArr($_POST, 'confirm', '');
- echo '<form action="' . self::SUBFOLDER . '/src/views/roles" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/roles" method="post">' . \PHP_EOL;
echo '<table>' . \PHP_EOL;
echo "\t<tr>\n\t\t<th class=\"data left required\">{$this->lang['strpassword']}</th>" . \PHP_EOL;
echo "\t\t<td><input type=\"password\" name=\"password\" size=\"32\" value=\"",
diff --git a/src/controllers/RulesController.php b/src/controllers/RulesController.php
index 41515c60..5975b5af 100644
--- a/src/controllers/RulesController.php
+++ b/src/controllers/RulesController.php
@@ -170,7 +170,7 @@ class RulesController extends BaseController
$this->printTitle($this->lang['strcreaterule'], 'pg.rule.create');
$this->printMsg($msg);
- echo '<form action="' . self::SUBFOLDER . '/src/views/rules" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/rules" method="post">' . \PHP_EOL;
echo '<table>' . \PHP_EOL;
echo "<tr><th class=\"data left required\">{$this->lang['strname']}</th>" . \PHP_EOL;
echo "<td class=\"data1\"><input name=\"name\" size=\"16\" maxlength=\"{$data->_maxNameLen}\" value=\"",
@@ -248,7 +248,7 @@ class RulesController extends BaseController
$this->misc->printVal($_REQUEST[$_REQUEST['reltype']])
), '</p>' . \PHP_EOL;
- echo '<form action="' . self::SUBFOLDER . '/src/views/rules" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/rules" method="post">' . \PHP_EOL;
echo '<input type="hidden" name="action" value="drop" />' . \PHP_EOL;
echo '<input type="hidden" name="subject" value="', \htmlspecialchars($_REQUEST['reltype']), '" />' . \PHP_EOL;
echo '<input type="hidden" name="', \htmlspecialchars($_REQUEST['reltype']),
diff --git a/src/controllers/SchemasController.php b/src/controllers/SchemasController.php
index b1b06fa0..88ec4361 100644
--- a/src/controllers/SchemasController.php
+++ b/src/controllers/SchemasController.php
@@ -106,7 +106,7 @@ class SchemasController extends BaseController
'schema' => [
'title' => $this->lang['strschema'],
'field' => Decorator::field('nspname'),
- 'url' => self::SUBFOLDER . "{$destination}&amp;",
+ 'url' => \containerInstance()->subFolder . "{$destination}&amp;",
'vars' => ['schema' => 'nspname'],
],
'owner' => [
@@ -280,7 +280,7 @@ class SchemasController extends BaseController
$this->printTitle($this->lang['strcreateschema'], 'pg.schema.create');
$this->printMsg($msg);
- echo '<form action="' . self::SUBFOLDER . '/src/views/schemas" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/schemas" method="post">' . \PHP_EOL;
echo '<table style="width: 100%">' . \PHP_EOL;
echo "\t<tr>\n\t\t<th class=\"data left required\">{$this->lang['strname']}</th>" . \PHP_EOL;
echo "\t\t<td class=\"data1\"><input name=\"formName\" size=\"32\" maxlength=\"{$data->_maxNameLen}\" value=\"",
@@ -358,7 +358,7 @@ class SchemasController extends BaseController
$this->coalesceArr($_POST, 'owner', $schema->fields['ownername']);
- echo '<form action="' . self::SUBFOLDER . '/src/views/schemas" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/schemas" method="post">' . \PHP_EOL;
echo '<table>' . \PHP_EOL;
echo "\t<tr>" . \PHP_EOL;
@@ -437,7 +437,7 @@ class SchemasController extends BaseController
$this->printTrail('schema');
$this->printTitle($this->lang['strdrop'], 'pg.schema.drop');
- echo '<form action="' . self::SUBFOLDER . '/src/views/schemas" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/schemas" method="post">' . \PHP_EOL;
//If multi drop
if (isset($_REQUEST['ma'])) {
foreach ($_REQUEST['ma'] as $v) {
diff --git a/src/controllers/SequencesController.php b/src/controllers/SequencesController.php
index a0708406..2b31953c 100644
--- a/src/controllers/SequencesController.php
+++ b/src/controllers/SequencesController.php
@@ -407,7 +407,7 @@ class SequencesController extends BaseController
$this->printTitle($this->lang['strdrop'], 'pg.sequence.drop');
$this->printMsg($msg);
- echo '<form action="' . self::SUBFOLDER . '/src/views/sequences" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/sequences" method="post">' . \PHP_EOL;
//If multi drop
if (isset($_REQUEST['ma'])) {
@@ -492,7 +492,7 @@ class SequencesController extends BaseController
$this->printTitle($this->lang['strcreatesequence'], 'pg.sequence.create');
$this->printMsg($msg);
- echo '<form action="' . self::SUBFOLDER . '/src/views/sequences" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/sequences" method="post">' . \PHP_EOL;
echo '<table>' . \PHP_EOL;
echo "<tr><th class=\"data left required\">{$this->lang['strname']}</th>" . \PHP_EOL;
@@ -648,7 +648,7 @@ class SequencesController extends BaseController
$sequence = $data->getSequence($_REQUEST['sequence']);
if (\is_object($sequence) && 0 < $sequence->recordCount()) {
- echo '<form action="' . self::SUBFOLDER . '/src/views/sequences" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/sequences" method="post">' . \PHP_EOL;
echo '<table border="0">';
echo "<tr><th class=\"data left required\">{$this->lang['strlastvalue']}</th>" . \PHP_EOL;
echo '<td class="data1">';
@@ -758,7 +758,7 @@ class SequencesController extends BaseController
$_POST['formCycledValue'] = 'on';
}
- echo '<form action="' . self::SUBFOLDER . '/src/views/sequences" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/sequences" method="post">' . \PHP_EOL;
echo '<table>' . \PHP_EOL;
echo "<tr><th class=\"data left required\">{$this->lang['strname']}</th>" . \PHP_EOL;
diff --git a/src/controllers/ServersController.php b/src/controllers/ServersController.php
index a2f32301..c4926187 100644
--- a/src/controllers/ServersController.php
+++ b/src/controllers/ServersController.php
@@ -105,7 +105,7 @@ class ServersController extends BaseController
'server' => [
'title' => $this->lang['strserver'],
'field' => Decorator::field('desc'),
- 'url' => self::SUBFOLDER . '/redirect/server?',
+ 'url' => \containerInstance()->subFolder . '/redirect/server?',
'vars' => ['server' => 'sha'],
],
'host' => [
diff --git a/src/controllers/SqleditController.php b/src/controllers/SqleditController.php
index 9b4b2085..3a6a62c9 100644
--- a/src/controllers/SqleditController.php
+++ b/src/controllers/SqleditController.php
@@ -68,7 +68,7 @@ class SqleditController extends BaseController
$default_html = $this->printTabs('popup', 'sql', false);
- $default_html .= '<form action="' . self::SUBFOLDER . '/src/views/sql" method="post" enctype="multipart/form-data" class="sqlform" id="sqlform" target="detail">';
+ $default_html .= '<form action="' . \containerInstance()->subFolder . '/src/views/sql" method="post" enctype="multipart/form-data" class="sqlform" id="sqlform" target="detail">';
$default_html .= \PHP_EOL;
$default_html .= $this->printConnection('sql', false);
diff --git a/src/controllers/TablesController.php b/src/controllers/TablesController.php
index 7888b709..ee0ddc87 100644
--- a/src/controllers/TablesController.php
+++ b/src/controllers/TablesController.php
@@ -197,7 +197,7 @@ class TablesController extends BaseController
return $this
->container
- ->responseobj
+ ->response
->withStatus(200)
->withJson($all_tables);
}
@@ -296,7 +296,7 @@ class TablesController extends BaseController
$this->printTitle($this->lang['strcreatetable'], 'pg.table.create');
$this->printMsg($msg);
- echo '<form action="' . self::SUBFOLDER . '/src/views/' . $this->script . '" method="post">';
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/' . $this->script . '" method="post">';
echo \PHP_EOL;
echo '<table>' . \PHP_EOL;
echo "\t<tr>\n\t\t<th class=\"data left required\">{$this->lang['strname']}</th>" . \PHP_EOL;
@@ -368,8 +368,8 @@ class TablesController extends BaseController
$this->printTitle($this->lang['strcreatetable'], 'pg.table.create');
$this->printMsg($msg);
- echo '<script src="' . self::SUBFOLDER . '/assets/js/tables.js" type="text/javascript"></script>';
- echo '<form action="' . self::SUBFOLDER . '/src/views/tables" method="post">' . \PHP_EOL;
+ echo '<script src="' . \containerInstance()->subFolder . '/assets/js/tables.js" type="text/javascript"></script>';
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/tables" method="post">' . \PHP_EOL;
// Output table header
echo '<table>' . \PHP_EOL;
@@ -588,7 +588,7 @@ class TablesController extends BaseController
unset($tbltmp);
- echo '<form action="' . self::SUBFOLDER . '/src/views/tables" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/tables" method="post">' . \PHP_EOL;
echo "<table>\n\t<tr>\n\t\t<th class=\"data left required\">{$this->lang['strname']}</th>" . \PHP_EOL;
echo "\t\t<td class=\"data\"><input name=\"name\" size=\"32\" maxlength=\"{$data->_maxNameLen}\" value=\"", \htmlspecialchars($_REQUEST['name']), "\" /></td>\n\t</tr>" . \PHP_EOL;
echo "\t<tr>\n\t\t<th class=\"data left required\">{$this->lang['strcreatetablelikeparent']}</th>" . \PHP_EOL;
@@ -689,7 +689,7 @@ class TablesController extends BaseController
$attrs = $data->getTableAttributes($_REQUEST['table']);
- echo '<form action="' . self::SUBFOLDER . '/src/views/display" method="post" id="selectform">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/display" method="post" id="selectform">' . \PHP_EOL;
if (0 < $attrs->recordCount()) {
// JavaScript for select all feature
@@ -827,7 +827,7 @@ class TablesController extends BaseController
$this->coalesceArr($_REQUEST, 'nulls', []);
$this->coalesceArr($_REQUEST, 'format', []);
- echo '<form action="' . self::SUBFOLDER . '/src/views/tables" method="post" id="ac_form">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/tables" method="post" id="ac_form">' . \PHP_EOL;
if (0 < $attrs->recordCount()) {
echo '<table>' . \PHP_EOL;
@@ -953,7 +953,7 @@ class TablesController extends BaseController
}
echo $this->view->form;
echo '</form>' . \PHP_EOL;
- echo '<script src="' . self::SUBFOLDER . '/assets/js/insert_or_edit_row.js" type="text/javascript"></script>';
+ echo '<script src="' . \containerInstance()->subFolder . '/assets/js/insert_or_edit_row.js" type="text/javascript"></script>';
}
/**
@@ -1006,7 +1006,7 @@ class TablesController extends BaseController
$this->printTrail('schema');
$this->printTitle($this->lang['strempty'], 'pg.table.empty');
- echo '<form action="' . self::SUBFOLDER . '/src/views/tables" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/tables" method="post">' . \PHP_EOL;
foreach ($_REQUEST['ma'] as $v) {
$a = \unserialize(\htmlspecialchars_decode($v, \ENT_QUOTES));
@@ -1021,7 +1021,7 @@ class TablesController extends BaseController
echo '<p>', \sprintf($this->lang['strconfemptytable'], $this->misc->printVal($_REQUEST['table'])), '</p>' . \PHP_EOL;
- echo '<form action="' . self::SUBFOLDER . '/src/views/tables" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/tables" method="post">' . \PHP_EOL;
echo \sprintf('<input type="hidden" name="table" value="%s" />%s', \htmlspecialchars($_REQUEST['table']), \PHP_EOL);
// END not mutli empty
@@ -1085,7 +1085,7 @@ class TablesController extends BaseController
$this->printTrail('schema');
$this->printTitle($this->lang['strdrop'], 'pg.table.drop');
- echo '<form action="' . self::SUBFOLDER . '/src/views/tables" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/tables" method="post">' . \PHP_EOL;
foreach ($_REQUEST['ma'] as $v) {
$a = \unserialize(\htmlspecialchars_decode($v, \ENT_QUOTES));
@@ -1098,7 +1098,7 @@ class TablesController extends BaseController
echo '<p>', \sprintf($this->lang['strconfdroptable'], $this->misc->printVal($_REQUEST['table'])), '</p>' . \PHP_EOL;
- echo '<form action="' . self::SUBFOLDER . '/src/views/tables" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/tables" method="post">' . \PHP_EOL;
echo \sprintf('<input type="hidden" name="table" value="%s" />%s', \htmlspecialchars($_REQUEST['table']), \PHP_EOL);
// END if multi drop
}
@@ -1157,7 +1157,7 @@ class TablesController extends BaseController
'table' => [
'title' => $this->lang['strtable'],
'field' => Decorator::field('relname'),
- 'url' => self::SUBFOLDER . "/redirect/table?{$this->misc->href}&amp;",
+ 'url' => \containerInstance()->subFolder . "/redirect/table?{$this->misc->href}&amp;",
'vars' => ['table' => 'relname'],
],
'owner' => [
diff --git a/src/controllers/TablespacesController.php b/src/controllers/TablespacesController.php
index d14ad956..85a0cfbb 100644
--- a/src/controllers/TablespacesController.php
+++ b/src/controllers/TablespacesController.php
@@ -188,7 +188,7 @@ class TablespacesController extends BaseController
$this->coalesceArr($_POST, 'comment', ($data->hasSharedComments()) ? $tablespace->fields['spccomment'] : '');
- echo '<form action="' . self::SUBFOLDER . '/src/views/tablespaces" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/tablespaces" method="post">' . \PHP_EOL;
echo $this->view->form;
echo '<table>' . \PHP_EOL;
echo "<tr><th class=\"data left required\">{$this->lang['strname']}</th>" . \PHP_EOL;
@@ -264,7 +264,7 @@ class TablespacesController extends BaseController
echo '<p>', \sprintf($this->lang['strconfdroptablespace'], $this->misc->printVal($_REQUEST['tablespace'])), '</p>' . \PHP_EOL;
- echo '<form action="' . self::SUBFOLDER . '/src/views/tablespaces" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/tablespaces" method="post">' . \PHP_EOL;
echo $this->view->form;
echo '<input type="hidden" name="action" value="drop" />' . \PHP_EOL;
echo '<input type="hidden" name="tablespace" value="', \htmlspecialchars($_REQUEST['tablespace']), '" />' . \PHP_EOL;
@@ -308,7 +308,7 @@ class TablespacesController extends BaseController
$this->printTitle($this->lang['strcreatetablespace'], 'pg.tablespace.create');
$this->printMsg($msg);
- echo '<form action="' . self::SUBFOLDER . '/src/views/tablespaces" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/tablespaces" method="post">' . \PHP_EOL;
echo $this->view->form;
echo '<table>' . \PHP_EOL;
echo "\t<tr>\n\t\t<th class=\"data left required\">{$this->lang['strname']}</th>" . \PHP_EOL;
diff --git a/src/controllers/TblpropertiesController.php b/src/controllers/TblpropertiesController.php
index 81f0db2b..cc117dda 100644
--- a/src/controllers/TblpropertiesController.php
+++ b/src/controllers/TblpropertiesController.php
@@ -357,7 +357,7 @@ class TblpropertiesController extends BaseController
$_POST['tablespace'] = $table->fields['tablespace'];
}
- echo '<form action="' . self::SUBFOLDER . '/src/views/tblproperties" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/tblproperties" method="post">' . \PHP_EOL;
echo '<table>' . \PHP_EOL;
echo "<tr><th class=\"data left required\">{$this->lang['strname']}</th>" . \PHP_EOL;
echo '<td class="data1">';
@@ -482,7 +482,7 @@ class TblpropertiesController extends BaseController
$max_size = $misc->inisizeToBytes(\ini_get('upload_max_filesize'));
if (\is_float($max_size) && 0 < $max_size) {
- echo '<form action="' . self::SUBFOLDER . '/src/views/dataimport" method="post" enctype="multipart/form-data">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/dataimport" method="post" enctype="multipart/form-data">' . \PHP_EOL;
echo '<table>' . \PHP_EOL;
echo "\t<tr>\n\t\t<th class=\"data left required\">{$this->lang['strformat']}</th>" . \PHP_EOL;
echo "\t\t<td><select name=\"format\">" . \PHP_EOL;
@@ -545,8 +545,8 @@ class TblpropertiesController extends BaseController
$this->printTitle($this->lang['straddcolumn'], 'pg.column.add');
$this->printMsg($msg);
- echo '<script src="' . self::SUBFOLDER . '/assets/js/tables.js" type="text/javascript"></script>';
- echo '<form action="' . self::SUBFOLDER . '/src/views/tblproperties" method="post">' . \PHP_EOL;
+ echo '<script src="' . \containerInstance()->subFolder . '/assets/js/tables.js" type="text/javascript"></script>';
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/tblproperties" method="post">' . \PHP_EOL;
// Output table header
echo '<table>' . \PHP_EOL;
@@ -680,7 +680,7 @@ class TblpropertiesController extends BaseController
echo '<p>' . \sprintf($this->lang['strconfdropcolumn'], $misc->printVal($_REQUEST['column']), $misc->printVal($_REQUEST['table'])) . '</p>' . \PHP_EOL;
- echo '<form action="' . self::SUBFOLDER . '/src/views/tblproperties" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/tblproperties" method="post">' . \PHP_EOL;
echo '<input type="hidden" name="action" value="drop" />' . \PHP_EOL;
echo \sprintf('<input type="hidden" name="table" value="%s" />%s', \htmlspecialchars($_REQUEST['table']), \PHP_EOL);
echo '<input type="hidden" name="column" value="', \htmlspecialchars($_REQUEST['column']), '" />' . \PHP_EOL;
diff --git a/src/controllers/TreeController.php b/src/controllers/TreeController.php
index 81ee9bee..03ec4af6 100644
--- a/src/controllers/TreeController.php
+++ b/src/controllers/TreeController.php
@@ -145,10 +145,10 @@ class TreeController extends BaseController
$parent = [
'id' => 'root',
'children' => true,
- 'icon' => self::SUBFOLDER . '/assets/images/themes/default/Servers.png',
+ 'icon' => \containerInstance()->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'),
+ 'a_attr' => ['href' => \str_replace('//', '/', \containerInstance()->subFolder . '/src/views/servers')],
+ 'url' => \str_replace('//', '/', \containerInstance()->subFolder . '/src/views/servers?action=tree'),
'text' => 'Servers',
];
} elseif (0 < \count($treedata)) {
@@ -172,7 +172,7 @@ class TreeController extends BaseController
$url = Decorator::get_sanitized_value($attrs['branch'], $rec);
if ($url && false === \mb_strpos($url, '/src/views')) {
- $url = \str_replace('//', '/', self::SUBFOLDER . '/src/views/' . $url);
+ $url = \str_replace('//', '/', \containerInstance()->subFolder . '/src/views/' . $url);
}
if ($url) {
@@ -196,7 +196,7 @@ class TreeController extends BaseController
return $this
->container
- ->responseobj
+ ->response
->withStatus(200)
->withJson($parent);
}
diff --git a/src/controllers/TriggersController.php b/src/controllers/TriggersController.php
index 83faeb49..2c1eab77 100644
--- a/src/controllers/TriggersController.php
+++ b/src/controllers/TriggersController.php
@@ -273,7 +273,7 @@ class TriggersController extends BaseController
if (0 < $triggerdata->recordCount()) {
$this->coalesceArr($_POST, 'name', $triggerdata->fields['tgname']);
- echo '<form action="' . self::SUBFOLDER . '/src/views/triggers" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/triggers" method="post">' . \PHP_EOL;
echo '<table>' . \PHP_EOL;
echo "<tr><th class=\"data\">{$this->lang['strname']}</th>" . \PHP_EOL;
echo '<td class="data1">';
@@ -311,7 +311,7 @@ class TriggersController extends BaseController
$this->misc->printVal($_REQUEST['table'])
), '</p>' . \PHP_EOL;
- echo '<form action="' . self::SUBFOLDER . '/src/views/triggers" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/triggers" method="post">' . \PHP_EOL;
echo '<input type="hidden" name="action" value="drop" />' . \PHP_EOL;
echo \sprintf('<input type="hidden" name="table" value="%s" />%s', \htmlspecialchars($_REQUEST['table']), \PHP_EOL);
echo '<input type="hidden" name="trigger" value="', \htmlspecialchars($_REQUEST['trigger']), '" />' . \PHP_EOL;
@@ -350,7 +350,7 @@ class TriggersController extends BaseController
$this->misc->printVal($_REQUEST['table'])
), '</p>' . \PHP_EOL;
- echo '<form action="' . self::SUBFOLDER . '/src/views/triggers" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/triggers" method="post">' . \PHP_EOL;
echo '<input type="hidden" name="action" value="enable" />' . \PHP_EOL;
echo \sprintf('<input type="hidden" name="table" value="%s" />%s', \htmlspecialchars($_REQUEST['table']), \PHP_EOL);
echo '<input type="hidden" name="trigger" value="', \htmlspecialchars($_REQUEST['trigger']), '" />' . \PHP_EOL;
@@ -388,7 +388,7 @@ class TriggersController extends BaseController
$this->misc->printVal($_REQUEST['table'])
), '</p>' . \PHP_EOL;
- echo '<form action="' . self::SUBFOLDER . '/src/views/triggers" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/triggers" method="post">' . \PHP_EOL;
echo '<input type="hidden" name="action" value="disable" />' . \PHP_EOL;
echo \sprintf('<input type="hidden" name="table" value="%s" />%s', \htmlspecialchars($_REQUEST['table']), \PHP_EOL);
echo '<input type="hidden" name="trigger" value="', \htmlspecialchars($_REQUEST['trigger']), '" />' . \PHP_EOL;
@@ -449,7 +449,7 @@ class TriggersController extends BaseController
$sel3 = new \PHPPgAdmin\XHtml\XHtmlSelect('formFrequency');
$sel3->set_data($data->triggerFrequency);
- echo '<form action="' . self::SUBFOLDER . '/src/views/triggers" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/triggers" method="post">' . \PHP_EOL;
echo '<table>' . \PHP_EOL;
echo '<tr>' . \PHP_EOL;
echo " <th class=\"data\">{$this->lang['strname']}</th>" . \PHP_EOL;
diff --git a/src/controllers/TypesController.php b/src/controllers/TypesController.php
index 7c866657..bd7fbcbe 100644
--- a/src/controllers/TypesController.php
+++ b/src/controllers/TypesController.php
@@ -344,7 +344,7 @@ class TypesController extends BaseController
echo '<p>', \sprintf($this->lang['strconfdroptype'], $this->misc->printVal($_REQUEST['type'])), '</p>' . \PHP_EOL;
- echo '<form action="' . self::SUBFOLDER . '/src/views/types" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/types" method="post">' . \PHP_EOL;
echo "<p><input type=\"checkbox\" id=\"cascade\" name=\"cascade\" /> <label for=\"cascade\">{$this->lang['strcascade']}</label></p>" . \PHP_EOL;
echo '<p><input type="hidden" name="action" value="drop" />' . \PHP_EOL;
echo '<input type="hidden" name="type" value="', \htmlspecialchars($_REQUEST['type']), '" />' . \PHP_EOL;
@@ -386,7 +386,7 @@ class TypesController extends BaseController
$this->printTitle($this->lang['strcreatecomptype'], 'pg.type.create');
$this->printMsg($msg);
- echo '<form action="' . self::SUBFOLDER . '/src/views/types" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/types" method="post">' . \PHP_EOL;
echo '<table>' . \PHP_EOL;
echo "\t<tr>\n\t\t<th class=\"data left required\">{$this->lang['strname']}</th>" . \PHP_EOL;
echo "\t\t<td class=\"data\"><input name=\"name\" size=\"32\" maxlength=\"{$data->_maxNameLen}\" value=\"",
@@ -432,7 +432,7 @@ class TypesController extends BaseController
$this->printTitle($this->lang['strcreatecomptype'], 'pg.type.create');
$this->printMsg($msg);
- echo '<form action="' . self::SUBFOLDER . '/src/views/types" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/types" method="post">' . \PHP_EOL;
// Output table header
echo '<table>' . \PHP_EOL;
@@ -563,7 +563,7 @@ class TypesController extends BaseController
$this->printTitle($this->lang['strcreateenumtype'], 'pg.type.create');
$this->printMsg($msg);
- echo '<form action="' . self::SUBFOLDER . '/src/views/types" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/types" method="post">' . \PHP_EOL;
echo '<table>' . \PHP_EOL;
echo "\t<tr>\n\t\t<th class=\"data left required\">{$this->lang['strname']}</th>" . \PHP_EOL;
echo "\t\t<td class=\"data\"><input name=\"name\" size=\"32\" maxlength=\"{$data->_maxNameLen}\" value=\"",
@@ -607,7 +607,7 @@ class TypesController extends BaseController
$this->printTitle($this->lang['strcreateenumtype'], 'pg.type.create');
$this->printMsg($msg);
- echo '<form action="' . self::SUBFOLDER . '/src/views/types" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/types" method="post">' . \PHP_EOL;
// Output table header
echo '<table>' . \PHP_EOL;
@@ -710,7 +710,7 @@ class TypesController extends BaseController
$this->printTitle($this->lang['strcreatetype'], 'pg.type.create');
$this->printMsg($msg);
- echo '<form action="' . self::SUBFOLDER . '/src/views/types" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/types" method="post">' . \PHP_EOL;
echo '<table>' . \PHP_EOL;
echo "<tr><th class=\"data left required\">{$this->lang['strname']}</th>" . \PHP_EOL;
echo "<td class=\"data1\"><input name=\"typname\" size=\"32\" maxlength=\"{$data->_maxNameLen}\" value=\"",
diff --git a/src/controllers/UsersController.php b/src/controllers/UsersController.php
index 54034dfe..54dcf344 100644
--- a/src/controllers/UsersController.php
+++ b/src/controllers/UsersController.php
@@ -257,7 +257,7 @@ class UsersController extends BaseController
$this->coalesceArr($_POST, 'confirm', '');
- echo '<form action="' . self::SUBFOLDER . '/src/views/users" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/users" method="post">' . \PHP_EOL;
echo '<table>' . \PHP_EOL;
echo "\t<tr>\n\t\t<th class=\"data left required\">{$this->lang['strpassword']}</th>" . \PHP_EOL;
echo "\t\t<td><input type=\"password\" name=\"password\" size=\"32\" value=\"",
@@ -330,7 +330,7 @@ class UsersController extends BaseController
$_POST['formPassword'] = '';
}
- echo '<form action="' . self::SUBFOLDER . '/src/views/users" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/users" method="post">' . \PHP_EOL;
echo '<table>' . \PHP_EOL;
echo "\t<tr>\n\t\t<th class=\"data left\">{$this->lang['strusername']}</th>" . \PHP_EOL;
echo "\t\t<td class=\"data1\">", ($canRename ? "<input name=\"newname\" size=\"15\" maxlength=\"{$data->_maxNameLen}\" value=\"" . \htmlspecialchars($_POST['newname']) . '" />' : $this->misc->printVal($userdata->fields['usename'])), "</td>\n\t</tr>" . \PHP_EOL;
@@ -400,7 +400,7 @@ class UsersController extends BaseController
echo '<p>', \sprintf($this->lang['strconfdropuser'], $this->misc->printVal($_REQUEST['username'])), '</p>' . \PHP_EOL;
- echo '<form action="' . self::SUBFOLDER . '/src/views/users" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/users" method="post">' . \PHP_EOL;
echo '<p><input type="hidden" name="action" value="drop" />' . \PHP_EOL;
echo '<input type="hidden" name="username" value="', \htmlspecialchars($_REQUEST['username']), '" />' . \PHP_EOL;
echo $this->view->form;
@@ -439,7 +439,7 @@ class UsersController extends BaseController
$this->printTitle($this->lang['strcreateuser'], 'pg.user.create');
$this->printMsg($msg);
- echo '<form action="' . self::SUBFOLDER . '/src/views/users" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/users" method="post">' . \PHP_EOL;
echo '<table>' . \PHP_EOL;
echo "\t<tr>\n\t\t<th class=\"data left required\">{$this->lang['strusername']}</th>" . \PHP_EOL;
echo "\t\t<td class=\"data1\"><input size=\"15\" maxlength=\"{$data->_maxNameLen}\" name=\"formUsername\" value=\"", \htmlspecialchars($_POST['formUsername']), "\" /></td>\n\t</tr>" . \PHP_EOL;
diff --git a/src/controllers/ViewpropertiesController.php b/src/controllers/ViewpropertiesController.php
index 523d5c47..83d690eb 100644
--- a/src/controllers/ViewpropertiesController.php
+++ b/src/controllers/ViewpropertiesController.php
@@ -141,7 +141,7 @@ class ViewpropertiesController extends BaseController
}
$variables = (object) [
- 'subfolder' => self::SUBFOLDER . '/src/views/viewproperties',
+ 'subfolder' => \containerInstance()->subFolder . '/src/views/viewproperties',
'formDefinition' => \htmlspecialchars($_POST['formDefinition']),
@@ -201,7 +201,7 @@ EOT;
$this->printTitle($this->lang['stralter'], 'pg.column.alter');
$this->printMsg($msg);
- echo '<form action="' . self::SUBFOLDER . '/src/views/viewproperties" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/viewproperties" method="post">' . \PHP_EOL;
// Output view header
echo '<table>' . \PHP_EOL;
@@ -299,7 +299,7 @@ EOT;
$this->coalesceArr($_POST, 'comment', $view->fields['relcomment']);
- echo '<form action="' . self::SUBFOLDER . '/src/views/viewproperties" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/viewproperties" method="post">' . \PHP_EOL;
echo '<table>' . \PHP_EOL;
echo "<tr><th class=\"data left required\">{$this->lang['strname']}</th>" . \PHP_EOL;
echo '<td class="data1">';
diff --git a/src/controllers/ViewsController.php b/src/controllers/ViewsController.php
index 84feea4d..e9668186 100644
--- a/src/controllers/ViewsController.php
+++ b/src/controllers/ViewsController.php
@@ -124,7 +124,7 @@ class ViewsController extends BaseController
$this->keystring => [
'title' => $this->lang['strview'],
'field' => Decorator::field('relname'),
- 'url' => self::SUBFOLDER . "/redirect/view?{$this->misc->href}&amp;",
+ 'url' => \containerInstance()->subFolder . "/redirect/view?{$this->misc->href}&amp;",
'vars' => [$this->keystring => 'relname'],
],
'owner' => [
@@ -281,7 +281,7 @@ class ViewsController extends BaseController
$this->printTrail('view');
$this->printTitle($this->lang['strdrop'], 'pg.view.drop');
- echo '<form action="' . self::SUBFOLDER . '/src/views/views" method="post">' . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . '/src/views/views" method="post">' . \PHP_EOL;
//If multi drop
if (isset($_REQUEST['ma'])) {
@@ -403,7 +403,7 @@ class ViewsController extends BaseController
$this->printTitle($this->lang['strcreateview'], 'pg.view.create');
$this->printMsg($msg);
- echo '<form action="' . self::SUBFOLDER . "/src/views/{$this->view_name}\" method=\"post\">" . \PHP_EOL;
+ echo '<form action="' . \containerInstance()->subFolder . "/src/views/{$this->view_name}\" method=\"post\">" . \PHP_EOL;
echo '<table style="width: 100%">' . \PHP_EOL;
echo "\t<tr>\n\t\t<th class=\"data left required\">{$this->lang['strname']}</th>" . \PHP_EOL;
echo "\t<td class=\"data1\"><input name=\"formView\" size=\"32\" maxlength=\"{$data->_maxNameLen}\" value=\"",
diff --git a/src/decorators/ActionUrlDecorator.php b/src/decorators/ActionUrlDecorator.php
index 31c1e3e2..26ecfc3c 100644
--- a/src/decorators/ActionUrlDecorator.php
+++ b/src/decorators/ActionUrlDecorator.php
@@ -41,6 +41,6 @@ class ActionUrlDecorator extends Decorator
}
}
- return self::SUBFOLDER . '/src/views/' . \str_replace('.php', '', $url);
+ return \containerInstance()->subFolder . '/src/views/' . \str_replace('.php', '', $url);
}
}
diff --git a/src/decorators/BranchUrlDecorator.php b/src/decorators/BranchUrlDecorator.php
index 869162f1..0c4053f5 100644
--- a/src/decorators/BranchUrlDecorator.php
+++ b/src/decorators/BranchUrlDecorator.php
@@ -43,8 +43,8 @@ class BranchUrlDecorator extends Decorator
$url = \str_replace('//', '/', '/src/views/' . $url);
}
- if (self::SUBFOLDER !== '' && (0 === \mb_strpos($url, '/')) && (0 !== \mb_strpos($url, self::SUBFOLDER))) {
- $url = \str_replace('//', '/', self::SUBFOLDER . '/' . $url);
+ if (containerInstance()->subFolder !== '' && (0 === \mb_strpos($url, '/')) && (0 !== \mb_strpos($url, \containerInstance()->subFolder))) {
+ $url = \str_replace('//', '/', \containerInstance()->subFolder . '/' . $url);
}
return \str_replace('.php', '', $url);
diff --git a/src/decorators/Decorator.php b/src/decorators/Decorator.php
index 07947bdc..fd51cd86 100644
--- a/src/decorators/Decorator.php
+++ b/src/decorators/Decorator.php
@@ -12,18 +12,9 @@ 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;
diff --git a/src/decorators/RedirectUrlDecorator.php b/src/decorators/RedirectUrlDecorator.php
index 90921e0b..4f21e4f6 100644
--- a/src/decorators/RedirectUrlDecorator.php
+++ b/src/decorators/RedirectUrlDecorator.php
@@ -45,8 +45,8 @@ class RedirectUrlDecorator extends Decorator
}
}
- if (self::SUBFOLDER !== '' && (0 === \mb_strpos($url, '/')) && (false === \mb_strpos($url, self::SUBFOLDER))) {
- $url = \str_replace('//', '/', self::SUBFOLDER . '/' . $url);
+ if (containerInstance()->subFolder !== '' && (0 === \mb_strpos($url, '/')) && (false === \mb_strpos($url, \containerInstance()->subFolder))) {
+ $url = \str_replace('//', '/', \containerInstance()->subFolder . '/' . $url);
}
return \str_replace('.php', '', $url);
diff --git a/src/decorators/UrlDecorator.php b/src/decorators/UrlDecorator.php
index 1a7d76ed..de6a036e 100644
--- a/src/decorators/UrlDecorator.php
+++ b/src/decorators/UrlDecorator.php
@@ -37,8 +37,8 @@ class UrlDecorator extends Decorator
}
}
- if (self::SUBFOLDER !== '' && (0 === \mb_strpos($url, '/')) && (false === \mb_strpos($url, self::SUBFOLDER))) {
- $url = \str_replace('//', '/', self::SUBFOLDER . '/' . $url);
+ if (containerInstance()->subFolder !== '' && (0 === \mb_strpos($url, '/')) && (false === \mb_strpos($url, \containerInstance()->subFolder))) {
+ $url = \str_replace('//', '/', \containerInstance()->subFolder . '/' . $url);
}
return $url;
diff --git a/src/lib.inc.php b/src/lib.inc.php
index a2417192..6a3956be 100644
--- a/src/lib.inc.php
+++ b/src/lib.inc.php
@@ -15,41 +15,16 @@ if (!\is_writable(\dirname(__DIR__) . '/temp')) {
}
require_once \dirname(__DIR__) . '/vendor/autoload.php';
-$subfolder = '';
-// Check to see if the configuration file exists, if not, explain
-if (!\file_exists(\dirname(__DIR__) . '/config.inc.php')) {
- die('Configuration error: Copy config.inc.php-dist to config.inc.php and edit appropriately.');
-}
- $conf = [];
-
- include \dirname(__DIR__) . '/config.inc.php';
-
- if (isset($conf['subfolder']) && \is_string($conf['subfolder'])) {
- $subfolder = $conf['subfolder'];
- } elseif (\PHP_SAPI === 'cli-server') {
- $subfolder = '/index.php';
- } elseif (isset($_SERVER['DOCUMENT_ROOT'])) {
- $subfolder = \str_replace(
- $_SERVER['DOCUMENT_ROOT'],
- '',
- \dirname(__DIR__)
- );
- }
-\defined('PHPPGA_SUBFOLDER') || \define('PHPPGA_SUBFOLDER', $subfolder);
$shouldSetSession = (\defined('PHP_SESSION_ACTIVE') ? \PHP_SESSION_ACTIVE !== \session_status() : !\session_id())
-&& !\headers_sent()
-&& !\ini_get('session.auto_start');
+ && !\headers_sent()
+ && !\ini_get('session.auto_start');
if ($shouldSetSession && \PHP_SAPI !== 'cli') {
\session_set_cookie_params(0, '/', $_SERVER['HTTP_HOST'], isset($_SERVER['HTTPS']));
\session_name('PPA_ID');
\session_start();
}
-
-$debugmode = (!isset($conf['debugmode'])) ? false : (bool) ($conf['debugmode']);
-\defined('DEBUGMODE') || \define('DEBUGMODE', $debugmode);
-
if (!\defined('ADODB_ERROR_HANDLER_TYPE')) {
\define('ADODB_ERROR_HANDLER_TYPE', \E_USER_ERROR);
}
@@ -57,8 +32,36 @@ if (!\defined('ADODB_ERROR_HANDLER_TYPE')) {
if (!\defined('ADODB_ERROR_HANDLER')) {
\define('ADODB_ERROR_HANDLER', '\PHPPgAdmin\ADOdbException::adodb_throw');
}
+function getAppInstance() {
+ $subfolder = '';
+ // Check to see if the configuration file exists, if not, explain
+ if (!\file_exists(\dirname(__DIR__) . '/config.inc.php')) {
+ die('Configuration error: Copy config.inc.php-dist to config.inc.php and edit appropriately.');
+ }
+$conf = [];
+
+include_once \dirname(__DIR__) . '/config.inc.php';
+
+if (isset($conf['subfolder']) && \is_string($conf['subfolder'])) {
+ $subfolder = $conf['subfolder'];
+} elseif (\PHP_SAPI === 'cli-server') {
+ $subfolder = '/index.php';
+} elseif (isset($_SERVER['DOCUMENT_ROOT'])) {
+ $subfolder = \str_replace(
+ $_SERVER['DOCUMENT_ROOT'],
+ '',
+ \dirname(__DIR__)
+ );
+}
+
+$conf['subfolder'] = $subfolder;
+
+
+$conf['debugmode'] = (!isset($conf['debugmode'])) ? false : (bool) ($conf['debugmode']);
-if (DEBUGMODE) {
+
+
+if ($conf['debugmode']) {
\ini_set('display_errors', 'On');
\ini_set('display_startup_errors', 'On');
@@ -69,35 +72,48 @@ if (DEBUGMODE) {
$conf['register_debuggers']();
}
}
-\define('ADODB_ASSOC_CASE', ADODB_ASSOC_CASE_NATIVE);
+
+
+$conf['BASE_PATH'] = BASE_PATH;
+$conf['theme_path'] = BASE_PATH . '/assets/themes';
+\defined('IN_TEST') || \define('IN_TEST', false);
+$conf['IN_TEST'] = IN_TEST;
+\ini_set('display_errors', strval($conf['debugmode']));
+\defined('ADODB_ASSOC_CASE') || \define('ADODB_ASSOC_CASE', ADODB_ASSOC_CASE_NATIVE);
+
// Fetch App and DI Container
-$app = \PHPPgAdmin\ContainerUtils::createApp($conf);
-$container = $app->getContainer();
+$app = \PHPPgAdmin\ContainerUtils::getAppInstance($conf);
+return $app;
+};
-if (!$container instanceof \Slim\Container) {
- \trigger_error('App Container must be an instance of \\Slim\\Container', \E_USER_ERROR);
-}
-function containerInstance(): \Slim\Container
+function containerInstance(): \PHPPgAdmin\ContainerUtils
{
- return \PHPPgAdmin\ContainerUtils::getContainerInstance();
+ $app=getAppInstance();
+ $container = $app->getContainer();
+ if (!$container instanceof \PHPPgAdmin\ContainerUtils) {
+ \trigger_error('App Container must be an instance of \\Slim\\Container', \E_USER_ERROR);
+ }
+ return $container;
}
function requestInstance(): \Slim\Http\Request
{
- return containerInstance()->request;
+ return \containerInstance()->request;
}
- function responseInstance(): \Slim\Http\Response
- {
- return containerInstance()->response;
- }
+function responseInstance(): \Slim\Http\Response
+{
+ return \containerInstance()->response;
+}
+$app=getAppInstance();
+$container=$app->getContainer();
// This should be deprecated once we're sure no php scripts are required directly
$container->offsetSet('server', $_REQUEST['server'] ?? null);
$container->offsetSet('database', $_REQUEST['database'] ?? null);
$container->offsetSet('schema', $_REQUEST['schema'] ?? null);
-$container['haltHandler'] = static function (\Slim\Container $c) {
+$container['haltHandler'] = static function (\PHPPgAdmin\ContainerUtils $c) {
return static function ($request, $response, $exits, $status = 500) use ($c) {
$title = 'PHPPgAdmin Error';
@@ -105,11 +121,11 @@ $container['haltHandler'] = static function (\Slim\Container $c) {
$output = \sprintf(
"<html><head><meta http-equiv='Content-Type' content='text/html; charset=utf-8'>" .
- '<title>%s</title><style>' .
- 'body{margin:0;padding:30px;font:12px/1.5 Helvetica,Arial,Verdana,sans-serif;}' .
- 'h3{margin:0;font-size:28px;font-weight:normal;line-height:30px;}' .
- 'span{display:inline-block;font-size:16px;}' .
- '</style></head><body><h3>%s</h3><p>%s</p><span>%s</span></body></html>',
+ '<title>%s</title><style>' .
+ 'body{margin:0;padding:30px;font:12px/1.5 Helvetica,Arial,Verdana,sans-serif;}' .
+ 'h3{margin:0;font-size:28px;font-weight:normal;line-height:30px;}' .
+ 'span{display:inline-block;font-size:16px;}' .
+ '</style></head><body><h3>%s</h3><p>%s</p><span>%s</span></body></html>',
$title,
$title,
$html,
diff --git a/src/middleware/PopulateRequestResponse.php b/src/middleware/PopulateRequestResponse.php
index 8a3828cc..b515c268 100644
--- a/src/middleware/PopulateRequestResponse.php
+++ b/src/middleware/PopulateRequestResponse.php
@@ -20,7 +20,7 @@ class PopulateRequestResponse extends Middleware
$next
) {
$container = $this->container;
- $subfolder = $this->getSubfolder();
+ $subfolder = $this->container->getSubfolder();
$container['requestobj'] = $request;
$container['responseobj'] = $response;
$route = $request->getAttribute('route');
@@ -71,7 +71,7 @@ class PopulateRequestResponse extends Middleware
$view->offsetSet('in_test', $in_test);
if (0 < \count($container['errors'])) {
- return ($container->haltHandler)($container->requestobj, $container->responseobj, $container['errors'], 412);
+ return ($container->haltHandler)($container->request, $container->response, $container['errors'], 412);
}
// First execute anything else
diff --git a/src/router.php b/src/router.php
index c3d707c1..d5e85bb6 100644
--- a/src/router.php
+++ b/src/router.php
@@ -20,7 +20,7 @@ $app->get('/status', function (
return $response
->withHeader('Content-type', 'application/json')
->withJson(
- DEBUGMODE ? $this->get('settings')->all() : ['version' => $this->version]
+ $this->DEBUGMODE ? $this->get('settings')->all() : ['version' => $this->version]
);
});
@@ -65,14 +65,14 @@ $app->post('/redirect/server', function (
$misc->setReloadBrowser(true);
- $destinationurl = $this->utils->getDestinationWithLastTab('alldb');
+ $destinationurl = $this->getDestinationWithLastTab('alldb');
return $response->withStatus(302)->withHeader('Location', $destinationurl);
}
$_server_info = $this->misc->getServerInfo();
if (!isset($_server_info['username'])) {
- $destinationurl = $this->utils->getDestinationWithLastTab('server');
+ $destinationurl = $this->getDestinationWithLastTab('server');
return $response->withStatus(302)->withHeader('Location', $destinationurl);
}
@@ -87,7 +87,7 @@ $app->get('/redirect[/{subject}]', function (
array $args
) {
$subject = (isset($args['subject'])) ? $args['subject'] : 'root';
- $destinationurl = $this->utils->getDestinationWithLastTab($subject);
+ $destinationurl = $this->getDestinationWithLastTab($subject);
return $response->withStatus(302)->withHeader('Location', $destinationurl);
});
@@ -110,11 +110,11 @@ $app->map(['GET', 'POST'], '/src/views/{subject}', function (
$safe_subjects = ('servers' === $subject || 'intro' === $subject || 'browser' === $subject);
if (null === $this->misc->getServerId() && !$safe_subjects) {
- return $response->withStatus(302)->withHeader('Location', SUBFOLDER . '/src/views/servers');
+ return $response->withStatus(302)->withHeader('Location', $this->subFolder . '/src/views/servers');
}
if (!isset($_server_info['username']) && 'login' !== $subject && !$safe_subjects) {
- $destinationurl = SUBFOLDER . '/src/views/login?server=' . $this->misc->getServerId();
+ $destinationurl = $this->subFolder . '/src/views/login?server=' . $this->misc->getServerId();
return $response->withStatus(302)->withHeader('Location', $destinationurl);
}
@@ -180,7 +180,7 @@ $app->get('[/{path:.*}]', function (
//d($this->subfolder, $args, $query_string, $filepath);
- $this->utils->prtrace($request->getAttribute('route'));
+ $this->prtrace($request->getAttribute('route'));
return $response->write($args['path'] ? $args['path'] : 'index');
});
diff --git a/src/xhtml/HTMLController.php b/src/xhtml/HTMLController.php
index 27e2f3e4..d32ad211 100644
--- a/src/xhtml/HTMLController.php
+++ b/src/xhtml/HTMLController.php
@@ -15,18 +15,9 @@ use PHPPgAdmin\Decorators\Decorator;
class HTMLController
{
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 $form = '';
@@ -57,7 +48,7 @@ class HTMLController
protected $container;
// Constructor
- public function __construct(\Slim\Container $container, $controller_name = null)
+ public function __construct(\PHPPgAdmin\ContainerUtils $container, $controller_name = null)
{
$this->container = $container;
$this->lang = $container->get('lang');
diff --git a/src/xhtml/HTMLNavbarController.php b/src/xhtml/HTMLNavbarController.php
index beac11c0..e9392b87 100644
--- a/src/xhtml/HTMLNavbarController.php
+++ b/src/xhtml/HTMLNavbarController.php
@@ -58,7 +58,28 @@ class HTMLNavbarController extends HTMLController
return $trail_html;
}
+ /**
+ * Get the URL for the last active tab of a particular tab bar.
+ *
+ * @param string $section
+ *
+ * @return null|mixed
+ */
+ public function getLastTabURL($section)
+ {
+ //$data = $this->getDatabaseAccessor();
+
+ $tabs = $this->misc->getNavTabs($section);
+ if (isset($_SESSION['webdbLastTab'][$section], $tabs[$_SESSION['webdbLastTab'][$section]])) {
+ $tab = $tabs[$_SESSION['webdbLastTab'][$section]];
+ } else {
+ $tab = \reset($tabs);
+ }
+ // $this->prtrace(['section' => $section, 'tabs' => $tabs, 'tab' => $tab]);
+
+ return isset($tab['url']) ? $tab : null;
+ }
/**
* Display navigation tabs.
*
@@ -73,7 +94,10 @@ class HTMLNavbarController extends HTMLController
$from = $from ? $from : __METHOD__;
$this->misc = $this->misc;
-
+ $_SESSION['webdbLastTab']=$_SESSION['webdbLastTab']??[];
+if(!is_array($_SESSION['webdbLastTab'])) {
+ $_SESSION['webdbLastTab']=[$alltabs=>$activetab];
+}
if (\is_string($alltabs)) {
$_SESSION['webdbLastTab'][$alltabs] = $activetab;
$alltabs = $this->misc->getNavTabs($alltabs);
@@ -166,7 +190,7 @@ class HTMLNavbarController extends HTMLController
foreach ($search_paths as $schema) {
$url = \str_replace(['&amp;', 'redirect/database'], ['&', 'redirect/schema'], $dburl . '&schema=' . $schema);
- $destination = $this->container->utils->getDestinationWithLastTab('database');
+ $destination = $this->container->getDestinationWithLastTab('database');
//$this->dump(['url' => $url, 'destination' => $destination]);
$search_path_crumbs[$schema] = [
'title' => $lang['strschema'],
@@ -222,7 +246,7 @@ class HTMLNavbarController extends HTMLController
'sql' => [
'attr' => [
'href' => [
- 'url' => self::SUBFOLDER . '/src/views/sqledit',
+ 'url' => \containerInstance()->subFolder . '/src/views/sqledit',
'urlvars' => \array_merge($reqvars, [
'action' => 'sql',
]),
@@ -236,7 +260,7 @@ class HTMLNavbarController extends HTMLController
'history' => [
'attr' => [
'href' => [
- 'url' => self::SUBFOLDER . '/src/views/history',
+ 'url' => \containerInstance()->subFolder . '/src/views/history',
'urlvars' => \array_merge($reqvars, [
'action' => 'pophistory',
]),
@@ -249,7 +273,7 @@ class HTMLNavbarController extends HTMLController
'find' => [
'attr' => [
'href' => [
- 'url' => self::SUBFOLDER . '/src/views/sqledit',
+ 'url' => \containerInstance()->subFolder . '/src/views/sqledit',
'urlvars' => \array_merge($reqvars, [
'action' => 'find',
]),
@@ -263,7 +287,7 @@ class HTMLNavbarController extends HTMLController
'logout' => [
'attr' => [
'href' => [
- 'url' => self::SUBFOLDER . '/src/views/servers',
+ 'url' => \containerInstance()->subFolder . '/src/views/servers',
'urlvars' => [
'action' => 'logout',
'logoutServer' => \sha1("{$server_info['host']}:{$server_info['port']}:{$server_info['sslmode']}"),
@@ -325,7 +349,7 @@ class HTMLNavbarController extends HTMLController
$trail['root'] = [
'text' => $appName,
- 'url' => self::SUBFOLDER . '/src/views/servers',
+ 'url' => \containerInstance()->subFolder . '/src/views/servers',
'icon' => 'Introduction',
];
diff --git a/src/xhtml/HTMLTableController.php b/src/xhtml/HTMLTableController.php
index dbd6d2a0..f758afb4 100644
--- a/src/xhtml/HTMLTableController.php
+++ b/src/xhtml/HTMLTableController.php
@@ -210,7 +210,7 @@ class HTMLTableController extends HTMLController
$lang = $this->lang;
if ($this->has_ma) {
- $matop_html .= '<script src="' . self::SUBFOLDER . '/assets/js/multiactionform.js" type="text/javascript"></script>' . \PHP_EOL;
+ $matop_html .= '<script src="' . \containerInstance()->subFolder . '/assets/js/multiactionform.js" type="text/javascript"></script>' . \PHP_EOL;
$matop_html .= \sprintf('<form id="multi_form" action="%s" method="post" enctype="multipart/form-data">%s', $this->ma['url'], \PHP_EOL);
$this->coalesceArr($this->ma, 'vars', []);
diff --git a/src/xhtml/XHtmlSimpleElement.php b/src/xhtml/XHtmlSimpleElement.php
index d08abadf..2465ea29 100644
--- a/src/xhtml/XHtmlSimpleElement.php
+++ b/src/xhtml/XHtmlSimpleElement.php
@@ -19,18 +19,9 @@ use PHPPgAdmin\ContainerUtils;
class XHtmlSimpleElement
{
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 $_element;
diff --git a/yarn.lock b/yarn.lock
index 86e6daf9..f57af271 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -109,27 +109,6 @@
minimatch "^3.0.4"
strip-json-comments "^3.1.1"
-"@nodelib/fs.scandir@2.1.3":
- version "2.1.3"
- resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.3.tgz#3a582bdb53804c6ba6d146579c46e52130cf4a3b"
- integrity sha512-eGmwYQn3gxo4r7jdQnkrrN6bY478C3P+a/y72IJukF8LjB6ZHeB3c+Ehacj3sYeSmUXGlnA67/PmbM9CVwL7Dw==
- dependencies:
- "@nodelib/fs.stat" "2.0.3"
- run-parallel "^1.1.9"
-
-"@nodelib/fs.stat@2.0.3", "@nodelib/fs.stat@^2.0.2":
- version "2.0.3"
- resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.3.tgz#34dc5f4cabbc720f4e60f75a747e7ecd6c175bd3"
- integrity sha512-bQBFruR2TAwoevBEd/NWMoAAtNGzTRgdrqnYCc7dhzfoNvqPzLyqlEQnzZ3kVnNrSp25iyxE00/3h2fqGAGArA==
-
-"@nodelib/fs.walk@^1.2.3":
- version "1.2.4"
- resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.4.tgz#011b9202a70a6366e436ca5c065844528ab04976"
- integrity sha512-1V9XOY4rDW0rehzbrcqAmHnz8e7SKvX27gh8Gt2WgB0+pdzdiLV83p72kZPU+jvMbS1qU5mauP2iOvO8rhmurQ==
- dependencies:
- "@nodelib/fs.scandir" "2.1.3"
- fastq "^1.6.0"
-
"@types/color-name@^1.1.1":
version "1.1.1"
resolved "https://registry.yarnpkg.com/@types/color-name/-/color-name-1.1.1.tgz#1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0"
@@ -142,86 +121,11 @@
dependencies:
"@types/sizzle" "*"
-"@types/json-schema@^7.0.3":
- version "7.0.6"
- resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.6.tgz#f4c7ec43e81b319a9815115031709f26987891f0"
- integrity sha512-3c+yGKvVP5Y9TYBEibGNR+kLtijnj7mYrXRg+WpFb2X9xm04g/DXYkfg4hmzJQosc9snFNUPkbYIhu+KAm6jJw==
-
"@types/sizzle@*":
version "2.3.2"
resolved "https://registry.yarnpkg.com/@types/sizzle/-/sizzle-2.3.2.tgz#a811b8c18e2babab7d542b3365887ae2e4d9de47"
integrity sha512-7EJYyKTL7tFR8+gDbB6Wwz/arpGa0Mywk1TJbNzKzHtzbwVmY4HR9WqS5VV7dsBUKQmPNr192jHr/VpBluj/hg==
-"@typescript-eslint/eslint-plugin@^4.3.0":
- version "4.3.0"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.3.0.tgz#1a23d904bf8ea248d09dc3761af530d90f39c8fa"
- integrity sha512-RqEcaHuEKnn3oPFislZ6TNzsBLqpZjN93G69SS+laav/I8w/iGMuMq97P0D2/2/kW4SCebHggqhbcCfbDaaX+g==
- dependencies:
- "@typescript-eslint/experimental-utils" "4.3.0"
- "@typescript-eslint/scope-manager" "4.3.0"
- debug "^4.1.1"
- functional-red-black-tree "^1.0.1"
- regexpp "^3.0.0"
- semver "^7.3.2"
- tsutils "^3.17.1"
-
-"@typescript-eslint/experimental-utils@4.3.0":
- version "4.3.0"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-4.3.0.tgz#3f3c6c508e01b8050d51b016e7f7da0e3aefcb87"
- integrity sha512-cmmIK8shn3mxmhpKfzMMywqiEheyfXLV/+yPDnOTvQX/ztngx7Lg/OD26J8gTZfkLKUmaEBxO2jYP3keV7h2OQ==
- dependencies:
- "@types/json-schema" "^7.0.3"
- "@typescript-eslint/scope-manager" "4.3.0"
- "@typescript-eslint/types" "4.3.0"
- "@typescript-eslint/typescript-estree" "4.3.0"
- eslint-scope "^5.0.0"
- eslint-utils "^2.0.0"
-
-"@typescript-eslint/parser@^4.3.0":
- version "4.3.0"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-4.3.0.tgz#684fc0be6551a2bfcb253991eec3c786a8c063a3"
- integrity sha512-JyfRnd72qRuUwItDZ00JNowsSlpQGeKfl9jxwO0FHK1qQ7FbYdoy5S7P+5wh1ISkT2QyAvr2pc9dAemDxzt75g==
- dependencies:
- "@typescript-eslint/scope-manager" "4.3.0"
- "@typescript-eslint/types" "4.3.0"
- "@typescript-eslint/typescript-estree" "4.3.0"
- debug "^4.1.1"
-
-"@typescript-eslint/scope-manager@4.3.0":
- version "4.3.0"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-4.3.0.tgz#c743227e087545968080d2362cfb1273842cb6a7"
- integrity sha512-cTeyP5SCNE8QBRfc+Lgh4Xpzje46kNUhXYfc3pQWmJif92sjrFuHT9hH4rtOkDTo/si9Klw53yIr+djqGZS1ig==
- dependencies:
- "@typescript-eslint/types" "4.3.0"
- "@typescript-eslint/visitor-keys" "4.3.0"
-
-"@typescript-eslint/types@4.3.0":
- version "4.3.0"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-4.3.0.tgz#1f0b2d5e140543e2614f06d48fb3ae95193c6ddf"
- integrity sha512-Cx9TpRvlRjOppGsU6Y6KcJnUDOelja2NNCX6AZwtVHRzaJkdytJWMuYiqi8mS35MRNA3cJSwDzXePfmhU6TANw==
-
-"@typescript-eslint/typescript-estree@4.3.0":
- version "4.3.0"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-4.3.0.tgz#0edc1068e6b2e4c7fdc54d61e329fce76241cee8"
- integrity sha512-ZAI7xjkl+oFdLV/COEz2tAbQbR3XfgqHEGy0rlUXzfGQic6EBCR4s2+WS3cmTPG69aaZckEucBoTxW9PhzHxxw==
- dependencies:
- "@typescript-eslint/types" "4.3.0"
- "@typescript-eslint/visitor-keys" "4.3.0"
- debug "^4.1.1"
- globby "^11.0.1"
- is-glob "^4.0.1"
- lodash "^4.17.15"
- semver "^7.3.2"
- tsutils "^3.17.1"
-
-"@typescript-eslint/visitor-keys@4.3.0":
- version "4.3.0"
- resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-4.3.0.tgz#0e5ab0a09552903edeae205982e8521e17635ae0"
- integrity sha512-xZxkuR7XLM6RhvLkgv9yYlTcBHnTULzfnw4i6+z2TGBLy9yljAypQaZl9c3zFvy7PNI7fYWyvKYtohyF8au3cw==
- dependencies:
- "@typescript-eslint/types" "4.3.0"
- eslint-visitor-keys "^2.0.0"
-
acorn-jsx@^5.2.0:
version "5.3.1"
resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.1.tgz#fc8661e11b7ac1539c47dbfea2e72b3af34d267b"
@@ -289,11 +193,6 @@ argparse@^1.0.7:
dependencies:
sprintf-js "~1.0.2"
-array-union@^2.1.0:
- version "2.1.0"
- resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d"
- integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==
-
astral-regex@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-1.0.0.tgz#6c8c3fb827dd43ee3918f27b82782ab7658a6fd9"
@@ -389,13 +288,6 @@ brace-expansion@^1.1.7:
balanced-match "^1.0.0"
concat-map "0.0.1"
-braces@^3.0.1:
- version "3.0.2"
- resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107"
- integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==
- dependencies:
- fill-range "^7.0.1"
-
callsites@^3.0.0:
version "3.1.0"
resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73"
@@ -491,13 +383,6 @@ deep-is@^0.1.3:
resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34"
integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=
-dir-glob@^3.0.1:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f"
- integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==
- dependencies:
- path-type "^4.0.0"
-
doctrine@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961"
@@ -529,10 +414,10 @@ escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5:
resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=
-eslint-config-prettier@^6.12.0:
- version "6.12.0"
- resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-6.12.0.tgz#9eb2bccff727db1c52104f0b49e87ea46605a0d2"
- integrity sha512-9jWPlFlgNwRUYVoujvWTQ1aMO8o6648r+K7qU7K5Jmkbyqav1fuEZC0COYpGBxyiAJb65Ra9hrmFx19xRGwXWw==
+eslint-config-prettier@^6.11.0:
+ version "6.11.0"
+ resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-6.11.0.tgz#f6d2238c1290d01c859a8b5c1f7d352a0b0da8b1"
+ integrity sha512-oB8cpLWSAjOVFEJhhyMZh6NOEOtBVziaqdDQ86+qhDHFbZXoRTM7pNSvFRfW/W/L/LrQ38C99J5CGuRBBzBsdA==
dependencies:
get-stdin "^6.0.0"
@@ -543,15 +428,15 @@ eslint-plugin-prettier@^3.1.4:
dependencies:
prettier-linter-helpers "^1.0.0"
-eslint-scope@^5.0.0, eslint-scope@^5.1.1:
- version "5.1.1"
- resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c"
- integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==
+eslint-scope@^5.1.0:
+ version "5.1.0"
+ resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.0.tgz#d0f971dfe59c69e0cada684b23d49dbf82600ce5"
+ integrity sha512-iiGRvtxWqgtx5m8EyQUJihBloE4EnYeGE/bz1wSPwJE6tZuJUtHlhqDM4Xj2ukE8Dyy1+HCZ4hE0fzIVMzb58w==
dependencies:
- esrecurse "^4.3.0"
+ esrecurse "^4.1.0"
estraverse "^4.1.1"
-eslint-utils@^2.0.0, eslint-utils@^2.1.0:
+eslint-utils@^2.1.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.1.0.tgz#d2de5e03424e707dc10c74068ddedae708741b27"
integrity sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==
@@ -563,15 +448,10 @@ eslint-visitor-keys@^1.0.0, eslint-visitor-keys@^1.1.0, eslint-visitor-keys@^1.3
resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e"
integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==
-eslint-visitor-keys@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz#21fdc8fbcd9c795cc0321f0563702095751511a8"
- integrity sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ==
-
-eslint@^7.10.0:
- version "7.10.0"
- resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.10.0.tgz#494edb3e4750fb791133ca379e786a8f648c72b9"
- integrity sha512-BDVffmqWl7JJXqCjAK6lWtcQThZB/aP1HXSH1JKwGwv0LQEdvpR7qzNrUT487RM39B5goWuboFad5ovMBmD8yA==
+eslint@^7.8.1:
+ version "7.8.1"
+ resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.8.1.tgz#e59de3573fb6a5be8ff526c791571646d124a8fa"
+ integrity sha512-/2rX2pfhyUG0y+A123d0ccXtMm7DV7sH1m3lk9nk2DZ2LReq39FXHueR9xZwshE5MdfSf0xunSaMWRqyIA6M1w==
dependencies:
"@babel/code-frame" "^7.0.0"
"@eslint/eslintrc" "^0.1.3"
@@ -581,7 +461,7 @@ eslint@^7.10.0:
debug "^4.0.1"
doctrine "^3.0.0"
enquirer "^2.3.5"
- eslint-scope "^5.1.1"
+ eslint-scope "^5.1.0"
eslint-utils "^2.1.0"
eslint-visitor-keys "^1.3.0"
espree "^7.3.0"
@@ -632,7 +512,7 @@ esquery@^1.2.0:
dependencies:
estraverse "^5.1.0"
-esrecurse@^4.3.0:
+esrecurse@^4.1.0:
version "4.3.0"
resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921"
integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==
@@ -664,18 +544,6 @@ fast-diff@^1.1.2:
resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.2.0.tgz#73ee11982d86caaf7959828d519cfe927fac5f03"
integrity sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==
-fast-glob@^3.1.1:
- version "3.2.4"
- resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.4.tgz#d20aefbf99579383e7f3cc66529158c9b98554d3"
- integrity sha512-kr/Oo6PX51265qeuCYsyGypiO5uJFgBS0jksyG7FUeCyQzNwYnzrNIMR1NXfkZXsMYXYLRAHgISHBz8gQcxKHQ==
- dependencies:
- "@nodelib/fs.stat" "^2.0.2"
- "@nodelib/fs.walk" "^1.2.3"
- glob-parent "^5.1.0"
- merge2 "^1.3.0"
- micromatch "^4.0.2"
- picomatch "^2.2.1"
-
fast-json-stable-stringify@^2.0.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633"
@@ -686,13 +554,6 @@ fast-levenshtein@^2.0.6:
resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917"
integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=
-fastq@^1.6.0:
- version "1.8.0"
- resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.8.0.tgz#550e1f9f59bbc65fe185cb6a9b4d95357107f481"
- integrity sha512-SMIZoZdLh/fgofivvIkmknUXyPnvxRE3DhtZ5Me3Mrsk5gyPL42F0xr51TdRXskBxHfMp+07bcYzfsYEsSQA9Q==
- dependencies:
- reusify "^1.0.4"
-
file-entry-cache@^5.0.1:
version "5.0.1"
resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-5.0.1.tgz#ca0f6efa6dd3d561333fb14515065c2fafdf439c"
@@ -700,13 +561,6 @@ file-entry-cache@^5.0.1:
dependencies:
flat-cache "^2.0.1"
-fill-range@^7.0.1:
- version "7.0.1"
- resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40"
- integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==
- dependencies:
- to-regex-range "^5.0.1"
-
flat-cache@^2.0.1:
version "2.0.1"
resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-2.0.1.tgz#5d296d6f04bda44a4630a301413bdbc2ec085ec0"
@@ -736,7 +590,7 @@ get-stdin@^6.0.0:
resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-6.0.0.tgz#9e09bf712b360ab9225e812048f71fde9c89657b"
integrity sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==
-glob-parent@^5.0.0, glob-parent@^5.1.0:
+glob-parent@^5.0.0:
version "5.1.1"
resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.1.tgz#b6c1ef417c4e5663ea498f1c45afac6916bbc229"
integrity sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==
@@ -772,18 +626,6 @@ globals@^9.18.0:
resolved "https://registry.yarnpkg.com/globals/-/globals-9.18.0.tgz#aa3896b3e69b487f17e31ed2143d69a8e30c2d8a"
integrity sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==
-globby@^11.0.1:
- version "11.0.1"
- resolved "https://registry.yarnpkg.com/globby/-/globby-11.0.1.tgz#9a2bf107a068f3ffeabc49ad702c79ede8cfd357"
- integrity sha512-iH9RmgwCmUJHi2z5o2l3eTtGBtXek1OYlHrbcxOYugyHLmAsZrPj43OtHThd62Buh/Vv6VyCBD2bdyWcGNQqoQ==
- dependencies:
- array-union "^2.1.0"
- dir-glob "^3.0.1"
- fast-glob "^3.1.1"
- ignore "^5.1.4"
- merge2 "^1.3.0"
- slash "^3.0.0"
-
graceful-fs@^4.1.2:
version "4.2.4"
resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.4.tgz#2256bde14d3632958c465ebc96dc467ca07a29fb"
@@ -816,11 +658,6 @@ ignore@^4.0.6:
resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc"
integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==
-ignore@^5.1.4:
- version "5.1.8"
- resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.1.8.tgz#f150a8b50a34289b33e22f5889abd4d8016f0e57"
- integrity sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==
-
image-size@~0.5.0:
version "0.5.5"
resolved "https://registry.yarnpkg.com/image-size/-/image-size-0.5.5.tgz#09dfd4ab9d20e29eb1c3e80b8990378df9e3cb9c"
@@ -876,11 +713,6 @@ is-glob@^4.0.0, is-glob@^4.0.1:
dependencies:
is-extglob "^2.1.1"
-is-number@^7.0.0:
- version "7.0.0"
- resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b"
- integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==
-
isexe@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
@@ -949,7 +781,7 @@ levn@^0.4.1:
prelude-ls "^1.2.1"
type-check "~0.4.0"
-lodash@^4.12.0, lodash@^4.15.0, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.4:
+lodash@^4.12.0, lodash@^4.15.0, lodash@^4.17.14, lodash@^4.17.19, lodash@^4.17.4:
version "4.17.20"
resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.20.tgz#b44a9b6297bcb698f1c51a3545a2b3b368d59c52"
integrity sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==
@@ -1021,19 +853,6 @@ melody-types@^1.7.5:
dependencies:
babel-types "^6.8.1"
-merge2@^1.3.0:
- version "1.4.1"
- resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae"
- integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==
-
-micromatch@^4.0.2:
- version "4.0.2"
- resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.2.tgz#4fcb0999bf9fbc2fcbdd212f6d629b9a56c39259"
- integrity sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==
- dependencies:
- braces "^3.0.1"
- picomatch "^2.0.5"
-
mime@^1.4.1:
version "1.6.0"
resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1"
@@ -1124,16 +943,6 @@ path-parse@^1.0.6:
resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c"
integrity sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==
-path-type@^4.0.0:
- version "4.0.0"
- resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b"
- integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==
-
-picomatch@^2.0.5, picomatch@^2.2.1:
- version "2.2.2"
- resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.2.2.tgz#21f333e9b6b8eaff02468f5146ea406d345f4dad"
- integrity sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==
-
pify@^4.0.1:
version "4.0.1"
resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231"
@@ -1169,10 +978,10 @@ prettier@^1.8.2:
resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.19.1.tgz#f7d7f5ff8a9cd872a7be4ca142095956a60797cb"
integrity sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew==
-prettier@^2.1.2:
- version "2.1.2"
- resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.1.2.tgz#3050700dae2e4c8b67c4c3f666cdb8af405e1ce5"
- integrity sha512-16c7K+x4qVlJg9rEbXl7HEGmQyZlG4R9AgP+oHKRMsMsuk8s+ATStlf1NpDqyBI1HpVyfjLOeMhH2LvuNvV5Vg==
+prettier@^2.1.1:
+ version "2.1.1"
+ resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.1.1.tgz#d9485dd5e499daa6cb547023b87a6cf51bee37d6"
+ integrity sha512-9bY+5ZWCfqj3ghYBLxApy2zf6m+NJo5GzmLTpr9FsApsfjriNnS2dahWReHMi7qNPhhHl9SYHJs2cHZLgexNIw==
progress@^2.0.0:
version "2.0.3"
@@ -1194,7 +1003,7 @@ regenerator-runtime@^0.11.0:
resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9"
integrity sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==
-regexpp@^3.0.0, regexpp@^3.1.0:
+regexpp@^3.1.0:
version "3.1.0"
resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.1.0.tgz#206d0ad0a5648cffbdb8ae46438f3dc51c9f78e2"
integrity sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q==
@@ -1211,11 +1020,6 @@ resolve@^1.12.0:
dependencies:
path-parse "^1.0.6"
-reusify@^1.0.4:
- version "1.0.4"
- resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76"
- integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==
-
rimraf@2.6.3:
version "2.6.3"
resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab"
@@ -1223,17 +1027,12 @@ rimraf@2.6.3:
dependencies:
glob "^7.1.3"
-run-parallel@^1.1.9:
- version "1.1.9"
- resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.1.9.tgz#c9dd3a7cf9f4b2c4b6244e173a6ed866e61dd679"
- integrity sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q==
-
semver@^5.6.0:
version "5.7.1"
resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7"
integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==
-semver@^7.2.1, semver@^7.3.2:
+semver@^7.2.1:
version "7.3.2"
resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.2.tgz#604962b052b81ed0786aae84389ffba70ffd3938"
integrity sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==
@@ -1257,11 +1056,6 @@ shortid@^2.2.6:
dependencies:
nanoid "^2.1.0"
-slash@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634"
- integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==
-
slice-ansi@^2.1.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-2.1.0.tgz#cacd7693461a637a5788d92a7dd4fba068e81636"
@@ -1365,14 +1159,7 @@ to-fast-properties@^2.0.0:
resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e"
integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=
-to-regex-range@^5.0.1:
- version "5.0.1"
- resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4"
- integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==
- dependencies:
- is-number "^7.0.0"
-
-tslib@^1.10.0, tslib@^1.8.1:
+tslib@^1.10.0:
version "1.13.0"
resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.13.0.tgz#c881e13cc7015894ed914862d276436fa9a47043"
integrity sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==
@@ -1382,13 +1169,6 @@ tslib@^2.0.1:
resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.0.1.tgz#410eb0d113e5b6356490eec749603725b021b43e"
integrity sha512-SgIkNheinmEBgx1IUNirK0TUD4X9yjjBRTqqjggWCU3pUEqIk3/Uwl3yRixYKT6WjQuGiwDv4NomL3wqRCj+CQ==
-tsutils@^3.17.1:
- version "3.17.1"
- resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.17.1.tgz#ed719917f11ca0dee586272b2ac49e015a2dd759"
- integrity sha512-kzeQ5B8H3w60nFY2g8cJIuH7JDpsALXySGtwGJ0p2LSjLgay3NdIpqq5SoOBe46bKDW2iq25irHCr8wjomUS2g==
- dependencies:
- tslib "^1.8.1"
-
type-check@^0.4.0, type-check@~0.4.0:
version "0.4.0"
resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1"