Class: Admin::MediaItemsController

Inherits:
ForestController
  • Object
show all
Defined in:
app/controllers/admin/media_items_controller.rb

Instance Method Summary collapse

Instance Method Details

#createObject

POST /media_items



42
43
44
45
46
47
48
49
50
51
52
53
54
55
# File 'app/controllers/admin/media_items_controller.rb', line 42

def create
  @media_item = MediaItem.new(media_item_params)
  authorize @media_item

  respond_to do |format|
    if @media_item.save
      format.html { redirect_to edit_admin_media_item_path(@media_item), notice: 'Media item was successfully created.' }
      format.json { render json: { files: [@media_item.to_jq_upload]}, status: :created, location: [:admin, @media_item] }
    else
      format.html { render :new }
      format.json { render json: @media_item.errors, status: :unprocessable_entity }
    end
  end
end

#destroyObject

DELETE /media_items/1



85
86
87
88
89
# File 'app/controllers/admin/media_items_controller.rb', line 85

def destroy
  authorize @media_item
  @media_item.destroy
  redirect_to admin_media_items_url, notice: 'Media item was successfully destroyed.'
end

#editObject

GET /media_items/1/edit



37
38
39
# File 'app/controllers/admin/media_items_controller.rb', line 37

def edit
  authorize @media_item
end

#indexObject

GET /media_items



13
14
15
16
17
18
19
20
21
22
23
24
# File 'app/controllers/admin/media_items_controller.rb', line 13

def index
  @media_items = apply_scopes(MediaItem.all).by_id.not_hidden.page(params[:page]).per(36)
  authorize @media_items

  if params[:layout].blank? || params[:layout] != 'list'
    @layout = :grid
  else
    @layout = :list
  end

  respond_to :html, :json
end

#newObject

GET /media_items/new



31
32
33
34
# File 'app/controllers/admin/media_items_controller.rb', line 31

def new
  @media_item = MediaItem.new
  authorize @media_item
end

#showObject

GET /media_items/1



27
28
# File 'app/controllers/admin/media_items_controller.rb', line 27

def show
end

#updateObject

PATCH/PUT /media_items/1



58
59
60
61
62
63
64
65
# File 'app/controllers/admin/media_items_controller.rb', line 58

def update
  authorize @media_item
  if @media_item.update(media_item_params)
    redirect_to edit_admin_media_item_path(@media_item), notice: 'Media item was successfully updated.'
  else
    render :edit
  end
end

#update_multipleObject

PATCH/PUT /media_items



68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
# File 'app/controllers/admin/media_items_controller.rb', line 68

def update_multiple
  if params['selected']&.any?
    @media_items = MediaItem.where(id: params[:selected])
    authorize @media_items
    if params[:bulk_actions] == 'delete'
      @media_items.destroy_all
      notice = 'Media items were successfully destroyed.'
    else
      notice = 'Please select a bulk action.'
    end
  else
    notice = 'Please select a media item.'
  end
  redirect_to admin_media_items_url, notice: notice
end