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() name = request.POST.get('name') mail = request.POST.get('mail') send_mail('Essensanmeldung erhalten!', '''Sehr geehrte/r ''' + name + ''', hiermit möchten wir Ihnen den Erhalt Ihrer Essensanmeldung bestätigen. Mit freundlichen Grüßen, Ihr Team der Jugendgruppe Mysteriendrama''', 'webmailer@denkena-consulting.com', [mail, 'mysteriendrama@denkena-consulting.com', 'dhafner1964@hotmail.com',], fail_silently=False) context = init_context() return render(request, 'anmeldung.html', context) if request.method == 'POST' and request.POST.get("form_type") == "reservierung": reservierung_form = ReservierungForm(request.POST) if reservierung_form.is_valid(): reservierung_form.save() name = request.POST.get('name') mail = request.POST.get('mail') anzahl_b = request.POST.get('anzahl_b') anzahl_w = request.POST.get('anzahl_w') anzahl_l = request.POST.get('anzahl_l') message_body = '''Sehr geehrte/r ''' + name + ''',\nhiermit möchten wir Ihnen den Erhalt Ihrer Sitzplatzreservierung bestätigen.\n''' if int(anzahl_b) > 0: message_body += ('Sitzplätze in Böblingen: ' + anzahl_b + '.\n') if int(anzahl_w) > 0: message_body += ('Sitzplätze in Wuppertal: ' + anzahl_w + '.\n') if int(anzahl_l) > 0: message_body += ('Sitzplätze in Lübeck: ' + anzahl_l + '.\n') message_body += ('''Mit freundlichen Grüßen, Ihr Team der Jugendgruppe Mysteriendrama''') send_mail('Reservierung erhalten!', message_body, 'webmailer@denkena-consulting.com', [mail, 'mysteriendrama@denkena-consulting.com', 'dhafner1964@hotmail.com'], fail_silently=False) context = init_context() return render(request, 'anmeldung.html', context) if request.method == 'GET': context = init_context() return render(request, 'anmeldung.html', context)