Sha256: c4bd731550038e660495f5dc736b35e9c8e1719b583f0c7bb3d4557f4df02ec5

Contents?: true

Size: 1.24 KB

Versions: 5

Compression:

Stored size: 1.24 KB

Contents

module Enjoy
  module Admin
    module PageBlockset
      def self.config(fields = {})
        Proc.new {
          # navigation_label 'CMS'

          field :enabled, :toggle
          field :text_slug
          field :name

          field :blocks

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

          # field :blocks do
          #   read_only true
          #   help 'Список блоков'
          #
          #   pretty_value do
          #     bindings[:object].blocks.to_a.map { |b|
          #       route = (bindings[:view] || bindings[:controller])
          #       model_name = b.rails_admin_model
          #       route.link_to(b.name, route.rails_admin.show_path(model_name: model_name, id: b.id), title: b.name)
          #     }.join("<br>").html_safe
          #   end
          # end

          sort_embedded(
              {
                  fields: [:blocks]
              }
          )

          if block_given?
            yield self
          end
        }
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
enjoy_cms-0.3.2.1 lib/enjoy/admin/page_blockset.rb
enjoy_cms-0.3.2 lib/enjoy/admin/page_blockset.rb
enjoy_cms-0.3.1.2 lib/enjoy/admin/page_blockset.rb
enjoy_cms-0.3.1.1 lib/enjoy/admin/page_blockset.rb
enjoy_cms-0.3.1 lib/enjoy/admin/page_blockset.rb