Untitled

 avatar
unknown
plain_text
4 years ago
4.5 kB
5
Indexable
const express = require('express');
const bodyParser = require('body-parser');
const pdfP =require('pdf2json');
const app  =express();
const crypto= require('crypto');
const multer=require('multer');
const {GridFsStorage} = require('multer-gridfs-storage');
const Grid = require('gridfs-stream');
const methodOverride = require('method-override');
const mongoose =require('mongoose')
const fs =require('fs')
const getStream =require('get-stream')

app.use(bodyParser.json());
app.use(bodyParser.raw())
app.use(bodyParser.urlencoded({ extended: true }));
app.use(methodOverride('_method'));
const path =require('path');
//const db= require("./db");
//const fs= require('fs');
const pdfParse= require("pdf-parse");
const user =require("./models/user");
const uri= 'mongodb+srv://user:dbUser@cluster0.um1b0.mongodb.net/lib?retryWrites=true&w=majority'
let gfs;



mongoose.connect(uri,{
  useNewUrlParser: true,
    useUnifiedTopology: true,
 
  
    
  }).then(()=> console.log('db is connected')).catch((err)=> console.error('Error'));
  const a=mongoose.connection;

  a.once('open',()=>{
    gfs=Grid(a.db,mongoose.mongo);
    gfs.collection('uploads');
  });
  const storage = new GridFsStorage({
    url:uri,
 }
  )

const upload=multer({dest:"models/files"});
let files,m,t,name


//Display all files
/*app.use('/files',(req,res,next)=>{
  gfs.files.find().toArray((err,files)=>{
    m=JSON.stringify(files)
    t=JSON.parse(m)
    console.log(m)
   res.json(t)
 })*/
 

//const pdffile= fs.readFileSync("C:/Users/Ervisa/Desktop/yazlab/proje2_Sudoku/sudokurapor.pdf");


    app.get('/',(req,res)=>{
        res.sendFile(path.join(__dirname,'index.html'));
    });


    app.get('/register',(req,res)=>{
        res.sendFile(path.join(__dirname,'pass.html'));
    });
    app.get('/user',(req,res)=>{
      res.sendFile(path.join(__dirname,'user.html'));
  });
  app.get('/admin',(req,res)=>{
    res.sendFile(path.join(__dirname,'admin.html'));
});

   app.post("/user",upload.single('file'),(req, res, next) => { 
 
  pdfParse(req.file.path).then(function(data) {
   console.log(data.numpages)
})
.catch(function(error){
  console.log(err);
})
  });
 


   app.post("/submit", (req, res, next) => {

    if(req.body.password==" "&& req.body.name==" "){
        return res.status(500).json({
           message:"Make sure there isn't any empty field"
          });
    }
   else if(req.body.password==""|| req.body.name==""){
        return res.status(500).json({
           message:"Make sure there isn't any empty field"
          });
    }
  else{
        user.find({type:req.body.type ,name:req.body.name,pass:req.body.password}).exec()
        .then(user=> {
            if (user.length > 0 && req.body.type=='admin'  ) {
              res.redirect('/admin')
               
              } 
            else if (user.length > 0 && req.body.type=='user'  ) {
             
               res.redirect('/user')
             
             }
            else {
                 
                  res.sendFile(path.join(__dirname,'msg.html'))
                    }})
            .catch(err => {
              console.log(err);
              res.status(500).json({
                error: err
              });}); } });

 app.post("/changepassword", (req, res, next) => {

               if(req.body.oldP==""|| req.body.username==""|| req.body.email==""||req.body.newP==""){
                       return res.status(500).json({
                          message:"Make sure there isn't any empty field"
                         });
                   }
                   else{
                   user.findOneAndUpdate({type:req.body.type,email:req.body.email,name:req.body.username,pass:req.body.oldP},{pass:req.body.newP}).exec()
                       .then(doc=> {if(!doc){
                        return res.status(500).json({
                          message:"The information entered is not correct!",
                       }); 
                       }
                        return res.status(500).json({
                          message:"Password changed successfully!",
                       }); 
                       }).catch(err => {
                             console.log(err);
                             res.status(500).json({
                               error: err
                             });}); } });   
                                      
   app.listen(3000)
Editor is loading...