Add placeholder learning content

This commit is contained in:
Daniel Egger 2022-10-04 16:01:25 +02:00
parent a33c161231
commit ad532dc50d
6 changed files with 172 additions and 121 deletions

View File

@ -236,20 +236,8 @@ function render() {
<pre hidden>{{ pieData }}</pre>
<pre hidden>{{ render() }}</pre>
<svg class="circle-visualization h-full">
<circle
v-if="!circleStore.circle"
:cx="width / 2"
:cy="height / 2"
:r="radius"
:color="colors.gray[300]"
/>
<circle
v-if="!circleStore.circle"
:cx="width / 2"
:cy="height / 2"
:r="radius / 2.5"
color="white"
/>
<circle :cx="width / 2" :cy="height / 2" :r="radius" :color="colors.gray[300]" />
<circle :cx="width / 2" :cy="height / 2" :r="radius / 2.5" color="white" />
</svg>
</div>
</template>

View File

@ -37,10 +37,11 @@ const props = defineProps<{
v-else-if="props.learningContentType === 'resource'"
class="w-6 h-6"
/>
<it-icon-lc-document
<it-icon-lc-resource
v-else-if="props.learningContentType === 'document'"
class="w-6 h-6"
/>
<it-icon-lc-document v-else class="w-6 h-6" />
<p class="whitespace-nowrap">
{{ learningContentTypesToName.get(props.learningContentType) }}
</p>

View File

@ -155,7 +155,7 @@ const learningSequenceBorderClass = computed(() => {
</div>
<div
v-if="learningUnit.id"
v-if="learningUnit.children.length"
class="hover:cursor-pointer"
@click="circleStore.openSelfEvaluation(learningUnit)"
>

View File

@ -11,7 +11,8 @@ export type LearningContentType =
| "online_training"
| "resource"
| "test"
| "video";
| "video"
| "placeholder";
export interface LearningContentBlock {
type: LearningContentType;

View File

@ -10,4 +10,5 @@ export const learningContentTypesToName = new Map<LearningContentType, string>([
["video", "Video"],
["test", "Test"],
["resource", "Hilfsmittel"],
["placeholder", "Platzhalter"],
]);

View File

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