From 4043d048268832e427b1259331522782d23f96d8 Mon Sep 17 00:00:00 2001 From: Yohann D'ANELLO Date: Mon, 2 Nov 2020 16:17:07 +0100 Subject: [PATCH] Add admin pages for Participation app --- apps/participation/admin.py | 46 +++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) diff --git a/apps/participation/admin.py b/apps/participation/admin.py index e69de29..e4b3953 100644 --- a/apps/participation/admin.py +++ b/apps/participation/admin.py @@ -0,0 +1,46 @@ +from django.contrib import admin +from django.utils.translation import gettext_lazy as _ + +from .models import Participation, Phase, Question, Team, Video + + +@admin.register(Team) +class TeamAdmin(admin.ModelAdmin): + list_display = ('name', 'trigram', 'problem', 'valid',) + search_fields = ('name', 'trigram',) + list_filter = ('participation__problem', 'participation__valid',) + + def problem(self, team): + return team.participation.get_problem_display() + + problem.short_description = _('problem number') + + def valid(self, team): + return team.participation.valid + + valid.short_description = _('valid') + + +@admin.register(Participation) +class ParticipationAdmin(admin.ModelAdmin): + list_display = ('team', 'problem', 'valid',) + search_fields = ('team__name', 'team__trigram',) + list_filter = ('problem', 'valid',) + + +@admin.register(Video) +class VideoAdmin(admin.ModelAdmin): + list_display = ('participation', 'link',) + search_fields = ('participation__team__name', 'participation__team__trigram', 'link',) + + +@admin.register(Question) +class QuestionAdmin(admin.ModelAdmin): + list_display = ('participation', 'question',) + search_fields = ('participation__team__name', 'participation__team__trigram', 'question',) + + +@admin.register(Phase) +class PhaseAdmin(admin.ModelAdmin): + list_display = ('phase_number', 'start', 'end',) + ordering = ('phase_number', 'start',)