We were very inconsistent regarding these rules. Personally I prefer no empty lines around blocks, clases, etc... as recommended by the Ruby style guide [1], and they're the default values in rubocop, so those are the settings I'm applying. The exception is the `private` access modifier, since we were leaving empty lines around it most of the time. That's the default rubocop rule as well. Personally I don't have a strong preference about this one. [1] https://rubystyle.guide/#empty-lines-around-bodies
30 lines
696 B
Ruby
30 lines
696 B
Ruby
module VotesHelper
|
|
def debate_percentage_of_likes(debate)
|
|
debate.likes.percent_of(debate.total_votes)
|
|
end
|
|
|
|
def votes_percentage(vote, debate)
|
|
return "0%" if debate.total_votes == 0
|
|
if vote == "likes"
|
|
debate_percentage_of_likes(debate).to_s + "%"
|
|
elsif vote == "dislikes"
|
|
(100 - debate_percentage_of_likes(debate)).to_s + "%"
|
|
end
|
|
end
|
|
|
|
def css_classes_for_vote(votes, votable)
|
|
case votes[votable.id]
|
|
when true
|
|
{ in_favor: "voted", against: "no-voted" }
|
|
when false
|
|
{ in_favor: "no-voted", against: "voted" }
|
|
else
|
|
{ in_favor: "", against: "" }
|
|
end
|
|
end
|
|
|
|
def voted_for?(votes, votable)
|
|
votes[votable.id]
|
|
end
|
|
end
|