from django.contrib import admin from django.utils.translation import gettext_lazy as _ from colloscope.models import * @admin.register(School) class LyceeAdmin(admin.ModelAdmin): list_display = ('uai', 'description', 'vacation') admin.site.register(Class) admin.site.register(Term) admin.site.register(Subject) admin.site.register(GroupType) admin.site.register(Group) @admin.register(Student) class StudentAdmin(admin.ModelAdmin): list_display = ("cls", "first_name", "last_name") list_filter = ("cls",) admin.site.register(Member) admin.site.register(Colleur) class ColleInline(admin.StackedInline): model = Colle raw_id_fields = ("slot",) @admin.register(Slot) class SlotAdmin(admin.ModelAdmin): list_display = ('subject', 'colleur', "term", 'view_day', "time", "duration") list_filter = ("subject", "colleur", "term") inlines = [ColleInline] def view_day(self, obj): jours = ["dimanche", "lundi", "mardi", "mercredi", "jeudi", "vendredi", "samedi"] return jours[obj.day] view_day.short_description = _('Day') class SwapInline(admin.StackedInline): model = Swap raw_id_fields = ("colle",) @admin.register(Colle) class ColleAdmin(admin.ModelAdmin): list_display = ('view_subject', 'view_colleur', 'view_room', 'datetime',) list_filter = ('slot',) inlines = [SwapInline] def view_subject(self, obj): return obj.slot.subject view_subject.short_description = _('Subject') def view_colleur(self, obj): return obj.slot.colleur def view_room(self, obj): return obj.slot.room view_subject.short_description = _('Subject') view_colleur.short_description = _('Colleur') view_room.short_description = _('Room') @admin.register(Swap) class SwapAdmin(admin.ModelAdmin): list_display = ('colle', 'enroll', 'student') list_filter = ('colle', 'enroll', 'student') admin.site.register(Profile) admin.site.register(CalendarLink)