Sha256: e512a77d16abc879a56cb12a0a2f684ad5bd07ad0106617d65b2cd9e3553d584

Contents?: true

Size: 925 Bytes

Versions: 25

Compression:

Stored size: 925 Bytes

Contents

require "middleman/fastimage"

class Middleman::Base
  alias_method :pre_automatic_image_tag, :image_tag
  helpers do
    def image_tag(path, params={})
      if (!params[:width] || !params[:height]) && !path.include?("://")
        params[:alt] ||= ""
        http_prefix = options.http_images_path rescue options.images_dir
        
        begin
          real_path = File.join(options.public, options.images_dir, path)
          if File.exists? real_path
            dimensions = Middleman::FastImage.size(real_path, :raise_on_failure => true)
            params[:width]  ||= dimensions[0]
            params[:height] ||= dimensions[1]
          end
        rescue
        end

        params = params.merge(:src => asset_url(path, http_prefix))
        params = params.map { |k,v| %Q{#{k}="#{v}"}}.join(' ')
        "<img #{params} />"
      else
        pre_automatic_image_tag(path, params)
      end
    end
  end
end

Version data entries

25 entries across 25 versions & 1 rubygems

Version Path
middleman-0.11.5 lib/middleman/features/automatic_image_sizes.rb
middleman-0.11.4 lib/middleman/features/automatic_image_sizes.rb
middleman-0.11.3 lib/middleman/features/automatic_image_sizes.rb
middleman-0.11.2 lib/middleman/features/automatic_image_sizes.rb
middleman-0.11.1 lib/middleman/features/automatic_image_sizes.rb
middleman-0.11.0 lib/middleman/features/automatic_image_sizes.rb
middleman-0.10.17 lib/middleman/features/automatic_image_sizes.rb
middleman-0.10.16 lib/middleman/features/automatic_image_sizes.rb
middleman-0.10.15 lib/middleman/features/automatic_image_sizes.rb
middleman-0.10.14 lib/middleman/features/automatic_image_sizes.rb
middleman-0.10.13 lib/middleman/features/automatic_image_sizes.rb
middleman-0.10.12 lib/middleman/features/automatic_image_sizes.rb
middleman-0.10.11 lib/middleman/features/automatic_image_sizes.rb
middleman-0.10.10 lib/middleman/features/automatic_image_sizes.rb
middleman-0.10.9 lib/middleman/features/automatic_image_sizes.rb
middleman-0.10.8 lib/middleman/features/automatic_image_sizes.rb
middleman-0.10.7 lib/middleman/features/automatic_image_sizes.rb
middleman-0.10.6 lib/middleman/features/automatic_image_sizes.rb
middleman-0.10.5 lib/middleman/features/automatic_image_sizes.rb
middleman-0.10.4 lib/middleman/features/automatic_image_sizes.rb