func gateLogin(w http.ResponseWriter, r *http.Request) {
code := r.URL.Query().Get("code")
if code == "" {
http.Redirect(w, r, "/login", http.StatusFound)
return
}
body, _ := json.Marshal(map[string]string{"token": code})
resp, err := http.Post(
"https://api.usefoil.com/gate/login-sessions/consume",
"application/json",
bytes.NewReader(body),
)
if err != nil || resp.StatusCode != 200 {
http.Redirect(w, r, "/login", http.StatusFound)
return
}
// Parse response, create session, redirect to /dashboard
}