diff --git a/impuls/__pycache__/settings.cpython-311.pyc b/impuls/__pycache__/settings.cpython-311.pyc index c9a1d1b0..bc23caa8 100644 Binary files a/impuls/__pycache__/settings.cpython-311.pyc and b/impuls/__pycache__/settings.cpython-311.pyc differ diff --git a/impuls/__pycache__/urls.cpython-311.pyc b/impuls/__pycache__/urls.cpython-311.pyc index 6e88f7b5..b1dd2b4f 100644 Binary files a/impuls/__pycache__/urls.cpython-311.pyc and b/impuls/__pycache__/urls.cpython-311.pyc differ diff --git a/impuls/urls.py b/impuls/urls.py index 5f4b74d2..1730eb61 100644 --- a/impuls/urls.py +++ b/impuls/urls.py @@ -18,7 +18,7 @@ from django.contrib import admin from django.urls import path, include from django.conf import settings -from website.views import newspage, post, about, search, home, contact, datenschutz, impressum, anmeldung, tagungsplan, success, failure +from website.views import newspage, post, about, search, home, contact, datenschutz, impressum, anmeldung, tagungsplan, success, failure, mail urlpatterns = [ path("", home, name = "homepage"), @@ -35,4 +35,5 @@ urlpatterns = [ path('success/', success, name = 'success'), path('failure/', failure, name = 'failure'), path('captcha/', include('captcha.urls')), + path('mail/', mail, name = 'mail'), ] diff --git a/requirements.txt b/requirements.txt index c7830127..fd16f3d6 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,6 +5,7 @@ django-simple-captcha==0.5.20 Markdown==3.5.1 Pillow==10.1.0 psycopg==3.1.12 +pymemcache==4.0.0 sqlparse==0.4.4 typing_extensions==4.8.0 whitenoise==6.6.0 diff --git a/templates/base_mail.html b/templates/base_mail.html new file mode 100644 index 00000000..e375de86 --- /dev/null +++ b/templates/base_mail.html @@ -0,0 +1,19 @@ +{% load static %} {% load markdown_extras %} + + + +{% block title %}{% endblock title %}Im·Puls + + + + + + + +
+{% block content %} +{% endblock content %} +{% include "footer.html" %} +
+ + diff --git a/templates/mail.html b/templates/mail.html new file mode 100644 index 00000000..3244d1fa --- /dev/null +++ b/templates/mail.html @@ -0,0 +1,55 @@ +{% extends 'base_mail.html' %} +{% load static %} +{% block content %} +
+ +

Herzlich Willkommen zur Im·Puls-Tagung, {{form.name}}

+

Hier kurz das wichtigste: + +

Tagungsbeitrag: {% if form.rate_reduced == True %}40€{% else %}70€{% endif %}

+ +

Hinweise

+ +Es wünscht viel Freude bei der Tagung,
+Federico J. Denkena
+im Auftrag

+
+
+

Deine Angaben

+
+

Name: {{form.name}}

+

Mail: {{form.mail}}

+

Telefon: {{form.phone}}

+

Ermäßigter Beitrag? {% if form.rate_reduced == True %}Ja{% else %}Nein{% endif %}

+

Straße: {{form.address_street}}

+

PLZ: {{form.address_plz}}

+

Stadt: {{form.address_town}}

+

Geburtsdatum: {{form.birthdate}}

+
+
+

Geschlecht: {{form.gender}}

+

Essenswunsch: {{form.food}}

+

Musikinstrument: {{form.music}}

+

Kuchen dabei? {% if form.cake == True %}Ja{% else %}Nein{% endif %}

+

Adresse für alle Teilnehmer veröffentlichen? {% if form.publish_address == True %}Ja{% else %}Nein{% endif %}

+

Telefonnummer für alle Teilnehmer veröffentlichen? {% if form.publish_phone == True %}Ja{% else %}Nein{% endif %}

+

Wie du von der Tagung erfahren hast: {{form.info}}

+

Weitere Nachrichten an das Team: {{form.message}}

+
+
+
+ +{% endblock content %} diff --git a/templates/mail.txt b/templates/mail.txt new file mode 100644 index 00000000..4360faf5 --- /dev/null +++ b/templates/mail.txt @@ -0,0 +1,38 @@ +Herzlich Willkommen zur Im·Puls-Tagung, {{form.name}} +Hier kurz das wichtigste: + +Tagungsbeitrag: {% if form.rate_reduced == True %}40€{% else %}70€{% endif %} +- Bitte überweise den Teilnehmerbeitrag auf folgendes Konto: +IBAN: DE94 4306 0967 0063 7968 02 / BIC: GENODEM1GLS +- Als Vergewendungszweck bitte "Im-Puls 2024 {{form.name}}" angeben. +- Alternativ kannst du gerne auch am Tagungsbeginn in Bar bezahlen. +- Der Teilnehmerbeitrag richtet sich nach Anmeldezeit und Ermäßigung. +- Niemandem soll die Teilnahme aus finanziellen Gründen verwehrt bleiben. Bei finanziellen Schwierigkeiten wende dich bitte ans Tagungsbüro. + +Hinweise +- Das Tagungsbüro ist unter folgender Rufnummer erreichbar: 0151 70818415. +- Die Tagung beginnt am 14. Februar um 17:00, Du kannst gerne auch früher kommen. +- Bitte bring einen Schlafsack, eine Isomatte und Schreibzeug mit. +- Auf der gesamten Tagung herrscht Alkohol- und Drogenverbot. +- Bei weiteren Fragen kannst Du gerne mit dem Tagungsbüro Kontakt aufnehmen. +Es wünscht viel Freude bei der Tagung, +Federico J. Denkena +im Auftrag +----------------------------------------- +Deine Angaben +Name: {{form.name}} +Mail: {{form.mail}} +Telefon: {{form.phone}} +Ermäßigter Beitrag? {% if form.rate_reduced == True %}Ja{% else %}Nein{% endif %} +Straße: {{form.address_street}} +PLZ: {{form.address_plz}} +Stadt: {{form.address_town}} +Geburtsdatum: {{form.birthdate}} +Geschlecht: {{form.gender}} +Essenswunsch: {{form.food}} +Musikinstrument: {{form.music}} +Kuchen dabei? {{form.cake}} +Adresse für alle Teilnehmer veröffentlichen? {{form.publish_address}} +Telefonnummer für alle Teilnehmer veröffentlichen? {{form.publish_phone}} +Wie du von der Tagung erfahren hast: {{form.info}} +Weitere Nachrichten an das Team: {{form.message}} diff --git a/website/__pycache__/admin.cpython-311.pyc b/website/__pycache__/admin.cpython-311.pyc index 325c36b5..faf09196 100644 Binary files a/website/__pycache__/admin.cpython-311.pyc and b/website/__pycache__/admin.cpython-311.pyc differ diff --git a/website/__pycache__/models.cpython-311.pyc b/website/__pycache__/models.cpython-311.pyc index c83146c7..d3227432 100644 Binary files a/website/__pycache__/models.cpython-311.pyc and b/website/__pycache__/models.cpython-311.pyc differ diff --git a/website/__pycache__/views.cpython-311.pyc b/website/__pycache__/views.cpython-311.pyc index 2ac05e3d..e06e9040 100644 Binary files a/website/__pycache__/views.cpython-311.pyc and b/website/__pycache__/views.cpython-311.pyc differ diff --git a/website/models.py b/website/models.py index 5674c8b5..dba03e6b 100644 --- a/website/models.py +++ b/website/models.py @@ -77,6 +77,9 @@ class Registrant(models.Model): timestamp = models.DateTimeField(auto_now_add=True) payed = models.BooleanField(default=False) + def __str__(self): + return self.name + class RegisterForm(ModelForm): captcha = CaptchaField() class Meta: diff --git a/website/views.py b/website/views.py index bd3c9335..e9fe3848 100644 --- a/website/views.py +++ b/website/views.py @@ -1,7 +1,8 @@ from django.shortcuts import render, redirect from django.db.models import Q -from .models import Author, Category, Post, ContactForm, RegisterForm +from .models import Author, Category, Post, ContactForm, Registrant, RegisterForm from django.core.mail import send_mail +from django.template.loader import render_to_string # Create your views here. @@ -84,32 +85,21 @@ def success(request): def failure(request): return render(request, 'failure.html') +def mail(request): + #context = {"form": Registrant.objects.all()[6]} + return render(request, 'mail.html',) + def anmeldung(request): if request.method == 'POST': register_form = RegisterForm(request.POST) if register_form.is_valid(): register_form.save() - name = request.POST.get('name', '') - mail = request.POST.get('mail', '') - try: - send_mail('Herzlich Willkommen zur Im·Puls-Tagung', '''Sehr geehrter ''' + name + ''', -vielen Dank für Deine Anmeldung zur Im·Puls-Tagung. -Hier kurz das wichtigste: -- Bitte überweise den Teilnehmerbeitrag auf folgendes Konto: -IBAN: DE94 4306 0967 0063 7968 02 / BIC: GENODEM1GLS -- Als Vergewendungszweck bitte "Im-Puls 2024 ''' + name + '''" angeben. -- Alternativ kannst du gerne auch am Tagungsbeginn in Bar bezahlen. -- Der Teilnehmerbeitrag richtet sich nach Anmeldezeit und Ermäßigung. -- Das Tagungsbüro ist unter folgender Rufnummer erreichbar: 0151 70818415. -- Die Tagung beginnt am 14. Februar um 17:00, Du kannst gerne auch früher kommen. -- Bitte bring einen Schlafsack, eine Isomatte und Schreibzeug mit. -- Auf der gesamten Tagung herrscht Alkohol- und Drogenverbot. -Bei weiteren Fragen kannst Du gerne mit dem Tagungsbüro Kontakt aufnehmen. -Es wünscht viel Freude bei der Tagung, -Federico J. Denkena -im Auftrag''', 'webmailer@denkena-consulting.com', [mail], fail_silently=False) - except BadHeaderError: - pass + form = register_form.cleaned_data + mail = register_form.cleaned_data["mail"] + msg_plain = render_to_string('mail.txt', {"form": form}) + msg_html = render_to_string('mail.html', {"form": form}) + send_mail('Herzlich Willkommen zur Im·Puls-Tagung', msg_plain, 'webmailer@denkena-consulting.com', [mail], fail_silently=False, html_message=msg_html) + send_mail('Herzlich Willkommen zur Im·Puls-Tagung', msg_plain, 'webmailer@denkena-consulting.com', ["xenia.medvedeva@posteo.de","buero@im-puls.org","webmaster@denkena-consulting.com"], fail_silently=False, html_message=msg_html) register_form = RegisterForm() return redirect('/success/') else: