Sha256: 21dd8b45dfe9ef0d3ee557853a7ba93867dbca580a421bbc3832a14f7073f389

Contents?: true

Size: 1.43 KB

Versions: 2

Compression:

Stored size: 1.43 KB

Contents

module MegaBar 
  class BlocksController < MegaBar::ApplicationController
    include MegaBar::MegaBarConcern
    
    def new
      @layout_id = params["layout_id"] if params["layout_id"]
      @layout_section_id =  params["layout_section_id"] if params["layout_section_id"]
      super
    end

    def edit
      @mega_instance = Block.find(params["id"])

      @mega_displays[0][:displayable_fields].reject! do | df | 
        case df[:field].field
        when 'index_model_display'
          true if @mega_instance.model_displays.pluck(:action).include?'index'
        when 'show_model_display'
         true if @mega_instance.model_displays.pluck(:action).include?'show'
        when 'edit_model_display'
         true if @mega_instance.model_displays.pluck(:action).include?'edit'
        when 'new_model_display'
         true if @mega_instance.model_displays.pluck(:action).include?'new'
        else 
          false
        end
      end
      super
    end


    def get_options
      models = Model.all.pluck("name, id")
      @options[:mega_bar_blocks] =  {
        model_id: models,
        nest_level_1: models,
        nest_level_2: models,
        nest_level_3: models,
        nest_level_4: models,
        nest_level_5: models,
        nest_level_6: models,
        theme_ids: Theme.all.pluck("name, id"),
        site_ids: Site.all.pluck("name, id"),
        layout_section_id: LayoutSection.all.pluck("code_name, id")
      }
    end


  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
mega_bar-0.5.2 app/controllers/mega_bar/blocks_controller.rb
mega_bar-0.5.1 app/controllers/mega_bar/blocks_controller.rb