gpp/port/views/index.py
2019-06-24 18:10:45 +02:00

69 lines
2.3 KiB
Python

from django.shortcuts import render
from django.http import HttpResponse
from django.conf import settings
from django.forms import TextInput, RadioSelect
from pprint import pprint
from ..models import *
from ..forms import *
#import ..views as Views
def index(request):
return render(request, 'index.html')
def new_stay(request):
if not request.session.get('new_stay_step', False) \
or request.session.get('new_stay_done', False) :
# This is a new stay, we initialize the session
request.session['new_stay_step'] = 0
request.session['new_stay_done'] = False
try:
boat_id = int(request.POST.get('search_results'))
boat = Boat.objects.get(pk=boat_id)
if boat is not None:
request.session['new_stay_step'] = 1
request.session['new_stay_boat'] = boat_id
if boat.insurance is not None:
request.session['new_stay_insurance'] = boat.insurance.id
return new_stay(request)
except TypeError:
pass
except Exception as e:
pprint(e)
name = request.POST.get('search_name', '')
boat_existing = [ (b.id, b.name) for b in \
Boat.objects.filter(name__icontains=name) ] \
if len(name) > 2 else []
boat_search_form = BoatSearchForm(
name=name,
choices=boat_existing)
boat_form = BoatForm()
return render(request,
'new_stay/new_stay-0.html',
{
'boat_search_form': boat_search_form,
'boat_form': boat_form
})
# Boat form
elif request.session['new_stay_step'] == 1:
# Insurance form
data = dict(request.session)
data['insurance_form'] = InsuranceForm()
return render(request, 'new_stay/new_stay-1.html', data)
elif request.session['new_stay_step'] ==2:
# Person form
return render(request, 'new_stay/new_stay-2.html')
elif request.session['new_stay_step'] ==3:
# Stay form
return render(request, 'new_stay/new_stay-3.html')
elif request.session['new_stay_step'] == 4:
# Save form
request.session['new_stay_done'] = True
return render(request, 'new_stay/new_stay-4.html')