from django.contrib import admin from .models import FamilyLink, ParentalSettings, WeeklyReportLog class ParentalSettingsInline(admin.StackedInline): model = ParentalSettings extra = 0 class WeeklyReportLogInline(admin.TabularInline): model = WeeklyReportLog extra = 0 readonly_fields = ('sent_at',) @admin.register(FamilyLink) class FamilyLinkAdmin(admin.ModelAdmin): list_display = ('id', 'parent_user_id', 'child_user_id', 'status', 'invite_code', 'invited_at', 'accepted_at') list_filter = ('status',) search_fields = ('invite_code', 'child_phone') inlines = [ParentalSettingsInline, WeeklyReportLogInline] @admin.register(ParentalSettings) class ParentalSettingsAdmin(admin.ModelAdmin): list_display = ('id', 'family_link', 'daily_limit_minutes', 'quiet_hours_start', 'quiet_hours_end') @admin.register(WeeklyReportLog) class WeeklyReportLogAdmin(admin.ModelAdmin): list_display = ('id', 'family_link', 'week_start', 'sent_at', 'opened_at') list_filter = ('week_start',)