Module: Bridgetown::Cloudinary::Utils
- Defined in:
- lib/bridgetown-cloudinary/utils.rb
Class Method Summary collapse
Class Method Details
.add_image_urls_to_documents(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 |
# File 'lib/bridgetown-cloudinary/utils.rb', line 21 def self.add_image_urls_to_documents(site, config) (site.documents + site.pages).each do |page| next unless page.data[:cloudinary_id] && !page.data[:image] page.data[:image] = { path: url( config: config, id: page.data[:cloudinary_id], transformation: nil ), } next unless config[:add_transformed_urls_to_image_front_matter] config[:transformations].each_key do |transformation| page.data[:image][transformation] = url( config: config, id: page.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 |