aboutsummaryrefslogtreecommitdiff
path: root/functions/render.js
diff options
context:
space:
mode:
authorBobby <[email protected]>2022-06-03 16:04:33 +0530
committerBobby <[email protected]>2022-06-03 16:04:33 +0530
commit34407aa326383b641609e1effa39418341b740c0 (patch)
tree168a58b40a5f8d33e4854287f9a384408055509b /functions/render.js
parent06e4ecd95bfd2817e56af83dbe9af1b6eba283bf (diff)
downloadthatcomputerscientist-34407aa326383b641609e1effa39418341b740c0.tar.xz
thatcomputerscientist-34407aa326383b641609e1effa39418341b740c0.zip
account page
Diffstat (limited to 'functions/render.js')
-rw-r--r--functions/render.js29
1 files changed, 29 insertions, 0 deletions
diff --git a/functions/render.js b/functions/render.js
new file mode 100644
index 00000000..84596ca2
--- /dev/null
+++ b/functions/render.js
@@ -0,0 +1,29 @@
+const jwt = require("jsonwebtoken");
+require("dotenv").config();
+const validationString = process.env.AUTHORIZATION_STRING;
+function renderRoute(req, res, page, title, protected = false, data = {}) {
+ res.locals.messages = req.flash();
+ jwt.verify(req.cookies.token, validationString, (err, decoded) => {
+ if (err) {
+ res.clearCookie("token");
+ if (protected) {
+ res.redirect("/");
+ } else {
+ res.render(page, {
+ title: title,
+ ...data,
+ });
+ }
+ } else {
+ res.render(page, {
+ title: title,
+ username: decoded.username,
+ ...data,
+ });
+ }
+ });
+}
+
+module.exports = {
+ renderRoute,
+};