From 3594f9c147de6c938e1ace7e5a098a4d109173b6 Mon Sep 17 00:00:00 2001 From: Yisroel Baum Date: Sun, 12 Apr 2026 22:38:42 +0300 Subject: [PATCH 1/5] delete data file --- data/texts.json | 1 - 1 file changed, 1 deletion(-) delete mode 100644 data/texts.json diff --git a/data/texts.json b/data/texts.json deleted file mode 100644 index fe51488..0000000 --- a/data/texts.json +++ /dev/null @@ -1 +0,0 @@ -[] From 854771eaa9a626729fdd7de7b73da07490b01f6c Mon Sep 17 00:00:00 2001 From: Yisroel Baum Date: Sun, 12 Apr 2026 22:39:34 +0300 Subject: [PATCH 2/5] ignore data folder --- .gitignore | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index ff87634..7c8b966 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ vendor/ -node_modules/ \ No newline at end of file +node_modules/ +data/ \ No newline at end of file From 72d92debab00cdeecec911da23d93fbf4f262aaa Mon Sep 17 00:00:00 2001 From: Yisroel Baum Date: Sun, 12 Apr 2026 22:39:50 +0300 Subject: [PATCH 3/5] make create text method --- app/View/ViewController.php | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/app/View/ViewController.php b/app/View/ViewController.php index a9f4ccc..e6c6196 100644 --- a/app/View/ViewController.php +++ b/app/View/ViewController.php @@ -2,8 +2,12 @@ namespace App\View; +use App\Text\CreateTextDto; use App\Text\TextRepository; +use App\Text\UseCases\CreateText; +use App\Text\UseCases\CreateTextRequest; use Psr\Http\Message\ResponseInterface as Response; +use Psr\Http\Message\ServerRequestInterface as Request; class ViewController { @@ -34,4 +38,21 @@ class ViewController return $response; } + + public function createText( + Request $request, + Response $response, + CreateText $createTextUseCase, + ): Response { + $data = $request->getParsedBody(); + $name = $data['name'] ?? ''; + + if (!empty($name)) { + $createTextUseCase->execute(new CreateTextRequest( + name: $name, + )); + } + + return $response->withHeader('Location', '/admin/texts')->withStatus(302); + } } From 210b77b10ba76791c90caf2b1cbc26839c710cbb Mon Sep 17 00:00:00 2001 From: Yisroel Baum Date: Sun, 12 Apr 2026 22:40:22 +0300 Subject: [PATCH 4/5] make new route for text creation --- bootstrap/app.php | 1 + 1 file changed, 1 insertion(+) diff --git a/bootstrap/app.php b/bootstrap/app.php index 5d081cd..3299b05 100644 --- a/bootstrap/app.php +++ b/bootstrap/app.php @@ -13,5 +13,6 @@ $app->addErrorMiddleware(true, true, true); $app->get('/admin', [ViewController::class, 'admin']); $app->get('/admin/texts', [ViewController::class, 'texts']); +$app->post('/admin/texts', [ViewController::class, 'createText']); return $app; From d5bc01f6bdbae93304755d12bff25c5f459d6a56 Mon Sep 17 00:00:00 2001 From: Yisroel Baum Date: Sun, 12 Apr 2026 22:40:46 +0300 Subject: [PATCH 5/5] add form for creating texts --- views/templates/texts.php | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/views/templates/texts.php b/views/templates/texts.php index b5058ab..24c2c92 100644 --- a/views/templates/texts.php +++ b/views/templates/texts.php @@ -9,7 +9,9 @@
    {{texts}}
- - +
+ + +