X-Git-Url: https://projects.mako.cc/source/selectricity/blobdiff_plain/b9f3bbdefb7bb1abd63193e2162aae1e78e1a1cb..c49bd887561c4ee07feef7e6e8d25b6a3f15b5b7:/app/controllers/voter_controller.rb diff --git a/app/controllers/voter_controller.rb b/app/controllers/voter_controller.rb index 779e83f..6693b0f 100644 --- a/app/controllers/voter_controller.rb +++ b/app/controllers/voter_controller.rb @@ -1,29 +1,24 @@ class VoterController < ApplicationController layout 'main' - model :voter - model :vote - model :election + require_dependency "voter" + require_dependency "vote" + require_dependency "election" def index password = params[:id] password = params[:vote][:password] if params[:vote] - if @voter = FullVoter.find_all( [ "password = ?", password ] )[0] - render :action => 'fullvote' + if @voter = FullVoter.find(:all, :conditions => [ "password = ?", password ] )[0] + @voter.vote = Vote.new if @voter.vote.nil? + @voter.vote.set_defaults! if @voter.vote.rankings.empty? + render :action => 'full_vote' end end def review if authenticate - # remove any existing votes and reload - if @voter.vote - @voter.vote.destroy - @voter.reload - end - - @vote = Vote.new - @voter.vote = @vote - @vote.votestring = params[:vote][:votestring] - @vote.save + @voter.vote.time = Time.now + @voter.vote.save + @voter.reload else redirect_to :action => 'index' end @@ -41,7 +36,7 @@ class VoterController < ApplicationController private def authenticate password = params[:id] - @voter = FullVoter.find_all( [ "password = ?", password ] )[0] + @voter = FullVoter.find(:all, :conditions => [ "password = ?", password ] )[0] end end