feat: add basic blog features

This commit is contained in:
2026-03-09 22:17:39 +01:00
commit c16657f996
29 changed files with 3095 additions and 0 deletions

View File

@@ -0,0 +1,21 @@
import crypto from 'node:crypto';
const authenticateToken = function(req, res, next) {
const token = req.cookies.auth_token;
if(!token) {
res.redirect("/");
}
const data = token.split('.');
const hash = crypto.createHmac('sha256', process.env.AUTH_JWT_SECRET).update(data[0] + '.' + data[1]).digest('base64url');
if (hash === data[2]) {
next();
} else {
res.redirect('/users/login');
}
};
export default authenticateToken;

View File

@@ -0,0 +1,12 @@
import dbClient from '../db/index.js';
async function limitedUsers(_, res, next) {
const countQuery = await dbClient.query('SELECT COUNT(*) FROM users');
if(countQuery.rows[0].count > 0) {
res.redirect('/users/login');
}
next();
}
export default limitedUsers;