from django.http import HttpRequest, HttpResponse from django.shortcuts import render from .filters import ParkFilter from .querysets import get_base_park_queryset def suggest_parks(request: HttpRequest) -> HttpResponse: """Return park search suggestions as a dropdown""" try: query = request.GET.get('search', '').strip() if not query or len(query) < 2: return HttpResponse('') # Get current view mode from request current_view_mode = request.GET.get('view_mode', 'grid') park_filter = ParkFilter({ 'search': query }, queryset=get_base_park_queryset()) parks = park_filter.qs[:8] # Limit to 8 suggestions response = render( request, 'parks/partials/search_suggestions.html', { 'suggestions': parks, 'view_mode': current_view_mode } ) response['HX-Trigger'] = 'showSuggestions' return response except Exception as e: return HttpResponse(f'Error getting suggestions: {str(e)}')