require "http/server" require "./guff/*" module Guff class SlugHandler < Handler MOCK_SLUGS = { "foo": "test slug foo", "bar": "test slug bar", "baz": "test slug baz", } RE = Regex.new("^/(?:" + MOCK_SLUGS.keys.join("|") + ").html$") def call(context : HTTP::Server::Context) if md = RE.match(context.request.path || "") title = "SlugHandler: path = %s, md = %s" % [ context.request.path, md.to_s ] page = HTMLPageView.new(title, "asdf") page.styles << "foo/bar.css" # TODO: refactor this context.response.content_type = page.content_type context.response.puts page else call_next(context) end end end end Guff.run($0, ARGV)