from django.shortcuts import render, redirect _SESSION_KEYS = [ 'identify_matches', 'identify_image_paths', 'identify_selected', 'identify_vpc_results', 'identify_vpc_idx', ] def _clear_session(request): for key in _SESSION_KEYS: request.session.pop(key, None) def identify_upload(request): if request.method == 'POST': return redirect('identify_confirm') return render(request, 'plants/identify_upload.html') def identify_confirm(request): if 'identify_matches' not in request.session: return redirect('identify_upload') if request.method == 'POST': return redirect('identify_fields') return render(request, 'plants/identify_confirm.html', { 'matches': request.session.get('identify_matches', []), }) def identify_fields(request): if 'identify_selected' not in request.session: return redirect('identify_upload') if request.method == 'POST': _clear_session(request) return redirect('plant_list') return render(request, 'plants/identify_fields.html', { 'selected': request.session.get('identify_selected', {}), 'vpc_results': request.session.get('identify_vpc_results', []), 'vpc_idx': request.session.get('identify_vpc_idx', 0), })