class VoterController < ApplicationController
+ layout 'vb'
model :voter
model :vote
model :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( [ "password = ?", password ] )[0]
+ render :action => 'fullvote'
end
end
end
def confirm
- if authenticate
+ if params[:votename]
+ if Voter.find_all( ["session_id = ?", session.session_id ])[0]
+ flash[:notice] = "You have already voted!"
+ redirect_to quickvote_url( :votename => params[:votename] )
+ else
+ @voter = QuickVoter.new()
+ @voter.election = Election.find_all( [ "name = ?",
+ params[:votename] ] )[0]
+ @voter.session_id = session.session_id
+ @voter.save
+ @voter.reload
+
+ @voter.vote = Vote.new
+ @voter.vote.votestring = params[:vote][:votestring]
+ @voter.vote.save
+ @voter.vote.confirm!
+ render :action => 'thanks'
+ end
+
+ elsif authenticate
@voter.vote.confirm!
render :action => 'thanks'
else
end
end
+ def quickvote
+ @voter = QuickVoter.new
+ @voter.election = Election.find_all( [ "name = ?", params[:votename] ] )[0]
+ end
+
private
def authenticate
password = params[:id]
- @voter = Voter.find_all( [ "password = ?", password ] )[0]
+ @voter = FullVoter.find_all( [ "password = ?", password ] )[0]
end
end
+