Sha256: 3d0f75b5e97aa611b1f70d120d896929a97b2c3f8fa3c7158e369aec92531e28

Contents?: true

Size: 897 Bytes

Versions: 49

Compression:

Stored size: 897 Bytes

Contents

module Middleman
  module Assets
    @@asset_handler_map   = []
    @@asset_handler_stack = []
    
    def self.register(handler_name, &block)
      if block_given?
        @@asset_handler_stack << block
        @@asset_handler_map   << handler_name
      end
    end
    
    def self.get_url(path, prefix="", request=nil)
      @@asset_handler_stack.last.call(path, prefix, request)
    end
    
    def self.before(position, *args)
      current_index = @@asset_handler_map.index(position)
      return nil unless current_index

      previous = current_index - 1
      if (previous >= 0) && (previous < @@asset_handler_map.length)
        @@asset_handler_stack[previous].call(*args)
      else
        nil
      end
    end
  end
end

Middleman::Assets.register :base do |path, prefix, request|
  path.include?("://") ? path : File.join(Middleman::Server.http_prefix || "/", prefix, path)
end

Version data entries

49 entries across 49 versions & 2 rubygems

Version Path
middleman-2.0.0.beta6 lib/middleman/assets.rb
middleman-2.0.0.beta5 lib/middleman/assets.rb
middleman-2.0.0.beta4 lib/middleman/assets.rb
beans-middleman-1.0.14 lib/middleman/assets.rb
middleman-2.0.0.beta3 lib/middleman/assets.rb
beans-middleman-1.0.13 lib/middleman/assets.rb
beans-middleman-1.0.12 lib/middleman/assets.rb
beans-middleman-1.0.11 lib/middleman/assets.rb
middleman-1.2.8 lib/middleman/assets.rb
middleman-2.0.0.beta2 lib/middleman/assets.rb
middleman-1.2.7 lib/middleman/assets.rb
middleman-1.2.6 lib/middleman/assets.rb
middleman-1.2.5 lib/middleman/assets.rb
middleman-1.2.4 lib/middleman/assets.rb
middleman-1.2.3 lib/middleman/assets.rb
middleman-1.2.2 lib/middleman/assets.rb
middleman-1.2.1 lib/middleman/assets.rb
beans-middleman-1.0.9 lib/middleman/assets.rb
middleman-1.2.0 lib/middleman/assets.rb
middleman-1.1.6 lib/middleman/assets.rb