vbv/server/vbv_lernwelt/course/creators.py

46 lines
1.5 KiB
Python

import wagtail_factories
from django.conf import settings
from wagtail.models import Site
from vbv_lernwelt.course.consts import COURSE_VERSICHERUNGSVERMITTLERIN
from vbv_lernwelt.course.factories import CoursePageFactory
def create_versicherungsvermittlerin_with_categories(apps=None, schema_editor=None):
if apps is not None:
Course = apps.get_model('course', 'Course')
CourseCategory = apps.get_model('course', 'CourseCategory')
else:
# pylint: disable=import-outside-toplevel
from vbv_lernwelt.course.models import Course, CourseCategory
course, _ = Course.objects.get_or_create(
id=COURSE_VERSICHERUNGSVERMITTLERIN,
name='Versicherungsvermittler/in',
category_name='Handlungsfeld'
)
CourseCategory.objects.get_or_create(course=course, name='Allgemein', general=True)
for cat in [
'Fahrzeug', 'Reisen', 'Einkommensicherung', 'Gesundheit', 'Haushalt', 'Sparen',
'Pensionierung', 'KMU', 'Wohneigentum', 'Rechtsstreitigkeiten', 'Erben / Vererben',
'Selbständigkeit',
]:
CourseCategory.objects.get_or_create(course=course, name=cat)
# create default course page
site = Site.objects.filter(is_default_site=True).first()
if not site:
site = wagtail_factories.SiteFactory(is_default_site=True)
if settings.APP_ENVIRONMENT == 'development':
site.port = 8000
site.save()
course_page = CoursePageFactory(
title="Versicherungsvermittler/in",
parent=site.root_page,
course=course,
)