+
+
Impressum
+
+
+
+
+ Katharineum zu Lübeck
+
+
+ Königsstraße 27-31
+
+
+ 23552 Lübeck
+
+
+ {% include 'homepage/partials/_footer.html' %}
+
+
\ No newline at end of file
diff --git a/core/homepage/templates/homepage/partials/_footer.html b/core/homepage/templates/homepage/partials/_footer.html
index 6fa3a61..a448ec7 100644
--- a/core/homepage/templates/homepage/partials/_footer.html
+++ b/core/homepage/templates/homepage/partials/_footer.html
@@ -1,7 +1,7 @@
\ No newline at end of file
diff --git a/core/homepage/templates/homepage/privacy.html b/core/homepage/templates/homepage/privacy.html
new file mode 100644
index 0000000..3659d69
--- /dev/null
+++ b/core/homepage/templates/homepage/privacy.html
@@ -0,0 +1,23 @@
+{% load static %}
+
+
+
+
+
+
Impressum
+
+
+
+
+ {% include 'homepage/partials/_nav.html' %}
+
+ {% block content%}{% endblock %}
+
+
+ Hallo, ich bin die Datenschutzerklärung!
+
+
+
+ {% include 'homepage/partials/_footer.html' %}
+
+
\ No newline at end of file
diff --git a/core/homepage/urls.py b/core/homepage/urls.py
index 0d53b21..394c0b9 100644
--- a/core/homepage/urls.py
+++ b/core/homepage/urls.py
@@ -5,4 +5,6 @@ app_name = 'homepage' # Verhindert Konflikt mit anderen Apps
urlpatterns = [
path('', views.home, name="home"),
+ path('impress', views.impress, name="impress"),
+ path('privacy', views.privacy, name="privacy"),
]
\ No newline at end of file
diff --git a/core/homepage/views.py b/core/homepage/views.py
index 290bfb8..b9d452e 100644
--- a/core/homepage/views.py
+++ b/core/homepage/views.py
@@ -1,4 +1,9 @@
from django.shortcuts import render, redirect
def home(request):
- return render(request, 'homepage/home.html')
\ No newline at end of file
+ return render(request, 'homepage/home.html')
+
+def impress(request):
+ return render(request, 'homepage/impress.html')
+def privacy(request):
+ return render(request, 'homepage/privacy.html')
\ No newline at end of file
diff --git a/core/library/forms.py b/core/library/forms.py
index 7a239ec..dc78d02 100644
--- a/core/library/forms.py
+++ b/core/library/forms.py
@@ -4,7 +4,7 @@ from .models import QivipQuiz, QivipQuestion
class QuizForm(forms.ModelForm):
class Meta:
model = QivipQuiz
- fields = ['name', 'description', 'status', 'category', 'tags']
+ fields = ['name', 'description', 'status', 'category', 'tags',"difficulty"]
class QuestionForm(forms.ModelForm):
class Meta:
diff --git a/core/library/migrations/0002_alter_qivipquiz_status.py b/core/library/migrations/0002_alter_qivipquiz_status.py
new file mode 100644
index 0000000..16c68b9
--- /dev/null
+++ b/core/library/migrations/0002_alter_qivipquiz_status.py
@@ -0,0 +1,18 @@
+# Generated by Django 5.1.3 on 2025-03-08 13:14
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('library', '0001_initial'),
+ ]
+
+ operations = [
+ migrations.AlterField(
+ model_name='qivipquiz',
+ name='status',
+ field=models.CharField(choices=[('public', 'Öffentlich'), ('hidden', 'Versteckt'), ('private', 'Privat')], default='private', max_length=10),
+ ),
+ ]
diff --git a/core/library/migrations/0003_alter_qivipquiz_status.py b/core/library/migrations/0003_alter_qivipquiz_status.py
new file mode 100644
index 0000000..a9d4258
--- /dev/null
+++ b/core/library/migrations/0003_alter_qivipquiz_status.py
@@ -0,0 +1,18 @@
+# Generated by Django 5.1.3 on 2025-03-08 13:16
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('library', '0002_alter_qivipquiz_status'),
+ ]
+
+ operations = [
+ migrations.AlterField(
+ model_name='qivipquiz',
+ name='status',
+ field=models.CharField(choices=[('public', 'Öffentlich'), ('hidden', 'Versteckt'), ('private', 'Privat')], default='Privat', max_length=10),
+ ),
+ ]
diff --git a/core/library/migrations/0004_alter_qivipquiz_status.py b/core/library/migrations/0004_alter_qivipquiz_status.py
new file mode 100644
index 0000000..0657e69
--- /dev/null
+++ b/core/library/migrations/0004_alter_qivipquiz_status.py
@@ -0,0 +1,18 @@
+# Generated by Django 5.1.3 on 2025-03-08 13:18
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('library', '0003_alter_qivipquiz_status'),
+ ]
+
+ operations = [
+ migrations.AlterField(
+ model_name='qivipquiz',
+ name='status',
+ field=models.CharField(choices=[('public', 'Öffentlich'), ('hidden', 'Versteckt'), ('private', 'Privat')], default='private', max_length=10),
+ ),
+ ]
diff --git a/core/library/migrations/0005_alter_qivipquiz_status.py b/core/library/migrations/0005_alter_qivipquiz_status.py
new file mode 100644
index 0000000..eeacb47
--- /dev/null
+++ b/core/library/migrations/0005_alter_qivipquiz_status.py
@@ -0,0 +1,18 @@
+# Generated by Django 5.1.3 on 2025-03-08 13:23
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('library', '0004_alter_qivipquiz_status'),
+ ]
+
+ operations = [
+ migrations.AlterField(
+ model_name='qivipquiz',
+ name='status',
+ field=models.CharField(choices=[('public', 'Öffentlich'), ('hidden', 'Versteckt'), ('private', 'Privat')], default='public', max_length=10),
+ ),
+ ]
diff --git a/core/library/migrations/0006_alter_qivipquiz_description.py b/core/library/migrations/0006_alter_qivipquiz_description.py
new file mode 100644
index 0000000..6878dec
--- /dev/null
+++ b/core/library/migrations/0006_alter_qivipquiz_description.py
@@ -0,0 +1,18 @@
+# Generated by Django 5.1.3 on 2025-03-08 13:30
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('library', '0005_alter_qivipquiz_status'),
+ ]
+
+ operations = [
+ migrations.AlterField(
+ model_name='qivipquiz',
+ name='description',
+ field=models.TextField(blank=True, default='In dem Quiz geht es um ...', null=True),
+ ),
+ ]
diff --git a/core/library/migrations/0007_alter_qivipquiz_description.py b/core/library/migrations/0007_alter_qivipquiz_description.py
new file mode 100644
index 0000000..4cd5eb8
--- /dev/null
+++ b/core/library/migrations/0007_alter_qivipquiz_description.py
@@ -0,0 +1,18 @@
+# Generated by Django 5.1.3 on 2025-03-08 13:31
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('library', '0006_alter_qivipquiz_description'),
+ ]
+
+ operations = [
+ migrations.AlterField(
+ model_name='qivipquiz',
+ name='description',
+ field=models.TextField(blank=True, default='Das Quiz ist ein ... Quiz. In dem Quiz geht es um ...', null=True),
+ ),
+ ]
diff --git a/core/library/migrations/0008_alter_qivipquiz_description.py b/core/library/migrations/0008_alter_qivipquiz_description.py
new file mode 100644
index 0000000..cb07882
--- /dev/null
+++ b/core/library/migrations/0008_alter_qivipquiz_description.py
@@ -0,0 +1,18 @@
+# Generated by Django 5.1.3 on 2025-03-08 13:32
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('library', '0007_alter_qivipquiz_description'),
+ ]
+
+ operations = [
+ migrations.AlterField(
+ model_name='qivipquiz',
+ name='description',
+ field=models.TextField(blank=True, default='Das Quiz ist ein ... Quiz. \n In dem Quiz geht es um ...', null=True),
+ ),
+ ]
diff --git a/core/library/migrations/0009_alter_qivipquiz_description.py b/core/library/migrations/0009_alter_qivipquiz_description.py
new file mode 100644
index 0000000..5039d71
--- /dev/null
+++ b/core/library/migrations/0009_alter_qivipquiz_description.py
@@ -0,0 +1,18 @@
+# Generated by Django 5.1.3 on 2025-03-08 13:32
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('library', '0008_alter_qivipquiz_description'),
+ ]
+
+ operations = [
+ migrations.AlterField(
+ model_name='qivipquiz',
+ name='description',
+ field=models.TextField(blank=True, default='Das Quiz ist ein ... Quiz. \nIn dem Quiz geht es um ...', null=True),
+ ),
+ ]
diff --git a/core/library/migrations/0010_alter_qivipquiz_description.py b/core/library/migrations/0010_alter_qivipquiz_description.py
new file mode 100644
index 0000000..d1ff79a
--- /dev/null
+++ b/core/library/migrations/0010_alter_qivipquiz_description.py
@@ -0,0 +1,18 @@
+# Generated by Django 5.1.3 on 2025-03-08 13:33
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('library', '0009_alter_qivipquiz_description'),
+ ]
+
+ operations = [
+ migrations.AlterField(
+ model_name='qivipquiz',
+ name='description',
+ field=models.TextField(blank=True, default='In dem Quiz geht es um ...', null=True),
+ ),
+ ]
diff --git a/core/library/migrations/0011_qivipquiz_difficulty.py b/core/library/migrations/0011_qivipquiz_difficulty.py
new file mode 100644
index 0000000..688e2ed
--- /dev/null
+++ b/core/library/migrations/0011_qivipquiz_difficulty.py
@@ -0,0 +1,18 @@
+# Generated by Django 5.1.3 on 2025-03-08 13:37
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('library', '0010_alter_qivipquiz_description'),
+ ]
+
+ operations = [
+ migrations.AddField(
+ model_name='qivipquiz',
+ name='difficulty',
+ field=models.CharField(choices=[('public', 'Öffentlich'), ('hidden', 'Versteckt'), ('private', 'Privat')], default='public', max_length=10),
+ ),
+ ]
diff --git a/core/library/migrations/0012_alter_qivipquiz_difficulty.py b/core/library/migrations/0012_alter_qivipquiz_difficulty.py
new file mode 100644
index 0000000..525ae9c
--- /dev/null
+++ b/core/library/migrations/0012_alter_qivipquiz_difficulty.py
@@ -0,0 +1,18 @@
+# Generated by Django 5.1.3 on 2025-03-08 13:39
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('library', '0011_qivipquiz_difficulty'),
+ ]
+
+ operations = [
+ migrations.AlterField(
+ model_name='qivipquiz',
+ name='difficulty',
+ field=models.CharField(choices=[('public', 'Öffentlich'), ('hidden', 'Versteckt'), ('private', 'Privat')], default='not defined', max_length=10),
+ ),
+ ]
diff --git a/core/library/migrations/0013_alter_qivipquiz_difficulty.py b/core/library/migrations/0013_alter_qivipquiz_difficulty.py
new file mode 100644
index 0000000..8da2c6c
--- /dev/null
+++ b/core/library/migrations/0013_alter_qivipquiz_difficulty.py
@@ -0,0 +1,18 @@
+# Generated by Django 5.1.3 on 2025-03-08 13:40
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('library', '0012_alter_qivipquiz_difficulty'),
+ ]
+
+ operations = [
+ migrations.AlterField(
+ model_name='qivipquiz',
+ name='difficulty',
+ field=models.CharField(choices=[('1', '1'), ('2', '2'), ('3', '3'), ('4', '4'), ('5', '5'), ('not defined', 'nicht gesetzt')], default='not defined', max_length=11),
+ ),
+ ]
diff --git a/core/library/migrations/0014_alter_qivipquiz_difficulty.py b/core/library/migrations/0014_alter_qivipquiz_difficulty.py
new file mode 100644
index 0000000..0570a39
--- /dev/null
+++ b/core/library/migrations/0014_alter_qivipquiz_difficulty.py
@@ -0,0 +1,18 @@
+# Generated by Django 5.1.3 on 2025-03-08 13:43
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('library', '0013_alter_qivipquiz_difficulty'),
+ ]
+
+ operations = [
+ migrations.AlterField(
+ model_name='qivipquiz',
+ name='difficulty',
+ field=models.CharField(choices=[('1', '1'), ('2', '2'), ('3', '3'), ('4', '4'), ('5', '5'), ('not defined', 'nicht gesetzt')], default='not defined', help_text='1: niedrigste Schwierigkeit, 2: höchste Schwierigkeit', max_length=11),
+ ),
+ ]
diff --git a/core/library/migrations/0015_alter_qivipquiz_difficulty.py b/core/library/migrations/0015_alter_qivipquiz_difficulty.py
new file mode 100644
index 0000000..398f202
--- /dev/null
+++ b/core/library/migrations/0015_alter_qivipquiz_difficulty.py
@@ -0,0 +1,18 @@
+# Generated by Django 5.1.3 on 2025-03-08 13:44
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('library', '0014_alter_qivipquiz_difficulty'),
+ ]
+
+ operations = [
+ migrations.AlterField(
+ model_name='qivipquiz',
+ name='difficulty',
+ field=models.CharField(choices=[('1', '1'), ('2', '2'), ('3', '3'), ('4', '4'), ('5', '5'), ('not defined', 'nicht gesetzt')], default='not defined', help_text='1: niedrigste Schwierigkeit und 5: höchste Schwierigkeit', max_length=11),
+ ),
+ ]
diff --git a/core/library/models.py b/core/library/models.py
index 837210b..3d76970 100644
--- a/core/library/models.py
+++ b/core/library/models.py
@@ -9,16 +9,26 @@ class QivipQuiz(models.Model):
"hidden": "Versteckt",
"private": "Privat",
}
+ DIFFICULTY_VALUES = {
+ "1": "1",
+ "2": "2",
+ "3": "3",
+ "4": "4",
+ "5": "5",
+ "not defined":"nicht gesetzt",
+
+ }
uuid = models.UUIDField(default=uuid.uuid4, editable=False, unique=True)
user_id = models.ForeignKey(User, on_delete=models.CASCADE, related_name='quiz')
creation_date = models.DateTimeField(auto_now_add=True)
update_date = models.DateTimeField(auto_now=True)
- status = models.CharField(max_length=10, choices=STATUS_VALUES.items())
+ status = models.CharField(max_length=10, choices=list(STATUS_VALUES.items()), default="public")
category = models.ForeignKey('QuizCategory', related_name='quiz', on_delete=models.CASCADE)
tags = models.ManyToManyField('Tag', blank=True)
name = models.CharField(max_length=255)
- description = models.TextField(blank=True, null=True)
+ description = models.TextField(blank=True, null=True, default="In dem Quiz geht es um ...")
+ difficulty= models.CharField(max_length=11, choices=list(DIFFICULTY_VALUES.items()), default="not defined", help_text="1: niedrigste Schwierigkeit und 5: höchste Schwierigkeit")
def __str__(self):
return self.name
diff --git a/core/library/templates/library/overview_quiz.html b/core/library/templates/library/overview_quiz.html
index 47685a2..e8a66ba 100644
--- a/core/library/templates/library/overview_quiz.html
+++ b/core/library/templates/library/overview_quiz.html
@@ -9,10 +9,10 @@
{% for quiz in quizzes %}
{% endfor %}