Vicy_Publique/utils/data_manager.py

36 lines
1.5 KiB
Python
Raw Permalink Normal View History

2026-08-16 19:37:15 +02:00
import json
import os
from datetime import datetime, timedelta
class DataManager:
def __init__(self):
"""Initialise le gestionnaire de données et charge les identités existantes."""
self.file_path = os.path.join(os.path.dirname(__file__), "../ressources/data.json")
self.identities = self.load_data() # Charge les données existantes
def load_data(self):
"""Charge les identités depuis le fichier JSON."""
if not os.path.exists(self.file_path):
print(f"⚠️ Fichier {self.file_path} introuvable. Création d'un nouveau fichier...")
self.save_data() # Crée un fichier vide
return {}
try:
with open(self.file_path, "r", encoding="utf-8") as f:
data = json.load(f)
return data.get("identities", {})
except (json.JSONDecodeError, IOError) as e:
print(f"❌ Erreur lors du chargement des données : {e}")
return {}
def save_data(self):
"""Sauvegarde les identités dans un fichier JSON."""
try:
os.makedirs(os.path.dirname(self.file_path), exist_ok=True)
with open(self.file_path, "w", encoding="utf-8") as f:
json.dump({"identities": self.identities}, f, ensure_ascii=False, indent=4)
print(f"✅ Données sauvegardées dans {self.file_path}")
except IOError as e:
print(f"❌ Erreur lors de la sauvegarde des données : {e}")