Module: Mokio::Concerns::Controllers::Menus

Extended by:
ActiveSupport::Concern
Included in:
MenusController
Defined in:
lib/mokio/concerns/controllers/menus.rb

Overview

Concern for MenusController

  • before filters:

:init_dual_select, only: [:edit, :new, :update, :create] :transform_modules, only: [:update, :create]

  • after filters:

:update_related, only: [:update]

Instance Method Summary collapse

Instance Method Details

#create_menu_positionObject



81
82
83
84
85
86
# File 'lib/mokio/concerns/controllers/menus.rb', line 81

def create_menu_position
  parent = Mokio::Menu.where(lang_id: params[:menu][:lang_id], ancestry: nil).first
  params[:menu][:parent_id] = parent.id
  params[:menu][:deletable] = true
  create
end

#indexObject

extended CommonController#index (Mokio::Concerns::Controllers::Common)



27
28
29
30
31
# File 'lib/mokio/concerns/controllers/menus.rb', line 27

def index

  @menus = Mokio::Menu.includes(:content_links).arrange(:order => :seq)
  super
end

#lang_changedObject

Ajax changing lang



52
53
54
55
56
# File 'lib/mokio/concerns/controllers/menus.rb', line 52

def lang_changed
  @menu = Mokio::Menu.new(:lang_id => params[:lang_id])
  @content_confirm = params[:content_confirm]
  @modules_confirm = params[:modules_confirm]
end

#new_menu_positionObject

Renders form for creating menu position (fake menu - direct child of a lang root)



77
78
79
# File 'lib/mokio/concerns/controllers/menus.rb', line 77

def new_menu_position
  @menu = Mokio::Menu.new
end

#sortObject

Ajax sorting menus tree



61
62
63
64
65
66
67
68
69
70
71
72
73
# File 'lib/mokio/concerns/controllers/menus.rb', line 61

def sort
  @change = {}

  transform(params[:menu], @change)

  if Mokio::Menu.update(@change.keys, @change.values)
    flash[:notice] = t("menus.sort_true")
  else
    flash[:error]  = t("menus.sort_false")
  end

  render :nothing => true
end

#updateObject

extended CommonController#update (Mokio::Concerns::Controllers::Common)



36
37
38
39
40
# File 'lib/mokio/concerns/controllers/menus.rb', line 36

def update
  @content_ids = params[:menu][:content_ids]
  @av_mod_ids = params[:menu][:available_module_ids]
  super
end

#update_menu_breadcrumpsObject

Ajax updating breadcrumps in menus edit/new



45
46
47
# File 'lib/mokio/concerns/controllers/menus.rb', line 45

def update_menu_breadcrumps
  @menu = Mokio::Menu.find(params[:id])
end