X-Git-Url: https://projects.mako.cc/source/selectricity/blobdiff_plain/05ebed925ae2b5e7bf2a599536ba7d7ac15ffbf7..ad088c1324d08a65f6f5336bedf7a88a8a8950e7:/app/controllers/sparklines_controller.rb diff --git a/app/controllers/sparklines_controller.rb b/app/controllers/sparklines_controller.rb index d08bbc5..50a330f 100644 --- a/app/controllers/sparklines_controller.rb +++ b/app/controllers/sparklines_controller.rb @@ -1,61 +1,30 @@ -# Selectricity: Voting Machinery for the Masses -# Copyright (C) 2007, 2008 Benjamin Mako Hill -# Copyright (C) 2007 Massachusetts Institute of Technology + +# Handles requests for sparkline graphs. # -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU Affero General Public License as -# published by the Free Software Foundation, either version 3 of the -# License, or (at your option) any later version. +# You shouldn't need to edit or extend this, but you can read +# the documentation for SparklinesHelper to see how to call it from +# another view. # -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# Affero General Public License for more details. +# AUTHOR +# +# Geoffrey Grosenbach[mailto:boss@topfunky.com] +# +# http://topfunky.com # -# You should have received a copy of the GNU Affero General Public -# License along with this program. If not, see -# . - class SparklinesController < ApplicationController - # Handles requests for sparkline graphs from views. - # - # Params are generated by the sparkline_tag helper method. - # - def index - # Make array from comma-delimited list of data values - ary = [] - if params.has_key?('results') && !params['results'].nil? - params['results'].split(',').each do |s| - ary << s.to_i - end - end + layout nil + + def index + # Make array from comma-delimited list of data values + ary = [] + params['results'].split(',').each do |s| + ary << s.to_i + end + + send_data( Sparklines.plot( ary, params ), + :disposition => 'inline', + :type => 'image/png', + :filename => "spark_#{params[:type]}.png" ) + end - send_data( Sparklines.plot( ary, params ), - :disposition => 'inline', - :type => 'image/png', - :filename => "spark_#{params[:type]}.png" ) - end - - def spark_pie - send_data(Sparklines.plot( )) - end - # Use this type of method for sparklines that can be cached. (Doesn't work with the helper.) - # - # To make caching easier, add a line like this to config/routes.rb: - # map.sparklines "sparklines/:action/:id/image.png", :controller => "sparklines" - # - # Then reference it with the named route: - # image_tag sparklines_url(:action => 'show', :id => 42) - def show - send_data(Sparklines.plot( - [42, 37, 89, 74, 70, 50, 40, 30, 40, 50], - :type => 'bar', :above_color => 'orange' - ), - :disposition => 'inline', - :type => 'image/png', - :filename => "sparkline.png") - end - - - end