diff --git a/django/library/admin.py b/django/library/admin.py index 320771f..72eabab 100644 --- a/django/library/admin.py +++ b/django/library/admin.py @@ -30,10 +30,35 @@ class QuizImageAdmin(admin.ModelAdmin): class QuestionImageAdmin(admin.ModelAdmin): list_display = ('image',) + +from django import forms +from .models import QuizCategory + +class QuizCategoryForm(forms.ModelForm): + color = forms.CharField( + widget=forms.TextInput(attrs={'type': 'color'}) + ) + + class Meta: + model = QuizCategory + fields = '__all__' +from django.utils.html import format_html +@admin.register(QuizCategory) +class QuizCategoryAdmin(admin.ModelAdmin): + form = QuizCategoryForm + list_display = ('name', 'color_preview', 'color') + + def color_preview(self, obj): + return format_html( + '
', + obj.color + ) + color_preview.short_description = "Farbe" + # Registrierung der Modelle im Admin admin.site.register(QivipQuiz, QivipQuizAdmin) admin.site.register(QivipQuestion, QivipQuestionAdmin) -admin.site.register(QuizCategory, QuizCategoryAdmin) +#admin.site.register(QuizCategory, QuizCategoryAdmin) admin.site.register(QivipQuizFavorite, QivipQuizFavoriteAdmin) admin.site.register(QuizImage, QuizImageAdmin) admin.site.register(QuestionImage, QuestionImageAdmin) \ No newline at end of file diff --git a/django/library/migrations/0057_quizcategory_color.py b/django/library/migrations/0057_quizcategory_color.py new file mode 100644 index 0000000..eecd7bf --- /dev/null +++ b/django/library/migrations/0057_quizcategory_color.py @@ -0,0 +1,18 @@ +# Generated by Django 5.1.7 on 2025-07-02 11:31 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('library', '0056_alter_quizrating_unique_together'), + ] + + operations = [ + migrations.AddField( + model_name='quizcategory', + name='color', + field=models.CharField(default='#000000', help_text='Farbe als Hex-Code, z.B. #ff0000', max_length=7), + ), + ] diff --git a/django/library/models.py b/django/library/models.py index 87d10f6..10d307b 100644 --- a/django/library/models.py +++ b/django/library/models.py @@ -148,6 +148,12 @@ class QuizCategory(models.Model): name = models.CharField(max_length=100, unique=True) description = models.TextField(blank=True, null=True) slug = models.SlugField(unique=True, blank=True) + color= models.CharField( + max_length=7, + default="#000000", + help_text="Farbe als Hex-Code, z.B. #ff0000" + ) + def save(self, *args, **kwargs): if not self.slug: diff --git a/django/templates/library/overview_quiz.html b/django/templates/library/overview_quiz.html index 8385da2..4053346 100644 --- a/django/templates/library/overview_quiz.html +++ b/django/templates/library/overview_quiz.html @@ -19,19 +19,27 @@Alle ({{ total_all }})
Meine Quizze ({{ total_my }}) @@ -52,7 +60,7 @@