Class: UnprocessedImage
- Inherits:
-
CarrierWave::Uploader::Base
- Object
- CarrierWave::Uploader::Base
- UnprocessedImage
- Includes:
- CarrierWave::MiniMagick
- Defined in:
- app/uploaders/unprocessed_image.rb
Overview
Copyright (c) 2010-2011, Diaspora Inc. This file is licensed under the Affero General Public License version 3 or later. See the COPYRIGHT file.
Instance Method Summary collapse
- #basic_process ⇒ Object
- #extension ⇒ Object
- #extension_allowlist ⇒ Object
- #filename ⇒ Object
- #get_version_dimensions ⇒ Object
- #needs_converting? ⇒ Boolean
- #store_dir ⇒ Object
Instance Method Details
#basic_process ⇒ Object
33 34 35 36 37 38 39 40 41 42 43 44 45 |
# File 'app/uploaders/unprocessed_image.rb', line 33 def basic_process manipulate! do |img| img. do |i| i.auto_orient i.strip end img = yield(img) if block_given? img.format("webp") if needs_converting? img end end |
#extension ⇒ Object
22 23 24 |
# File 'app/uploaders/unprocessed_image.rb', line 22 def extension needs_converting? ? ".webp" : File.extname(@filename) end |
#extension_allowlist ⇒ Object
14 15 16 |
# File 'app/uploaders/unprocessed_image.rb', line 14 def extension_allowlist %w[jpg jpeg png gif webp] end |
#filename ⇒ Object
18 19 20 |
# File 'app/uploaders/unprocessed_image.rb', line 18 def filename model.random_string + extension if @filename end |
#get_version_dimensions ⇒ Object
54 55 56 |
# File 'app/uploaders/unprocessed_image.rb', line 54 def get_version_dimensions model.width, model.height = `identify -format "%wx%h " #{file.path}`.split(/x/) end |
#needs_converting? ⇒ Boolean
26 27 28 29 |
# File 'app/uploaders/unprocessed_image.rb', line 26 def needs_converting? extname = File.extname(@filename) %w[.webp .gif].exclude?(extname) && !model.keep_original_format end |
#store_dir ⇒ Object
10 11 12 |
# File 'app/uploaders/unprocessed_image.rb', line 10 def store_dir "uploads/images" end |