implement redirection when user should be logged in/logged out

This commit is contained in:
pena 2023-01-09 03:37:01 +01:00 committed by Swrup
parent f8468df472
commit d778e05931
4 changed files with 45 additions and 11 deletions

View file

@ -5,6 +5,13 @@ open Syntax
let get request =
let** () = User.assert_not_logged request in
let title = "Pellest|Login" in
let action =
match Dream.query request "redirect" with
| None -> "/login"
| Some r -> Format.sprintf "/login?redirect=%s" r
in
let login =
let submit = button ~a:[ a_id "submit_login" ] [ txt "submit" ] in
let login =
@ -13,8 +20,7 @@ let get request =
let password =
input ~a:[ a_id "password"; a_name "password"; a_input_type `Password ] ()
in
div
[ make_form request ~action:"/login" ~items:[ login; password; submit ] ]
div [ make_form request ~action ~items:[ login; password; submit ] ]
in
let text = div [ txt "login ~!" ] in
let page = div [ text; login ] in
@ -32,5 +38,5 @@ let post request =
in
Dream.respond ~status:`See_Other
~headers:[ ("Location", url) ]
"Logged in: Happy geo-posting!"
"Logged in: Happy pellesting!"
| _form -> Template.err (`Bad_Request, "invalid form")