Skip to content

Commit

Permalink
Update votes ferom comments dynamically
Browse files Browse the repository at this point in the history
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
  • Loading branch information
dzaporozhets committed Dec 27, 2013
1 parent 32c7310 commit 00056c8
Show file tree
Hide file tree
Showing 2 changed files with 26 additions and 0 deletions.
4 changes: 4 additions & 0 deletions app/assets/javascripts/notes.js.coffee
Original file line number Diff line number Diff line change
Expand Up @@ -232,6 +232,7 @@ class Notes
###
addNote: (xhr, note, status) =>
@renderNote(note)
@updateVotes()

###
Called in response to the new note form being submitted
Expand Down Expand Up @@ -425,4 +426,7 @@ class Notes
form = $(e.target).closest(".js-discussion-note-form")
@removeDiscussionNoteForm(form)

updateVotes: ->
(new NotesVotes).updateVotes()

@Notes = Notes
22 changes: 22 additions & 0 deletions app/assets/javascripts/notes_votes.js.coffee
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
class NotesVotes
updateVotes: ->
votes = $("#votes .votes")
notes = $("#notes-list .note .vote")

# only update if there is a vote display
if votes.size()
upvotes = notes.filter(".upvote").size()
downvotes = notes.filter(".downvote").size()
votesCount = upvotes + downvotes
upvotesPercent = (if votesCount then (100.0 / votesCount * upvotes) else 0)
downvotesPercent = (if votesCount then (100.0 - upvotesPercent) else 0)

# change vote bar lengths
votes.find(".bar-success").css "width", upvotesPercent + "%"
votes.find(".bar-danger").css "width", downvotesPercent + "%"

# replace vote numbers
votes.find(".upvotes").text votes.find(".upvotes").text().replace(/\d+/, upvotes)
votes.find(".downvotes").text votes.find(".downvotes").text().replace(/\d+/, downvotes)

@NotesVotes = NotesVotes

0 comments on commit 00056c8

Please sign in to comment.