Module: Jekyll::Minibundle::AssetTagMarkup

Defined in:
lib/jekyll/minibundle/asset_tag_markup.rb

Class Method Summary collapse

Class Method Details

.make_attribute(name, value) ⇒ Object



22
23
24
25
26
27
28
# File 'lib/jekyll/minibundle/asset_tag_markup.rb', line 22

def make_attribute(name, value)
  if value.nil?
    %{ #{name}}
  else
    %{ #{name}="#{CGI.escape_html(value.to_s)}"}
  end
end

.make_attributes(attributes) ⇒ Object



18
19
20
# File 'lib/jekyll/minibundle/asset_tag_markup.rb', line 18

def make_attributes(attributes)
  attributes.map { |name, value| make_attribute(name, value) }.join('')
end

.make_markup(type, baseurl, path, attributes) ⇒ Object



6
7
8
9
10
11
12
13
14
15
16
# File 'lib/jekyll/minibundle/asset_tag_markup.rb', line 6

def make_markup(type, baseurl, path, attributes)
  url = make_url(baseurl, path)
  case type
  when :js
    %{<script type="text/javascript" src="#{url}"#{make_attributes(attributes)}></script>}
  when :css
    %{<link rel="stylesheet" href="#{url}"#{make_attributes(attributes)}>}
  else
    raise ArgumentError, "Unknown type for generating bundle markup: #{type}, #{path}"
  end
end

.make_url(baseurl, path) ⇒ Object



30
31
32
33
34
35
36
# File 'lib/jekyll/minibundle/asset_tag_markup.rb', line 30

def make_url(baseurl, path)
  if baseurl.empty?
    path
  else
    File.join(baseurl, path)
  end
end