diff options
Diffstat (limited to 'routes/user.js')
| -rw-r--r-- | routes/user.js | 42 |
1 files changed, 39 insertions, 3 deletions
diff --git a/routes/user.js b/routes/user.js index 849ebb6..40c2721 100644 --- a/routes/user.js +++ b/routes/user.js @@ -42,14 +42,11 @@ router.get('/user_profile', loggedIn, isUser, function(req, res, next) { }; comments.push(obj); comments.push(obj); - } - resolve(1); } else if (object.length){ req.user.comments = object.length; req.user.comment_list = object; - resolve(1); } else { req.user.comments = object.length; @@ -215,6 +212,45 @@ router.get('/user_profile/inbox/:messageCount/:pageNum', loggedIn, isUser, funct }); }); +/** + * Serve comment history for page pageNum with commentCount messages as a JSON object + * comments are sorted by date. + */ +router.get('/user_profile/comments/:commentCount/:pageNum', loggedIn, isUser, function(req, res, next) { + var commentList = []; + var commentCount = 0; + + function getComments() { + return new Promise(function(resolve, reject) { + dbFile.retrieve_userComments_history(req.user.user_name, function (success, object) { + if (!success) { + // Set status code to client error 400 + res.writeHead(400, {"Content-Type": "application/json"}); + console.log('No comments found'); + resolve(1); + } else { + if (object.length){ + commentList = object; + } + commentCount = object.length; + res.writeHead(200, {"Content-Type": "application/json"}); + resolve(1); + } + }); + }); + } + + getComments().then(function (data) { + var commentBox = { + commentList : commentList, + commentCount : commentCount + }; + var commentBoxJSON = JSON.stringify(commentBox); + res.end(commentBoxJSON); + }); + +}); + router.get('/resetPassword', loggedOut, function(req, res, next) { res.render('reset_password', {csrfToken: req.csrfToken(), success: req.session.success, errors: req.session.errors}); req.session.errors = null; |
