From 2c5e3e0baa708bb7a7ebf711a38f391536353eb0 Mon Sep 17 00:00:00 2001
From: Rava Maulana <ravamaulana14@gmail.com>
Date: Tue, 14 Nov 2023 14:56:10 +0700
Subject: [PATCH] feat: group app.php by routes

---
 src/app/core/app.php | 58 +++++++++++++++++++++++---------------------
 1 file changed, 30 insertions(+), 28 deletions(-)

diff --git a/src/app/core/app.php b/src/app/core/app.php
index 4f291f5..6daecb6 100644
--- a/src/app/core/app.php
+++ b/src/app/core/app.php
@@ -7,59 +7,61 @@ class App
     $url = $this->parseURL();
     $router = new Router();
 
-    $router->get("public/profile", new getProfileController());
+    // Pages routes
+    $router->get("public/login", new GetLoginController());
+    $router->get("public/signup", new GetSignupController());
 
     $router->get("public", new AppController());
     $router->get("public/home", new AppController());
     $router->get("public/search", new AppController());
     $router->get("public/library", new AppController());
     $router->get("public/playlist", new AppController());
+    $router->get("public/profile", new getProfileController());
+    $router->get("public/podcast", new GetPodcastPageController());
+    $router->get("public/playlist", new GetPlaylistController());
+
     $router->get("public/dashboard", new AppController());
     $router->get("public/dashboard-main", new AppController());
     $router->get("public/dashboard-episode", new AppController());
-  
+    $router->get("public/dashboard/add-episode", new GetAddEpisodeController());
+    $router->get("public/dashboard/add-podcast", new GetAddPodcastController());
+    $router->get("public/dashboard/edit-episode", new GetEditEpisodeController());
+    $router->get("public/dashboard/edit-podcast", new GetEditPodcastController());
+
+    // Component routes for SPA
     $router->get("public/components/home", new GetHomeController());
     $router->get("public/components/search", new GetSearchController());
     $router->get("public/components/library", new GetLibraryController());
     $router->get("public/components/playlist", new GetPlaylistController());
-
-    // Dashboard page routes
     $router->get("public/components/dashboard", new GetDashboardLayoutController());
+
     $router->get("public/components/dashboard-main", new GetDashboardLayoutController());
     $router->get("public/components/dashboard-episode", new GetDashboardLayoutController());
-
-    $router->get("public/dashboard/add-episode", new GetAddEpisodeController());
-    $router->get("public/dashboard/add-podcast", new GetAddPodcastController());
-    $router->get("public/dashboard/edit-episode", new GetEditEpisodeController());
-    $router->get("public/dashboard/edit-podcast", new GetEditPodcastController());
-
-    // Dashboard data-fetching routes
     $router->get("public/dashboard/internal/dashboard-main", new GetDashboardMainController());
     $router->get("public/dashboard/internal/dashboard-episode", new GetDashboardEpisodeController());
-    $router->post("public/dashboard/add-episode", new PostAddEpisodeController());
-    $router->post("public/dashboard/edit-episode", new PostEditEpisodeController());
+
+    // GET routes
     $router->get("public/dashboard/user-podcast", new GetUserPodcastController());
-    $router->delete("public/dashboard/episode", new DeleteEpisodeController());
-    $router->post("public/dashboard/add-podcast", new PostAddPodcastController());
-    $router->post("public/dashboard/edit-podcast", new PostEditPodcastController());
-    $router->delete("public/dashboard/podcast", new DeletePodcastController());
 
-    $router->get("public/podcast", new GetPodcastPageController());
+    // POST routes
+    $router->post("public/logout", new LogoutController());
+    $router->post("public/login", new PostLoginController());
+    $router->post("public/signup", new PostSignupController());
+
     $router->post("public/episode/play", new PostPlayEpisodeController());
     $router->post("public/podcast", new PostPodcastPageController());
+    $router->post("public/playlist", new PostPlaylistController());
 
+    $router->post("public/dashboard/add-episode", new PostAddEpisodeController());
+    $router->post("public/dashboard/edit-episode", new PostEditEpisodeController());
+    $router->post("public/dashboard/add-podcast", new PostAddPodcastController());
+    $router->post("public/dashboard/edit-podcast", new PostEditPodcastController());
 
-    $router->post("public/logout", new LogoutController());
+    // DELETE routes
+    $router->delete("public/dashboard/episode", new DeleteEpisodeController());
+    $router->delete("public/dashboard/podcast", new DeletePodcastController());
 
-    // $router->get("public/home", new GetHomeController());
-    // $router->get("public/search", new GetSearchController());
-    $router->get("public/login", new GetLoginController());
-    $router->post("public/login", new PostLoginController());
-    $router->get("public/signup", new GetSignupController());
-    $router->post("public/signup", new PostSignupController());
-    $router->get("public/library", new GetLibraryController());
-    $router->get("public/playlist", new GetPlaylistController());
-    $router->post("public/playlist", new PostPlaylistController());
+    // $router->get("public/library", new GetLibraryController());
 
     $router->directRequest($url);
   }
-- 
GitLab