Sha256: 69f5e6c870f2e7637e12cfee1edbb281176b8a1b96b2f3e6c678f95479ace397
Contents?: true
Size: 1.2 KB
Versions: 3
Compression:
Stored size: 1.2 KB
Contents
# coding: utf-8 module Retter::Stationery::View module Helper extend self def fix_path(html, prefix='./') elements = Nokogiri::HTML(html) elements.search("[src!=''][src!='']").each do |el| src = el.attr('src').scan(/[^\.\/]{3}.*/).first next if src =~ /^(?:http|https):\/\// el.set_attribute 'src', [prefix, src].join end elements.search("[href][href!='#']").each do |el| href = el.attr('href') next if href =~ /^(?:http|https):\/\// if href == '/' el.set_attribute 'href', [prefix, 'index.html'].join else el.set_attribute 'href', [prefix, href.scan(/[^\.\/]{3}.*/).first].join end end elements.to_s end def entry_path(date, id = nil) date.strftime('/entries/%Y%m%d.html') + (id ? "##{id}" : '') end end class Scope attr_reader :config attr_accessor :assigns include Helper extend Forwardable def_delegators :@config, *Retter::Config.delegatables [:entries].each do |meth| define_method meth do @assigns[meth] end end def initialize(config, assigns = {}) @config, @assigns = config, assigns end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
retter-0.0.3 | lib/retter/stationery/view.rb |
retter-0.0.2 | lib/retter/stationery/view.rb |
retter-0.0.1 | lib/retter/stationery/view.rb |