renders.routes.js 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150
  1. const { Router } = require("express");
  2. const helpers = require("../handlers/helpers.handler");
  3. const renders = require("../handlers/renders.handler");
  4. const asyncHandler = require("../utils/asyncHandler");
  5. const locals = require("../handlers/locals.handler");
  6. const auth = require("../handlers/auth.handler");
  7. const router = Router();
  8. // pages
  9. router.get(
  10. "/",
  11. asyncHandler(auth.jwtLoose),
  12. asyncHandler(locals.user),
  13. asyncHandler(renders.homepage)
  14. );
  15. router.get(
  16. "/login",
  17. asyncHandler(auth.jwtLoose),
  18. asyncHandler(renders.login)
  19. );
  20. router.get(
  21. "/logout",
  22. asyncHandler(auth.jwtLoose),
  23. asyncHandler(renders.logout)
  24. );
  25. router.get(
  26. "/404",
  27. asyncHandler(auth.jwtLoose),
  28. asyncHandler(locals.user),
  29. asyncHandler(renders.notFound)
  30. );
  31. router.get(
  32. "/settings",
  33. asyncHandler(auth.jwtPage),
  34. asyncHandler(locals.user),
  35. asyncHandler(renders.settings)
  36. );
  37. router.get(
  38. "/stats",
  39. asyncHandler(auth.jwtPage),
  40. asyncHandler(locals.user),
  41. asyncHandler(renders.stats)
  42. );
  43. router.get(
  44. "/banned",
  45. asyncHandler(auth.jwtLoose),
  46. asyncHandler(locals.user),
  47. asyncHandler(renders.banned)
  48. );
  49. router.get(
  50. "/report",
  51. asyncHandler(auth.jwtLoose),
  52. asyncHandler(locals.user),
  53. asyncHandler(renders.report)
  54. );
  55. router.get(
  56. "/reset-password",
  57. asyncHandler(auth.jwtLoose),
  58. asyncHandler(locals.user),
  59. asyncHandler(renders.resetPassword)
  60. );
  61. router.get(
  62. "/reset-password/:resetPasswordToken",
  63. asyncHandler(auth.resetPassword),
  64. asyncHandler(auth.jwtLoose),
  65. asyncHandler(locals.user),
  66. asyncHandler(renders.resetPasswordResult)
  67. );
  68. router.get(
  69. "/verify-email/:changeEmailToken",
  70. asyncHandler(auth.changeEmail),
  71. asyncHandler(auth.jwtLoose),
  72. asyncHandler(locals.user),
  73. asyncHandler(renders.verifyChangeEmail)
  74. );
  75. router.get(
  76. "/verify/:verificationToken",
  77. asyncHandler(auth.verify),
  78. asyncHandler(auth.jwtLoose),
  79. asyncHandler(locals.user),
  80. asyncHandler(renders.verify)
  81. );
  82. router.get(
  83. "/terms",
  84. asyncHandler(auth.jwtLoose),
  85. asyncHandler(locals.user),
  86. asyncHandler(renders.terms)
  87. );
  88. // partial renders
  89. router.get(
  90. "/confirm-link-delete",
  91. locals.noLayout,
  92. asyncHandler(auth.jwt),
  93. asyncHandler(renders.confirmLinkDelete)
  94. );
  95. router.get(
  96. "/confirm-link-ban",
  97. locals.noLayout,
  98. locals.viewTemplate("partials/links/dialog/message"),
  99. asyncHandler(auth.jwt),
  100. asyncHandler(auth.admin),
  101. asyncHandler(renders.confirmLinkBan)
  102. );
  103. router.get(
  104. "/link/edit/:id",
  105. locals.noLayout,
  106. asyncHandler(auth.jwt),
  107. asyncHandler(renders.linkEdit)
  108. );
  109. router.get(
  110. "/add-domain-form",
  111. locals.noLayout,
  112. asyncHandler(auth.jwt),
  113. asyncHandler(renders.addDomainForm)
  114. );
  115. router.get(
  116. "/confirm-domain-delete",
  117. locals.noLayout,
  118. locals.viewTemplate("partials/settings/domain/delete"),
  119. asyncHandler(auth.jwt),
  120. asyncHandler(renders.confirmDomainDelete)
  121. );
  122. router.get(
  123. "/get-report-email",
  124. locals.noLayout,
  125. locals.viewTemplate("partials/report/email"),
  126. asyncHandler(renders.getReportEmail)
  127. );
  128. module.exports = router;