Social: Trainingstipp-Generator, Übungen in DB, 3 Stil-Varianten

- training_exercises Tabelle mit 13 Übungen aus App-Bibliothek
- POST /social/training-tip: Stil-Varianten tutorial/community/aspirational
- exercise_id in social_content für Wiederholungs-Tracking
- Admin-Stats: Social-Media-Sektion mit Status-Übersicht + letzte 10 Posts
- SW by-v349, APP_VER 336
This commit is contained in:
rene 2026-04-24 20:13:22 +02:00
parent ca0ce79815
commit 1cb0c2df77
8 changed files with 1497 additions and 337 deletions

View file

@ -561,12 +561,35 @@ def _migrate(conn_factory):
published_at TEXT,
source TEXT NOT NULL DEFAULT 'generated',
breed_id INTEGER REFERENCES wiki_rassen(id) ON DELETE SET NULL,
notes TEXT
coaching TEXT,
notes TEXT,
media_url TEXT,
category TEXT,
exercise_id TEXT
);
CREATE INDEX IF NOT EXISTS idx_social_content_status
ON social_content(status);
""")
# Training-Übungen (für Social Media + Auswertung)
conn.executescript("""
CREATE TABLE IF NOT EXISTS training_exercises (
id INTEGER PRIMARY KEY AUTOINCREMENT,
exercise_id TEXT NOT NULL UNIQUE,
name TEXT NOT NULL,
kategorie TEXT NOT NULL,
schwierigkeit TEXT,
alter_ab TEXT,
dauer TEXT,
beschreibung TEXT,
schritte TEXT,
tipp TEXT,
created_at TEXT NOT NULL DEFAULT (datetime('now'))
);
CREATE INDEX IF NOT EXISTS idx_training_exercises_kat
ON training_exercises(kategorie);
""")
# Knigge: Community-Votes
conn.executescript("""
CREATE TABLE IF NOT EXISTS knigge_votes (