Sha256: 67f0bbe8cef43ec6b10a0cfdb203d160a6182326a3be661ac8c673e8d03c23dd

Contents?: true

Size: 850 Bytes

Versions: 4

Compression:

Stored size: 850 Bytes

Contents

module RailsAdminCMS
  def self.config(&block)
    if block_given?
      block.call(RailsAdminCMS::Config)
    else
      RailsAdminCMS::Config
    end
  end

  module Config
    extend self

    attr_writer(
      :parent_controller,
      :parent_mailer,
      :with_paper_trail,
      :custom_form_max_size,
      :with_email_body
    )

    def parent_controller
      @parent_controller || ::ApplicationController
    end

    def parent_mailer
      @parent_mailer || "::ApplicationMailer".safe_constantize || Struct.new(:mailer) {
        def send_email(_form)
          mailer
        end
      }.new(Struct.new(:deliver_now).new(nil))
    end

    def with_paper_trail?
      @with_paper_trail
    end

    def custom_form_max_size
      @custom_form_max_size || 20
    end

    def with_email_body?
      @with_email_body
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
rails_admin_cms-0.0.4 lib/rails_admin_cms/config.rb
rails_admin_cms-0.0.3 lib/rails_admin_cms/config.rb
rails_admin_cms-0.0.2 lib/rails_admin_cms/config.rb
rails_admin_cms-0.0.1 lib/rails_admin_cms/config.rb