Update app.py
Browse files
app.py
CHANGED
|
@@ -90,7 +90,7 @@ def main():
|
|
| 90 |
###################################################################################################################
|
| 91 |
def logged_in_interface():
|
| 92 |
languages = {'Español': 'es', 'English': 'en', 'Français': 'fr'}
|
| 93 |
-
|
| 94 |
translations = {
|
| 95 |
'es': {
|
| 96 |
'welcome': "Bienvenido",
|
|
@@ -111,27 +111,31 @@ def logged_in_interface():
|
|
| 111 |
'tabs': ["Analyse morphosyntaxique", "Analyse sémantique", "Analyse du discours", "Chat avec Llama2", "Mon Progrès", "Formulaire de Rétroaction"]
|
| 112 |
}
|
| 113 |
}
|
|
|
|
| 114 |
# Inicializar el idioma si no está establecido
|
| 115 |
if 'current_lang' not in st.session_state:
|
| 116 |
st.session_state.current_lang = 'es' # Idioma por defecto
|
| 117 |
-
|
| 118 |
# Crear un contenedor para la barra superior
|
| 119 |
with st.container():
|
| 120 |
# Usar más columnas para un mejor control del espacio
|
| 121 |
col1, col2, col3, col4, col5 = st.columns([1, 1, 0.8, 1, 1])
|
| 122 |
with col1:
|
| 123 |
-
st.markdown(f"<h3 style='margin-bottom: 0;'>
|
| 124 |
with col3:
|
| 125 |
-
st.markdown("<p style='font-size: 1.2rem; margin-bottom: 0; padding-top: 15px;'>
|
| 126 |
with col4:
|
| 127 |
st.markdown("<div style='padding-top: 15px;'>", unsafe_allow_html=True)
|
| 128 |
-
selected_lang = st.selectbox("", list(languages.keys()), key="language_selector", label_visibility="collapsed")
|
| 129 |
st.markdown("</div>", unsafe_allow_html=True)
|
| 130 |
lang_code = languages[selected_lang]
|
|
|
|
|
|
|
|
|
|
| 131 |
|
| 132 |
with col5:
|
| 133 |
st.markdown("<div style='padding-top: 15px;'>", unsafe_allow_html=True)
|
| 134 |
-
if st.button(
|
| 135 |
st.session_state.logged_in = False
|
| 136 |
st.experimental_rerun()
|
| 137 |
st.markdown("</div>", unsafe_allow_html=True)
|
|
@@ -139,20 +143,21 @@ def logged_in_interface():
|
|
| 139 |
# Añadir una línea divisoria
|
| 140 |
st.markdown("---")
|
| 141 |
|
| 142 |
-
|
|
|
|
| 143 |
|
| 144 |
with tab1:
|
| 145 |
-
display_morphosyntax_analysis_interface(nlp_models,
|
| 146 |
with tab2:
|
| 147 |
-
display_semantic_analysis_interface(nlp_models,
|
| 148 |
with tab3:
|
| 149 |
-
display_discourse_analysis_interface(nlp_models,
|
| 150 |
with tab4:
|
| 151 |
-
display_chatbot_interface(
|
| 152 |
with tab5:
|
| 153 |
-
display_student_progress(st.session_state.username,
|
| 154 |
with tab6:
|
| 155 |
-
display_feedback_form(
|
| 156 |
|
| 157 |
###################################################################################################################
|
| 158 |
if __name__ == "__main__":
|
|
|
|
| 90 |
###################################################################################################################
|
| 91 |
def logged_in_interface():
|
| 92 |
languages = {'Español': 'es', 'English': 'en', 'Français': 'fr'}
|
| 93 |
+
|
| 94 |
translations = {
|
| 95 |
'es': {
|
| 96 |
'welcome': "Bienvenido",
|
|
|
|
| 111 |
'tabs': ["Analyse morphosyntaxique", "Analyse sémantique", "Analyse du discours", "Chat avec Llama2", "Mon Progrès", "Formulaire de Rétroaction"]
|
| 112 |
}
|
| 113 |
}
|
| 114 |
+
|
| 115 |
# Inicializar el idioma si no está establecido
|
| 116 |
if 'current_lang' not in st.session_state:
|
| 117 |
st.session_state.current_lang = 'es' # Idioma por defecto
|
| 118 |
+
|
| 119 |
# Crear un contenedor para la barra superior
|
| 120 |
with st.container():
|
| 121 |
# Usar más columnas para un mejor control del espacio
|
| 122 |
col1, col2, col3, col4, col5 = st.columns([1, 1, 0.8, 1, 1])
|
| 123 |
with col1:
|
| 124 |
+
st.markdown(f"<h3 style='margin-bottom: 0;'>{translations[st.session_state.current_lang]['welcome']}, {st.session_state.username}</h3>", unsafe_allow_html=True)
|
| 125 |
with col3:
|
| 126 |
+
st.markdown(f"<p style='font-size: 1.2rem; margin-bottom: 0; padding-top: 15px;'>{translations[st.session_state.current_lang]['select_language']}</p>", unsafe_allow_html=True)
|
| 127 |
with col4:
|
| 128 |
st.markdown("<div style='padding-top: 15px;'>", unsafe_allow_html=True)
|
| 129 |
+
selected_lang = st.selectbox("", list(languages.keys()), key="language_selector", label_visibility="collapsed", index=list(languages.values()).index(st.session_state.current_lang))
|
| 130 |
st.markdown("</div>", unsafe_allow_html=True)
|
| 131 |
lang_code = languages[selected_lang]
|
| 132 |
+
if st.session_state.current_lang != lang_code:
|
| 133 |
+
st.session_state.current_lang = lang_code
|
| 134 |
+
st.experimental_rerun()
|
| 135 |
|
| 136 |
with col5:
|
| 137 |
st.markdown("<div style='padding-top: 15px;'>", unsafe_allow_html=True)
|
| 138 |
+
if st.button(translations[st.session_state.current_lang]['logout'], key="logout_button"):
|
| 139 |
st.session_state.logged_in = False
|
| 140 |
st.experimental_rerun()
|
| 141 |
st.markdown("</div>", unsafe_allow_html=True)
|
|
|
|
| 143 |
# Añadir una línea divisoria
|
| 144 |
st.markdown("---")
|
| 145 |
|
| 146 |
+
# Usar los nombres de tabs traducidos
|
| 147 |
+
tab1, tab2, tab3, tab4, tab5, tab6 = st.tabs(translations[st.session_state.current_lang]['tabs'])
|
| 148 |
|
| 149 |
with tab1:
|
| 150 |
+
display_morphosyntax_analysis_interface(nlp_models, st.session_state.current_lang)
|
| 151 |
with tab2:
|
| 152 |
+
display_semantic_analysis_interface(nlp_models, st.session_state.current_lang)
|
| 153 |
with tab3:
|
| 154 |
+
display_discourse_analysis_interface(nlp_models, st.session_state.current_lang)
|
| 155 |
with tab4:
|
| 156 |
+
display_chatbot_interface(st.session_state.current_lang)
|
| 157 |
with tab5:
|
| 158 |
+
display_student_progress(st.session_state.username, st.session_state.current_lang)
|
| 159 |
with tab6:
|
| 160 |
+
display_feedback_form(st.session_state.current_lang)
|
| 161 |
|
| 162 |
###################################################################################################################
|
| 163 |
if __name__ == "__main__":
|