Class: DmCms::Admin::MediaFilesController

Inherits:
AdminController
  • Object
show all
Includes:
PermittedParams
Defined in:
app/controllers/dm_cms/admin/media_files_controller.rb

Instance Method Summary collapse

Methods included from PermittedParams

#cms_blog_params, #cms_contentitem_params, #cms_page_params, #cms_post_params, #cms_snippet_params, #media_file_params

Instance Method Details

#createObject




31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
# File 'app/controllers/dm_cms/admin/media_files_controller.rb', line 31

def create
  @media_file   = MediaFile.new(media_file_params)  # for collecting all error msgs
  if params[:media_list]
    params[:media_list].each do |file|
      media_file       = MediaFile.new(media_file_params)
      media_file.media = file
      media_file.user  = current_user
      if !media_file.save
        media_file.errors.each { |attribute, error| @media_file.errors.add(attribute, error) }
      end
    end
  else
    @media_file.errors[:base] << 'Please select files to upload'
  end
  if @media_file.errors.empty?
    redirect_to admin_media_files_url, notice: 'Media successfully uploaded'
  else
    render action: :new
  end
end

#destroyObject




67
68
69
70
71
# File 'app/controllers/dm_cms/admin/media_files_controller.rb', line 67

def destroy
  @media_file = MediaFile.find(params[:id])
  @media_file.destroy
  redirect_to admin_media_files_url
end

#editObject




26
27
28
# File 'app/controllers/dm_cms/admin/media_files_controller.rb', line 26

def edit
  @media_file = MediaFile.find(params[:id])
end

#indexObject




5
6
7
8
9
10
11
12
13
14
15
16
17
18
# File 'app/controllers/dm_cms/admin/media_files_controller.rb', line 5

def index
  @tag_filter  = params[:filter] || 'all'
  @media_files = MediaFile.order('folder, media ASC')

  @media_files = case @tag_filter
  when 'all'
    @media_files
  when 'top'
    @media_files.where(folder: '')
  else
    @media_files.tagged_with(@tag_filter)
  end
  @media_files = @media_files.paginate :page => params[:page], :per_page => 40
end

#newObject




21
22
23
# File 'app/controllers/dm_cms/admin/media_files_controller.rb', line 21

def new
  @media_file = MediaFile.new
end

#updateObject




53
54
55
56
57
58
59
60
61
62
63
64
# File 'app/controllers/dm_cms/admin/media_files_controller.rb', line 53

def update
  @media_file       = MediaFile.find(params[:id])
  @media_file.user  = current_user

  #--- must be set before attributes saved, otherwise retina versions not generated
  @media_file.generate_retina = params[:media_file][:generate_retina] unless params[:media_file][:generate_retina].nil?
  if @media_file.update_attributes(media_file_params)
    redirect_to admin_media_files_url, notice: 'Media successfully updated'
  else
    render action: :edit
  end
end