Sha256: f1cea6a294483b6cf9b00f6fe6c562551ca0d314d49b1147167d003e743456f6

Contents?: true

Size: 1.02 KB

Versions: 24

Compression:

Stored size: 1.02 KB

Contents

require 'awestruct/extensions/relative'
require 'pathname'

module Awestruct
  module Extensions
    module Assets

      def asset(href)
        if site.assets_url
          File.join(site.assets_url, href)
        else
          relative(File.join("/#{site.assets_path||'assets'}", href))
        end
      end

      class Transformer
        # FIXME this is not DRY at all
        def relative(page, href)
          Pathname.new(href).relative_path_from(Pathname.new(File.dirname(page.output_path))).to_s
        end
        def asset(site, page, href)
          if site.assets_url
            File.join(site.assets_url, href)
          else
            relative(page, File.join("/#{site.assets_path||'assets'}", href))
          end
        end
        def transform(site, page, input)
          if page.output_path =~ /\.html/
            input.gsub('asset://', asset(site, page, "#{File.basename(File.basename(page.source_path, ".md"))}") + "/")
          else
            input
          end
        end
      end

    end
  end
end

Version data entries

24 entries across 24 versions & 2 rubygems

Version Path
awestruct-0.4.6 lib/awestruct/extensions/assets.rb
awestruct-0.4.5 lib/awestruct/extensions/assets.rb
awestruct-0.4.4 lib/awestruct/extensions/assets.rb
awestruct-0.4.3 lib/awestruct/extensions/assets.rb
awestruct-0.4.2 lib/awestruct/extensions/assets.rb
awestruct-0.4.2.x10 lib/awestruct/extensions/assets.rb
awestruct-0.4.2.x9 lib/awestruct/extensions/assets.rb
awestruct-0.4.2.x8 lib/awestruct/extensions/assets.rb
awestruct-0.4.2.x7 lib/awestruct/extensions/assets.rb
awestruct-0.4.2.x6 lib/awestruct/extensions/assets.rb
awestruct-0.4.2.x5 lib/awestruct/extensions/assets.rb
awestruct-0.4.2.x4 lib/awestruct/extensions/assets.rb
awestruct-0.4.2.x3 lib/awestruct/extensions/assets.rb
awestruct-0.4.2.x2 lib/awestruct/extensions/assets.rb
awestruct-0.4.2.x1 lib/awestruct/extensions/assets.rb
awestructx-0.4.1.x1 lib/awestruct/extensions/assets.rb
awestructx-0.4.1 lib/awestruct/extensions/assets.rb
awestructx-0.4.0 lib/awestruct/extensions/assets.rb
awestruct-0.2.18 lib/awestruct/extensions/assets.rb
awestruct-0.2.17 lib/awestruct/extensions/assets.rb