from django.shortcuts import render, get_object_or_404
from django.db.models import Prefetch
from .models import Leader, LeadershipCategory

# Create your views here.
def about(request):
    # Get active categories with their active leaders
    categories = LeadershipCategory.objects.filter(
        is_active=True,
        parent__isnull=True  # Only top-level categories
    ).prefetch_related(
        Prefetch(
            'leaders',
            queryset=Leader.objects.filter(is_active=True).order_by('order', 'name')
        ),
        Prefetch(
            'subcategories',
            queryset=LeadershipCategory.objects.filter(is_active=True).order_by('order', 'name')
        )
    ).order_by('order', 'name')
    
    context = {
        'categories': categories,
    }
    return render(request, 'about/about.html', context)

def leader_detail(request, leader_id):
    leader = get_object_or_404(Leader.objects.select_related('category'), id=leader_id)
    return render(request, 'about/leader_detail.html', {'leader': leader})