Restructure: Move 43 files into 8 domain packages (backend-lehrer)
Some checks failed
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-school (push) Successful in 27s
CI / test-go-edu-search (push) Successful in 40s
CI / test-python-klausur (push) Failing after 2m30s
CI / test-python-agent-core (push) Successful in 28s
CI / test-nodejs-website (push) Successful in 20s

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Benjamin Admin
2026-04-25 22:32:45 +02:00
parent 165c493d1e
commit dde45b29db
93 changed files with 9469 additions and 9290 deletions

View File

@@ -1,105 +1,4 @@
"""
Messenger API - Data Helpers.
JSON-based file storage for contacts, conversations, messages, and groups.
"""
import json
from typing import List, Dict
from pathlib import Path
# Datenspeicherung (JSON-basiert fuer einfache Persistenz)
DATA_DIR = Path(__file__).parent / "data" / "messenger"
DATA_DIR.mkdir(parents=True, exist_ok=True)
CONTACTS_FILE = DATA_DIR / "contacts.json"
CONVERSATIONS_FILE = DATA_DIR / "conversations.json"
MESSAGES_FILE = DATA_DIR / "messages.json"
GROUPS_FILE = DATA_DIR / "groups.json"
def load_json(filepath: Path) -> List[Dict]:
"""Laedt JSON-Daten aus Datei."""
if not filepath.exists():
return []
try:
with open(filepath, "r", encoding="utf-8") as f:
return json.load(f)
except Exception:
return []
def save_json(filepath: Path, data: List[Dict]):
"""Speichert Daten in JSON-Datei."""
with open(filepath, "w", encoding="utf-8") as f:
json.dump(data, f, ensure_ascii=False, indent=2)
def get_contacts() -> List[Dict]:
return load_json(CONTACTS_FILE)
def save_contacts(contacts: List[Dict]):
save_json(CONTACTS_FILE, contacts)
def get_conversations() -> List[Dict]:
return load_json(CONVERSATIONS_FILE)
def save_conversations(conversations: List[Dict]):
save_json(CONVERSATIONS_FILE, conversations)
def get_messages() -> List[Dict]:
return load_json(MESSAGES_FILE)
def save_messages(messages: List[Dict]):
save_json(MESSAGES_FILE, messages)
def get_groups() -> List[Dict]:
return load_json(GROUPS_FILE)
def save_groups(groups: List[Dict]):
save_json(GROUPS_FILE, groups)
# ==========================================
# DEFAULT TEMPLATES
# ==========================================
DEFAULT_TEMPLATES = [
{
"id": "1",
"name": "Terminbestaetigung",
"content": "Vielen Dank fuer Ihre Terminanfrage. Ich bestaetige den Termin am [DATUM] um [UHRZEIT]. Bitte geben Sie mir Bescheid, falls sich etwas aendern sollte.",
"category": "termin"
},
{
"id": "2",
"name": "Hausaufgaben-Info",
"content": "Zur Information: Die Hausaufgaben fuer diese Woche umfassen [THEMA]. Abgabetermin ist [DATUM]. Bei Fragen stehe ich gerne zur Verfuegung.",
"category": "hausaufgaben"
},
{
"id": "3",
"name": "Entschuldigung bestaetigen",
"content": "Ich bestaetige den Erhalt der Entschuldigung fuer [NAME] am [DATUM]. Die Fehlzeiten wurden entsprechend vermerkt.",
"category": "entschuldigung"
},
{
"id": "4",
"name": "Gespraechsanfrage",
"content": "Ich wuerde gerne einen Termin fuer ein Gespraech mit Ihnen vereinbaren, um [THEMA] zu besprechen. Waeren Sie am [DATUM] um [UHRZEIT] verfuegbar?",
"category": "gespraech"
},
{
"id": "5",
"name": "Krankmeldung bestaetigen",
"content": "Vielen Dank fuer Ihre Krankmeldung fuer [NAME]. Ich wuensche gute Besserung. Bitte reichen Sie eine schriftliche Entschuldigung nach, sobald Ihr Kind wieder gesund ist.",
"category": "krankmeldung"
}
]
# Backward-compat shim -- module moved to messenger/helpers.py
import importlib as _importlib
import sys as _sys
_sys.modules[__name__] = _importlib.import_module("messenger.helpers")