import json import os from datetime import datetime, timedelta class DataManager: """ Gère la sauvegarde et le chargement des données. """ def __init__(self): self.identities = {} self.load_data() def save_data(self): """ Sauvegarde les identités dans un fichier JSON. """ try: with open('ressources/data.json', 'w', encoding='utf-8') as f: json.dump({'identities': self.identities}, f, ensure_ascii=False, indent=4) except Exception as e: print(f"Erreur lors de la sauvegarde des données: {e}") def load_data(self): """ Charge les identités depuis un fichier JSON. """ try: if os.path.exists('ressources/data.json'): with open('ressources/data.json', 'r', encoding='utf-8') as f: data = json.load(f) self.identities = data.get('identities', {}) except Exception as e: print(f"Erreur lors du chargement des données: {e}") self.identities = {} 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}")