eptm_dashboard/eptm_dashboard/eptm_dashboard.py
2026-05-10 10:07:56 +02:00

34 lines
1.8 KiB
Python

import reflex as rx
from .state import AuthState
from .pages.login import login_page
from .pages.accueil import accueil_page, AccueilState
from .pages.fiche import fiche_page, FicheState
from .pages.classe import classe_page, ClasseState
from .pages.escada import escada_page, EscadaState
from .pages.logs import logs_page, LogsState
from .pages.users import users_page, UsersState
from .pages.params import params_page, ParamsState
TITLE = "EPTM Dashboard"
app = rx.App(
stylesheets=["/responsive.css"],
head_components=[
rx.el.link(rel="icon", type="image/png", href="/favicon.png"),
],
)
def index_page() -> rx.Component:
return rx.center(rx.spinner(size="3"), height="100vh")
app.add_page(index_page, route="/", on_load=AuthState.index_redirect, title=TITLE)
app.add_page(login_page, route="/login", on_load=AuthState.redirect_if_authenticated, title=TITLE)
app.add_page(accueil_page, route="/accueil", on_load=[AuthState.check_auth, AccueilState.load_data], title=TITLE)
app.add_page(fiche_page, route="/fiche", on_load=[AuthState.check_auth, FicheState.load_data], title=TITLE)
app.add_page(classe_page, route="/classe", on_load=[AuthState.check_auth, ClasseState.load_data], title=TITLE)
app.add_page(escada_page, route="/escada", on_load=[AuthState.check_auth, EscadaState.load_data], title=TITLE)
app.add_page(logs_page, route="/logs", on_load=[AuthState.check_auth, LogsState.load_data], title=TITLE)
app.add_page(users_page, route="/users", on_load=[AuthState.check_auth, UsersState.load_data], title=TITLE)
app.add_page(params_page, route="/params", on_load=[AuthState.check_auth, ParamsState.load_data], title=TITLE)