Update app.py
Browse files
app.py
CHANGED
@@ -55,15 +55,23 @@ def main_interface():
|
|
55 |
"""
|
56 |
with gr.Blocks() as app_interface:
|
57 |
# Contenedores para manejo de redirecci贸n
|
58 |
-
login_page = create_auth_interface()
|
59 |
-
user_page = create_user_page()
|
60 |
-
|
61 |
-
# Control de visibilidad
|
62 |
login_container = gr.Group(visible=True)
|
63 |
user_container = gr.Group(visible=False)
|
64 |
|
|
|
|
|
|
|
|
|
65 |
# Manejo de login exitoso
|
66 |
-
def handle_login_redirect(username, role):
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
67 |
if username and role:
|
68 |
return {
|
69 |
login_container: gr.update(visible=False),
|
@@ -74,13 +82,20 @@ def main_interface():
|
|
74 |
user_container: gr.update(visible=False)
|
75 |
}
|
76 |
|
77 |
-
# Login
|
78 |
with login_container:
|
79 |
-
login_page.
|
80 |
|
81 |
-
#
|
82 |
with user_container:
|
83 |
-
user_page
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
84 |
|
85 |
return app_interface
|
86 |
|
|
|
55 |
"""
|
56 |
with gr.Blocks() as app_interface:
|
57 |
# Contenedores para manejo de redirecci贸n
|
|
|
|
|
|
|
|
|
58 |
login_container = gr.Group(visible=True)
|
59 |
user_container = gr.Group(visible=False)
|
60 |
|
61 |
+
# Crear login_page y user_page
|
62 |
+
login_page = create_auth_interface()
|
63 |
+
user_page = create_user_page()
|
64 |
+
|
65 |
# Manejo de login exitoso
|
66 |
+
def handle_login_redirect(username=None, role=None):
|
67 |
+
"""
|
68 |
+
Redirige entre la p谩gina de login y la p谩gina de usuario.
|
69 |
+
Args:
|
70 |
+
username (str): Nombre de usuario.
|
71 |
+
role (str): Rol del usuario.
|
72 |
+
Returns:
|
73 |
+
dict: Actualizaci贸n de visibilidad de los contenedores.
|
74 |
+
"""
|
75 |
if username and role:
|
76 |
return {
|
77 |
login_container: gr.update(visible=False),
|
|
|
82 |
user_container: gr.update(visible=False)
|
83 |
}
|
84 |
|
85 |
+
# Contenedor de Login
|
86 |
with login_container:
|
87 |
+
login_page.render() # Renderiza la p谩gina de login
|
88 |
|
89 |
+
# Contenedor de Usuario
|
90 |
with user_container:
|
91 |
+
user_page.render() # Renderiza la p谩gina de usuario
|
92 |
+
|
93 |
+
# Conectar el manejo del login al evento `load`
|
94 |
+
login_page.load(
|
95 |
+
fn=handle_login_redirect,
|
96 |
+
inputs=[],
|
97 |
+
outputs=[login_container, user_container]
|
98 |
+
)
|
99 |
|
100 |
return app_interface
|
101 |
|