63 lines
2.8 KiB
Python
63 lines
2.8 KiB
Python
from flask import Flask, render_template, request, redirect, url_for
|
|
import smtplib, ssl
|
|
from unidecode import unidecode
|
|
from email.message import EmailMessage
|
|
|
|
sender_mail = 'patha9201@gmail.com'
|
|
sender_smtp = 'smtp.gmail.com'
|
|
sender_port = 587
|
|
sender_password = 'dqlw ablc clic uvgp'
|
|
|
|
app = Flask(__name__)
|
|
|
|
@app.route('/', methods=['GET','POST'])
|
|
def home():
|
|
if request.method == 'GET':
|
|
return render_template('index.html')
|
|
if request.method == 'POST':
|
|
return redirect(url_for('form'))
|
|
|
|
|
|
@app.route ('/form', methods=['GET','POST'])
|
|
def form():
|
|
if request.method == 'GET':
|
|
return render_template('form.html')
|
|
if request.method == 'POST':
|
|
|
|
# Dictioanry aus Form abfragen
|
|
receiver = unidecode(request.form['name'])
|
|
receiver_email = request.form['email']
|
|
receiver_glatze = request.form['glatze']
|
|
receiver_trauzeuge = request.form['trauzeuge']
|
|
receiver_comment = request.form['comment']
|
|
|
|
# Message-Objekt anlegen
|
|
msg = EmailMessage()
|
|
msg['Subject'] = 'Trauzeugenanfrage'
|
|
msg['From'] = sender_mail
|
|
msg['CC'] = sender_mail
|
|
msg['To'] = receiver_email
|
|
|
|
# Nachricht je nach Rückmeldung aus form erstellen
|
|
if receiver_glatze == 'yes':
|
|
msg.set_content(f'Sehr geehrter Herr {receiver}, Sie haben angegeben, dass Ihre Glatze vorhanden und entspiegelt ist - dies deutet auf eine maximale Eignung als Trauzeuge hin. Ihr Wunsch als Trauzeuge aufzutreten wurde mit - {receiver_trauzeuge} - beantwortet. Sie haben dazu folgenden Kommentar abgegeben: {receiver_comment}. Ihre Angaben wurden zur Kenntnis genommen und wurden zur weiteren Evaluation an den Admin gesendet. Vielen Dank!')
|
|
else:
|
|
msg.set_content(f'Sehr geehrter Herr {receiver}, Sie haben angegeben, dass keine Glatze vorhanden ist und/oder (falls vorhanden) sie nicht entspiegelt ist - dies führt leider zu Punkteabzügen in der Beurteilung Ihrer Qualifiaktion als Trauzeuge. In Ermangelung besserer Alternativen, kann Ihr Saldo aber als neutral bewertet werden. Ihr Wunsch als Trauzeuge aufzutreten wurde mit - {receiver_trauzeuge} - beantwortet. Sie haben dazu folgenden Kommentar abgegeben: {receiver_comment}. Ihre Angaben wurden zur Kenntnis genommen und wurden zur weiteren Evaluation an den Admin gesendet. Vielen Dank!')
|
|
|
|
# Bei SMTP-Server einloggen und Mail senden
|
|
context = ssl.create_default_context()
|
|
with smtplib.SMTP(sender_smtp, sender_port) as server:
|
|
server.starttls(context=context)
|
|
server.login(sender_mail, sender_password)
|
|
server.send_message(msg)
|
|
|
|
return redirect(url_for('submitted'))
|
|
|
|
|
|
@app.route ('/submitted')
|
|
def submitted():
|
|
return render_template('submitted.html')
|
|
|
|
|
|
if __name__ == '__main__':
|
|
app.run(host='0.0.0.0') |