source.app
1import streamlit as st 2from functions.login import Login 3from functions.login import Login 4from functions.query_executor import QueryExecutor 5from source.archives import Archives 6from source.bank_accounts import BankAccount 7from source.credit_cards import CreditCards 8from source.homepage import Home 9from source.passwords import Passwords 10from source.configuration.main import Configuration 11from source.utilities.main import Utilities 12from time import sleep 13 14 15def logout(): 16 """ 17 Realiza o logout da aplicação, deletando os registros de sessão do usuário. 18 """ 19 logged_user_name, logged_user_document = Login().get_user_data(return_option="user_doc_name") 20 logged_user, logged_user_password = Login().get_user_data(return_option="user_login_password") 21 22 delete_session_query = """DELETE usuarios_logados FROM usuarios_logados WHERE nome_completo = %s AND documento = %s;""" 23 delete_session = QueryExecutor().insert_query(query=delete_session_query, values=(logged_user_name, logged_user_document), success_message="Logout efetuado.", error_message="Erro ao efetuar logout:") 24 25 log_query = '''INSERT INTO seguranca.logs_atividades (usuario_log, tipo_log, conteudo_log) VALUES ( %s, %s, %s);''' 26 log_values = (logged_user, "Logoff", "O usuário realizou logoff.") 27 QueryExecutor().insert_query(log_query, log_values, "Log gravado.", "Erro ao gravar log:") 28 29 with st.spinner("Aguarde um momento..."): 30 sleep(1.25) 31 st.toast("Saindo do sistema...") 32 sleep(1.25) 33 34 st.session_state.is_logged_in = False 35 st.rerun() 36 37 38def HomePage(): 39 """ 40 Exibe a barra lateral e seu menu de opções. 41 """ 42 sidebar = st.sidebar 43 44 with sidebar: 45 logged_user, logged_user_password = Login().get_user_data(return_option="user_doc_name") 46 name, sex = Login().check_user(logged_user, logged_user_password) 47 Login().show_user(name, sex) 48 49 sidebar_menu_dictionary = { 50 "Selecione uma opção": Home(), 51 "Senhas": Passwords(), 52 "Arquivos": Archives(), 53 "Cartões": CreditCards(), 54 "Contas Bancárias": BankAccount(), 55 "Configurações": Configuration(), 56 "Utilitários": Utilities() 57 } 58 59 sidebar_choice = st.sidebar.selectbox(label="Menu", options=sidebar_menu_dictionary.keys()) 60 61 sidebar.divider() 62 63 sidebar_reload_button = sidebar.button(label=":cd: Recarregar") 64 sidebar_logoff_button = sidebar.button(label=":lock: Sair") 65 66 if sidebar_reload_button: 67 with sidebar: 68 with st.spinner(text="Recarregando..."): 69 sleep(2.5) 70 st.rerun() 71 72 if sidebar_logoff_button: 73 74 with sidebar: 75 logout() 76 77 if sidebar_choice: 78 call_interface = sidebar_menu_dictionary[sidebar_choice] 79 call_interface.main_menu()
def
logout():
16def logout(): 17 """ 18 Realiza o logout da aplicação, deletando os registros de sessão do usuário. 19 """ 20 logged_user_name, logged_user_document = Login().get_user_data(return_option="user_doc_name") 21 logged_user, logged_user_password = Login().get_user_data(return_option="user_login_password") 22 23 delete_session_query = """DELETE usuarios_logados FROM usuarios_logados WHERE nome_completo = %s AND documento = %s;""" 24 delete_session = QueryExecutor().insert_query(query=delete_session_query, values=(logged_user_name, logged_user_document), success_message="Logout efetuado.", error_message="Erro ao efetuar logout:") 25 26 log_query = '''INSERT INTO seguranca.logs_atividades (usuario_log, tipo_log, conteudo_log) VALUES ( %s, %s, %s);''' 27 log_values = (logged_user, "Logoff", "O usuário realizou logoff.") 28 QueryExecutor().insert_query(log_query, log_values, "Log gravado.", "Erro ao gravar log:") 29 30 with st.spinner("Aguarde um momento..."): 31 sleep(1.25) 32 st.toast("Saindo do sistema...") 33 sleep(1.25) 34 35 st.session_state.is_logged_in = False 36 st.rerun()
Realiza o logout da aplicação, deletando os registros de sessão do usuário.
def
HomePage():
39def HomePage(): 40 """ 41 Exibe a barra lateral e seu menu de opções. 42 """ 43 sidebar = st.sidebar 44 45 with sidebar: 46 logged_user, logged_user_password = Login().get_user_data(return_option="user_doc_name") 47 name, sex = Login().check_user(logged_user, logged_user_password) 48 Login().show_user(name, sex) 49 50 sidebar_menu_dictionary = { 51 "Selecione uma opção": Home(), 52 "Senhas": Passwords(), 53 "Arquivos": Archives(), 54 "Cartões": CreditCards(), 55 "Contas Bancárias": BankAccount(), 56 "Configurações": Configuration(), 57 "Utilitários": Utilities() 58 } 59 60 sidebar_choice = st.sidebar.selectbox(label="Menu", options=sidebar_menu_dictionary.keys()) 61 62 sidebar.divider() 63 64 sidebar_reload_button = sidebar.button(label=":cd: Recarregar") 65 sidebar_logoff_button = sidebar.button(label=":lock: Sair") 66 67 if sidebar_reload_button: 68 with sidebar: 69 with st.spinner(text="Recarregando..."): 70 sleep(2.5) 71 st.rerun() 72 73 if sidebar_logoff_button: 74 75 with sidebar: 76 logout() 77 78 if sidebar_choice: 79 call_interface = sidebar_menu_dictionary[sidebar_choice] 80 call_interface.main_menu()
Exibe a barra lateral e seu menu de opções.