from datetime import date from django.shortcuts import render, get_object_or_404, redirect from django.views.decorators.http import require_POST from plants.models import Plant, Species, PruningLog from plants.forms import PlantForm, PruningLogForm from plants.utils.pruning import pruning_status def plant_list(request): qs = Plant.objects.select_related('species').all() q = request.GET.get('q', '') indoor_filter = request.GET.get('filter', '') if q: qs = qs.filter(name__icontains=q) | qs.filter(location__icontains=q) if indoor_filter == 'indoor': qs = qs.filter(is_indoor=True) elif indoor_filter == 'outdoor': qs = qs.filter(is_indoor=False) template = ( 'plants/partials/plant_list_results.html' if request.htmx else 'plants/plant_list.html' ) return render(request, template, {'plants': qs, 'q': q, 'filter': indoor_filter}) def plant_detail(request, pk): pass def plant_add(request): pass def plant_edit(request, pk): pass def plant_delete(request, pk): pass @require_POST def log_pruning(request, pk): pass