skillbox/server/books/wagtail_hooks.py

50 lines
1.1 KiB
Python

from wagtail.contrib.modeladmin.options import (
ModelAdmin,
ModelAdminGroup,
modeladmin_register,
)
from wagtail import hooks
from .models.module import ModuleCategory, ModuleType, Module
from django.utils.translation import gettext_lazy as _
class ModuleAdmin(ModelAdmin):
model = Module
list_display = ("title", "meta_title", "category", "category_type")
search_fields = ("title", "meta_title")
list_filter = ("category","category_type")
class ModuleCategoryAdmin(ModelAdmin):
model = ModuleCategory
list_display = ("name",)
ordering = ("name",)
class ModuleTypeAdmin(ModelAdmin):
model = ModuleType
list_display = (
"name",
"category",
)
list_filter = ("category",)
ordering = ("category", "name")
inspect_view_enabled = True
inspect_view_fields = (
"name",
"category",
)
class InstrumentGroup(ModelAdminGroup):
menu_label = _("Modules")
items = (
ModuleAdmin,
ModuleCategoryAdmin,
ModuleTypeAdmin,
)
modeladmin_register(InstrumentGroup)