diff options
Diffstat (limited to 'bucky/app')
| -rw-r--r-- | bucky/app/bucky.js | 23 | ||||
| -rw-r--r-- | bucky/app/router.js | 2 |
2 files changed, 5 insertions, 20 deletions
diff --git a/bucky/app/bucky.js b/bucky/app/bucky.js index 15487e2..6ec76a0 100644 --- a/bucky/app/bucky.js +++ b/bucky/app/bucky.js @@ -161,13 +161,13 @@ var bucky = module.exports = { ensureCommentsForThread: function (req, res, next){ db.getCommentsForThread(res.thread.get('id')).then(function(comments){ - res.comments = comments + res.comments = comments || [] next() }) }, ensureFilesForThread: function (req, res, next){ db.getFilesForThread(res.thread.get('id')).then(function(files){ - res.files = files + res.files = files || [] next() }) }, @@ -185,24 +185,7 @@ var bucky = module.exports = { var commentPromises = res.comments.map((comment) => { return comment.destroy() }) - var s3client = upload.client() - var rmPromises = res.files.map((file) => { - return new Promise ((resolve, reject) => { - var thread_id = file.get('thread') - if (! thread_id || ! file.filename) { - console.log("weird malformed file?", file) - return resolve() - } - var filePath = '/bucky/' + thread_id + '/' + file.get('filename') - s3client.deleteFile(filePath, function(err, res){ - // check `err`, then do `res.pipe(..)` or `res.resume()` or whatever. - resolve() - }) - }) - }) - var filePromises = res.files.map((file) => { - return file.destroy() - }) + var filePromises = db.destroyFiles(res.files) var threadPromise = res.thread.destroy() var promises = [ threadPromise ].concat(commentPromises).concat(filePromises) Promise.all(promises).then( () => { diff --git a/bucky/app/router.js b/bucky/app/router.js index 8eb9142..bac5e42 100644 --- a/bucky/app/router.js +++ b/bucky/app/router.js @@ -172,6 +172,8 @@ module.exports = function(app){ middleware.ensureAuthenticated, bucky.ensureThread, bucky.checkThreadPrivacy, + bucky.ensureCommentsForThread, + bucky.ensureFilesForThread, bucky.destroyThread, function(req, res){ res.sendStatus(200) |
