Sha256: 4cd13056588bde4eae363f7ddfeb542a210d315b5eee85ddfbd0a5b0d39e94be

Contents?: true

Size: 1.15 KB

Versions: 1

Compression:

Stored size: 1.15 KB

Contents

require 'rails_admin'
module Enjoy::RailsAdminGroupPatch
  class << self
    def enjoy_cms_group(config, fields = {})
      return unless fields

      if fields.is_a?(Array)
        fields.each do |_group|
          config.group (_group[:name] || :default) do
            active (_group[:active] || false)
            label _group[:label] if _group[:label].present?
            help _group[:help] if _group[:help].present?
            weight _group[:weight] if _group[:weight].present?
            (_group[:fields] || {}).each_pair do |name, type|
              if type.blank?
                field name
              else
                if type.is_a?(Array)
                  field name, type[0], &type[1]
                else
                  field name, type
                end
              end
            end
          end
        end

      else
        fields.each_pair do |name, type|
          if type.nil?
            config.field name
          else
            if type.is_a?(Array)
              config.field name, type[0], &type[1]
            else
              config.field name, type
            end
          end
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
enjoy_cms-0.4.0.5 lib/enjoy/rails_admin_ext/patches/enjoy_cms_group.rb