Class: SimpleImageUploader
- Inherits:
-
CarrierWave::Uploader::Base
- Object
- CarrierWave::Uploader::Base
- SimpleImageUploader
show all
- Includes:
- CarrierWave::ImageOptim, CarrierWave::MiniMagick
- Defined in:
- app/uploaders/simple_image_uploader.rb
Overview
Uploader for universal simple images
Constant Summary
CarrierWave::ImageOptim::DEFAULT_OPTIONS
Instance Method Summary
collapse
#optimize
Instance Method Details
#alt_text(default = '') ⇒ String
Text for image alt attribute
63
64
65
66
67
68
69
70
|
# File 'app/uploaders/simple_image_uploader.rb', line 63
def alt_text(default = '')
method_name = "#{mounted_as}_alt_text".to_sym
if model.respond_to?(method_name)
model.send(method_name)
else
default
end
end
|
#auto_orient ⇒ Object
21
22
23
24
25
26
27
|
# File 'app/uploaders/simple_image_uploader.rb', line 21
def auto_orient
return unless raster?
manipulate! do |image|
image.tap(&:auto_orient)
end
end
|
#default_url ⇒ Object
14
15
16
|
# File 'app/uploaders/simple_image_uploader.rb', line 14
def default_url(*)
ActionController::Base.helpers.asset_path('biovision/placeholders/1x1.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:
55
56
57
|
# File 'app/uploaders/simple_image_uploader.rb', line 55
def extension_whitelist
%w[jpg jpeg png svg svgz]
end
|
#hd_url ⇒ Object
107
108
109
|
# File 'app/uploaders/simple_image_uploader.rb', line 107
def hd_url
raster? ? hd.url : url
end
|
#large_url ⇒ Object
103
104
105
|
# File 'app/uploaders/simple_image_uploader.rb', line 103
def large_url
raster? ? large.url : url
end
|
#medium_url ⇒ Object
99
100
101
|
# File 'app/uploaders/simple_image_uploader.rb', line 99
def medium_url
raster? ? medium.url : url
end
|
#optimize_images? ⇒ Boolean
77
78
79
80
81
|
# File 'app/uploaders/simple_image_uploader.rb', line 77
def optimize_images?(*)
return false unless Rails.application.config.respond_to? :optimize_images
Rails.application.config.optimize_images
end
|
#preview_url ⇒ Object
91
92
93
|
# File 'app/uploaders/simple_image_uploader.rb', line 91
def preview_url
raster? ? preview.url : url
end
|
#raster? ⇒ Boolean
83
84
85
|
# File 'app/uploaders/simple_image_uploader.rb', line 83
def raster?
!File.extname(path).match?(/\.svgz?\z/i)
end
|
#raster_image?(new_file) ⇒ Boolean
73
74
75
|
# File 'app/uploaders/simple_image_uploader.rb', line 73
def raster_image?(new_file)
!new_file.extension.match?(/svgz?\z/i)
end
|
#small_url ⇒ Object
95
96
97
|
# File 'app/uploaders/simple_image_uploader.rb', line 95
def small_url
raster? ? small.url : url
end
|
#store_dir ⇒ Object
10
11
12
|
# File 'app/uploaders/simple_image_uploader.rb', line 10
def store_dir
"uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{path_slug}"
end
|
#tiny_url ⇒ Object
87
88
89
|
# File 'app/uploaders/simple_image_uploader.rb', line 87
def tiny_url
raster? ? tiny.url : url
end
|