# Importation des bibliothèques import json import components.fonctions_transcription as TRS import streamlit as st import components.logo as logo import components.identification_aws as authenticate import datetime from datetime import datetime as date import math # Chargement du fichier des utilisateurs with open("users_info.json", 'r') as file: dict_user = json.load(file) # Logo de la page my_logo = logo.add_logo(logo_path="logo_digitalixsa.png", width=100, height=100) st.image(my_logo) # Titre de la page st.title("Limite d'utilisation de la transcription") # Calcul annee-mois de trascription maintenant = datetime.datetime.now() Year = maintenant.year Month = maintenant.month Year_Month = str(Year) + '_' + str(Month).zfill(2) # Check authentication authenticate.set_st_state_vars() # Add login/logout buttons if st.session_state["authenticated"]: authenticate.button_logout() # informations de l'utilisateur user_group = 'utilisateurs_sidwaya' user_info = st.session_state["user_info"] username = user_info['username'] user_group = st.session_state["user_cognito_groups"][0] # information de l'utilisateur user_pool_name = 'transcription_streamlit' # auth_code = st.session_state["auth_code"] # add user to users_dict and group free if username not in dict_user.keys(): dict_user[username] = {"email": user_info['email'], "durees_audio_sec":[0], "date_inscription":str(maintenant), "dates_transcription":[str(maintenant)], "abonnement":1} #group_name = 'utilisateurs_gratuits' # get user pool id #user_pool_id = authenticate.get_user_pool_id(user_pool_name) #print("User Pool ID:", user_pool_id) #authenticate.add_user_to_group(user_pool_id, username, group_name) ##### Affichage utilisation de l'utilisateur ##### figure , consommation = TRS.graphique_utilisation(dict_user, username, Year_Month) ### Utilisateur SIDWAYA if user_group == "utilisateurs_sidwaya": date_inscription = dict_user[user_info['username']]['date_inscription'] format = "%Y-%m-%d %H:%M:%S.%f" datetime_obj = date.strptime(date_inscription, format) # Calculate the difference between the two dates difference = maintenant - datetime_obj # Display the Plotly figure in Streamlit app st.plotly_chart(figure) # Affichage consommation st.text("Consommation du mois : "+ str(round(consommation/3600,2))+ "/ 20H") st.text("Duree abonnement : "+ str(math.floor(difference.days/30) +1) +"/ 12 mois") if user_group == "utilisateurs_vip": # Display the Plotly figure in Streamlit app st.plotly_chart(figure) # Affichage consommation st.text("Consommation du mois : "+ str(round(consommation/3600,2))+ "/ 20H") if user_group == "utilisateurs_gratuits": # Display the Plotly figure in Streamlit app st.plotly_chart(figure) # Affichage consommation st.text("Consommation du mois : "+ str(round(consommation/3600,2))+ "/ 20H") else: authenticate.button_login()