Sha256: 9262c4292ae19376dc78fc3751637b20042ff72b83cf303a6969df436fab8ea9

Contents?: true

Size: 819 Bytes

Versions: 4

Compression:

Stored size: 819 Bytes

Contents

module AdministrateExportable
  module Exporter
    extend ActiveSupport::Concern

    included do
      exportable
    end

    class_methods do
      def exportable
        define_method(:export) do
          search_term = params[:search].to_s.strip
          resources = Administrate::Search.new(scoped_resource,
                                               dashboard,
                                               search_term).run
          resources = apply_collection_includes(resources)
          resources = order.apply(resources)

          csv_data = ExporterService.csv(dashboard, resource_class, resources)

          respond_to do |format|
            format.csv { send_data csv_data, filename: "#{resource_name.to_s.pluralize}-#{Date.today}.csv" }
          end
        end
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
administrate_exportable-0.6.3 lib/administrate_exportable/exporter.rb
administrate_exportable-0.6.2 lib/administrate_exportable/exporter.rb
administrate_exportable-0.6.1 lib/administrate_exportable/exporter.rb
administrate_exportable-0.6.0 lib/administrate_exportable/exporter.rb