"""
Erwartungshorizont Templates — Eroerterung template.
"""

from .eh_templates_types import EHTemplate, EHKriterium


def get_eroerterung_template() -> EHTemplate:
    """Template for textgebundene Eroerterung."""
    return EHTemplate(
        id="template_eroerterung_textgebunden",
        aufgabentyp="eroerterung_textgebunden",
        name="Textgebundene Eroerterung",
        beschreibung="Vorlage fuer die textgebundene Eroerterung auf Basis eines Sachtextes",
        kriterien=[
            EHKriterium(
                id="inhalt",
                name="Inhaltliche Leistung",
                beschreibung="Qualitaet der Argumentation",
                gewichtung=40,
                erwartungen=[
                    "Korrekte Wiedergabe der Textposition",
                    "Differenzierte eigene Argumentation",
                    "Vielfaeltige und ueberzeugende Argumente",
                    "Beruecksichtigung von Pro und Contra",
                    "Sinnvolle Beispiele und Belege",
                    "Eigenstaendige Schlussfolgerung"
                ]
            ),
            EHKriterium(
                id="struktur",
                name="Aufbau und Struktur",
                beschreibung="Logischer Aufbau der Eroerterung",
                gewichtung=15,
                erwartungen=[
                    "Problemorientierte Einleitung",
                    "Klare Gliederung der Argumentation",
                    "Logische Argumentationsfolge",
                    "Sinnvolle Ueberlaetze",
                    "Begruendetes Fazit"
                ]
            ),
            EHKriterium(
                id="textbezug",
                name="Textbezug",
                beschreibung="Verknuepfung mit dem Ausgangstext",
                gewichtung=15,
                erwartungen=[
                    "Angemessene Textwiedergabe",
                    "Kritische Auseinandersetzung mit Textposition",
                    "Korrekte Zitierweise",
                    "Verknuepfung eigener Argumente mit Text"
                ]
            ),
            EHKriterium(
                id="rechtschreibung",
                name="Sprachliche Richtigkeit (Rechtschreibung)",
                beschreibung="Orthografische Korrektheit",
                gewichtung=15,
                erwartungen=[
                    "Korrekte Rechtschreibung",
                    "Korrekte Gross- und Kleinschreibung"
                ]
            ),
            EHKriterium(
                id="grammatik",
                name="Sprachliche Richtigkeit (Grammatik)",
                beschreibung="Grammatische Korrektheit und Zeichensetzung",
                gewichtung=15,
                erwartungen=[
                    "Korrekter Satzbau",
                    "Korrekte Zeichensetzung",
                    "Variationsreicher Ausdruck"
                ]
            )
        ],
        einleitung_hinweise=[
            "Hinfuehrung zum Thema",
            "Nennung des Ausgangstextes",
            "Formulierung der Leitfrage/These",
            "Ueberleitung zum Hauptteil"
        ],
        hauptteil_hinweise=[
            "Kurze Wiedergabe der Textposition",
            "Systematische Argumentation (dialektisch oder linear)",
            "Jedes Argument: These - Begruendung - Beispiel",
            "Gewichtung der Argumente",
            "Verknuepfung mit Textposition"
        ],
        schluss_hinweise=[
            "Zusammenfassung der wichtigsten Argumente",
            "Eigene begruendete Stellungnahme",
            "Ggf. Ausblick oder Appell"
        ],
        sprachliche_aspekte=[
            "Argumentative Konnektoren verwenden",
            "Sachlicher, ueberzeugender Stil",
            "Eigene Meinung kennzeichnen",
            "Konjunktiv fuer Textpositionen"
        ]
    )
