From e95086850b84a22e06ff4258d052ae42c1aacb32 Mon Sep 17 00:00:00 2001 From: Daniel Egger Date: Tue, 4 Oct 2022 13:56:00 +0200 Subject: [PATCH] Default data for mediathek --- .../create_default_media_library.py | 92 ------------------- .../tests/media_library_factories.py | 62 ++++++++++--- 2 files changed, 48 insertions(+), 106 deletions(-) diff --git a/server/vbv_lernwelt/media_library/create_default_media_library.py b/server/vbv_lernwelt/media_library/create_default_media_library.py index c08f44a8..0d2e05e2 100644 --- a/server/vbv_lernwelt/media_library/create_default_media_library.py +++ b/server/vbv_lernwelt/media_library/create_default_media_library.py @@ -1,19 +1,8 @@ -import json - from vbv_lernwelt.course.consts import COURSE_VERSICHERUNGSVERMITTLERIN_ID from vbv_lernwelt.course.models import Course, CoursePage from vbv_lernwelt.media_library.tests.media_library_factories import ( - create_external_link_block, - create_internal_link_block, - create_learn_media_block, - create_media_collection, - create_relative_link_block, - ExternalLinkBlockFactory, - InternalLinkBlockFactory, - LearnMediaBlockFactory, MediaCategoryPageFactory, MediaLibraryPageFactory, - RelativeLinkBlockFactory, ) @@ -42,85 +31,6 @@ die der Fahrzeugbesitzer und die Fahrzeugbesitzerin in einem grösseren Schadenf In diesem berufstypischem Handlungsfeld lernst du alles rund um Motorfahrzeugversicherungen, wie man sein Auto optimal schützen kann, wie du vorgehst bei einem Fahrzeugwechsel, welche Aspekte du bei einer Offerte beachten musst und wie du dem Kunden die Lösung präsentierst.""".strip() - items = [ - ("item", "Motorfahrzeughaftpflichtversicherung"), - ("item", "Motorfahrzeugkaskoversicherung"), - ("item", "Insassenunfallversicherung"), - ] - body_data = json.dumps( - [ - create_media_collection( - title="Lernmedien", - contents=[ - create_learn_media_block(LearnMediaBlockFactory()), - create_learn_media_block(LearnMediaBlockFactory()), - create_learn_media_block(LearnMediaBlockFactory()), - create_learn_media_block(LearnMediaBlockFactory()), - create_learn_media_block(LearnMediaBlockFactory()), - create_learn_media_block(LearnMediaBlockFactory()), - create_learn_media_block(LearnMediaBlockFactory()), - create_learn_media_block(LearnMediaBlockFactory()), - ], - ), - create_media_collection( - title="Links", - contents=[ - create_external_link_block( - ExternalLinkBlockFactory( - title="Nationales Versicherungsbüro", - url="https://www.vbv.ch/", - ) - ), - create_external_link_block( - ExternalLinkBlockFactory( - title="Adressen der Strassenverkehrsämter", - url="https://www.vbv.ch/", - ) - ), - ], - ), - create_media_collection( - title="Links", - contents=[ - create_internal_link_block( - InternalLinkBlockFactory( - title="Nora kauft sich ein neues Auto", - url="/learn/versicherungsvermittlerin-lp/analyse/nora-kauft-sich-ein-neues-auto", - ) - ), - create_internal_link_block( - InternalLinkBlockFactory( - title="Nora kauft sich ein neues Auto", - url="/learn/versicherungsvermittlerin-lp/analyse/nora-kauft-sich-ein-neues-auto", - ) - ), - create_internal_link_block( - InternalLinkBlockFactory( - title="Nora kauft sich ein neues Auto", - url="/learn/versicherungsvermittlerin-lp/analyse/nora-kauft-sich-ein-neues-auto", - ) - ), - ], - ), - create_media_collection( - title="Querverweise", - contents=[ - create_relative_link_block( - RelativeLinkBlockFactory( - title="Rechtsstreigkeiten", - url="", - ), - ), - create_relative_link_block( - RelativeLinkBlockFactory( - title="Rechtsstreigkeiten", - url="", - ), - ), - ], - ), - ] - ) media_category = MediaCategoryPageFactory( overview_icon=overview_icon, title=cat.title, @@ -129,6 +39,4 @@ welche Aspekte du bei einer Offerte beachten musst und wie du dem Kunden die Lö introduction_text=introduction_text, description_title=description_title, description_text=description_text, - items=items, - body=body_data, ) diff --git a/server/vbv_lernwelt/media_library/tests/media_library_factories.py b/server/vbv_lernwelt/media_library/tests/media_library_factories.py index 7a98a542..ee974b36 100644 --- a/server/vbv_lernwelt/media_library/tests/media_library_factories.py +++ b/server/vbv_lernwelt/media_library/tests/media_library_factories.py @@ -1,3 +1,4 @@ +import json import uuid import wagtail_factories @@ -30,22 +31,13 @@ class MediaLibraryPageFactory(wagtail_factories.PageFactory): model = MediaLibraryPage -class MediaCategoryPageFactory(wagtail_factories.PageFactory): - title = "Fahrzeug" - introduction_text = "Das Auto ist für viele der grösste Stolz! Es birgt aber ..." - description_title = "Das erwartet dich in diesem Handlungsfeld" - - class Meta: - model = MediaCategoryPage - - class LearnMediaBlockFactory(wagtail_factories.StructBlockFactory): class Meta: model = LearnMediaBlock - title = "Die Motorfahrzeughaftpflicht" + title = "Platzhalter PDF" icon_url = "/static/icons/demo/icon-hf-book.png" - description = "Buch «Sach- und Vermögensversicherungen» – Kapitel 16" + description = "Buch «Platzhalter» – Kapitel 16" link_display_text = "PDF anzeigen" url = "/static/media/documents/01a_Motorfahrzeughaftpflicht.pdf" open_window = True @@ -65,7 +57,7 @@ class ExternalLinkBlockFactory(wagtail_factories.StructBlockFactory): class Meta: model = ExternalLinkBlock - title = "Nationales Versicherungsbüro" + title = "Platzhalter externer Link" description = "This link is really interesting..." url = "https://www.vbv.ch/" open_window = True @@ -86,9 +78,10 @@ class InternalLinkBlockFactory(wagtail_factories.StructBlockFactory): class Meta: model = InternalLinkBlock - title = "Rafael Fasel wechselt sein Auto" + title = "Platzhalter interner Link" description = "Link to a Learning Content" link_display_text = "Lerneinheit anzeigen" + url = "/learn/versicherungsvermittlerin-lp/basis/einleitung-circle-basis" # TODO: page = blocks.PageChooserBlock mit Titel etc @@ -106,10 +99,11 @@ class RelativeLinkBlockFactory(wagtail_factories.StructBlockFactory): class Meta: model = RelativeLinkBlock - title = "Rechtsstreigkeiten" + title = "Platzhalter Querverweis" description = "Lernmedium: Verkehrsrechtsschutz – Buch «Sach- und Vermögensversicherungen/Kapitel 12.3»" link_display_text = "Handlungsfeld anzeigen" icon_url = "/static/icons/demo/icon-hf-reisen.svg" + url = "/media/versicherungsvermittlerin-media/category/fahrzeug" # TODO: page = blocks.PageChooserBlock zu Handlungsfeld @@ -152,3 +146,43 @@ def create_document_collection(document_ids=None): ], }, } + + +class MediaCategoryPageFactory(wagtail_factories.PageFactory): + title = "Fahrzeug (Platzhalter)" + introduction_text = """ +Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. +Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. +Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem. +Nulla consequat massa quis enim. Donec. +""".strip() + description_title = "Das erwartet dich in diesem Handlungsfeld" + overview_icon = "icon-hf-fahrzeug" + body = json.dumps( + [ + create_media_collection( + title="Lernmedien", + contents=[create_learn_media_block() for _ in range(8)], + ), + create_media_collection( + title="Links", + contents=[create_external_link_block() for _ in range(4)], + ), + create_media_collection( + title="Links", + contents=[create_internal_link_block() for _ in range(3)], + ), + create_media_collection( + title="Querverweise", + contents=[create_relative_link_block() for _ in range(2)], + ), + ] + ) + items = [ + ("item", "Versicherung 1"), + ("item", "Versicherung 2"), + ("item", "Versicherung 3"), + ] + + class Meta: + model = MediaCategoryPage