pellest/src/logout.ml

17 lines
486 B
OCaml

open Syntax
let get request =
let** () = User.assert_logged request in
let title = "Logout" in
let%lwt () = Dream.invalidate_session request in
match Dream.query request "redirect" with
| None ->
let page = Tyxml.Html.txt "logged out" in
Template.render ~title ~scripts:[] page
| Some redirect ->
let url = Dream.from_percent_encoded redirect in
Dream.respond ~status:`See_Other
~headers:[ ("Location", url) ]
"Logged out: Happy nopellesting!"