diff --git a/controllers/story.js b/controllers/story.js index a76fd6e820..2d7ae904e3 100644 --- a/controllers/story.js +++ b/controllers/story.js @@ -139,7 +139,18 @@ exports.returnIndividualStory = function(req, res, next) { return res.redirect('../stories/' + dashedNameFull); } - res.render('stories/index', { + var userVoted = false; + try { + var votedObj = story.upVotes.filter(function(a){ + return a['upVotedByUsername'] === req.user['profile']['username']; + }) + if (votedObj.length > 0){ + userVoted = true; + } + } catch(err){ + userVoted = false; + } + res.render('stories/index', { title: story.headline, link: story.link, author: story.author, @@ -152,7 +163,8 @@ exports.returnIndividualStory = function(req, res, next) { timeAgo: moment(story.timePosted).fromNow(), image: story.image, page: 'show', - storyMetaDescription: story.metaDescription + storyMetaDescription: story.metaDescription, + hasUserVoted: userVoted }); }); }; diff --git a/public/js/main.js b/public/js/main.js index 2bbd295da7..8c9191db93 100644 --- a/public/js/main.js +++ b/public/js/main.js @@ -126,6 +126,7 @@ $(document).ready(function() { }); var upvoteHandler = function () { + $(".ion-arrow-up-b").hide(); var _id = storyId; $('#upvote').unbind('click'); var alreadyUpvoted = false; diff --git a/views/stories/show.jade b/views/stories/show.jade index 52e049b5f9..a05ec900dc 100644 --- a/views/stories/show.jade +++ b/views/stories/show.jade @@ -6,6 +6,7 @@ var upVotes = !{JSON.stringify(upVotes)}; var user = !{JSON.stringify(user)}; var image = !{JSON.stringify(image)}; + var hasUserVoted = !{JSON.stringify(hasUserVoted)}; .spacer h3.row @@ -13,8 +14,9 @@ .col-xs-3.col-sm-1.text-center .row.negative-5 .col-xs-12.big-ion-up-arrow - a#upvote - i.ion-arrow-up-b + if !hasUserVoted + a#upvote + i.ion-arrow-up-b h3.story-up-votes span#storyRank= rank .col-xs-2.col-sm-1