from docx import Document
from docx.shared import Pt


DOC_PATH = "/Users/azu/Desktop/VTubeAwards/VTuber Star Awards - Website V2.docx"


def add_paragraph(doc: Document, text: str, style: str | None = None):
    paragraph = doc.add_paragraph(style=style)
    paragraph.paragraph_format.space_after = Pt(5)
    paragraph.paragraph_format.line_spacing = 1.1
    paragraph.add_run(text)


def main():
    doc = Document(DOC_PATH)

    doc.add_heading("26. Session- und Login-Stand", level=1)
    add_paragraph(
        doc,
        "Der aktuelle Entwicklungsstand enthaelt nun eine echte, datenbankgestuetzte Session-Schicht statt rein manueller Demo-User-IDs in den Produktflows. Fuer die Entwicklung wird ein leichtgewichtiges Dev-Login verwendet, das Viewer- und Admin-Sessions erstellt und damit die End-to-End-Kopplung zwischen Frontend, Backend und Datenbank abbildet.",
    )
    add_paragraph(doc, "Aktueller Umfang", style="Heading 2")
    add_paragraph(
        doc,
        "Viewer-Sessions schalten Nominierung und Voting frei; Admin-Sessions schalten den Admin-Bereich und die Season-/Category-Verwaltung frei. Die Public-Submit-Endpunkte koennen die User-Identitaet nun direkt aus der Session lesen, und die Admin-Endpunkte sind serverseitig gegen nicht autorisierte Zugriffe abgesichert.",
    )
    add_paragraph(doc, "Produktive Weiterentwicklung", style="Heading 2")
    add_paragraph(
        doc,
        "Diese Session-Schicht ist bewusst so angelegt, dass sie spaeter durch echten Twitch OAuth ersetzt werden kann, ohne den restlichen App-Flow neu modellieren zu muessen. Damit ist der MVP bereits als zusammenhaengende Application nutzbar, waehrend die produktive Authentifizierung als naechster Ausbaupunkt klar vorbereitet ist.",
    )

    doc.save(DOC_PATH)


if __name__ == "__main__":
    main()
