X-Git-Url: https://projects.mako.cc/source/selectricity/blobdiff_plain/f7aee769411a893c1059c529a220c0d25c72974f..5637ec97922038fa7a7cfe9f8aa13b1e3002abcd:/app/controllers/application.rb?ds=inline diff --git a/app/controllers/application.rb b/app/controllers/application.rb index 7462619..bdd11e8 100644 --- a/app/controllers/application.rb +++ b/app/controllers/application.rb @@ -1,9 +1,47 @@ -# Filters added to this controller will be run for all controllers in the application. -# Likewise, all the methods added will be available for all controllers. -require 'login_engine' +# Selectricity: Voting Machinery for the Masses +# Copyright (C) 2007, 2008 Benjamin Mako Hill +# Copyright (C) 2007 Massachusetts Institute of Technology +# +# This program is free software. Please see the COPYING file for +# details. + +# Filters added to this controller will be run for all controllers in +# the application. Likewise, all the methods added will be available +# for all controllers. class ApplicationController < ActionController::Base - include LoginEngine + include AuthenticatedSystem helper :user - model :user + require_dependency "user" + + include Sitealizer + before_filter :add_stylesheets + #before_filter :use_sitealizer + + def initialize + @stylesheets = [] + + + # this is defined is a sketchy way in the sitealizer mixin + # initalize. since i'm overloading that, i'm calling it here + $visits = [] unless $visits + end + + def add_stylesheets + file = "#{Dir.pwd}/public/stylesheets/#{controller_name}.css" + if File.exists? file + @stylesheets << controller_name + end + end + + #both election_controller and quickvote_controller need this method + def sort_candidates + @vote = Vote.find(params[:id]) + + @vote.rankings.each do |ranking| + ranking.rank = params['rankings-list'].index(ranking.candidate.id.to_s) + 1 + ranking.save + end + render :nothing => true + end end