X-Git-Url: https://projects.mako.cc/source/selectricity-live/blobdiff_plain/fc0a6a8d7ea15bcdb27ebdd58721401c7045c6e0..cfe645440c51b66c088f19e84de650f026cf77f5:/app/controllers/application.rb diff --git a/app/controllers/application.rb b/app/controllers/application.rb old mode 100755 new mode 100644 index 7462619..bdd11e8 --- 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