Skip to content

Commit 4403660

Browse files
committed
removes config options that are out of scope
simplifies legacy methods
1 parent 9a47933 commit 4403660

File tree

2 files changed

+77
-120
lines changed

2 files changed

+77
-120
lines changed

src/lib.inc.php

Lines changed: 9 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -22,18 +22,19 @@
2222
} else {
2323
die('Configuration error: Copy config.inc.php-dist to config.inc.php and edit appropriately.');
2424
}
25-
$setSession = (defined('PHP_SESSION_ACTIVE') ? session_status() != PHP_SESSION_ACTIVE : !session_id()) && !headers_sent() && !ini_get('session.auto_start');
25+
$shouldSetSession = (defined('PHP_SESSION_ACTIVE') ? session_status() != PHP_SESSION_ACTIVE : !session_id())
26+
&& !headers_sent()
27+
&& !ini_get('session.auto_start');
2628

27-
if ($setSession) {
29+
if ($shouldSetSession) {
30+
if (!is_writable(session_save_path())) {
31+
die('Session path "' . session_save_path() . '" is not writable for PHP!');
32+
}
2833
session_set_cookie_params(0, '/', null, isset($_SERVER['HTTPS']));
2934
session_name('PPA_ID');
30-
3135
session_start();
3236
}
3337

34-
if (isset($conf['error_log'])) {
35-
ini_set('error_log', BASE_PATH . '/' . $conf['error_log']);
36-
}
3738
$debugmode = (!isset($conf['debugmode'])) ? false : boolval($conf['debugmode']);
3839
define('DEBUGMODE', $debugmode);
3940

@@ -44,13 +45,10 @@
4445
if (!defined('ADODB_ERROR_HANDLER')) {
4546
define('ADODB_ERROR_HANDLER', '\PHPPgAdmin\ADOdbException::adodb_throw');
4647
}
47-
if (!is_writable(session_save_path())) {
48-
echo 'Session path "' . session_save_path() . '" is not writable for PHP!';
49-
}
5048

51-
ini_set('display_errors', intval(DEBUGMODE));
52-
ini_set('display_startup_errors', intval(DEBUGMODE));
5349
if (DEBUGMODE) {
50+
ini_set('display_errors', 1);
51+
ini_set('display_startup_errors', 1);
5452
ini_set('opcache.revalidate_freq', 0);
5553
error_reporting(E_ALL);
5654
if (array_key_exists('register_debuggers', $conf) && is_callable($conf['register_debuggers'])) {
@@ -114,12 +112,6 @@
114112
return $translations->lang;
115113
};
116114

117-
$container['plugin_manager'] = function ($c) {
118-
$plugin_manager = new \PHPPgAdmin\PluginManager($c);
119-
120-
return $plugin_manager;
121-
};
122-
123115
// Create Misc class references
124116
$container['misc'] = function ($c) {
125117
$misc = new \PHPPgAdmin\Misc($c);

src/traits/MiscTrait.php

Lines changed: 68 additions & 103 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,20 @@ trait MiscTrait
2222
{
2323
public function getSubjectParams($subject)
2424
{
25-
$plugin_manager = $this->plugin_manager;
25+
$vars = [];
26+
$common_params = [];
2627

27-
$vars = [];
28+
if (array_key_exists('server', $_REQUEST)) {
29+
$common_params['server'] = $_REQUEST['server'];
30+
}
31+
32+
if (array_key_exists('database', $_REQUEST)) {
33+
$common_params['database'] = $_REQUEST['database'];
34+
}
35+
36+
if (array_key_exists('schema', $_REQUEST)) {
37+
$common_params['schema'] = $_REQUEST['schema'];
38+
}
2839

2940
switch ($subject) {
3041
case 'root':
@@ -37,157 +48,113 @@ public function getSubjectParams($subject)
3748
break;
3849
case 'server':
3950
$vars = ['params' => [
40-
'server' => $_REQUEST['server'],
51+
'subject' => 'database',
4152
'subject' => 'server',
53+
'server' => $_REQUEST['server'],
4254
]];
4355

4456
break;
4557
case 'role':
4658
$vars = ['params' => [
47-
'server' => $_REQUEST['server'],
4859
'subject' => 'role',
60+
'server' => $_REQUEST['server'],
4961
'action' => 'properties',
5062
'rolename' => $_REQUEST['rolename'],
5163
]];
5264

5365
break;
5466
case 'database':
55-
$vars = ['params' => [
56-
'server' => $_REQUEST['server'],
57-
'subject' => 'database',
58-
'database' => $_REQUEST['database'],
59-
]];
67+
$vars = ['params' => array_merge($common_params, [
68+
'subject' => 'database',
69+
])];
6070

6171
break;
6272
case 'schema':
63-
$vars = ['params' => [
64-
'server' => $_REQUEST['server'],
65-
'subject' => 'schema',
66-
'database' => $_REQUEST['database'],
67-
'schema' => $_REQUEST['schema'],
68-
]];
73+
$vars = ['params' => array_merge($common_params, [
74+
'subject' => 'schema',
75+
])];
6976

7077
break;
7178
case 'table':
72-
$vars = ['params' => [
73-
'server' => $_REQUEST['server'],
74-
'subject' => 'table',
75-
'database' => $_REQUEST['database'],
76-
'schema' => $_REQUEST['schema'],
77-
'table' => $_REQUEST['table'],
78-
]];
79+
$vars = ['params' => array_merge($common_params, [
80+
'subject' => 'table',
81+
82+
'table' => $_REQUEST['table'],
83+
])];
7984

8085
break;
8186
case 'selectrows':
8287
$vars = [
8388
'url' => 'tables',
84-
'params' => [
85-
'server' => $_REQUEST['server'],
86-
'subject' => 'table',
87-
'database' => $_REQUEST['database'],
88-
'schema' => $_REQUEST['schema'],
89-
'table' => $_REQUEST['table'],
90-
'action' => 'confselectrows',
91-
], ];
89+
'params' => array_merge($common_params, [
90+
'subject' => 'table',
91+
'table' => $_REQUEST['table'],
92+
'action' => 'confselectrows',
93+
]), ];
9294

9395
break;
9496
case 'view':
95-
$vars = ['params' => [
96-
'server' => $_REQUEST['server'],
97-
'subject' => 'view',
98-
'database' => $_REQUEST['database'],
99-
'schema' => $_REQUEST['schema'],
100-
'view' => $_REQUEST['view'],
101-
]];
97+
$vars = ['params' => array_merge($common_params, [
98+
'subject' => 'view',
99+
'view' => $_REQUEST['view'],
100+
])];
102101

103102
break;
104103
case 'matview':
105-
$vars = ['params' => [
106-
'server' => $_REQUEST['server'],
107-
'subject' => 'matview',
108-
'database' => $_REQUEST['database'],
109-
'schema' => $_REQUEST['schema'],
110-
'matview' => $_REQUEST['matview'],
111-
]];
104+
$vars = ['params' => array_merge($common_params, [
105+
'subject' => 'matview',
106+
'matview' => $_REQUEST['matview'],
107+
])];
112108

113109
break;
114110
case 'fulltext':
115111
case 'ftscfg':
116-
$vars = ['params' => [
117-
'server' => $_REQUEST['server'],
118-
'subject' => 'fulltext',
119-
'database' => $_REQUEST['database'],
120-
'schema' => $_REQUEST['schema'],
121-
'action' => 'viewconfig',
122-
'ftscfg' => $_REQUEST['ftscfg'],
123-
]];
112+
$vars = ['params' => array_merge($common_params, [
113+
'subject' => 'fulltext',
114+
'action' => 'viewconfig',
115+
'ftscfg' => $_REQUEST['ftscfg'],
116+
])];
124117

125118
break;
126119
case 'function':
127-
$vars = ['params' => [
128-
'server' => $_REQUEST['server'],
120+
$vars = ['params' => array_merge($common_params, [
129121
'subject' => 'function',
130-
'database' => $_REQUEST['database'],
131-
'schema' => $_REQUEST['schema'],
132122
'function' => $_REQUEST['function'],
133123
'function_oid' => $_REQUEST['function_oid'],
134-
]];
124+
])];
135125

136126
break;
137127
case 'aggregate':
138-
$vars = ['params' => [
139-
'server' => $_REQUEST['server'],
128+
$vars = ['params' => array_merge($common_params, [
140129
'subject' => 'aggregate',
141130
'action' => 'properties',
142-
'database' => $_REQUEST['database'],
143-
'schema' => $_REQUEST['schema'],
144131
'aggrname' => $_REQUEST['aggrname'],
145132
'aggrtype' => $_REQUEST['aggrtype'],
146-
]];
133+
])];
147134

148135
break;
149136
case 'column':
150137
if (isset($_REQUEST['table'])) {
151-
$vars = ['params' => [
152-
'server' => $_REQUEST['server'],
153-
'subject' => 'column',
154-
'database' => $_REQUEST['database'],
155-
'schema' => $_REQUEST['schema'],
156-
'table' => $_REQUEST['table'],
157-
'column' => $_REQUEST['column'],
158-
]];
138+
$vars = ['params' => array_merge($common_params, [
139+
'subject' => 'column',
140+
141+
'table' => $_REQUEST['table'],
142+
'column' => $_REQUEST['column'],
143+
])];
159144
} elseif (isset($_REQUEST['view'])) {
160-
$vars = ['params' => [
161-
'server' => $_REQUEST['server'],
162-
'subject' => 'column',
163-
'database' => $_REQUEST['database'],
164-
'schema' => $_REQUEST['schema'],
165-
'view' => $_REQUEST['view'],
166-
'column' => $_REQUEST['column'],
167-
]];
168-
} elseif (isset($_REQUEST['matview'])) {
169-
$vars = ['params' => [
170-
'server' => $_REQUEST['server'],
171-
'subject' => 'column',
172-
'database' => $_REQUEST['database'],
173-
'schema' => $_REQUEST['schema'],
174-
'matview' => $_REQUEST['matview'],
175-
'column' => $_REQUEST['column'],
176-
]];
177-
}
145+
$vars = ['params' => array_merge($common_params, [
146+
'subject' => 'column',
178147

179-
break;
180-
case 'plugin':
181-
$vars = [
182-
'url' => 'plugin',
183-
'params' => [
184-
'server' => $_REQUEST['server'],
185-
'subject' => 'plugin',
186-
'plugin' => $_REQUEST['plugin'],
187-
], ];
148+
'view' => $_REQUEST['view'],
149+
'column' => $_REQUEST['column'],
150+
])];
151+
} elseif (isset($_REQUEST['matview'])) {
152+
$vars = ['params' => array_merge($common_params, [
153+
'subject' => 'column',
188154

189-
if (!is_null($plugin_manager->getPlugin($_REQUEST['plugin']))) {
190-
$vars['params'] = array_merge($vars['params'], $plugin_manager->getPlugin($_REQUEST['plugin'])->get_subject_params());
155+
'matview' => $_REQUEST['matview'],
156+
'column' => $_REQUEST['column'],
157+
])];
191158
}
192159

193160
break;
@@ -1177,9 +1144,8 @@ public function getTabsFulltext($lang, $data)
11771144
*/
11781145
public function getNavTabs($section)
11791146
{
1180-
$data = $this->getDatabaseAccessor();
1181-
$lang = $this->lang;
1182-
$plugin_manager = $this->plugin_manager;
1147+
$data = $this->getDatabaseAccessor();
1148+
$lang = $this->lang;
11831149

11841150
$hide_advanced = ($this->conf['show_advanced'] === false);
11851151
$tabs = [];
@@ -1231,7 +1197,6 @@ public function getNavTabs($section)
12311197
'tabs' => &$tabs,
12321198
'section' => $section,
12331199
];
1234-
$plugin_manager->doHook('tabs', $plugin_functions_parameters);
12351200

12361201
return $tabs;
12371202
}

0 commit comments

Comments
 (0)