Sha256: 6b35fee83dd6175b6df207aed1dbe70f11441c03d79812a443ec62a000d7a590

Contents?: true

Size: 1 KB

Versions: 2

Compression:

Stored size: 1 KB

Contents

module Polygon
  module Helpers

    def static
      settings.static
    end

    def dynamic
      settings.dynamic
    end

    def templates
      settings.templates
    end

    def database
      Polygon.connection(settings.doc_folder)
    end

    def in_production
      settings.environment == :production
    end

    def in_test
      settings.environment == :test
    end

    def in_development
      settings.environment == :development
    end

    def sitemap_locals
      index_locals.merge(:urls => database.query{ sitemap })
    end

    def normalize_path(path)
      path = path[1..-1] if path =~ /^\//
      path = path[0...-1] if path =~ /\/$/
      path
    end

    def page_locals(path = "")
      path = normalize_path(path)
      rel = database.relvar{
        unwrap(
          extend(
            restrict(sitemap, path: path),
          data: ->{ entry }),
        :data)
      }
      rel && rel.to_a.first
    end
    alias :index_locals :page_locals

  end # module Helpers
end # module Polygon

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
polygon-0.10.1 lib/polygon/helpers.rb
polygon-0.10.0 lib/polygon/helpers.rb