class VoterController < ApplicationController
- model :voter
- model :vote
- model :election
+ layout 'main'
+ require_dependency "voter"
+ require_dependency "vote"
+ require_dependency "election"
def index
password = params[:id]
password = params[:vote][:password] if params[:vote]
- if @voter = Voter.find_all( [ "password = ?", password ] )[0]
- render :action => 'vote'
+ 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
private
def authenticate
password = params[:id]
- @voter = Voter.find_all( [ "password = ?", password ] )[0]
+ @voter = FullVoter.find(:all, :conditions => [ "password = ?", password ] )[0]
end
end
+