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 from_root import from_root
|
||||||
|
|
||||||
from src.ez_lan_manager import pages, init_services
|
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
|
from src.ez_lan_manager.types.SessionStorage import SessionStorage
|
||||||
|
|
||||||
logger = logging.getLogger(__name__.split(".")[-1])
|
logger = logging.getLogger(__name__.split(".")[-1])
|
||||||
@ -105,10 +106,23 @@ if __name__ == "__main__":
|
|||||||
page_url="forgot-password",
|
page_url="forgot-password",
|
||||||
build=lambda: pages.PlaceholderPage(placeholder_name="Passwort vergessen"),
|
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(
|
Page(
|
||||||
name="Logout",
|
name="Logout",
|
||||||
page_url="logout",
|
page_url="logout",
|
||||||
build=pages.LogoutPage,
|
build=pages.LogoutPage,
|
||||||
|
guard=logged_in_guard
|
||||||
)
|
)
|
||||||
],
|
],
|
||||||
theme=theme,
|
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