aboutsummaryrefslogtreecommitdiff
path: root/src/guff/handlers/test-auth.cr
blob: 31da98b88fd23e7973171a3c41f9550a15950a0c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
require "../handler"
require "../views/html/test/auth"

class Guff::Handlers::TestAuthHandler < Guff::Handler
  PATH_RE = %r{^/test/auth/?$}

  def call(context : HTTP::Server::Context)
    if PATH_RE.match(context.request.path.not_nil!)
      case context.request.method
      when "GET", "HEAD"
        draw_page(context)
      else
        raise "unknown method"
      end
    else
      call_next(context)
    end
  end

  private def draw_page(context)
    TestAuthHTMLView.run(@models, context)
  end
end