lib/polygon/helpers.rb in polygon-0.9.1 vs lib/polygon/helpers.rb in polygon-0.10.0
- old
+ new
@@ -12,18 +12,13 @@
def templates
settings.templates
end
def database
- settings.database
+ Polygon.connection(settings.doc_folder)
end
- def lispy(&bl)
- @lispy ||= Alf.lispy(database)
- bl ? @lispy.evaluate(&bl) : @lispy
- end
-
def in_production
settings.environment == :production
end
def in_test
@@ -33,19 +28,27 @@
def in_development
settings.environment == :development
end
def sitemap_locals
- { :urls => database.sitemap }
+ 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 = "")
- rel = lispy do
- (unwrap \
- (extend (restrict :sitemap, :path => path),
- :data => lambda{ entry.to_hash }),
- :data)
- end
+ 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