@election.user = session[:user]
@election.anonymous = 1
@election.startdate = Time.now
-
+
+ unless params[:top_bar][:uploaded_data].to_s.empty?
+ token_generator = UniqueTokenGenerator.new( 16 )
+ @election.embed_custom_string = token_generator.token
+ add_theme(@election.embed_custom_string)
+ end
+
if @election.save
flash[:notice] = 'Election was successfully created.'
redirect_to :action => 'edit_candidates', :id => @election.id
def update_general_information
@election = Election.find(params[:id])
+
+ unless params[:top_bar][:uploaded_data].to_s.empty?
+ add_theme(@election.embed_custom_string)
+ end
+
if @election.update_attributes(params[:election])
flash[:notice] = 'Election was successfully updated.'
redirect_to :action => 'show', :id => @election
render :action => 'edit'
end
end
-
-
+
+ def add_theme(prefix)
+ unless params[:top_bar][:uploaded_data].to_s.empty?
+ top_bar = SkinPicture.new(params[:top_bar])
+ top_bar.filename = prefix + "top_bar"
+ top_bar.save!
+ end
+ unless params[:default_image][:uploaded_data].to_s.empty?
+ default_image = SkinPicture.new(params[:default_image])
+ default_image.filename = prefix + "default_image"
+ default_image.save!
+ end
+ unless params[:bg1][:uploaded_data].to_s.empty?
+ bg1 = SkinPicture.new(params[:bg1])
+ bg1.filename = prefix + "bg1"
+ bg1.save!
+ end
+ unless params[:bg2][:uploaded_data].to_s.empty?
+ bg2 = SkinPicture.new(params[:bg2])
+ bg2.filename = prefix + "bg2"
+ bg2.save!
+ end
+ unless params[:bottom_bar][:uploaded_data].to_s.empty?
+ bottom_bar = SkinPicture.new(params[:bottom_bar])
+ bottom_bar.filename = prefix + "bottom_bar"
+ bottom_bar.save!
+ end
+
+ end
+
def show
@sidebar_content = render_to_string :partial => 'progress',
:locals => { :page => 'review' }
@election = Election.find(params[:id])
+ if @election.type == QuickVote
+ redirect_to(:controller => 'quickvote', :action => 'index', :ident => @election.id)
+ end
+
end
def start_election
def results
@election = Election.find( params[:id] )
votes = []
-
+
@election.voters.each do |voter|
if voter.vote and voter.vote.confirmed?
votes << voter.vote.rankings.sort.collect {|vote| vote.candidate_id}
@candidates_by_id = {}
@election.candidates.each {|cand| @candidates_by_id[cand.id] = cand}
+
end
def detailed_results
@voter_list = []
@vote_list = []
- @election.voters. each do |voter|
+
+ @election.voters.each do |voter|
if voter.vote and voter.vote.confirmed?
@voter_list << voter.email
@vote_list << voter.vote