Major commit adding about information and more before site goes live.
[selectricity-live] / app / controllers / application.rb
index aeb2204f38ef75015b229032463114d7975330be..01722e6b3507c63c56d6818cdc6d243c3a8fc687 100644 (file)
@@ -1,14 +1,24 @@
-# 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.
+# 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
+  # add authentication methods and hooks
   include AuthenticatedSystem
   helper :user
   require_dependency "user"
-  before_filter :add_stylesheets
+
+  # add sitealizer statistics and tracking information
+  include Sitealizer
+  
+  before_filter :use_sitealizer, :add_stylesheets
    
   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
@@ -18,4 +28,14 @@ class ApplicationController < ActionController::Base
     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

Benjamin Mako Hill || Want to submit a patch?