Module: ALaChart::InstanceMethods

Includes:
HelperMethods
Defined in:
lib/a_la_chart/a_la_chart.rb

Instance Method Summary collapse

Methods included from HelperMethods

#data, #meta, #set_chart, #value

Instance Method Details

#provide_chart_dataObject



50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
# File 'lib/a_la_chart/a_la_chart.rb', line 50

def provide_chart_data
  chart_make = params[:cm]
  chart_type = params[:ct]
  
  chart_type_config, chart_make_version = nil, nil
  if !chart_make.nil? && (chart_make_config = ALaChart::Config[chart_make])
    chart_make_version = chart_make_version || chart_make_config[:default]
    chart_make_config = chart_make_version.nil? ? nil : chart_make_config[chart_make_version.to_sym]
    chart_type_config = chart_make_config.nil? || chart_type.nil? ? nil : chart_make_config[chart_type.to_sym]
  end
  
  return if chart_type_config.nil? || !respond_to?("set_chart_#{chart_type}")
  
  respond_to do |format|
    format.chartxml  { render_style(chart_make, chart_type, chart_make_version, chart_type_config) }
    format.chartjs   { render_style(chart_make, chart_type, chart_make_version, chart_type_config) }
    format.chartjson { render_style(chart_make, chart_type, chart_make_version, chart_type_config) }
  end
end