diff options
| author | nanalelfe <nargiza.nosirova@mail.utoronto.ca> | 2016-07-26 01:49:05 +0000 |
|---|---|---|
| committer | nanalelfe <nargiza.nosirova@mail.utoronto.ca> | 2016-07-26 01:49:05 +0000 |
| commit | 203071f005057ebb186ddd3e0ada8629420ed409 (patch) | |
| tree | 7ac20e7fda8f9f3ca5d00ceee140e9701d44dcf7 /routes/user.js | |
| parent | 0d8073039faa903ee0f12e68064c89b5f27cdf14 (diff) | |
Added add_user: extra check if username is taken by an admin (and nice versa). Fixed Answered, Inbox and comments fields in user_profile
Diffstat (limited to 'routes/user.js')
| -rw-r--r-- | routes/user.js | 81 |
1 files changed, 56 insertions, 25 deletions
diff --git a/routes/user.js b/routes/user.js index e3340e0..47988df 100644 --- a/routes/user.js +++ b/routes/user.js @@ -25,6 +25,7 @@ router.get('/user_profile', loggedIn, isUser, function(req, res, next) { var comments = []; var inbox = []; + var error = null; function getComments() { return new Promise(function(resolve, reject) { dbFile.retrieve_userComments_history(req.user.user_name, function (success, object) { @@ -47,9 +48,11 @@ router.get('/user_profile', loggedIn, isUser, function(req, res, next) { resolve(1); } else if (object.length){ + req.user.comments = object.length; comments = object; resolve(1); } else { + req.user.comments = object.length; resolve(1); } @@ -62,6 +65,7 @@ router.get('/user_profile', loggedIn, isUser, function(req, res, next) { dbFile.checkMailbox(req.user.user_name, function(success, error, data, message){ if (success) { inbox = data; + req.user.messages = inbox.length; // needed to display in layout var i = 0; inbox.forEach(function(element) { @@ -88,9 +92,28 @@ router.get('/user_profile', loggedIn, isUser, function(req, res, next) { }); }); } - getComments().then(getMail).then(function (data) { + + function solutionsCount() { + return new Promise(function (resolve, reject) { + dbFile.retrieve_userSolutions_history(req.user.username, function (bool, results) { + if (!bool) { + error = 'Error: could not retrieve Answered count'; + req.user.answered = 0; + resolve(1); + } + else { + req.user.answered = results.length; + console.log("RESULTS: "); + console.log(results); + resolve(1); + } + }); + }); + } + + getComments().then(getMail).then(solutionsCount).then(function (data) { console.log('got here fere'); - res.render('user_profile_alt', {comments : comments, inbox: inbox, csrfToken: req.csrfToken()}); + res.render('user_profile_alt', {comments : comments, inbox: inbox, error: error, csrfToken: req.csrfToken()}); }); //res.render('user_profile_alt', {comments : comments, inbox: inbox, csrfToken: req.csrfToken()}); @@ -171,35 +194,43 @@ router.post('/signin', loggedOut, function(req, res, next) { }); router.post('/user_profile/send_message', loggedIn, function(req, res, next) { - var date = new Date(); - var current_date = date.toString().slice(0, 24); - var subject = req.body.subject; - if (!subject) { - subject = '(none)'; + if (req.user.user_name === req.body.receiver_username) { + req.session.messages = {error : 'You cannot send a message to yourself.'}; + res.redirect('/user/user_profile/'); } - var mail_data = { - sender: req.user.user_name, - receiver: req.body.receiver_username, - subject: subject, - message: req.body.message, - date: current_date - }; - //console.log(mail_data); - dbFile.sendMail(mail_data, function(success, error, message) { - if ((!success && !error) || (error)) { - req.session.messages = {error : message}; - res.redirect('/user/user_profile/'); + else { + var date = new Date(); + var current_date = date.toString().slice(0, 24); + var subject = req.body.subject; + if (!subject) { + subject = '(none)'; + } + var mail_data = { + sender: req.user.user_name, + receiver: req.body.receiver_username, + subject: subject, + message: req.body.message, + date: current_date + }; + //console.log(mail_data); + dbFile.sendMail(mail_data, function(success, error, message) { + if ((!success && !error) || (error)) { + req.session.messages = {error : message}; + res.redirect('/user/user_profile/'); - } else { - req.session.messages = {success: message}; - res.redirect('/user/user_profile/'); - $('#profile-send-message').show(); + } else { + req.session.messages = {success: message}; + res.redirect('/user/user_profile/'); + //$('#profile-send-message').show(); - } - }); + + } + }); + + } }); |
