aboutsummaryrefslogtreecommitdiff
path: root/controllers/uploadController.js
diff options
context:
space:
mode:
authorPitu <[email protected]>2017-01-20 03:28:26 -0300
committerPitu <[email protected]>2017-01-20 03:28:26 -0300
commitbae03cdc25e0d52c4e2ca628d21eed0ca63a5c60 (patch)
treeb69f45ccdfa6f100df00a0060528dfd31255f0fe /controllers/uploadController.js
parentAlbum delete WIP (diff)
downloadhost.fuwn.me-bae03cdc25e0d52c4e2ca628d21eed0ca63a5c60.tar.xz
host.fuwn.me-bae03cdc25e0d52c4e2ca628d21eed0ca63a5c60.zip
File delete, album delete and album rename. Sugoooi!
Diffstat (limited to 'controllers/uploadController.js')
-rw-r--r--controllers/uploadController.js35
1 files changed, 32 insertions, 3 deletions
diff --git a/controllers/uploadController.js b/controllers/uploadController.js
index 87b3ab6..af9f592 100644
--- a/controllers/uploadController.js
+++ b/controllers/uploadController.js
@@ -4,7 +4,7 @@ const multer = require('multer')
const randomstring = require('randomstring')
const db = require('knex')(config.database)
//const crypto = require('crypto')
-//const fs = require('fs')
+const fs = require('fs')
let uploadsController = {}
@@ -94,11 +94,40 @@ uploadsController.upload = function(req, res, next){
})
})
- })
+ }).catch(function(error) { console.log(error); res.json({success: false, description: 'error'}) })
})
}
+uploadsController.delete = function(req, res){
+
+ if(req.headers.auth !== config.adminToken)
+ return res.status(401).json({ success: false, description: 'not-authorized'})
+
+ let id = req.body.id
+ if(id === undefined || id === '')
+ return res.json({ success: false, description: 'No file specified' })
+
+ db.table('files').where('id', id).then((file) => {
+
+ fs.stat('./' + config.uploads.folder + '/' + file[0].name, function (err, stats) {
+
+ if (err) { return res.json({ success: false, description: err.toString() }) }
+
+ fs.unlink('./' + config.uploads.folder + '/' + file[0].name, function(err){
+ if (err) { return res.json({ success: false, description: err.toString() }) }
+
+ db.table('files').where('id', id).del().then(() =>{
+ return res.json({ success: true })
+ }).catch(function(error) { console.log(error); res.json({success: false, description: 'error'}) })
+
+ })
+ })
+
+ }).catch(function(error) { console.log(error); res.json({success: false, description: 'error'}) })
+
+}
+
uploadsController.list = function(req, res){
if(req.headers.auth !== config.adminToken)
@@ -141,7 +170,7 @@ uploadsController.list = function(req, res){
})
})
- })
+ }).catch(function(error) { console.log(error); res.json({success: false, description: 'error'}) })
}
module.exports = uploadsController \ No newline at end of file