Website restoration: Node.js backend, restored design, GitHub sync disabled
- Replaced broken .NET backend with Node.js/Express - Restored original website design with purple gradient hero - Updated homepage and shop pages with Bootstrap 5 responsive design - Disabled GitHub remote sync - all code now stored locally only - Created backup scripts and documentation - All changes saved on Ubuntu server at /var/www/SkyArtShop
This commit is contained in:
28
backend/middleware/auth.js
Normal file
28
backend/middleware/auth.js
Normal file
@@ -0,0 +1,28 @@
|
||||
const requireAuth = (req, res, next) => {
|
||||
if (req.session && req.session.adminId) {
|
||||
return next();
|
||||
}
|
||||
res.redirect('/admin/login');
|
||||
};
|
||||
|
||||
const requireRole = (allowedRoles) => {
|
||||
return (req, res, next) => {
|
||||
if (!req.session || !req.session.adminId) {
|
||||
return res.redirect('/admin/login');
|
||||
}
|
||||
const userRole = req.session.role || 'user';
|
||||
if (allowedRoles.includes(userRole)) {
|
||||
return next();
|
||||
}
|
||||
res.status(403).send('Access denied');
|
||||
};
|
||||
};
|
||||
|
||||
const redirectIfAuth = (req, res, next) => {
|
||||
if (req.session && req.session.adminId) {
|
||||
return res.redirect('/admin/dashboard');
|
||||
}
|
||||
next();
|
||||
};
|
||||
|
||||
module.exports = { requireAuth, requireRole, redirectIfAuth };
|
||||
Reference in New Issue
Block a user