Sha256: d673d03eb5184f3cec536243da04b8e2b4393b145b81a3ff897b853121629f7b

Contents?: true

Size: 892 Bytes

Versions: 38

Compression:

Stored size: 892 Bytes

Contents

module ForestLiana
  class StatsController < ForestLiana::ApplicationController
    before_filter :find_resource

    def show
      case params[:type].try(:downcase)
      when 'value'
        stat = ValueStatGetter.new(@resource, params)
      when 'pie'
        stat = PieStatGetter.new(@resource, params)
      when 'line'
        stat = LineStatGetter.new(@resource, params)
      end

      stat.perform
      if stat.record
        render json: serialize_model(stat.record), serializer: nil
      else
        render json: {status: 404}, status: :not_found, serializer: nil
      end
    end

    private

    def find_resource
      @resource = SchemaUtils.find_model_from_table_name(params[:collection])

      if @resource.nil? || !@resource.ancestors.include?(ActiveRecord::Base)
        render json: {status: 404}, status: :not_found, serializer: nil
      end
    end
  end
end

Version data entries

38 entries across 38 versions & 1 rubygems

Version Path
forest_liana-1.3.47 app/controllers/forest_liana/stats_controller.rb
forest_liana-1.3.46 app/controllers/forest_liana/stats_controller.rb
forest_liana-1.3.45 app/controllers/forest_liana/stats_controller.rb
forest_liana-1.3.44 app/controllers/forest_liana/stats_controller.rb
forest_liana-1.3.43 app/controllers/forest_liana/stats_controller.rb
forest_liana-1.3.42 app/controllers/forest_liana/stats_controller.rb
forest_liana-1.3.41 app/controllers/forest_liana/stats_controller.rb
forest_liana-1.3.40 app/controllers/forest_liana/stats_controller.rb
forest_liana-1.3.39 app/controllers/forest_liana/stats_controller.rb
forest_liana-1.3.38 app/controllers/forest_liana/stats_controller.rb
forest_liana-1.3.37 app/controllers/forest_liana/stats_controller.rb
forest_liana-1.3.36 app/controllers/forest_liana/stats_controller.rb
forest_liana-1.3.35 app/controllers/forest_liana/stats_controller.rb
forest_liana-1.3.34 app/controllers/forest_liana/stats_controller.rb
forest_liana-1.3.33 app/controllers/forest_liana/stats_controller.rb
forest_liana-1.3.32 app/controllers/forest_liana/stats_controller.rb
forest_liana-1.3.31 app/controllers/forest_liana/stats_controller.rb
forest_liana-1.3.30 app/controllers/forest_liana/stats_controller.rb
forest_liana-1.3.29 app/controllers/forest_liana/stats_controller.rb
forest_liana-1.3.28 app/controllers/forest_liana/stats_controller.rb