diff options
author | Maurício Meneghini Fauth <mauricio@fauth.dev> | 2022-07-30 23:49:12 +0300 |
---|---|---|
committer | Maurício Meneghini Fauth <mauricio@fauth.dev> | 2022-07-30 23:49:12 +0300 |
commit | efc04db52b7e77b6ec067fad427fa3a3a2c88689 (patch) | |
tree | edeb7f077776ddb15e574b1a403e38bb1c7ff899 /libraries | |
parent | dd25695569bc86f66e6be393bf92394229639549 (diff) |
Extract normalization 3NF step 1 action
Signed-off-by: Maurício Meneghini Fauth <mauricio@fauth.dev>
Diffstat (limited to 'libraries')
4 files changed, 39 insertions, 8 deletions
diff --git a/libraries/classes/Controllers/Normalization/ThirdNormalForm/FirstStepController.php b/libraries/classes/Controllers/Normalization/ThirdNormalForm/FirstStepController.php new file mode 100644 index 0000000000..5b50da6a87 --- /dev/null +++ b/libraries/classes/Controllers/Normalization/ThirdNormalForm/FirstStepController.php @@ -0,0 +1,30 @@ +<?php + +declare(strict_types=1); + +namespace PhpMyAdmin\Controllers\Normalization\ThirdNormalForm; + +use PhpMyAdmin\Controllers\AbstractController; +use PhpMyAdmin\Http\ServerRequest; +use PhpMyAdmin\Normalization; +use PhpMyAdmin\ResponseRenderer; +use PhpMyAdmin\Template; + +final class FirstStepController extends AbstractController +{ + /** @var Normalization */ + private $normalization; + + public function __construct(ResponseRenderer $response, Template $template, Normalization $normalization) + { + parent::__construct($response, $template); + $this->normalization = $normalization; + } + + public function __invoke(ServerRequest $request): void + { + $tables = $_POST['tables']; + $res = $this->normalization->getHtmlFor3NFstep1($GLOBALS['db'], $tables); + $this->response->addJSON($res); + } +} diff --git a/libraries/classes/Controllers/NormalizationController.php b/libraries/classes/Controllers/NormalizationController.php index 02451e26fa..1dbf6586bd 100644 --- a/libraries/classes/Controllers/NormalizationController.php +++ b/libraries/classes/Controllers/NormalizationController.php @@ -135,14 +135,6 @@ class NormalizationController extends AbstractController return; } - if (isset($_POST['step']) && $_POST['step'] == '3.1') { - $tables = $_POST['tables']; - $res = $this->normalization->getHtmlFor3NFstep1($GLOBALS['db'], $tables); - $this->response->addJSON($res); - - return; - } - $this->render('table/normalization/normalization', [ 'db' => $GLOBALS['db'], 'table' => $GLOBALS['table'], diff --git a/libraries/routes.php b/libraries/routes.php index d150421a99..7f17bbf603 100644 --- a/libraries/routes.php +++ b/libraries/routes.php @@ -138,6 +138,7 @@ return static function (RouteCollector $routes): void { $routes->post('/1nf/step4', Normalization\FirstNormalForm\FourthStepController::class); $routes->post('/2nf/new-tables', Normalization\SecondNormalForm\NewTablesController::class); $routes->post('/2nf/step1', Normalization\SecondNormalForm\FirstStepController::class); + $routes->post('/3nf/step1', Normalization\ThirdNormalForm\FirstStepController::class); }); $routes->get('/phpinfo', PhpInfoController::class); $routes->addGroup('/preferences', static function (RouteCollector $routes): void { diff --git a/libraries/services_controllers.php b/libraries/services_controllers.php index dc7fa99985..3d9eb312ea 100644 --- a/libraries/services_controllers.php +++ b/libraries/services_controllers.php @@ -633,6 +633,14 @@ return [ '$normalization' => '@normalization', ], ], + Normalization\ThirdNormalForm\FirstStepController::class => [ + 'class' => Normalization\ThirdNormalForm\FirstStepController::class, + 'arguments' => [ + '$response' => '@response', + '$template' => '@template', + '$normalization' => '@normalization', + ], + ], NormalizationController::class => [ 'class' => NormalizationController::class, 'arguments' => [ |