Sha256: fcb67b4010e62654bfbc0ce88caf798c3f9fd2b45119d00aeae607dce31d6362

Contents?: true

Size: 997 Bytes

Versions: 3

Compression:

Stored size: 997 Bytes

Contents

# frozen_string_literal: true
require_relative "../../component"

module ActiveAdmin
  module BatchActions
    # Build a BatchActionForm
    class BatchActionForm < ActiveAdmin::Component
      def build(options = {}, &block)
        options[:id] ||= "collection_selection"

        # Open a form with two hidden input fields:
        # batch_action        => name of the specific action called
        # batch_action_inputs => a JSON string of any requested confirmation values
        text_node form_tag active_admin_config.route_batch_action_path(params, url_options), id: options[:id]
        input name: :batch_action, id: :batch_action, type: :hidden
        input name: :batch_action_inputs, id: :batch_action_inputs, type: :hidden

        super(options)
      end

      # Override the default to_s to include a closing form tag
      def to_s
        content + closing_form_tag
      end

      private

      def closing_form_tag
        "</form>".html_safe
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
activeadmin-4.0.0.beta15 lib/active_admin/batch_actions/views/batch_action_form.rb
activeadmin-4.0.0.beta14 lib/active_admin/batch_actions/views/batch_action_form.rb
activeadmin-4.0.0.beta13 lib/active_admin/batch_actions/views/batch_action_form.rb