import djclick as click
from wagtail.models import Page

from vbv_lernwelt.competence.create_default_competence_profile import (
    create_default_competence_profile,
)
from vbv_lernwelt.competence.create_uk_competence_profile import (
    create_uk_competence_profile,
)
from vbv_lernwelt.core.create_default_users import default_users
from vbv_lernwelt.core.models import User
from vbv_lernwelt.course.consts import (
    COURSE_TEST_ID,
    COURSE_UK1,
    COURSE_VERSICHERUNGSVERMITTLERIN_ID,
)
from vbv_lernwelt.course.creators.test_course import create_test_course
from vbv_lernwelt.course.creators.versicherungsvermittlerin import (
    create_versicherungsvermittlerin_with_categories,
)
from vbv_lernwelt.course.management.commands.create_uk_course import (
    create_uk_learning_path,
)
from vbv_lernwelt.course.models import CourseSession, CourseSessionUser
from vbv_lernwelt.course.services import mark_course_completion
from vbv_lernwelt.learnpath.create_default_learning_path import (
    create_default_learning_path,
)
from vbv_lernwelt.learnpath.models import Circle
from vbv_lernwelt.media_library.create_default_documents import (
    create_default_collections,
    create_default_documents,
)
from vbv_lernwelt.media_library.create_default_media_library import (
    create_default_media_library,
)


