add guard for reg-only pages
This commit is contained in:
parent
da2563c527
commit
a66387de22
@ -6,6 +6,7 @@ from rio import App, Theme, Color, Font, Page, Session
|
||||
from from_root import from_root
|
||||
|
||||
from src.ez_lan_manager import pages, init_services
|
||||
from src.ez_lan_manager.helpers.LoggedInGuard import logged_in_guard
|
||||
from src.ez_lan_manager.types.SessionStorage import SessionStorage
|
||||
|
||||
logger = logging.getLogger(__name__.split(".")[-1])
|
||||
@ -105,10 +106,23 @@ if __name__ == "__main__":
|
||||
page_url="forgot-password",
|
||||
build=lambda: pages.PlaceholderPage(placeholder_name="Passwort vergessen"),
|
||||
),
|
||||
Page(
|
||||
name="EditProfile",
|
||||
page_url="edit-profile",
|
||||
build=lambda: pages.PlaceholderPage(placeholder_name="Profil bearbeiten"),
|
||||
guard=logged_in_guard
|
||||
),
|
||||
Page(
|
||||
name="Account",
|
||||
page_url="account",
|
||||
build=lambda: pages.PlaceholderPage(placeholder_name="Guthabenkonto"),
|
||||
guard=logged_in_guard
|
||||
),
|
||||
Page(
|
||||
name="Logout",
|
||||
page_url="logout",
|
||||
build=pages.LogoutPage,
|
||||
guard=logged_in_guard
|
||||
)
|
||||
],
|
||||
theme=theme,
|
||||
|
||||
10
src/ez_lan_manager/helpers/LoggedInGuard.py
Normal file
10
src/ez_lan_manager/helpers/LoggedInGuard.py
Normal file
@ -0,0 +1,10 @@
|
||||
from typing import Optional
|
||||
|
||||
from rio import Session, URL
|
||||
|
||||
from src.ez_lan_manager.types.SessionStorage import SessionStorage
|
||||
|
||||
|
||||
def logged_in_guard(session: Session, _) -> Optional[URL]:
|
||||
if session[SessionStorage].user_id is None:
|
||||
return URL("./")
|
||||
Loading…
Reference in New Issue
Block a user