from django.shortcuts import render from django.db.models import Sum from .models import ContactForm, EssenForm, ReservierungForm, Reservierung, Essen from django.core.mail import send_mail from django import forms # Create your views here. def homepage(request): return render(request, 'homepage.html') def unterstuetzen(request): return render(request, 'unterstuetzen.html') def ueber(request): return render(request, 'ueber.html') def drama(request): return render(request, 'drama.html') def kontakt(request): if request.method == 'POST': contact_form = ContactForm(request.POST) if contact_form.is_valid(): contact_form.save() name = request.POST.get('name', '') mail = request.POST.get('mail', '') message = request.POST.get('message', '') try: send_mail('Kontaktanfrage von ' + name, message, 'webmailer@denkena-consulting.com', ['webmaster@denkena-consulting.com'], fail_silently=False) send_mail('Nachricht erhalten', '''Sehr geehrter ''' + name + ''', mit Dank bestätigt die Jugendgruppe Mysteriendrama den Erhalt Ihrer Nachricht. Wir werden sobald als möglich antworten. Mit freundlichen Grüßen, Ihre Jugendgruppe Mysteriendrama''', 'webmailer@denkena-consulting.com', [mail], fail_silently=False) except BadHeaderError: pass return render(request, 'kontakt.html') else: contact_form = ContactForm() context = {'contact_form': contact_form} return render(request, 'kontakt.html', context) def impressum(request): return render(request, 'impressum.html') def datenschutz(request): return render(request, 'datenschutz.html') def init_context(): essen_form = EssenForm() summe_essen_b = Essen.objects.filter(auswahl__exact="ESSEN_B").count() summe_essen_w = Essen.objects.filter(auswahl__exact="ESSEN_W").count() summe_essen_l = Essen.objects.filter(auswahl__exact="ESSEN_L").count() reservierung_form = ReservierungForm() summe_b = Reservierung.objects.aggregate(Sum("anzahl_b"))['anzahl_b__sum'] if summe_b == None: summe_b = 0 summe_w = Reservierung.objects.aggregate(Sum("anzahl_w"))['anzahl_w__sum'] if summe_w == None: summe_w = 0 summe_l = Reservierung.objects.aggregate(Sum("anzahl_l"))['anzahl_l__sum'] if summe_l == None: summe_l = 0 if summe_b >= 100: reservierung_form.fields["anzahl_b"].widget = forms.HiddenInput() reservierung_form.fields["anzahl_b"].initial = 0 if summe_w >= 100: reservierung_form.fields["anzahl_w"].widget = forms.HiddenInput() reservierung_form.fields["anzahl_w"].initial = 0 if summe_l >= 100: reservierung_form.fields["anzahl_l"].widget = forms.HiddenInput() reservierung_form.fields["anzahl_l"].initial = 0 return {'essen_form': essen_form, 'reservierung_form': reservierung_form, 'summe_b': summe_b, 'summe_w': summe_w,'summe_l': summe_l,'summe_essen_b': summe_essen_b,'summe_essen_w': summe_essen_w,'summe_essen_l': summe_essen_l,} def anmeldung(request): if request.method == 'POST' and request.POST.get("form_type") == "essen": essen_form = EssenForm(request.POST) if essen_form.is_valid(): essen_form.save() return render(request, 'anmeldung.html') if request.method == 'POST' and request.POST.get("form_type") == "reservierung": reservierung_form = ReservierungForm(request.POST) if reservierung_form.is_valid(): reservierung_form.save() return render(request, 'anmeldung.html') if request.method == 'GET': context = init_context() return render(request, 'anmeldung.html', context)