Class: PostIllustrationUploader
- Inherits:
-
CarrierWave::Uploader::Base
- Object
- CarrierWave::Uploader::Base
- PostIllustrationUploader
- Includes:
- CarrierWave::MiniMagick
- Defined in:
- app/uploaders/post_illustration_uploader.rb
Overview
Inline post image uploader
Instance Method Summary collapse
- #default_url ⇒ Object
-
#extension_whitelist ⇒ Object
Add a white list of extensions which are allowed to be uploaded.
- #hd_url ⇒ Object
- #large_url ⇒ Object
- #medium_url ⇒ Object
- #preview_url ⇒ Object
- #raster? ⇒ Boolean
- #raster_image?(new_file) ⇒ Boolean
- #small_url ⇒ Object
- #store_dir ⇒ Object
Instance Method Details
#default_url ⇒ Object
15 16 17 |
# File 'app/uploaders/post_illustration_uploader.rb', line 15 def default_url(*) ActionController::Base.helpers.asset_path('biovision/base/placeholders/3x2.svg') end |
#extension_whitelist ⇒ Object
Add a white list of extensions which are allowed to be uploaded. For images you might use something like this:
41 42 43 |
# File 'app/uploaders/post_illustration_uploader.rb', line 41 def extension_whitelist %w[jpg jpeg png svg svgz] end |
#hd_url ⇒ Object
70 71 72 |
# File 'app/uploaders/post_illustration_uploader.rb', line 70 def hd_url raster? ? hd.url : url end |
#large_url ⇒ Object
66 67 68 |
# File 'app/uploaders/post_illustration_uploader.rb', line 66 def large_url raster? ? large.url : url end |
#medium_url ⇒ Object
62 63 64 |
# File 'app/uploaders/post_illustration_uploader.rb', line 62 def medium_url raster? ? medium.url : url end |
#preview_url ⇒ Object
54 55 56 |
# File 'app/uploaders/post_illustration_uploader.rb', line 54 def preview_url raster? ? preview.url : url end |
#raster? ⇒ Boolean
50 51 52 |
# File 'app/uploaders/post_illustration_uploader.rb', line 50 def raster? !File.extname(path).match?(/\.svgz?\z/i) end |
#raster_image?(new_file) ⇒ Boolean
46 47 48 |
# File 'app/uploaders/post_illustration_uploader.rb', line 46 def raster_image?(new_file) !new_file.extension.match?(/svgz?\z/i) end |
#small_url ⇒ Object
58 59 60 |
# File 'app/uploaders/post_illustration_uploader.rb', line 58 def small_url raster? ? small.url : url end |
#store_dir ⇒ Object
9 10 11 12 13 |
# File 'app/uploaders/post_illustration_uploader.rb', line 9 def store_dir slug = "#{model.uuid[0..2]}/#{model.uuid[3..5]}" "post_illustrations/#{mounted_as}/#{slug}" end |