Class: Katalyst::Navigation::ItemsController

Inherits:
BaseController
  • Object
show all
Defined in:
app/controllers/katalyst/navigation/items_controller.rb

Instance Method Summary collapse

Instance Method Details

#createObject



17
18
19
20
21
22
23
24
# File 'app/controllers/katalyst/navigation/items_controller.rb', line 17

def create
  item = @menu.items.build(item_params)
  if item.save
    render :update, locals: { item: item, previous: @menu.items.build(type: item.type) }
  else
    render :new, status: :unprocessable_entity, locals: { item: item }
  end
end

#editObject



13
14
15
# File 'app/controllers/katalyst/navigation/items_controller.rb', line 13

def edit
  render locals: { item: @item }
end

#newObject



9
10
11
# File 'app/controllers/katalyst/navigation/items_controller.rb', line 9

def new
  render locals: { item: @menu.items.build(type: new_item_params) }
end

#updateObject



26
27
28
29
30
31
32
33
34
35
36
# File 'app/controllers/katalyst/navigation/items_controller.rb', line 26

def update
  @item.attributes = item_params

  if @item.valid?
    previous = @item
    @item    = @item.dup.tap(&:save!)
    render locals: { item: @item, previous: previous }
  else
    render :edit, status: :unprocessable_entity, locals: { item: @item }
  end
end