@click.command()
def command():
    # Versicherungsvermittler/in
    create_versicherungsvermittlerin_with_categories()
    create_default_learning_path()
    create_default_competence_profile()

    # media library data
    create_default_collections()
    create_default_documents()

    create_default_media_library()

    # Versicherungsvermittler/in
    create_versicherungsvermittlerin_with_categories(
        course_id=COURSE_UK1, title="Überbetriebliche Kurse"
    )
    create_uk_learning_path(course_id=COURSE_UK1)
    create_uk_competence_profile(course_id=COURSE_UK1)
    create_default_media_library(course_id=COURSE_UK1)

    # test course
    create_test_course()

    # course sessions
    CourseSession.objects.create(
        course_id=COURSE_TEST_ID,
        title="Test Lehrgang Session",
    )

    # course session Versicherungsvermittler/in
    cs = CourseSession.objects.create(
        course_id=COURSE_VERSICHERUNGSVERMITTLERIN_ID,
        title="Versicherungsvermittler/-in",
    )
    for user_data in default_users:
        CourseSessionUser.objects.create(
            course_session=cs,
            user=User.objects.get(username=user_data["email"]),
        )
    csu = CourseSessionUser.objects.create(
        course_session=cs,
        user=User.objects.get(username="student-vv@eiger-versicherungen.ch"),
    )
    csu = CourseSessionUser.objects.create(
        course_session=cs,
        user=User.objects.get(username="expert-vv.einstieg@eiger-versicherungen.ch"),
        role=CourseSessionUser.Role.EXPERT,
    )
    csu.expert.add(
        Circle.objects.get(slug="versicherungsvermittler-in-lp-circle-einstieg")
    )
    csu = CourseSessionUser.objects.create(
        course_session=cs,
        user=User.objects.get(username="expert-vv.analyse@eiger-versicherungen.ch"),
        role=CourseSessionUser.Role.EXPERT,
    )
    csu.expert.add(
        Circle.objects.get(slug="versicherungsvermittler-in-lp-circle-basis")
    )

    # course session Überbetriebliche Kurse Lehrjahr 1 - Region Bern
    cs = CourseSession.objects.create(
        course_id=COURSE_UK1,
        title="Überbetriebliche Kurse Lehrjahr 1 - Region Bern",
    )
    # for user_data in default_users:
    #     CourseSessionUser.objects.create(
    #         course_session=cs,
    #         user=User.objects.get(username=user_data["email"]),
    #     )
    # csu = CourseSessionUser.objects.create(
    #     course_session=cs,
    #     user=User.objects.get(username="trainer-uk1.einstieg@eiger-versicherungen.ch"),
    # )
    # csu.expert.add(Circle.objects.get(slug="überbetriebliche-kurse-lp-circle-einstieg"))
    # csu = CourseSessionUser.objects.create(
    #     course_session=cs,
    #     user=User.objects.get(username="trainer-uk1.analyse@eiger-versicherungen.ch"),
    # )
    # csu.expert.add(Circle.objects.get(slug="überbetriebliche-kurse-lp-circle-analyse"))
    # csu = CourseSessionUser.objects.create(
    #     course_session=cs,
    #     user=User.objects.get(username="student-uk1-bern@eiger-versicherungen.ch"),
    # )

    # figma demo users and data
    csu = CourseSessionUser.objects.create(
        course_session=cs,
        user=User.objects.get(username="patrizia.huggel@eiger-versicherungen.ch"),
        role=CourseSessionUser.Role.EXPERT,
    )
    csu.expert.add(Circle.objects.get(slug="überbetriebliche-kurse-lp-circle-kickoff"))
    csu.expert.add(
        Circle.objects.get(slug="überbetriebliche-kurse-lp-circle-haushalt-teil-1")
    )
    csu.expert.add(Circle.objects.get(slug="überbetriebliche-kurse-lp-circle-fahrzeug"))
    csu = CourseSessionUser.objects.create(
        course_session=cs,
        user=User.objects.get(username="michael.meier@example.com"),
    )
    csu = CourseSessionUser.objects.create(
        course_session=cs,
        user=User.objects.get(username="lina.egger@example.com"),
    )
    csu = CourseSessionUser.objects.create(
        course_session=cs,
        user=User.objects.get(username="evelyn.schmid@example.com"),
    )

    # course session Überbetriebliche Kurse Lehrjahr 1 - Region Zürich
    cs = CourseSession.objects.create(
        course_id=COURSE_UK1,
        title="Überbetriebliche Kurse Lehrjahr 1 - Region Zürich",
    )
    # for user_data in default_users:
    #     CourseSessionUser.objects.create(
    #         course_session=cs,
    #         user=User.objects.get(username=user_data["email"]),
    #     )
    csu = CourseSessionUser.objects.create(
        course_session=cs,
        user=User.objects.get(username="trainer-uk1.einstieg@eiger-versicherungen.ch"),
        role=CourseSessionUser.Role.EXPERT,
    )
    csu.expert.add(Circle.objects.get(slug="überbetriebliche-kurse-lp-circle-basis"))
    csu = CourseSessionUser.objects.create(
        course_session=cs,
        user=User.objects.get(username="trainer-uk1.analyse@eiger-versicherungen.ch"),
        role=CourseSessionUser.Role.EXPERT,
    )
    csu.expert.add(
        Circle.objects.get(slug="überbetriebliche-kurse-lp-circle-haushalt-teil-2")
    )
    csu = CourseSessionUser.objects.create(
        course_session=cs,
        user=User.objects.get(username="student-uk1-zurich@eiger-versicherungen.ch"),
    )

    # initial completion data
    for (slug, status, email) in [
        (
            "überbetriebliche-kurse-competence-crit-a21-allgemein",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-mediathek",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-luca-organisiert-seinen-arbeitsalltag",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-luca-legt-sich-seine-lernstrategie-zurecht",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-fachcheck-arbeits-und-lerntechnik",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-competence-crit-a22-allgemein",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-mediathek-1",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-luca-startet-durch",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-fachcheck-allgemeines-zu-versicherungen",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-competence-crit-a23-allgemein",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-mediathek-2",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-luca-macht-sich-fit-im-verkauf",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-fachcheck-beratung-und-verkauf",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-competence-crit-a24-allgemein",
            "fail",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-mediathek-3",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-lerninhalt-offen",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-fachcheck-sozialer-auftritt",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-willkommen-im-ük",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-competence-crit-a25-allgemein",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-mediathek-4",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-lerninhalt-offen-1",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-fachcheck-sozialer-auftritt-1",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-hier-entsteht-die-lernsequenz-beenden",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-willkommen-im-ük",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-competence-crit-a24-allgemein-1",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-mediathek",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-luca-organisiert-seinen-arbeitsalltag",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-luca-legt-sich-seine-lernstrategie-zurecht",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-fachcheck-arbeits-und-lerntechnik",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-competence-crit-a25-allgemein-1",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-mediathek-1",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-luca-startet-durch",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-fachcheck-allgemeines-zu-versicherungen",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-competence-crit-a23-allgemein-1",
            "fail",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-mediathek-2",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-luca-macht-sich-fit-im-verkauf",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-fachcheck-beratung-und-verkauf",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-competence-crit-a23-allgemein-2",
            "fail",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-mediathek-3",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-mediathek-4",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-willkommen-im-ük",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-mediathek",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-luca-organisiert-seinen-arbeitsalltag",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-luca-legt-sich-seine-lernstrategie-zurecht",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-fachcheck-arbeits-und-lerntechnik",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-mediathek-1",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-mediathek-2",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-luca-macht-sich-fit-im-verkauf",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-mediathek-3",
            "success",
            "michael.meier@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-willkommen-im-ük",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-competence-crit-a21-allgemein",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-mediathek",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-luca-organisiert-seinen-arbeitsalltag",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-luca-legt-sich-seine-lernstrategie-zurecht",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-fachcheck-arbeits-und-lerntechnik",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-competence-crit-a22-allgemein",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-mediathek-1",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-luca-startet-durch",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-fachcheck-allgemeines-zu-versicherungen",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-competence-crit-a23-allgemein",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-mediathek-2",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-luca-macht-sich-fit-im-verkauf",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-fachcheck-beratung-und-verkauf",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-competence-crit-a24-allgemein",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-mediathek-3",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-lerninhalt-offen",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-fachcheck-sozialer-auftritt",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-competence-crit-a25-allgemein",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-mediathek-4",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-lerninhalt-offen-1",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-fachcheck-sozialer-auftritt-1",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-hier-entsteht-die-lernsequenz-beenden",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-willkommen-im-ük",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-competence-crit-a24-allgemein-1",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-mediathek",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-luca-organisiert-seinen-arbeitsalltag",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-luca-legt-sich-seine-lernstrategie-zurecht",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-fachcheck-arbeits-und-lerntechnik",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-competence-crit-a25-allgemein-1",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-mediathek-1",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-luca-startet-durch",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-fachcheck-allgemeines-zu-versicherungen",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-competence-crit-a23-allgemein-1",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-competence-crit-a23-allgemein-2",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-mediathek-2",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-luca-macht-sich-fit-im-verkauf",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-fachcheck-beratung-und-verkauf",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-mediathek-3",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-lerninhalt-offen",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-fachcheck-sozialer-auftritt",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-competence-crit-a24-allgemein-2",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-mediathek-4",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-lerninhalt-offen-1",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-fachcheck-sozialer-auftritt-1",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-hier-entsteht-die-lernsequenz-beenden",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-willkommen-im-ük",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-mediathek",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-luca-organisiert-seinen-arbeitsalltag",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-luca-legt-sich-seine-lernstrategie-zurecht",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-fachcheck-arbeits-und-lerntechnik",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-mediathek-1",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-luca-startet-durch",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-fachcheck-allgemeines-zu-versicherungen",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-mediathek-3",
            "success",
            "lina.egger@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-willkommen-im-ük",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-competence-crit-a21-allgemein",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-mediathek",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-luca-organisiert-seinen-arbeitsalltag",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-luca-legt-sich-seine-lernstrategie-zurecht",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-fachcheck-arbeits-und-lerntechnik",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-competence-crit-a22-allgemein",
            "fail",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-mediathek-1",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-luca-startet-durch",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-fachcheck-allgemeines-zu-versicherungen",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-competence-crit-a23-allgemein",
            "fail",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-mediathek-2",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-luca-macht-sich-fit-im-verkauf",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-fachcheck-beratung-und-verkauf",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-competence-crit-a24-allgemein",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-mediathek-3",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-lerninhalt-offen",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-fachcheck-sozialer-auftritt",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-competence-crit-a25-allgemein",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-kickoff-lc-mediathek-4",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-willkommen-im-ük",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-competence-crit-a24-allgemein-1",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-mediathek",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-luca-legt-sich-seine-lernstrategie-zurecht",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-luca-organisiert-seinen-arbeitsalltag",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-fachcheck-arbeits-und-lerntechnik",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-competence-crit-a25-allgemein-1",
            "fail",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-mediathek-1",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-luca-startet-durch",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-fachcheck-allgemeines-zu-versicherungen",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-competence-crit-a23-allgemein-1",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-competence-crit-a23-allgemein-2",
            "fail",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-mediathek-2",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-luca-macht-sich-fit-im-verkauf",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-fachcheck-beratung-und-verkauf",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-mediathek-3",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-mediathek-4",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-lerninhalt-offen",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-fachcheck-sozialer-auftritt",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-competence-crit-a24-allgemein-2",
            "fail",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-fahrzeug-lc-lerninhalt-offen-1",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-willkommen-im-ük",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-mediathek",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-luca-organisiert-seinen-arbeitsalltag",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-luca-legt-sich-seine-lernstrategie-zurecht",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-fachcheck-arbeits-und-lerntechnik",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-mediathek-1",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-mediathek-2",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-mediathek-3",
            "success",
            "evelyn.schmid@example.com",
        ),
        (
            "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-lerninhalt-offen",
            "success",
            "evelyn.schmid@example.com",
        ),
    ]:
        mark_course_completion(
            Page.objects.get(slug=slug).translation_key,
            User.objects.get(email=email),
            status,
        )
