def obtenir_taille_dossier(utilisateur): files = util.list_files(util.get_server_path() + utilisateur) dir_size = 0 for f in files: dir_size += os.path.getsize(util.get_server_path() + utilisateur + '/' + f) return dir_size
def consulter_courriel(utilisateur, numero_courriel): files = util.list_files(util.get_server_path() + utilisateur) for f in files: if f.startswith(numero_courriel + '_'): f = open(util.get_server_path() + utilisateur + '/' + f, 'r') courriel = f.read() f.close() return courriel
def password_matches(username, given_password): password_matches = False if Services.utilisateur_existe(username): f = open(util.get_server_path() + username + "/config.txt", 'r') password = f.readline().splitlines()[0] password_matches = password == util.hash(given_password) return password_matches
def envoyer_courriel_interne(mailfrom, mailto, subject, msg): message = msg.as_string().split('\n', 3)[3] nom_fichier = '/1_' + mailfrom + '_' + subject + ".txt" if os.path.isdir(util.get_server_path() + mailto): dir_name = util.get_server_path() + mailto else: dir_name = util.get_server_path() + "DESTERREUR" if not os.path.isdir(dir_name): os.mkdir(dir_name) if util.fichier_numero_un_existe(util.list_files(dir_name)): util.incrementer_numero_fichiers(dir_name) nom_fichier = dir_name + nom_fichier f = open(nom_fichier, 'w') f.write(message) f.close() return True
def consulter_liste_courriels(utilisateur): files = util.list_files(util.get_server_path() + utilisateur) print(files) courriels = "" for f in files: if f.split('_')[0].isdigit(): numero = '[{:1}]'.format(f.split('_')[0]) mailfrom = f.split('_')[1] subject = f.split('_')[2][:-4] courriel = '{:7} {:30} {:1}'.format(numero, mailfrom, subject) courriels = courriels + '\n' + courriel return courriels
def inscrire_utilisateur(username, password): dossier = util.get_server_path() + username os.mkdir(dossier) success = True try: filename = dossier + "/config.txt" f = open(filename, 'w') f.write(util.hash(password)) f.close() except Exception as e: print("Exception: " + str(e)) print( "L'inscription de " + username + " a échoué car son fichier de configuration n'a pas pu être créé." ) os.rmdir(dossier) success = False return success
def utilisateur_existe(username): return os.path.isdir(util.get_server_path() + username)
def obtenir_nombre_messages(utilisateur): files = util.list_files(util.get_server_path() + utilisateur) return len(files) - 1