import djclick as click from wagtail.models import Page from vbv_lernwelt.competence.create_uk_competence_profile import ( create_uk_competence_profile, create_uk_fr_competence_profile, ) from vbv_lernwelt.competence.create_vv_new_competence_profile import ( create_vv_new_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_UK, COURSE_UK_FR, 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_fr_learning_path, create_uk_learning_path, ) from vbv_lernwelt.course.models import CourseSession, CourseSessionUser from vbv_lernwelt.course.services import mark_course_completion from vbv_lernwelt.feedback.creators.create_demo_feedback import create_feedback from vbv_lernwelt.learnpath.create_vv_new_learning_path import ( create_vv_new_learning_path, ) from vbv_lernwelt.learnpath.models import Circle from vbv_lernwelt.media_library.create_default_media_library import ( create_default_media_library, ) ADMIN_EMAILS = ["info@iterativ.ch", "admin"] @click.command() @click.option( "--course", "-c", multiple=True, default=[ COURSE_TEST_ID, COURSE_UK, COURSE_VERSICHERUNGSVERMITTLERIN_ID, COURSE_UK_FR, ], ) def command(course): print("Creating default courses", course) if COURSE_VERSICHERUNGSVERMITTLERIN_ID in course: create_versicherungsvermittlerin_course() if COURSE_UK in course: create_course_uk_de() create_course_uk_de_completion_data( CourseSession.objects.get(title="Bern 2023 a") ) if COURSE_UK_FR in course: create_course_uk_fr() if COURSE_TEST_ID in course: create_test_course() # course sessions CourseSession.objects.create( course_id=COURSE_TEST_ID, title="Test Lehrgang Session", ) def create_versicherungsvermittlerin_course(): # Versicherungsvermittler/in mit neuen Circles create_versicherungsvermittlerin_with_categories( course_id=COURSE_VERSICHERUNGSVERMITTLERIN_ID, title="Versicherungsvermittler/-in", ) create_vv_new_competence_profile(course_id=COURSE_VERSICHERUNGSVERMITTLERIN_ID) create_default_media_library(course_id=COURSE_VERSICHERUNGSVERMITTLERIN_ID) create_vv_new_learning_path() 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"), ) expert1 = CourseSessionUser.objects.create( course_session=cs, user=User.objects.get(username="expert-vv.expert1@eiger-versicherungen.ch"), role=CourseSessionUser.Role.EXPERT, ) expert2 = CourseSessionUser.objects.create( course_session=cs, user=User.objects.get(username="expert-vv.expert2@eiger-versicherungen.ch"), role=CourseSessionUser.Role.EXPERT, ) expert3 = CourseSessionUser.objects.create( course_session=cs, user=User.objects.get(username="expert-vv.expert3@eiger-versicherungen.ch"), role=CourseSessionUser.Role.EXPERT, ) experts = [expert1, expert2, expert3] circles = Circle.objects.filter(slug__startswith="versicherungsvermittler-in-lp") for i, circle in enumerate(circles): expert = experts[i % len(experts)] expert.expert.add(circle) create_feedback(circle, cs, 3) for admin_email in ADMIN_EMAILS: CourseSessionUser.objects.create( course_session=cs, user=User.objects.get(email=admin_email), ) def create_course_uk_de(): # Überbetriebliche Kurse DE create_versicherungsvermittlerin_with_categories( course_id=COURSE_UK, title="Überbetriebliche Kurse" ) create_uk_learning_path(course_id=COURSE_UK) create_uk_competence_profile(course_id=COURSE_UK) create_default_media_library(course_id=COURSE_UK) cs = CourseSession.objects.create( course_id=COURSE_UK, title="Bern 2023 a", ) # 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="andreas.feuz@eiger-versicherungen.ch"), role=CourseSessionUser.Role.EXPERT, ) csu.expert.add( Circle.objects.get(slug="überbetriebliche-kurse-lp-circle-haushalt-teil-2") ) csu.expert.add(Circle.objects.get(slug="überbetriebliche-kurse-lp-circle-basis")) _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"), ) _csu = CourseSessionUser.objects.create( course_session=cs, user=User.objects.get(username="christoph.bosshard@vbv-afa.ch"), ) _csu = CourseSessionUser.objects.create( course_session=cs, user=User.objects.get(username="axel.manderbach@lernetz.ch"), ) _csu = CourseSessionUser.objects.create( course_session=cs, user=User.objects.get(username="patrick.muster@eiger-versicherungen.ch"), ) create_feedback( Circle.objects.get(slug="überbetriebliche-kurse-lp-circle-kickoff"), cs, 3, ) create_feedback( Circle.objects.get(slug="überbetriebliche-kurse-lp-circle-haushalt-teil-2"), cs, 14, ) create_feedback( Circle.objects.get(slug="überbetriebliche-kurse-lp-circle-basis"), cs, 4 ) # course session Überbetriebliche Kurse Lehrjahr 1 - Region Zürich cs = CourseSession.objects.create( course_id=COURSE_UK, title="Zürich 2023 a", ) # 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"), ) _csu = CourseSessionUser.objects.create( course_session=cs, user=User.objects.get(username="michael.meier@example.com"), ) def create_course_uk_fr(): # Überbetriebliche Kurse FR create_versicherungsvermittlerin_with_categories( course_id=COURSE_UK_FR, title="Course hors établissement" ) create_uk_fr_learning_path(course_id=COURSE_UK_FR) create_uk_fr_competence_profile(course_id=COURSE_UK_FR) create_default_media_library(course_id=COURSE_UK_FR) cs = CourseSession.objects.create( course_id=COURSE_UK_FR, title="Cours hors établissement année 1 - Région Fribourg", ) csu = CourseSessionUser.objects.create( course_session=cs, user=User.objects.get(username="geraldine.kolly@assurance.ch"), role=CourseSessionUser.Role.EXPERT, ) csu.expert.add( Circle.objects.get(slug="course-hors-établissement-lp-circle-coup-denvoi") ) _csu = CourseSessionUser.objects.create( course_session=cs, user=User.objects.get(username="luca.dupont@assurance.ch"), ) csu = CourseSessionUser.objects.create( course_session=cs, user=User.objects.get(username="andreas.feuz@eiger-versicherungen.ch"), role=CourseSessionUser.Role.EXPERT, ) for fr_circle in Circle.objects.filter( slug__startswith="course-hors-établissement-lp" ): csu.expert.add(fr_circle) def create_course_uk_de_completion_data(course_session): # initial completion data for slug, status, email in [ ( "überbetriebliche-kurse-competence-crit-e4pvük4-allgemein", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lc-mediathek", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lc-vorbereitungsauftrag", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lc-selbsteinschätzung", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lc-unterlagen-für-den-unterricht", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-competence-crit-e4pvük3-allgemein", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lc-mediathek", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lc-wissens-und-verständnisfragen", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lc-vorbereitungsauftrag", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-competence-crit-e4pvük1-allgemein", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lc-reflexion", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lc-feedback", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-fahrzeug-lc-vorbereitungsauftrag", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-competence-crit-d2pvük4-allgemein", "fail", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-fahrzeug-lc-verschaffe-dir-einen-überblick", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-kickoff-ls-training", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-fahrzeug-ls-transfer", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lu-vorbereitung", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-competence-crit-d2pvük3-allgemein", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lc-vorbereitungsauftrag", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-ls-transfer", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-fahrzeug-ls-transfer", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lc-reflexion", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lc-feedback", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-competence-crit-d2pvük2-allgemein", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-fahrzeug-lc-mediathek-fahrzeug", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-fahrzeug-lc-vorbereitungsauftrag", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-fahrzeug-lc-wissens-und-verständnisfragen", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-fahrzeug-ls-training", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-competence-crit-d2pvük1-allgemein", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-vorbereitungsauftrag", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-verschaffe-dir-einen-überblick", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-unterlagen-für-den-unterricht", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-competence-crit-c3pvük7-allgemein", "fail", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-selbsteinschätzung", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-selbsteinschätzung", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-reflexion", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-competence-crit-c3pvük11-allgemein", "fail", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-mediathek-haushalt-teil-1", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-feedback", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-unterlagen-für-den-unterricht", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-mediathek-haushalt-teil-1", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-selbsteinschätzung", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-vorbereitungsauftrag", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-verschaffe-dir-einen-überblick", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-reflexion", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-mediathek-haushalt-teil-1", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-vorbereitungsauftrag", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-verschaffe-dir-einen-überblick", "success", "michael.meier@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lu-vorbereitung", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-competence-crit-e4pvük4-allgemein", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lc-mediathek", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lc-vorbereitungsauftrag", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lc-selbsteinschätzung", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lc-unterlagen-für-den-unterricht", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-competence-crit-e4pvük3-allgemein", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lc-mediathek", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lc-wissens-und-verständnisfragen", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lc-vorbereitungsauftrag", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-competence-crit-e4pvük1-allgemein", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lc-reflexion", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lc-feedback", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-fahrzeug-lc-vorbereitungsauftrag", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-competence-crit-d2pvük4-allgemein", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-fahrzeug-lc-verschaffe-dir-einen-überblick", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-kickoff-ls-training", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-fahrzeug-ls-transfer", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-competence-crit-d2pvük3-allgemein", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lc-vorbereitungsauftrag", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-ls-transfer", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-fahrzeug-ls-transfer", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lc-reflexion", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lc-feedback", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-competence-crit-d2pvük2-allgemein", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-fahrzeug-lc-mediathek-fahrzeug", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-fahrzeug-lc-vorbereitungsauftrag", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-fahrzeug-lc-wissens-und-verständnisfragen", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-fahrzeug-ls-training", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-competence-crit-d2pvük1-allgemein", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-vorbereitungsauftrag", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-verschaffe-dir-einen-überblick", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-unterlagen-für-den-unterricht", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-competence-crit-c3pvük7-allgemein", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-competence-crit-c3pvük11-allgemein", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-selbsteinschätzung", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-selbsteinschätzung", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-reflexion", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-mediathek-haushalt-teil-1", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-fahrzeug-lc-verschaffe-dir-einen-überblick", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-fahrzeug-lc-unterlagen-für-den-unterricht", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-fahrzeug-lc-vorbereitungsauftrag", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-fahrzeug-lc-verschaffe-dir-einen-überblick", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-wissens-und-verständnisfragen", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-vorbereitungsauftrag", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-unterlagen-für-den-unterricht", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-mediathek-haushalt-teil-1", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-selbsteinschätzung", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-vorbereitungsauftrag", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-verschaffe-dir-einen-überblick", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-reflexion", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-mediathek-haushalt-teil-2", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-verschaffe-dir-einen-überblick", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-mediathek-haushalt-teil-1", "success", "lina.egger@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lu-vorbereitung", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-competence-crit-e4pvük4-allgemein", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lc-mediathek", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lc-vorbereitungsauftrag", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lc-selbsteinschätzung", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lc-unterlagen-für-den-unterricht", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-competence-crit-e4pvük3-allgemein", "fail", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lc-mediathek", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lc-wissens-und-verständnisfragen", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lc-vorbereitungsauftrag", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-competence-crit-e4pvük1-allgemein", "fail", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lc-reflexion", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lc-feedback", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-fahrzeug-lc-vorbereitungsauftrag", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-competence-crit-d2pvük4-allgemein", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-fahrzeug-lc-verschaffe-dir-einen-überblick", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-kickoff-ls-training", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-fahrzeug-ls-transfer", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-competence-crit-d2pvük3-allgemein", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lc-vorbereitungsauftrag", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-basis-lc-feedback", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-competence-crit-d2pvük2-allgemein", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-fahrzeug-lc-mediathek-fahrzeug", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-fahrzeug-lc-wissens-und-verständnisfragen", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-fahrzeug-lc-vorbereitungsauftrag", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-fahrzeug-ls-training", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-competence-crit-d2pvük1-allgemein", "fail", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-vorbereitungsauftrag", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-verschaffe-dir-einen-überblick", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-unterlagen-für-den-unterricht", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-competence-crit-c3pvük7-allgemein", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-competence-crit-c3pvük11-allgemein", "fail", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-selbsteinschätzung", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-selbsteinschätzung", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-reflexion", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-mediathek-haushalt-teil-1", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-feedback", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-fahrzeug-lc-verschaffe-dir-einen-überblick", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-wissens-und-verständnisfragen", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-fahrzeug-lc-verschaffe-dir-einen-überblick", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-unterlagen-für-den-unterricht", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-mediathek-haushalt-teil-1", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-selbsteinschätzung", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-vorbereitungsauftrag", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-verschaffe-dir-einen-überblick", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-reflexion", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-selbsteinschätzung", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-feedback", "success", "evelyn.schmid@example.com", ), ( "überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-mediathek-haushalt-teil-2", "success", "evelyn.schmid@example.com", ), ]: mark_course_completion( Page.objects.get(slug=slug).translation_key, User.objects.get(email=email), course_session=course_session, completion_status=status, )