Add an /api/authcheck and use it to toggle logout/login link on top header.
This commit is contained in:
parent
c2123ff741
commit
fcb71add03
3 changed files with 15 additions and 2 deletions
|
|
@ -15,6 +15,12 @@ import (
|
||||||
. "MY/webapp/common"
|
. "MY/webapp/common"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
func GetApiAuthCheck(c *fiber.Ctx) error {
|
||||||
|
_, err := CheckAuthed(c, false)
|
||||||
|
// auth failure or not authed is determined by err, with nil meaning YES AUTHED
|
||||||
|
return c.JSON(fiber.Map{"is_authed": err == nil})
|
||||||
|
}
|
||||||
|
|
||||||
func GetApiLogout(c *fiber.Ctx) error {
|
func GetApiLogout(c *fiber.Ctx) error {
|
||||||
err := LogoutUser(c)
|
err := LogoutUser(c)
|
||||||
if err != nil { return IfErrNil(err, c) }
|
if err != nil { return IfErrNil(err, c) }
|
||||||
|
|
|
||||||
|
|
@ -97,6 +97,7 @@ func Setup(app *fiber.App) {
|
||||||
app.Post("/api/link", PostApiLink)
|
app.Post("/api/link", PostApiLink)
|
||||||
|
|
||||||
// api/auth.go
|
// api/auth.go
|
||||||
|
app.Get("/api/authcheck", GetApiAuthCheck)
|
||||||
app.Get("/api/logout", GetApiLogout)
|
app.Get("/api/logout", GetApiLogout)
|
||||||
app.Post("/api/register", PostApiRegister)
|
app.Post("/api/register", PostApiRegister)
|
||||||
app.Post("/api/login", PostApiLogin)
|
app.Post("/api/login", PostApiLogin)
|
||||||
|
|
|
||||||
|
|
@ -16,7 +16,8 @@
|
||||||
<title>ZedShaw.games</title>
|
<title>ZedShaw.games</title>
|
||||||
</head>
|
</head>
|
||||||
<body id="top" data-testid="{{.PageId}}">
|
<body id="top" data-testid="{{.PageId}}">
|
||||||
<header>
|
<header x-data="{auth: false}"
|
||||||
|
x-init="auth = await GetJson('/api/authcheck')">
|
||||||
<nav>
|
<nav>
|
||||||
<a id="home" href="/">
|
<a id="home" href="/">
|
||||||
<svg xmlns="http://www.w3.org/2000/svg"
|
<svg xmlns="http://www.w3.org/2000/svg"
|
||||||
|
|
@ -30,7 +31,12 @@
|
||||||
<a id="stream" href="/stream/">Streams</a>
|
<a id="stream" href="/stream/">Streams</a>
|
||||||
<a id="game" href="/game/">Games</a>
|
<a id="game" href="/game/">Games</a>
|
||||||
<a id="register" href="/register/">Register</a>
|
<a id="register" href="/register/">Register</a>
|
||||||
<a id="login" href="/login/">Login</a>
|
<template x-if="auth.is_authed">
|
||||||
|
<a id="logout" href="/api/logout">Logout</a>
|
||||||
|
</template>
|
||||||
|
<template x-if="!auth.is_authed">
|
||||||
|
<a id="login" href="/login/">Login</a>
|
||||||
|
</template>
|
||||||
</nav>
|
</nav>
|
||||||
</header>
|
</header>
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue