Class: MegaBar::ModelsController

Inherits:
ApplicationController show all
Includes:
AuthorizationConcern, MegaBarConcern
Defined in:
app/controllers/mega_bar/models_controller.rb

Instance Method Summary collapse

Methods included from MegaBarConcern

#add_form_path_to_mega_displays, #administer_block, #administer_page, #collect_filters, #column_sorting, #conditions, #constant_from_controller, #create, #destroy, #edit, #form_path, #is_displayable?, #might_filter?, #might_paginate?, #move, #new, #num_per_page, #process_filters, #redo_setup, #set_vars_for_all, #set_vars_for_displays, #show, #sort_column, #sort_direction, #test_create, #unpack_nested_classes, #update

Methods inherited from ApplicationController

#_params, #env

Methods included from AuthorizationHelper

#can_create?, #can_destroy?, #can_edit?, #can_index?, #can_perform_action?, #can_show?, #can_update?, #has_mega_role?, #link_if_can, #link_if_can_create, #link_if_can_destroy, #link_if_can_edit, #link_if_can_index, #link_if_can_show, #link_if_can_update, #link_if_can_with_wrapper

Instance Method Details

#allObject



10
11
12
13
# File 'app/controllers/mega_bar/models_controller.rb', line 10

def all
  @mega_instance = Model.all.order(column_sorting) # .page(@page_number).per(5)
  index
end

#filter_displaysObject



15
16
17
18
19
20
21
22
# File 'app/controllers/mega_bar/models_controller.rb', line 15

def filter_displays
  return unless Page.by_route('/' + @mega_instance.classname.underscore.dasherize.pluralize).present?

  @mega_displays[0][:displayable_fields] = @mega_displays[0][:displayable_fields].reject do |df|
    df[:field].field == 'make_page'
  end

end

#get_optionsObject



24
25
26
27
28
29
30
31
32
33
# File 'app/controllers/mega_bar/models_controller.rb', line 24

def get_options
  @options[:mega_bar_models] =  {
    position_parent: MegaBar::Model.all.pluck(:name, :modyule, :classname).map{|a|  
      modyule = a[1] || 'No Module'
      [modyule + ' - ' + a[0], modyule + '::' + a[2]]
    }.unshift(['Position with No Parent', 'pnp']),
    default_sort_field: Field.by_model(params[:id]).pluck("field, field"),
    make_page: Template.all.pluck("name, id")
        }
end

#indexObject



6
7
8
9
# File 'app/controllers/mega_bar/models_controller.rb', line 6

def index
  @mega_instance ||= Model.where.not(modyule: 'MegaBar').order(column_sorting)
  super
end