from django.contrib import admin
from django.template.response import TemplateResponse

from .views import get_summary, daily_breakdown, hourly_stats


# store original index
original_index = admin.site.index


def custom_index(request, extra_context=None):

    context = {
        **(extra_context or {}),
        "summary": get_summary(),
        "daily_data": list(daily_breakdown()),
        "hourly_data": list(hourly_stats()),
    }

    return original_index(request, extra_context=context)


# override admin index
admin.site.index = custom_index