from django.contrib.admin import AdminSite from django.utils.translation import gettext_lazy as _ # from django.urls import path from AKModel.models import Event class AKAdminSite(AdminSite): """ Custom admin interface definition (extend the admin functionality of Django) """ index_template = "admin/ak_index.html" site_header = f"AKPlanning - {_('Administration')}" index_title = _('Administration') def get_urls(self): """ Get URLs -- add further views that are not related to a certain model here if needed """ urls = super().get_urls() urls += [ # path('...', self.admin_view(...)), ] return urls def index(self, request, extra_context=None): # Override index page rendering to provide extra context (the list of active events) # to be used in the adapted template if extra_context is None: extra_context = {} extra_context["active_events"] = Event.objects.filter(active=True) return super().index(request, extra_context)