X-Git-Url: https://projects.mako.cc/source/selectricity/blobdiff_plain/c5fda1e5174238779afd496014379d6446d1e3c1..34fe63727a8929d7e9c529feee1f0c1e827acdfa:/app/models/vote.rb?ds=sidebyside diff --git a/app/models/vote.rb b/app/models/vote.rb index 82f34a9..014899d 100644 --- a/app/models/vote.rb +++ b/app/models/vote.rb @@ -36,11 +36,16 @@ class Vote < ActiveRecord::Base destroy_rankings self.votes.each_with_index do |candidate, index| ranking = Ranking.new - ranking.rank = index + 1 + ranking.rank = index ranking.candidate = Candidate.find(candidate) self.rankings << ranking end end + + def destroy + self.destroy_rankings + super + end def destroy_rankings rankings.each { |ranking| ranking.destroy } @@ -49,18 +54,16 @@ class Vote < ActiveRecord::Base def confirm! self.confirmed = 1 self.save - - token.destroy and token.reload if token - self.token = Token.new - self.save + + unless self.voter.election.quickvote? + token.destroy and token.reload if token + self.token = Token.new + self.save + end end def confirm? - if confirm == 1 - return true - else - return false - end + confirmed == 1 end def votestring=(string="") @@ -73,4 +76,8 @@ class Vote < ActiveRecord::Base self.votes = rel_votes.collect { |vote| candidate_ids[ vote - 1 ] } end + def votestring + self.votes.join("") + end + end