fixes + guest
This commit is contained in:
+24
-2
@@ -259,6 +259,28 @@ def google_callback(request: Request, code: str = "", state: str = "", error: st
|
||||
return _render_login("Google login failed.")
|
||||
|
||||
|
||||
@router.get("/guest", response_class=HTMLResponse)
|
||||
def guest_page(request: Request):
|
||||
user = current_user(request)
|
||||
if not user:
|
||||
return RedirectResponse(url="/portal/login", status_code=303)
|
||||
# Účet s přidělenými právy sem nepatří – pošli ho na běžnou úvodní stránku.
|
||||
if (user.get("role") or "").lower() != "guest":
|
||||
return RedirectResponse(url="/portal/apps", status_code=303)
|
||||
|
||||
return page(
|
||||
"Čekání na schválení",
|
||||
"""
|
||||
<div class="card">
|
||||
<h2><i class="fa-solid fa-user-clock" aria-hidden="true"></i> Účet zatím nemá přidělená práva</h2>
|
||||
<p>Požádejte o přidělení práv administrátora.</p>
|
||||
<p class="muted">Jakmile vám administrátor přiřadí roli, obnovte stránku a portál se vám zpřístupní.</p>
|
||||
</div>
|
||||
""",
|
||||
user=user,
|
||||
)
|
||||
|
||||
|
||||
@router.post("/logout")
|
||||
def logout(request: Request):
|
||||
user = current_user(request)
|
||||
@@ -424,7 +446,7 @@ def _render_login(error: str | None = None) -> str:
|
||||
<input type="password" name="password" autocomplete="current-password" required>
|
||||
</p>
|
||||
|
||||
<button type="submit" class="btn-secondary">Sign in locally</button>
|
||||
<button type="submit" class="btn-secondary"><i class="fa-solid fa-right-to-bracket" aria-hidden="true"></i> Sign in locally</button>
|
||||
</form>
|
||||
"""
|
||||
|
||||
@@ -464,7 +486,7 @@ def _render_login(error: str | None = None) -> str:
|
||||
<input type="password" name="password" autocomplete="current-password" required>
|
||||
</p>
|
||||
|
||||
<button type="submit" class="btn-secondary">Přihlásit lokálně</button>
|
||||
<button type="submit" class="btn-secondary"><i class="fa-solid fa-right-to-bracket" aria-hidden="true"></i> Přihlásit lokálně</button>
|
||||
</form>
|
||||
</div>
|
||||
""",
|
||||
|
||||
Reference in New Issue
Block a user