Module: Bridgetown::Cloudinary::Utils
- Defined in:
- lib/bridgetown-cloudinary/utils.rb
Class Method Summary collapse
Class Method Details
.add_image_urls_to_resources(site, config) ⇒ Object
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
# File 'lib/bridgetown-cloudinary/utils.rb', line 21 def self.add_image_urls_to_resources(site, config) site.contents.each do |resource| next unless resource.data[:cloudinary_id] && !resource.data[:image] next if resource.respond_to?(:collection) && resource.collection.data? resource.data[:image] = { path: url( config: config, id: resource.data[:cloudinary_id], transformation: nil ), } next unless config[:add_transformed_urls_to_image_front_matter] config[:transformations].each_key do |transformation| resource.data[:image][transformation] = url( config: config, id: resource.data[:cloudinary_id], transformation: transformation ) end end end |
.url(config:, id:, transformation:) ⇒ Object
6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
# File 'lib/bridgetown-cloudinary/utils.rb', line 6 def self.url(config:, id:, transformation:) transformation = if transformation "/#{config[:transformations][transformation]}" else "/#{config[:transformations][config[:default_transformation]]}" end image_format = config[:default_image_format] cloudinary_url = ::Cloudinary::Utils.cloudinary_url( id, { format: image_format } ) cloudinary_url&.sub("/image/upload", "/image/upload#{transformation}") end |