Merge pull request #17712 from kamil-tekiela/sql_autocomplete
Clean up autocomplete controller
This commit is contained in:
commit
ec9af1bd65
@ -1321,7 +1321,7 @@ Functions.codeMirrorAutoCompleteOnInputRead = function (instance) {
|
||||
data: params,
|
||||
success: function (data) {
|
||||
if (data.success) {
|
||||
var tables = JSON.parse(data.tables);
|
||||
var tables = data.tables;
|
||||
sqlAutoCompleteDefaultTable = window.CommonParams.get('table');
|
||||
sqlAutoComplete = [];
|
||||
for (var table in tables) {
|
||||
|
||||
@ -10,8 +10,6 @@ use PhpMyAdmin\Http\ServerRequest;
|
||||
use PhpMyAdmin\ResponseRenderer;
|
||||
use PhpMyAdmin\Template;
|
||||
|
||||
use function json_encode;
|
||||
|
||||
/**
|
||||
* Table/Column autocomplete in SQL editors.
|
||||
*/
|
||||
@ -28,18 +26,17 @@ class SqlAutoCompleteController extends AbstractController
|
||||
|
||||
public function __invoke(ServerRequest $request): void
|
||||
{
|
||||
$GLOBALS['sql_autocomplete'] = true;
|
||||
$sqlAutocomplete = [];
|
||||
if ($GLOBALS['cfg']['EnableAutocompleteForTablesAndColumns']) {
|
||||
$GLOBALS['db'] = $_POST['db'] ?? $GLOBALS['db'];
|
||||
$GLOBALS['sql_autocomplete'] = [];
|
||||
if ($GLOBALS['db']) {
|
||||
$tableNames = $this->dbi->getTables($GLOBALS['db']);
|
||||
$db = $request->getParam('db', $GLOBALS['db']);
|
||||
if ($db) {
|
||||
$tableNames = $this->dbi->getTables($db);
|
||||
foreach ($tableNames as $tableName) {
|
||||
$GLOBALS['sql_autocomplete'][$tableName] = $this->dbi->getColumns($GLOBALS['db'], $tableName);
|
||||
$sqlAutocomplete[$tableName] = $this->dbi->getColumns($db, $tableName);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$this->response->addJSON(['tables' => json_encode($GLOBALS['sql_autocomplete'])]);
|
||||
$this->response->addJSON(['tables' => $sqlAutocomplete]);
|
||||
}
|
||||
}
|
||||
|
||||
@ -1025,6 +1025,16 @@ parameters:
|
||||
count: 1
|
||||
path: libraries/classes/Controllers/Database/OperationsController.php
|
||||
|
||||
-
|
||||
message: "#^Parameter \\#1 \\$database of method PhpMyAdmin\\\\DatabaseInterface\\:\\:getColumns\\(\\) expects string, mixed given\\.$#"
|
||||
count: 1
|
||||
path: libraries/classes/Controllers/Database/SqlAutoCompleteController.php
|
||||
|
||||
-
|
||||
message: "#^Parameter \\#1 \\$database of method PhpMyAdmin\\\\DatabaseInterface\\:\\:getTables\\(\\) expects string, mixed given\\.$#"
|
||||
count: 1
|
||||
path: libraries/classes/Controllers/Database/SqlAutoCompleteController.php
|
||||
|
||||
-
|
||||
message: "#^Cannot access offset non\\-empty\\-string on mixed\\.$#"
|
||||
count: 1
|
||||
|
||||
@ -1373,13 +1373,12 @@
|
||||
<InvalidArrayOffset occurrences="1">
|
||||
<code>$GLOBALS['cfg']['EnableAutocompleteForTablesAndColumns']</code>
|
||||
</InvalidArrayOffset>
|
||||
<MixedArgument occurrences="3">
|
||||
<code>$GLOBALS['db']</code>
|
||||
<code>$GLOBALS['db']</code>
|
||||
<MixedArgument occurrences="2">
|
||||
<code>$db</code>
|
||||
<code>$tableName</code>
|
||||
</MixedArgument>
|
||||
<MixedAssignment occurrences="2">
|
||||
<code>$GLOBALS['db']</code>
|
||||
<code>$db</code>
|
||||
<code>$tableName</code>
|
||||
</MixedAssignment>
|
||||
</file>
|
||||
|
||||
Loading…
Reference in New Issue
Block a user