renders.routes.js 3.1 KB

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