index.js 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. import express from "express";
  2. export const router = express.Router();
  3. // Controllers
  4. import { Login, submitLogin, Logout } from "../controllers/login.js";
  5. import { Register, submitRegister } from "../controllers/register.js";
  6. import { Dashboard, Start, Stop, Pause, Restart, Logs, Modal, Stats, Hide, Reset, Chart, Containers, Installs } from "../controllers/dashboard.js";
  7. import { Apps, appSearch } from "../controllers/apps.js";
  8. import { Users } from "../controllers/users.js";
  9. import { Images, removeImage } from "../controllers/images.js";
  10. import { Networks, removeNetwork } from "../controllers/networks.js";
  11. import { Volumes, removeVolume } from "../controllers/volumes.js";
  12. import { Account } from "../controllers/account.js";
  13. import { Variables } from "../controllers/variables.js";
  14. import { Settings } from "../controllers/settings.js";
  15. import { Supporters, Thanks } from "../controllers/supporters.js";
  16. import { Syslogs } from "../controllers/syslogs.js";
  17. import { Portal } from "../controllers/portal.js"
  18. // Auth middleware
  19. const auth = (req, res, next) => {
  20. if (req.session.role == "admin") {
  21. next();
  22. } else {
  23. res.redirect("/login");
  24. }
  25. };
  26. // Admin routes
  27. router.get("/", auth, Dashboard);
  28. router.get("/containers", auth, Containers);
  29. router.post("/start", auth, Start);
  30. router.post("/stop", auth, Stop);
  31. router.post("/pause", auth, Pause);
  32. router.post("/restart", auth, Restart);
  33. router.get("/logs", auth, Logs);
  34. router.get ("/modal", auth, Modal);
  35. router.get("/stats", auth, Stats);
  36. router.post("/hide", auth, Hide);
  37. router.post("/reset", auth, Reset);
  38. router.get("/chart", auth, Chart);
  39. router.get("/installs", auth, Installs);
  40. router.get("/images", auth, Images);
  41. router.post("/removeImage", auth, removeImage);
  42. router.get("/volumes", auth, Volumes);
  43. router.post("/removeVolume", auth, removeVolume);
  44. router.get("/networks", auth, Networks);
  45. router.post("/removeNetwork", auth, removeNetwork);
  46. router.get("/apps", auth, Apps);
  47. router.get("/apps/:page", auth, Apps);
  48. router.post("/apps", auth, appSearch);
  49. router.get("/users", auth, Users);
  50. router.get("/syslogs", auth, Syslogs);
  51. router.get("/variables", auth, Variables);
  52. router.get("/settings", auth, Settings);
  53. // User routes
  54. router.get("/portal", Portal);
  55. router.get("/account", Account);
  56. router.get("/supporters", Supporters);
  57. router.post("/thank", Thanks);
  58. router.get("/login", Login);
  59. router.post("/login", submitLogin);
  60. router.get("/register", Register);
  61. router.post("/register", submitRegister);
  62. router.get("/logout", Logout);
  63. // Functions
  64. // import { Install } from "../functions/install.js"
  65. import { Uninstall } from "../functions/uninstall.js"
  66. // router.post("/install", auth, Install);
  67. router.post("/uninstall", auth, Uninstall);