From 95dc15324a55d0d3d6e774b9728ec2a498c70dc7 Mon Sep 17 00:00:00 2001 From: Ashish Suman Date: Thu, 25 Apr 2019 14:26:44 -0400 Subject: [PATCH] Img upload HTML removed --- server.js | 95 ++++++++++++++++++++++--------------------------------- 1 file changed, 37 insertions(+), 58 deletions(-) diff --git a/server.js b/server.js index 193390e..084613f 100644 --- a/server.js +++ b/server.js @@ -29,7 +29,7 @@ const port = config.get('Local.port'); const local_path = config.get('Local.path'); //setting up the database -const db = new sqlite3.Database(local_path+'/comp512.db', sqlite3.OPEN_READWRITE, (err) => { +const db = new sqlite3.Database('C:/sqlite/comp512.db', sqlite3.OPEN_READWRITE, (err) => { if (err) { console.error(err.message); } @@ -38,17 +38,10 @@ const db = new sqlite3.Database(local_path+'/comp512.db', sqlite3.OPEN_READWRITE //creating various lists and queues for execution -//The state of the server -var currentframe= new HashMap(); -var deleteJobs= new HashMap(); var activeJobs = new Queue(); var completedJobs = new Queue(); var activequeue = new Queue(); var activeclients= new HashMap(); -var object = "giraffe"; - - - //Creating storage for video files const storage_vid = multer.diskStorage({ @@ -67,41 +60,41 @@ const storage_vid = multer.diskStorage({ }); //Creating storage for image files -const storage_pic = multer.diskStorage({ +/*const storage_pic = multer.diskStorage({ destination: function (req, file, cb) { cb(null, local_path+'/uploads/ImageUploads') }, filename: function (req, file, cb) { cb(null, req.ip + '.jpeg') } -}); +});*/ //Upload functions const upload_vid = multer({ storage: storage_vid}); -const upload_pic = multer({ storage: storage_pic}); +//const upload_pic = multer({ storage: storage_pic}); // upload video file app.post('/uploadVidFile', upload_vid.single('videoFile'), (req, res) => { - myEmitter.emit('videoUploaded'); - res.sendFile(__dirname + '/uploadImages.html') + activequeue.enqueue(req.ip); + myEmitter.emit('vidUploaded'); + res.sendFile(__dirname + '/results.html'); }); //Event called after video uploaded -myEmitter.on('videoUploaded', () => { +/*myEmitter.on('videoUploaded', () => { console.log('video upload complete!'); -}); +});*/ // upload image file -app.post('/uploadImgFile', upload_pic.single('imgFile'), (req, res) => { +/*app.post('/uploadImgFile', upload_pic.single('imgFile'), (req, res) => { activequeue.enqueue(req.ip); - currentframe.set(req.ip, 1); myEmitter.emit('imgUploaded'); - res.render('ObjDect1',{user: "http://"+local_ip+":3000/mainimg", title: req.ip, obj: object}); -}); + res.sendFile(__dirname + '/results.html'); +});*/ //Event called after image is uploaded -myEmitter.on('imgUploaded', () => { +myEmitter.on('vidUploaded', () => { console.log('image upload complete!'); var extract_ip = activequeue.dequeue() extract(extract_ip); @@ -122,7 +115,6 @@ async function extract(extract_ip) { output: local_path+'/uploads/Frames/'+extract_ip+'/'+extract_ip+'-%d.jpg', fps : 20, }) - rmdir.sync(local_path+'/uploads/VideoUploads/'+ extract_ip + '.mp4'); fs.readdir(local_path+'/uploads/Frames/'+extract_ip, (err, files) => { totalFrames = files.length; console.log("Total number of frames: "+totalFrames); @@ -133,31 +125,16 @@ async function extract(extract_ip) { console.log(extract_ip + 'added'); }); }); - if(deleteJobs.get(extract_ip)!=1)activeJobs.enqueue(extract_ip); + activeJobs.enqueue(extract_ip); console.log('Active job added for '+activeJobs.peek()); console.log('video split successful') + } catch (e) { console.log(e); } } -app.get('/mainimg', function(req, res){ - - res.sendFile(__dirname + '/uploads/ImageUploads/' + req.ip + '.jpeg'); - -}); - -app.get('/somepage', function(req, res){ - deleteJobs.set(req.ip,1); - db.each('DELETE From Jobs Where IP = ?', [req.ip], (err, row) => { - if (err) { - throw err; - } - }); - res.sendFile(__dirname + '/results.html'); -}); - //Index page app.get('/', function(req, res){ res.sendFile(__dirname + '/index.html'); @@ -191,47 +168,48 @@ app.get('/processor', function(req, res) { else { console.log(pro_ip); - var new_ip = activeJobs.peek(); - db.each('Select c_frames frme, frames tfrmes from Jobs where IP = ?', [new_ip], (err, row) => { + db.each('Select c_frames frme, frames tfrmes from Jobs where IP = ?', [activeJobs.peek()], (err, row) => { if (err) { throw err; } - var frme = currentframe.get(new_ip); - currentframe.set(new_ip, frme+1); - activeclients.set(pro_ip,new_ip); - res.render('ObjDect',{user: "http://"+local_ip+":3000/process", title: new_ip, frame : frme, obj : object }); - console.log(frme); + activeclients.set(pro_ip,activeJobs.peek()); if (row.frme + 1 > row.tfrmes) { - if(activeJobs.peek()==new_ip) - completedJobs.enqueue(activeJobs.dequeue()); - db.each('DELETE From Jobs Where IP = ?', [new_ip], (err, row) => { + db.each('DELETE From Jobs Where IP = ?', [activeJobs.peek()], (err, row) => { if (err) { throw err; } }); - if(new_ip!=null) { - db.each('Insert or Replace into Results(IP,frame) VALUES(?,0)', [new_ip], (err, row) => { - if (err) { - throw err; - } - }); - } + db.each('Insert or Replace into Results(IP,frame) VALUES(?,0)', [row.ip], (err, row) => { + if (err) { + throw err; + } + }); + if(activeJobs.peek()==row.ip)completedJobs.enqueue(activeJobs.dequeue()); } else { - db.each('Update Jobs SET c_frames = ? where IP = ?', [frme + 1, new_ip], (err, row) => { + db.each('Update Jobs SET c_frames = ? where IP = ?', [row.frme + 1, activeJobs.peek()], (err, row) => { if (err) { throw err; } }); } - db.each('Insert or Replace into Clients(C_IP, S_IP,frame) VALUES(?,?,?)', [req.ip,new_ip,frme], (err, row) => { + db.each('Insert or Replace into Clients(C_IP, S_IP,frame) VALUES(?,?,?)', [req.ip,activeJobs.peek(),row.frme], (err, row) => { if (err) { throw err; } }); /*res.sendFile(__dirname + '/uploads/Frames/' + activeJobs.peek() + '/' + activeJobs.peek() + '-' + row.frme + '.jpg');*/ - console.log('Frame: ' + frme); + console.log('Frame: ' + row.frme); + + }); + db.each('Select c_frames frme, object obj from Jobs where IP = ?', [activeJobs.peek()], (err, row) => { + if (err) { + throw err; + } + res.render('ObjDect',{user: "http://"+local_ip+":3000/process", title: activeJobs.peek(), frame : row.frme}); + console.log(row.frme); }); + } }); @@ -331,6 +309,7 @@ app.get('/delete', function(req, res){ waiting_ip=req.ip; rmdir.sync(local_path+'/uploads/Frames/'+waiting_ip); rmdir.sync(local_path+'/uploads/ImageUploads/'+ waiting_ip + '.jpeg'); + rmdir.sync(local_path+'/uploads/VideoUploads/'+ waiting_ip + '.mp4'); res.sendFile(__dirname + '/index.html'); });