index.js 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  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, searchDashboard } from "../controllers/dashboard.js";
  7. import { Apps, appSearch } from "../controllers/apps.js";
  8. import { Users } from "../controllers/users.js";
  9. import { Images } from "../controllers/images.js";
  10. import { Account } from "../controllers/account.js";
  11. import { Settings } from "../controllers/settings.js";
  12. import { Networks } from "../controllers/networks.js";
  13. import { Volumes } from "../controllers/volumes.js";
  14. import { Syslogs } from "../controllers/syslogs.js";
  15. import { Portal } from "../controllers/portal.js"
  16. /// Functions
  17. import { Install } from "../functions/install.js"
  18. import { Uninstall } from "../functions/uninstall.js"
  19. // Auth middleware
  20. const auth = (req, res, next) => {
  21. if (req.session.role == "admin") {
  22. next();
  23. } else {
  24. res.redirect("/login");
  25. }
  26. };
  27. // Routes
  28. router.get("/login", Login);
  29. router.post("/login", submitLogin);
  30. router.get("/logout", Logout);
  31. router.get("/register", Register);
  32. router.post("/register", submitRegister);
  33. router.get("/", auth, Dashboard);
  34. router.post("/", auth, searchDashboard);
  35. router.get("/images", auth, Images);
  36. router.get("/volumes", auth, Volumes);
  37. router.get("/networks", auth, Networks);
  38. router.get("/portal", Portal)
  39. router.get("/apps", auth, Apps);
  40. router.get("/apps/:page", auth, Apps);
  41. router.post("/apps", auth, appSearch);
  42. router.get("/users", auth, Users);
  43. router.get("/syslogs", auth, Syslogs);
  44. router.get("/account", Account);
  45. router.get("/settings", auth, Settings);
  46. // Functions
  47. router.post("/install", auth, Install);
  48. router.post("/uninstall", auth, Uninstall);