1import db from "./db.js";
2
3export const userSessionRequired = (req, res, next) => {
4 const token = req.headers["x-auth-token"];
5
6 if (token) {
7 const user = db.get(
8 `SELECT id, username, api_token, created_at, status FROM users where api_token=@api_token`,
9 {
10 api_token: token,
11 }
12 );
13 if (user) {
14 res.locals.user = user;
15 res.locals.not_browser = true;
16 }
17 }
18
19 // TODO: check headers for tokens as well.
20 if (!res.locals.user) {
21 return next({ statusCode: 403, message: "Access denied. Please login" });
22 }
23 next();
24};
25
26export const ifLoggedInGoHome = (req, res, next) => {
27 if (res.locals.user) {
28 return res.redirect("/list");
29 }
30 next();
31};