From ad532dc50df56a81fdd28975b5184e0cb846c71e Mon Sep 17 00:00:00 2001 From: Daniel Egger Date: Tue, 4 Oct 2022 16:01:25 +0200 Subject: [PATCH] Add placeholder learning content --- .../components/learningPath/CircleDiagram.vue | 16 +- .../learningPath/LearningContentTypeBadge.vue | 3 +- .../learningPath/LearningSequence.vue | 2 +- client/src/types.ts | 3 +- client/src/utils/typeMaps.ts | 1 + .../learnpath/create_default_learning_path.py | 268 +++++++++++------- 6 files changed, 172 insertions(+), 121 deletions(-) diff --git a/client/src/components/learningPath/CircleDiagram.vue b/client/src/components/learningPath/CircleDiagram.vue index 23dedb21..9fa07a4b 100644 --- a/client/src/components/learningPath/CircleDiagram.vue +++ b/client/src/components/learningPath/CircleDiagram.vue @@ -236,20 +236,8 @@ function render() { - - + + diff --git a/client/src/components/learningPath/LearningContentTypeBadge.vue b/client/src/components/learningPath/LearningContentTypeBadge.vue index a12b8b26..63dcd50f 100644 --- a/client/src/components/learningPath/LearningContentTypeBadge.vue +++ b/client/src/components/learningPath/LearningContentTypeBadge.vue @@ -37,10 +37,11 @@ const props = defineProps<{ v-else-if="props.learningContentType === 'resource'" class="w-6 h-6" /> - +

{{ learningContentTypesToName.get(props.learningContentType) }}

diff --git a/client/src/components/learningPath/LearningSequence.vue b/client/src/components/learningPath/LearningSequence.vue index 444c7a89..f105eb12 100644 --- a/client/src/components/learningPath/LearningSequence.vue +++ b/client/src/components/learningPath/LearningSequence.vue @@ -155,7 +155,7 @@ const learningSequenceBorderClass = computed(() => {
diff --git a/client/src/types.ts b/client/src/types.ts index 8b049f0d..90242426 100644 --- a/client/src/types.ts +++ b/client/src/types.ts @@ -11,7 +11,8 @@ export type LearningContentType = | "online_training" | "resource" | "test" - | "video"; + | "video" + | "placeholder"; export interface LearningContentBlock { type: LearningContentType; diff --git a/client/src/utils/typeMaps.ts b/client/src/utils/typeMaps.ts index 02ec2b6b..81631956 100644 --- a/client/src/utils/typeMaps.ts +++ b/client/src/utils/typeMaps.ts @@ -10,4 +10,5 @@ export const learningContentTypesToName = new Map([ ["video", "Video"], ["test", "Test"], ["resource", "Hilfsmittel"], + ["placeholder", "Platzhalter"], ]); diff --git a/server/vbv_lernwelt/learnpath/create_default_learning_path.py b/server/vbv_lernwelt/learnpath/create_default_learning_path.py index eaefddfe..59a13ec2 100644 --- a/server/vbv_lernwelt/learnpath/create_default_learning_path.py +++ b/server/vbv_lernwelt/learnpath/create_default_learning_path.py @@ -383,113 +383,11 @@ def create_default_learning_path(user=None, skip_locales=True): TopicFactory(title="Basis", is_visible=False, parent=lp) - circle_basis = CircleFactory( - title="Basis", - parent=lp, - ) - LearningSequenceFactory( - title="Starten", parent=circle_basis, icon="it-icon-ls-start" - ) - LearningUnitFactory(title="Einführung", parent=circle_basis) - LearningContentFactory( - title="Willkommen im Lehrgang Versicherungsvermitler VBV", - parent=circle_basis, - ) - LearningUnitFactory(title="Arbeits- und Lerntechnik", parent=circle_basis) - LearningContentFactory( - title="Mediathek", - parent=circle_basis, - ) - LearningContentFactory( - title="Luca organisiert seinen Arbeitsalltag", - parent=circle_basis, - ) - LearningContentFactory( - title="Luca legt sich seine Lernstrategie zurecht", - parent=circle_basis, - ) - LearningContentFactory( - title="Fachcheck Arbeits- und Lerntechnik", - parent=circle_basis, - ) - - LearningSequenceFactory( - title="Grundlagen", parent=circle_basis, icon="it-icon-ls-watch" - ) - LearningUnitFactory(title="Versicherung", parent=circle_basis) - LearningContentFactory( - title="Mediathek", - parent=circle_basis, - ) - LearningContentFactory( - title="Luca startet durch", - parent=circle_basis, - ) - LearningContentFactory( - title="Fachcheck Allgemeines zu Versicherungen", - parent=circle_basis, - ) - LearningUnitFactory(title="Beratung und Verkauf", parent=circle_basis) - LearningContentFactory( - title="Mediathek", - parent=circle_basis, - ) - LearningContentFactory( - title="Luca macht sich fit im Verkauf", - parent=circle_basis, - ) - LearningContentFactory( - title="Fachcheck Beratung und Verkauf", - parent=circle_basis, - ) - - LearningSequenceFactory(title="Beenden", parent=circle_basis, icon="it-icon-ls-end") - LearningUnitFactory(title="Jetzt kann's los gehen", parent=circle_basis) - LearningContentFactory( - title="Lerninhalt offen", - parent=circle_basis, - ) + create_circle_basis(lp) TopicFactory(title="Gewinnen von Kunden", parent=lp) - circle_gewinnen = CircleFactory( - title="Gewinnen", - parent=lp, - description=""" -Versicherungsvermittlerinnen und -vermittler verfügen über -ein starkes Netzwerk, das sie gezielt pflegen und ausbauen. Sie beraten und betreuen ihre bestehenden Kundinnen und Kunden professionell und gewinnen so ihr Vertrauen. Dadurch schaffen sie die Basis für das Gewinnen -von neuen Kundinnen und Kunden. Versicherungsvermittlerinnen und -vermittler sprechen ihre bestehenden Kundinnen -und Kunden auf Weiterempfehlung an. So nutzen sie ihre -bestehenden Kontakte geschickt für das Anwerben von -Neukundinnen und -kunden.""", - goals=[ - ( - "goal", - "... Bestehende Kunden so zu beraten, dass sie von diesen weiterempfohlen werden", - ), - ( - "goal", - "... Geeignete Personen wie z.B. Garagisten, Architekten, Treuhänder auf die Vermittlung / Zusammenarbeit anzusprechen", - ), - ( - "goal", - "... Verschiedene Datenquellen wie Internet, Telefonbuch, Handelszeitung, Baugesuche etc. Gezielt für die Gewinnung von Neukunden zu benützen", - ), - ( - "goal", - "... Ein beliebiges Gespräch resp. Einen bestehenden Kontakt in die Richtung «Versicherung» zu lenken", - ), - ( - "goal", - "... Das Thema Risiko und Sicherheit in einem Gespräch gezielt und auf die Situation des jeweiligen Gesprächspartners bezogen einfliessen zu lassen", - ), - ( - "goal", - "... Im täglichen Kontakt potenzielle Kundinnen und Kunden zu erkennen", - ), - ], - ) - create_circle_children(circle_gewinnen, "Gewinnen") + create_circle_gewinnen(lp) TopicFactory(title="Beraten der Kunden", parent=lp) @@ -529,3 +427,165 @@ Neukundinnen und -kunden.""", # all pages belong to 'admin' by default Page.objects.update(owner=user) + + +def create_circle_basis(lp): + circle = CircleFactory( + title="Basis", + parent=lp, + description=""" +In diesem Circle erklären wir dir, wie der Lehrgang +Versicherungsvermittler / in " aufgebaut ist. Zudem vermitteln wir dir die wichtigsten Grundlagen, +damit erfolgreich mit deinem Lernpfad starten kannst. + """.strip(), + ) + LearningSequenceFactory(title="Starten", parent=circle, icon="it-icon-ls-start") + LearningUnitFactory(title="Einführung", parent=circle) + LearningContentFactory( + title="Willkommen im Lehrgang Versicherungsvermitler VBV", + parent=circle, + ) + LearningUnitFactory(title="Arbeits- und Lerntechnik", parent=circle) + LearningContentFactory( + title="Mediathek", + parent=circle, + ) + LearningContentFactory( + title="Luca organisiert seinen Arbeitsalltag", + parent=circle, + ) + LearningContentFactory( + title="Luca legt sich seine Lernstrategie zurecht", + parent=circle, + ) + LearningContentFactory( + title="Fachcheck Arbeits- und Lerntechnik", + parent=circle, + ) + LearningSequenceFactory(title="Grundlagen", parent=circle, icon="it-icon-ls-watch") + LearningUnitFactory(title="Versicherung", parent=circle) + LearningContentFactory( + title="Mediathek", + parent=circle, + ) + LearningContentFactory( + title="Luca startet durch", + parent=circle, + ) + LearningContentFactory( + title="Fachcheck Allgemeines zu Versicherungen", + parent=circle, + ) + LearningUnitFactory(title="Beratung und Verkauf", parent=circle) + LearningContentFactory( + title="Mediathek", + parent=circle, + ) + LearningContentFactory( + title="Luca macht sich fit im Verkauf", + parent=circle, + ) + LearningContentFactory( + title="Fachcheck Beratung und Verkauf", + parent=circle, + ) + LearningSequenceFactory(title="Beenden", parent=circle, icon="it-icon-ls-end") + LearningUnitFactory(title="Jetzt kann's los gehen", parent=circle) + LearningContentFactory( + title="Lerninhalt offen", + parent=circle, + ) + + +def create_circle_gewinnen(lp): + circle = CircleFactory( + title="Gewinnen", + parent=lp, + description=""" +Versicherungsvermittlerinnen und -vermittler verfügen über +ein starkes Netzwerk, das sie gezielt pflegen und ausbauen. Sie beraten und betreuen ihre bestehenden Kundinnen und Kunden professionell und gewinnen so ihr Vertrauen. Dadurch schaffen sie die Basis für das Gewinnen +von neuen Kundinnen und Kunden. Versicherungsvermittlerinnen und -vermittler sprechen ihre bestehenden Kundinnen +und Kunden auf Weiterempfehlung an. So nutzen sie ihre +bestehenden Kontakte geschickt für das Anwerben von +Neukundinnen und -kunden.""".strip(), + goals=[ + ( + "goal", + "... Bestehende Kunden so zu beraten, dass sie von diesen weiterempfohlen werden", + ), + ( + "goal", + "... Geeignete Personen wie z.B. Garagisten, Architekten, Treuhänder auf die Vermittlung / Zusammenarbeit anzusprechen", + ), + ( + "goal", + "... Verschiedene Datenquellen wie Internet, Telefonbuch, Handelszeitung, Baugesuche etc. Gezielt für die Gewinnung von Neukunden zu benützen", + ), + ( + "goal", + "... Ein beliebiges Gespräch resp. Einen bestehenden Kontakt in die Richtung «Versicherung» zu lenken", + ), + ( + "goal", + "... Das Thema Risiko und Sicherheit in einem Gespräch gezielt und auf die Situation des jeweiligen Gesprächspartners bezogen einfliessen zu lassen", + ), + ( + "goal", + "... Im täglichen Kontakt potenzielle Kundinnen und Kunden zu erkennen", + ), + ], + ) + LearningSequenceFactory(title="Starten", parent=circle, icon="it-icon-ls-start") + LearningUnitFactory(title="Einführung", parent=circle) + LearningContentFactory( + title="Verschaff dir einen Überblick", + parent=circle, + ) + + LearningSequenceFactory(title="Beobachten", parent=circle, icon="it-icon-ls-watch") + LearningUnitFactory(title="Kunden gewinnen", parent=circle) + LearningContentFactory( + title="Mediathek", + parent=circle, + ) + LearningContentFactory( + title="Lerninhalt offen", + parent=circle, + ) + LearningContentFactory( + title="Fachcheck Kunden gewinnen", + parent=circle, + ) + + LearningSequenceFactory(title="Anwenden", parent=circle, icon="it-icon-ls-watch") + LearningUnitFactory(title="Sozialer Auftritt", parent=circle) + LearningContentFactory( + title="Mediathek", + parent=circle, + ) + LearningContentFactory( + title="Lerninhalt offen", + parent=circle, + ) + LearningContentFactory( + title="Fachcheck Sozialer Auftritt", + parent=circle, + ) + + LearningSequenceFactory(title="Üben", parent=circle, icon="it-icon-ls-practice") + LearningUnitFactory(title="Sozialer Auftritt", parent=circle) + LearningContentFactory( + title="Mediathek", + parent=circle, + ) + LearningContentFactory( + title="Lerninhalt offen", + parent=circle, + ) + + LearningSequenceFactory(title="Beenden", parent=circle, icon="it-icon-ls-end") + LearningUnitFactory(title="Circle beenden", parent=circle) + LearningContentFactory( + title="Lerninhalt offen", + parent=circle, + )