class Jekyll::LayerVault::Download

Public Class Methods

new(tag_name, text, tokens) click to toggle source
Calls superclass method
# File lib/plugins/download.rb, line 12
def initialize(tag_name, text, tokens)
  super
  @text = text.strip
end

Public Instance Methods

render(context) click to toggle source
# File lib/plugins/download.rb, line 17
def render(context)
  return @text unless valid_parameters?

  config = context.registers[:site].config
  file, revision = parse_parameters

  url = File.join(URL_BASE, config['organization'], config['project'], file)
  url = File.join(url, 'revisions', revision) unless revision.nil?
  url += "?raw=1"
end

Private Instance Methods

parse_parameters() click to toggle source
# File lib/plugins/download.rb, line 30
def parse_parameters
  @text.
    scan(PARAM_REGEX).
    flatten.
    tap { |m| m[1] = nil if m[1] == '-' }
end