summaryrefslogtreecommitdiff
path: root/app/uploaders/favicon_uploader.rb
blob: 09afc63a5aad8cfa41a01820fa1bc901305adc9b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
class FaviconUploader < AttachmentUploader
  EXTENSION_WHITELIST = %w[png ico].freeze

  include CarrierWave::MiniMagick

  version :favicon_main do
    process resize_to_fill: [32, 32]
    process convert: 'png'

    def full_filename(filename)
      filename_for_different_format(super(filename), 'png')
    end
  end

  def extension_whitelist
    EXTENSION_WHITELIST
  end

  private

  def filename_for_different_format(filename, format)
    filename.chomp(File.extname(filename)) + ".#{format}"
  end
end