summaryrefslogtreecommitdiff
path: root/bucky/app/bucky.js
diff options
context:
space:
mode:
Diffstat (limited to 'bucky/app/bucky.js')
-rw-r--r--bucky/app/bucky.js40
1 files changed, 39 insertions, 1 deletions
diff --git a/bucky/app/bucky.js b/bucky/app/bucky.js
index 49ad8e0..ce02b24 100644
--- a/bucky/app/bucky.js
+++ b/bucky/app/bucky.js
@@ -184,6 +184,27 @@ var bucky = module.exports = {
/* COMMENTS */
+ ensureComment: function (req, res, next){
+ var id = req.params.id.replace(/\D/g, "")
+ if (! id) {
+ return res.sendStatus(404)
+ }
+ db.getCommentById(id).then(function(comment){
+ if (comment) {
+ res.comment = comment
+ next()
+ }
+ else {
+ res.sendStatus(404)
+ }
+ })
+ },
+ checkCommentPrivacy: function(req, res, next) {
+ if (req.user.get('ulevel') !== 3 && req.user.get('username') !== res.comment.get('username')) {
+ return res.sendStatus(500)
+ }
+ next()
+ },
createOptionalComment: function(req, res, next){
if (! req.body.comment || ! req.body.comment.length) {
return next()
@@ -207,7 +228,24 @@ var bucky = module.exports = {
next()
})
},
-
+ updateComment: function(req, res, next){
+ if (! req.body.comment || ! req.body.comment.length) {
+ return res.sendStatus(500)
+ }
+ res.comment.set('comment', req.body.comment)
+ res.comment.set('date', util.now())
+ res.comment.save().then(next).catch(err => {
+ res.sendStatus(500)
+ })
+ },
+ destroyComment: function(req, res, next){
+ res.comment.destroy().then(() => {
+ next()
+ }).catch(err => {
+ res.send(500)
+ })
+ },
+
/* FILES */
createOptionalFiles: function(req, res, next){