Module: Decidim::Admin::UploaderImageDimensionsHelper
- Defined in:
- app/helpers/decidim/admin/uploader_image_dimensions_helper.rb
Overview
This class contains helpers needed to obtain information about image dimensions from the processors defined in the specific image’s Uploader class
Instance Method Summary collapse
-
#image_dimensions(model, image_name) ⇒ Object
Find the dimensions info of a model’s image field and get the first value for dimensions ([w, h]).
-
#image_height(model, image_name) ⇒ Object
Find the first value for the processed image height.
-
#image_width(model, image_name) ⇒ Object
Find the first value for the processed image width.
Instance Method Details
#image_dimensions(model, image_name) ⇒ Object
Find the dimensions info of a model’s image field and get the first value for dimensions ([w, h])
model - The model to which the image belongs (An instance of ‘ActiveRecord`) image_name - The attribute name for the image (either a `symbol` or a `string`)
Returns an integer array with [width, height]
14 15 16 17 18 |
# File 'app/helpers/decidim/admin/uploader_image_dimensions_helper.rb', line 14 def image_dimensions(model, image_name) uploader = model.attached_uploader(image_name) || model.send(image_name) versions = uploader.dimensions_info [:small, :medium, :default].map { |v| versions.dig(v, :dimensions) }.compact.first end |
#image_height(model, image_name) ⇒ Object
Find the first value for the processed image height
26 27 28 |
# File 'app/helpers/decidim/admin/uploader_image_dimensions_helper.rb', line 26 def image_height(model, image_name) image_dimensions(model, image_name)[1] end |
#image_width(model, image_name) ⇒ Object
Find the first value for the processed image width
21 22 23 |
# File 'app/helpers/decidim/admin/uploader_image_dimensions_helper.rb', line 21 def image_width(model, image_name) image_dimensions(model, image_name)[0] end |