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, )