Class: Jekyll::Documents::DocumentIconTag
- Inherits:
-
Liquid::Tag
- Object
- Liquid::Tag
- Jekyll::Documents::DocumentIconTag
- Includes:
- Filters::URLFilters
- Defined in:
- lib/jekyll/documents/tags/document_icon.rb
Instance Method Summary collapse
-
#initialize(tag_name, markup, tokens) ⇒ DocumentIconTag
constructor
A new instance of DocumentIconTag.
- #render(context) ⇒ Object
Constructor Details
#initialize(tag_name, markup, tokens) ⇒ DocumentIconTag
Returns a new instance of DocumentIconTag.
10 11 12 13 |
# File 'lib/jekyll/documents/tags/document_icon.rb', line 10 def initialize(tag_name, markup, tokens) super @document_expression, @options = parse_markup(markup) end |
Instance Method Details
#render(context) ⇒ Object
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/jekyll/documents/tags/document_icon.rb', line 15 def render(context) document = context.find_variable(@document_expression) return "" unless document @context = context icon_url = document_value(document, "icon_url") || fallback_icon(document, context) url = relative_url(icon_url) file_type = document_value(document, "file_type").to_s alt = @options["alt"] || "#{file_type.upcase} file" css_class = @options["class"] || "document-file-icon" style = "width:1em;height:1em;vertical-align:middle;" "<img src=\"#{escape_html(url)}\" alt=\"#{escape_html(alt)}\" " \ "class=\"#{escape_html(css_class)}\" style=\"#{style}\" />" end |