From ff7fe4bfa0f9e706fe7be735952265a8ed1f6b2b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maur=C3=ADcio=20Meneghini=20Fauth?= Date: Fri, 26 May 2023 20:29:23 -0300 Subject: [PATCH] Extract getTables() method from Triggers::getEditorForm() MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: MaurĂ­cio Meneghini Fauth --- libraries/classes/Triggers/Triggers.php | 21 +++++++++++++++++---- psalm-baseline.xml | 3 --- 2 files changed, 17 insertions(+), 7 deletions(-) diff --git a/libraries/classes/Triggers/Triggers.php b/libraries/classes/Triggers/Triggers.php index faf2e1293d..2ec65bb574 100644 --- a/libraries/classes/Triggers/Triggers.php +++ b/libraries/classes/Triggers/Triggers.php @@ -11,6 +11,7 @@ use PhpMyAdmin\Query\Generator as QueryGenerator; use PhpMyAdmin\ResponseRenderer; use PhpMyAdmin\Template; use PhpMyAdmin\Util; +use Webmozart\Assert\Assert; use function __; use function array_column; @@ -299,10 +300,7 @@ class Triggers */ public function getEditorForm(string $db, string $table, string $mode, array $item): string { - $query = 'SELECT `TABLE_NAME` FROM `INFORMATION_SCHEMA`.`TABLES` '; - $query .= 'WHERE `TABLE_SCHEMA`=\'' . $this->dbi->escapeString($db) . '\' '; - $query .= 'AND `TABLE_TYPE` IN (\'BASE TABLE\', \'SYSTEM VERSIONED\')'; - $tables = $this->dbi->fetchResult($query); + $tables = $this->getTables($db); return $this->template->render('triggers/editor_form', [ 'db' => $db, @@ -553,4 +551,19 @@ class Triggers return $result; } + + /** @return list */ + private function getTables(string $db): array + { + $query = sprintf( + 'SELECT `TABLE_NAME` FROM `INFORMATION_SCHEMA`.`TABLES` WHERE `TABLE_SCHEMA`=%s' + . " AND `TABLE_TYPE` IN ('BASE TABLE', 'SYSTEM VERSIONED')", + $this->dbi->quoteString($db), + ); + $tables = $this->dbi->fetchResult($query); + Assert::allStringNotEmpty($tables); + Assert::isList($tables); + + return $tables; + } } diff --git a/psalm-baseline.xml b/psalm-baseline.xml index 23f4c710a3..5d39590c72 100644 --- a/psalm-baseline.xml +++ b/psalm-baseline.xml @@ -12869,9 +12869,6 @@ - - escapeString -