mirror of
https://github.com/stolksdorf/homebrewery.git
synced 2025-12-21 19:31:28 +00:00
Cleaned up the admin routes
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
const _ = require('lodash');
|
||||
const jwt = require('jwt-simple');
|
||||
const auth = require('basic-auth');
|
||||
const config = require('nconf');
|
||||
|
||||
const Error = require('./error.js');
|
||||
@@ -9,13 +10,13 @@ const Middleware = {
|
||||
account : (req, res, next) => {
|
||||
if(req.cookies && req.cookies.nc_session){
|
||||
try{
|
||||
req.account = jwt.decode(req.cookies.nc_session, config.get('secret'));
|
||||
req.account = jwt.decode(req.cookies.nc_session, config.get('jwt_secret'));
|
||||
}catch(e){}
|
||||
}
|
||||
return next();
|
||||
},
|
||||
admin : (req, res, next) => {
|
||||
if(req.query.admin_key === config.get('admin_key')){
|
||||
if(req.query.admin_key === config.get('admin:key')){
|
||||
req.admin = true;
|
||||
}
|
||||
return next();
|
||||
@@ -31,6 +32,15 @@ const Middleware = {
|
||||
if(req.admin) return next();
|
||||
return next(Error.noAuth());
|
||||
},
|
||||
adminLogin : (req, res, next) => {
|
||||
const creds = auth(req);
|
||||
if(!creds
|
||||
|| creds.name !== config.get('admin:user')
|
||||
|| creds.pass !== config.get('admin:pass')){
|
||||
return next(Error.noAdmin());
|
||||
}
|
||||
return next();
|
||||
},
|
||||
|
||||
|
||||
//Loaders
|
||||
|
||||
Reference in New Issue
Block a user