Module: Sprockets::Helpers::RailsHelper

Extended by:
ActiveSupport::Concern
Includes:
ActionView::Helpers::AssetTagHelper
Defined in:
lib/sprockets/helpers/rails_helper.rb

Defined Under Namespace

Classes: AssetPaths

Instance Method Summary collapse

Instance Method Details

#asset_path(source, options = {}) ⇒ Object



54
55
56
57
58
# File 'lib/sprockets/helpers/rails_helper.rb', line 54

def asset_path(source, options = {})
  source = source.logical_path if source.respond_to?(:logical_path)
  path = asset_paths.compute_public_path(source, asset_prefix, options.merge(:body => true))
  options[:body] ? "#{path}?body=1" : path
end

#asset_pathsObject



9
10
11
12
13
14
15
16
17
18
# File 'lib/sprockets/helpers/rails_helper.rb', line 9

def asset_paths
  @asset_paths ||= begin
    paths = RailsHelper::AssetPaths.new(config, controller)
    paths.asset_environment = asset_environment
    paths.asset_digests     = asset_digests
    paths.compile_assets    = compile_assets?
    paths.digest_assets     = digest_assets?
    paths
  end
end

#javascript_include_tag(*sources) ⇒ Object



20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# File 'lib/sprockets/helpers/rails_helper.rb', line 20

def javascript_include_tag(*sources)
  options = sources.extract_options!
  debug = options.key?(:debug) ? options.delete(:debug) : debug_assets?
  body  = options.key?(:body)  ? options.delete(:body)  : false
  digest  = options.key?(:digest)  ? options.delete(:digest)  : digest_assets?

  sources.collect do |source|
    if debug && asset = asset_paths.asset_for(source, 'js')
      asset.to_a.map { |dep|
        super(dep.to_s, { :src => asset_path(dep, :ext => 'js', :body => true, :digest => digest) }.merge!(options))
      }
    else
      super(source.to_s, { :src => asset_path(source, :ext => 'js', :body => body, :digest => digest) }.merge!(options))
    end
  end.join("\n").html_safe
end

#javascript_path(source) ⇒ Object Also known as: path_to_javascript

def image_path(source)

asset_path(source)

end alias_method :path_to_image, :image_path # aliased to avoid conflicts with an image_path named route



65
66
67
# File 'lib/sprockets/helpers/rails_helper.rb', line 65

def javascript_path(source)
  asset_path(source)
end


37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
# File 'lib/sprockets/helpers/rails_helper.rb', line 37

def stylesheet_link_tag(*sources)
  options = sources.extract_options!
  debug   = options.key?(:debug) ? options.delete(:debug) : debug_assets?
  body    = options.key?(:body)  ? options.delete(:body)  : false
  digest  = options.key?(:digest)  ? options.delete(:digest)  : digest_assets?

  sources.collect do |source|
    if debug && asset = asset_paths.asset_for(source, 'css')
      asset.to_a.map { |dep|
        super(dep.to_s, { :href => asset_path(dep, :ext => 'css', :body => true, :protocol => :request, :digest => digest) }.merge!(options))
      }
    else
      super(source.to_s, { :href => asset_path(source, :ext => 'css', :body => body, :protocol => :request, :digest => digest) }.merge!(options))
    end
  end.join("\n").html_safe
end

#stylesheet_path(source) ⇒ Object Also known as: path_to_stylesheet



70
71
72
# File 'lib/sprockets/helpers/rails_helper.rb', line 70

def stylesheet_path(source)
  asset_path(source)
end