added isAdmin in user
This commit is contained in:
parent
870a222650
commit
c3a2171908
|
@ -29,7 +29,8 @@ module.exports.postSignup = async (req , res , next) => {
|
|||
firstName : firstName ,
|
||||
lastName : lastName ,
|
||||
email : email ,
|
||||
password : hashedPass
|
||||
password : hashedPass ,
|
||||
isAdmin : false
|
||||
}) ;
|
||||
user = await user.save() ;
|
||||
await Student.deleteOne({user:user._id}) ;
|
||||
|
|
|
@ -92,7 +92,7 @@ module.exports.getAllCourses = async (req , res , next) => {
|
|||
}
|
||||
}
|
||||
|
||||
module.exports.meetSchedule = async (req , res , next) => {
|
||||
module.exports.getMeetSchedule = async (req , res , next) => {
|
||||
try
|
||||
{
|
||||
//we need courseTypeId as input
|
||||
|
|
|
@ -0,0 +1,27 @@
|
|||
const jwt = require('jsonwebtoken')
|
||||
const JWT_secret = "Cantileverlabs"
|
||||
const mongoose = require('mongoose')
|
||||
const User = mongoose.model("User")
|
||||
module.exports = async (req,res,next)=>{
|
||||
const {authorization} = req.headers ;
|
||||
//authorization === Bearer Cantileverlabs
|
||||
if(!authorization){
|
||||
return res.status(401).json({error:"You must be logged in"})
|
||||
}
|
||||
const token = authorization.replace("Bearer ","")
|
||||
jwt.verify(token,JWT_secret,async (err,payload)=>{
|
||||
if(err){
|
||||
return res.status(401).json({error:"You must be logged in"}) ;
|
||||
}
|
||||
const {_id} = payload ;
|
||||
const user = await User.findById(_id) ;
|
||||
if(user.isAdmin)
|
||||
{
|
||||
next() ;
|
||||
}
|
||||
else
|
||||
{
|
||||
return res.status(401).json({error:"Not an admin"}) ;
|
||||
}
|
||||
})
|
||||
}
|
|
@ -24,6 +24,9 @@ const userSchema = new Schema({
|
|||
student : {
|
||||
type : mongoose.Types.ObjectId ,
|
||||
ref: 'Student'
|
||||
} ,
|
||||
isAdmin : {
|
||||
type : Boolean
|
||||
}
|
||||
//need to add isAdmin
|
||||
}) ;
|
||||
|
|
|
@ -1,12 +1,15 @@
|
|||
const express = require('express') ;
|
||||
const adminController = require('../controllers/admin')
|
||||
const adminController = require('../controllers/admin') ;
|
||||
|
||||
const isAuth = require('../middleware/requirelogin') ;
|
||||
const isAdmin = require('../middleware/isAdmin') ;
|
||||
|
||||
const router = express.Router() ;
|
||||
|
||||
router.post('/addSchedule' , adminController.addSchedule) ;
|
||||
router.post('/addSchedule' ,isAuth , isAdmin , adminController.addSchedule) ;
|
||||
|
||||
router.post('/editSchedule' , adminController.editSchedule) ;
|
||||
router.post('/editSchedule' ,isAuth , isAdmin , adminController.editSchedule) ;
|
||||
|
||||
router.post('/deleteSchedule' , adminController.deleteSchedule) ;
|
||||
router.post('/deleteSchedule' ,isAuth , isAdmin , adminController.deleteSchedule) ;
|
||||
|
||||
module.exports = router ;
|
|
@ -1,12 +1,17 @@
|
|||
const express = require('express') ;
|
||||
const courseController = require('../controllers/course') ;
|
||||
|
||||
const isAuth = require('../middleware/requirelogin') ;
|
||||
const isAdmin = require('../middleware/isAdmin') ;
|
||||
|
||||
const router = express.Router() ;
|
||||
|
||||
router.post('/addCourse' , courseController.postAddCourse) ;
|
||||
router.post('/addCourse' ,isAuth , isAdmin , courseController.postAddCourse) ;
|
||||
|
||||
router.get('/getAllCourses' , courseController.getAllCourses) ;
|
||||
|
||||
router.post('/meetSchedule' , courseController.meetSchedule) ;
|
||||
//NOTE
|
||||
//It is a post request
|
||||
router.post('/getMeetSchedule' ,isAuth , courseController.getMeetSchedule) ;
|
||||
|
||||
module.exports = router ;
|
Loading…
Reference in New Issue