From 142c979b248b0de1f64b432756d6225fc0f0d21b Mon Sep 17 00:00:00 2001 From: Daniel Egger Date: Fri, 26 May 2023 15:54:22 +0200 Subject: [PATCH] Add demo tag course session --- .../vbv_lernwelt/course/creators/uk_course.py | 9 ++-- .../uk_training_course.py} | 4 +- .../commands/create_default_courses.py | 46 +++++++++++++++++-- 3 files changed, 49 insertions(+), 10 deletions(-) rename server/vbv_lernwelt/course/{management/commands/create_uk_training_course.py => creators/uk_training_course.py} (94%) diff --git a/server/vbv_lernwelt/course/creators/uk_course.py b/server/vbv_lernwelt/course/creators/uk_course.py index 7b9ccde1..84f28b82 100644 --- a/server/vbv_lernwelt/course/creators/uk_course.py +++ b/server/vbv_lernwelt/course/creators/uk_course.py @@ -319,6 +319,7 @@ def create_uk_circle_fahrzeug(lp, title="Fahrzeug"): description="In diesem Circle lernst du alles rund um Motorfahrzeugversicherungen.", goals=UK_CIRCLE_GOALS["fahrzeug"], ) + course_slug = lp.slug.replace("-lp", "") LearningSequenceFactory( title="Vorbereitung", parent=circle, icon="it-icon-ls-start" ) @@ -330,14 +331,14 @@ def create_uk_circle_fahrzeug(lp, title="Fahrzeug"): f"

In der Mediathek unter dem Handlungsfeld «{title}» findest du alle relevanten Ressourcen für deine Fachkompetenzen.

" f"

Wir empfehlen dir vor der Absolvierung der weiteren Lerneinheiten dich in die Thematik einzulesen.

" ), - content_url=f"/course/überbetriebliche-kurse/media/category/{slugify(title)}", + content_url=f"/course/{course_slug}/media/category/{slugify(title)}", ) LearningContentAssignmentFactory( title="Fahrzeug - Mein erstes Auto", assignment_type="PREP_ASSIGNMENT", parent=circle, content_assignment=Assignment.objects.get( - slug__startswith="überbetriebliche-kurse-assignment-fahrzeug-mein-erstes-auto" + slug__startswith=f"{course_slug}-assignment-fahrzeug-mein-erstes-auto" ), ), LearningSequenceFactory(title="Training", parent=circle) @@ -360,7 +361,7 @@ def create_uk_circle_fahrzeug(lp, title="Fahrzeug"): title="Überprüfen einer Motorfahrzeug-Versicherungspolice", parent=circle, content_assignment=Assignment.objects.get( - slug__startswith="überbetriebliche-kurse-assignment-überprüfen-einer-motorfahrzeugs" + slug__startswith=f"{course_slug}-assignment-überprüfen-einer-motorfahrzeugs" ), ), LearningContentAssignmentFactory( @@ -368,7 +369,7 @@ def create_uk_circle_fahrzeug(lp, title="Fahrzeug"): assignment_type="REFLECTION", parent=circle, content_assignment=Assignment.objects.get( - slug__startswith="überbetriebliche-kurse-assignment-fahrzeug-reflexionsfragen" + slug__startswith=f"{course_slug}-assignment-fahrzeug-reflexionsfragen" ), ), diff --git a/server/vbv_lernwelt/course/management/commands/create_uk_training_course.py b/server/vbv_lernwelt/course/creators/uk_training_course.py similarity index 94% rename from server/vbv_lernwelt/course/management/commands/create_uk_training_course.py rename to server/vbv_lernwelt/course/creators/uk_training_course.py index 21c21eb9..87398c7c 100644 --- a/server/vbv_lernwelt/course/management/commands/create_uk_training_course.py +++ b/server/vbv_lernwelt/course/creators/uk_training_course.py @@ -6,9 +6,7 @@ from wagtail_localize.models import LocaleSynchronization from vbv_lernwelt.core.admin import User from vbv_lernwelt.course.consts import COURSE_UK -from vbv_lernwelt.course.management.commands.create_uk_course import ( - create_uk_circle_fahrzeug, -) +from vbv_lernwelt.course.creators.uk_course import create_uk_circle_fahrzeug from vbv_lernwelt.course.models import CoursePage from vbv_lernwelt.learnpath.tests.learning_path_factories import ( LearningPathFactory, diff --git a/server/vbv_lernwelt/course/management/commands/create_default_courses.py b/server/vbv_lernwelt/course/management/commands/create_default_courses.py index 1ab68743..ef19099e 100644 --- a/server/vbv_lernwelt/course/management/commands/create_default_courses.py +++ b/server/vbv_lernwelt/course/management/commands/create_default_courses.py @@ -35,7 +35,7 @@ from vbv_lernwelt.course.creators.uk_course import ( create_uk_fr_learning_path, create_uk_learning_path, ) -from vbv_lernwelt.course.management.commands.create_uk_training_course import ( +from vbv_lernwelt.course.creators.uk_training_course import ( create_uk_training_learning_path, ) from vbv_lernwelt.course.creators.versicherungsvermittlerin import ( @@ -419,10 +419,50 @@ def create_course_uk_de_completion_data(course_session): def create_course_training_de(): # Test Lehrgang für üK Trainer - create_versicherungsvermittlerin_with_categories( + course = create_versicherungsvermittlerin_with_categories( course_id=COURSE_UK_TRAINING, title="myVBV Training" ) - create_uk_assignments(course_id=COURSE_UK_TRAINING) + + # assignments create assignments parent page + _assignment_list_page = AssignmentListPageFactory( + parent=course.coursepage, + ) + create_uk_casework(course_id=COURSE_UK_TRAINING) + create_uk_prep_assignment(course_id=COURSE_UK_TRAINING) + create_uk_reflection(course_id=COURSE_UK_TRAINING) + create_uk_training_learning_path(course_id=COURSE_UK_TRAINING) create_uk_training_competence_profile(course_id=COURSE_UK_TRAINING) create_default_media_library(course_id=COURSE_UK_TRAINING) + + cs = CourseSession.objects.create( + course_id=COURSE_UK_TRAINING, + title="Demo-Tag", + attendance_courses=[ + { + "learningContentId": LearningContentAttendanceCourse.objects.get( + slug=f"{course.slug}-lp-circle-fahrzeug-lc-präsenzkurs-fahrzeug" + ).id, + "start": "2023-05-23T08:30:00+0200", + "end": "2023-05-23T17:00:00+0200", + "location": "Handelsschule KV Bern, Zimmer 123, Eigerstrasse 16, 3012 Bern", + "trainer": "Roland Grossenbacher, roland.grossenbacher@helvetia.ch", + } + ], + assignment_details_list=[ + { + "learningContentId": LearningContentAssignment.objects.get( + slug=f"{course.slug}-lp-circle-fahrzeug-lc-überprüfen-einer-motorfahrzeug-versicherungspolice" + ).id, + "submissionDeadlineDateTimeUtc": "2023-06-13T19:00:00Z", + "evaluationDeadlineDateTimeUtc": "2023-06-27T19:00:00Z", + }, + { + "learningContentId": LearningContentAssignment.objects.get( + slug=f"{course.slug}-lp-circle-fahrzeug-lc-fahrzeug-mein-erstes-auto" + ).id, + "submissionDeadlineDateTimeUtc": "2023-06-13T19:00:00Z", + "evaluationDeadlineDateTimeUtc": "2023-06-27T19:00:00Z", + }, + ], + )