X-Git-Url: https://projects.mako.cc/source/selectricity/blobdiff_plain/9abed97635edbac7fb1a687298fff5c5434cdff4..b9f3bbdefb7bb1abd63193e2162aae1e78e1a1cb:/app/controllers/voter_controller.rb diff --git a/app/controllers/voter_controller.rb b/app/controllers/voter_controller.rb index 2ceb42b..779e83f 100644 --- a/app/controllers/voter_controller.rb +++ b/app/controllers/voter_controller.rb @@ -1,25 +1,47 @@ class VoterController < ApplicationController + layout 'main' model :voter model :vote model :election def index password = params[:id] - @voter = Voter.find_all( [ "password = ?", password ] )[0] + password = params[:vote][:password] if params[:vote] + if @voter = FullVoter.find_all( [ "password = ?", password ] )[0] + render :action => 'fullvote' + end end def review - password = params[:id] - @voter = Voter.find_all( [ "password = ?", password ] )[0] + if authenticate + # remove any existing votes and reload + if @voter.vote + @voter.vote.destroy + @voter.reload + end - # destroy the old vote if that's what we need to do - @voter.vote.destroy if @voter.vote - @voter.reload + @vote = Vote.new + @voter.vote = @vote + @vote.votestring = params[:vote][:votestring] + @vote.save + else + redirect_to :action => 'index' + end + end - @voter.vote = Vote.new - @voter.vote.votestring = params[:vote][:votestring] - @voter.vote.save - render_text "success" + def confirm + if authenticate + @voter.vote.confirm! + render :action => 'thanks' + else + redirect_to :action => 'index' + end end + private + def authenticate + password = params[:id] + @voter = FullVoter.find_all( [ "password = ?", password ] )[0] + end end +