Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const express = require('express')
- const bcrypt = require("bcryptjs");
- const router = express.Router()
- const Admin = require('../models/admin')
- const passport = require("passport");
- router.post("/admin/register", async (req, res) => {
- let response={
- status:'100',
- success:'',
- msg:'',
- type:'',
- }
- const hashedPassword = await bcrypt.hash(req.body.password, 10);
- const newUser = new Admin({
- username: req.body.username,
- password: hashedPassword,
- email: req.body.email,
- mobile_number: req.body.mobile_number,
- org_id: req.body.org_id
- });
- await newUser.save()
- .then(user=>{
- console.log("created a admin " + user)
- response.status="200";
- response.success=true;
- response.msg="Admin created";
- response.type="ADMIN";
- return res.status(200).json(response)
- })
- .catch(err=>{
- console.log(err)
- console.log("username or email or mobile number already exists")
- response.status="400";
- response.success=false;
- response.msg="username or email or mobile number already exists";
- response.type="ADMIN_FAIL";
- return res.status(400).json(response)
- })
- });
- router.post("/admin/login", (req, res, next) => {
- let response={
- status:'100',
- success:'',
- msg:'',
- type:'',
- }
- passport.authenticate("local", (err, user, info) => {
- if (err) throw err;
- if (!user) {
- console.log("Invalid username or password")
- response.status="400";
- response.success=false;
- response.msg="Invalid username or password";
- response.type="ADMIN_LOGIN_FAIL";
- res.status(400).json(response);
- }
- else {
- req.logIn(user, (er) => {
- if (er){ throw er;}
- console.log("Successfully Authenticated "+ user )
- response.status="200";
- response.success=true;
- response.msg="Successfully Authenticated";
- response.type="ADMIN_LOGIN";
- res.status(200).json(response);
- });
- }
- })(req, res, next);
- });
- router.post('/admin/logout', (req, res) => {
- let response={
- status:'100',
- success:'',
- msg:'',
- type:'',
- }
- if(!req.user){
- console.log("No admin user logged in")
- response.status="400";
- response.success=false;
- response.msg="no admin user present";
- response.type="ADMIN_NOUSER";
- res.status(400).json(response);
- }
- else
- {
- console.log("User : "+ JSON.stringify(req.user))
- response.status="200";
- response.success=true;
- response.msg=req.user;
- response.type="ADMIN_USER";
- req.logout()
- res.status(200).json(response);
- }
- });
- router.get("/admin/user", (req, res) => {
- let response={
- status:'100',
- success:'',
- msg:'',
- type:'',
- }
- if(!req.user){
- console.log("No admin user logged in")
- response.status="400";
- response.success=false;
- response.msg="no user present";
- response.type="ADMIN_NOUSER";
- res.status(400).json(response);
- }
- else
- {
- console.log("User : "+ JSON.stringify(req.user))
- response.status="200";
- response.success=true;
- response.msg=req.user;
- response.type="ADMIN_USER";
- res.status(200).json(response);
- }
- });
- module.exports = router
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement