Class: Back::MediaSelectorController

Inherits:
BackController
  • Object
show all
Defined in:
app/controllers/lato_media/back/media_selector_controller.rb

Overview

This class contains actions used by media cells.

Instance Method Summary collapse

Instance Method Details

#add_mediaObject



44
45
46
47
48
49
50
51
52
53
54
55
56
# File 'app/controllers/lato_media/back/media_selector_controller.rb', line 44

def add_media
  @media = LatoMedia::Media.new(attachment: params[:file])

  unless @media.save
    render json: { error: @media.errors.full_messages.to_sentence }, status: 400
    return
  end

  render json: {}, status: 200
rescue => e
  puts e
  render json: { error: 'There was an internal error' }, status: 500
end

#load_formObject



20
21
22
23
24
25
26
27
# File 'app/controllers/lato_media/back/media_selector_controller.rb', line 20

def load_form
  # reload cells settings
  core__cells_initialize

  respond_to do |r|
    r.js
  end
end

#load_indexObject



8
9
10
11
12
13
14
15
16
17
18
# File 'app/controllers/lato_media/back/media_selector_controller.rb', line 8

def load_index
  medias = LatoMedia::Media.all
  # set data for view
  @page = ((params[:page] && params[:page].to_i > 0) ? params[:page].to_i : 1)
  @pagination_total = (medias.length / 12.to_f).ceil
  @medias = core__paginate_array(medias.reverse, 12, @page)

  respond_to do |r|
    r.js
  end
end


37
38
39
40
41
42
# File 'app/controllers/lato_media/back/media_selector_controller.rb', line 37

def load_inputs_gallery
  value = params[:value].split(',')
  # set values for render
  @medias = LatoMedia::Media.where(id: value)
  @id = params[:id]
end

#load_inputs_mediaObject



29
30
31
32
33
34
35
# File 'app/controllers/lato_media/back/media_selector_controller.rb', line 29

def load_inputs_media
  value = params[:value] ? params[:value].to_i : nil
  media = LatoMedia::Media.find_by(id: params[:value])
  # set values for render
  @media = media ? media : LatoMedia::Media.new
  @id = params[:id]
end