from django.contrib import admin from shared.admin import MarkdownxGuardedModelAdmin from .models import ( Lecture, LectureGroup, LectureLector, LectureMaterial, LectureRecording, ) # Register your models here. class IndexHiddenModelAdmin(MarkdownxGuardedModelAdmin): def has_module_permission(self, request): return False class LectureGroupAdmin(MarkdownxGuardedModelAdmin): autocomplete_fields = ("user_groups",) search_fields = ("name",) class LectureLectorInline(admin.StackedInline): model = LectureLector extra = 1 class LectureRecordingInline(admin.TabularInline): model = LectureRecording extra = 1 class LectureMaterialInline(admin.StackedInline): model = LectureMaterial extra = 1 class LectureAdmin(MarkdownxGuardedModelAdmin): inlines = ( LectureLectorInline, LectureRecordingInline, LectureMaterialInline, ) autocomplete_fields = ("groups",) search_fields = ("name", "description") list_display = ( "name", "timestamp", ) for model in ( LectureLector, LectureMaterial, LectureRecording, ): admin.site.register(model, IndexHiddenModelAdmin) admin.site.register(Lecture, LectureAdmin) admin.site.register(LectureGroup, LectureGroupAdmin)