Dirty fix for id validation on answer page
This commit is contained in:
parent
6afb88c4be
commit
309bdf4983
@ -6,6 +6,7 @@ import smtplib
|
|||||||
from email.message import EmailMessage
|
from email.message import EmailMessage
|
||||||
from wtforms import Form, StringField, SelectField, RadioField, TextAreaField, BooleanField, validators
|
from wtforms import Form, StringField, SelectField, RadioField, TextAreaField, BooleanField, validators
|
||||||
from wtforms.fields.html5 import EmailField
|
from wtforms.fields.html5 import EmailField
|
||||||
|
import importlib
|
||||||
|
|
||||||
app = Flask(__name__)
|
app = Flask(__name__)
|
||||||
app.jinja_env.trim_blocks = True
|
app.jinja_env.trim_blocks = True
|
||||||
@ -41,7 +42,6 @@ class SolutionForm(Form):
|
|||||||
question = RadioField(u'Welche Frage ist ausschlaggebend für die Hauszuordnung?', choices=choices, validators=[validators.InputRequired(message='Bitte ankreuzen'),])
|
question = RadioField(u'Welche Frage ist ausschlaggebend für die Hauszuordnung?', choices=choices, validators=[validators.InputRequired(message='Bitte ankreuzen'),])
|
||||||
solution_text = TextAreaField(u'Textfeld')
|
solution_text = TextAreaField(u'Textfeld')
|
||||||
|
|
||||||
|
|
||||||
def create_used_id_list():
|
def create_used_id_list():
|
||||||
data = list()
|
data = list()
|
||||||
|
|
||||||
@ -54,29 +54,23 @@ def create_used_id_list():
|
|||||||
data.append(line[0])
|
data.append(line[0])
|
||||||
return data
|
return data
|
||||||
|
|
||||||
|
def check_id(user_id):
|
||||||
|
used_ids = create_used_id_list()
|
||||||
|
if user_id in used_ids:
|
||||||
|
return True
|
||||||
|
else:
|
||||||
|
return False
|
||||||
|
|
||||||
class AnswerForm(Form):
|
class AnswerForm(Form):
|
||||||
user_id = StringField('Deine Id', [validators.InputRequired(), validators.AnyOf(values=create_used_id_list(), message='Leider ist das keine gültige ID')])
|
used_id_list = create_used_id_list()
|
||||||
|
user_id = StringField('Deine Id', [validators.InputRequired(), validators.AnyOf(values=used_id_list, message='Leider ist das keine gültige ID')])
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@app.route('/')
|
@app.route('/')
|
||||||
def index():
|
def index():
|
||||||
return render_template('index.html', title='Sortierhut')
|
return render_template('index.html', title='Sortierhut')
|
||||||
|
|
||||||
def send_mail(user_id):
|
|
||||||
with open(mailfile) as f:
|
|
||||||
msg = EmailMessage()
|
|
||||||
msg.set_content(f.read())
|
|
||||||
|
|
||||||
msg['Subject'] = 'Deine Sortierhut-ID'
|
|
||||||
msg['From'] = 'anna-carina-dorothea.sauer@stud.uni-bamberg.de'
|
|
||||||
msg['To'] = 'anna-carina-dorothea.sauer@stud.uni-bamberg.de'
|
|
||||||
|
|
||||||
s = smtplib.SMTP('localhost')
|
|
||||||
s.send_message(msg)
|
|
||||||
s.quit()
|
|
||||||
return
|
|
||||||
|
|
||||||
@app.route('/questions', methods=['GET', 'POST'])
|
@app.route('/questions', methods=['GET', 'POST'])
|
||||||
def questions():
|
def questions():
|
||||||
form = QuestionForm(request.form)
|
form = QuestionForm(request.form)
|
||||||
@ -87,12 +81,10 @@ def questions():
|
|||||||
new_row.append(new_id)
|
new_row.append(new_id)
|
||||||
for item in request.form:
|
for item in request.form:
|
||||||
new_row.append(request.form[item])
|
new_row.append(request.form[item])
|
||||||
|
if len(new_row) == 6:
|
||||||
|
new_row.append('n')
|
||||||
writer = csv.writer(f)
|
writer = csv.writer(f)
|
||||||
writer.writerow(new_row)
|
writer.writerow(new_row)
|
||||||
# user = User()
|
|
||||||
# user.name = form.username
|
|
||||||
# spirit = request.form['spirit_animal']
|
|
||||||
# user.save()
|
|
||||||
return redirect(url_for('result', user_id=new_id))
|
return redirect(url_for('result', user_id=new_id))
|
||||||
return render_template('questions.html', form=form, title='Sortierhut')
|
return render_template('questions.html', form=form, title='Sortierhut')
|
||||||
|
|
||||||
@ -143,8 +135,12 @@ def admin_solution():
|
|||||||
|
|
||||||
@app.route('/answers', methods=['GET', 'POST'])
|
@app.route('/answers', methods=['GET', 'POST'])
|
||||||
def answers():
|
def answers():
|
||||||
|
file_data = create_used_id_list()
|
||||||
|
print(file_data)
|
||||||
form = AnswerForm(request.form)
|
form = AnswerForm(request.form)
|
||||||
if request.method == 'POST' and form.validate():
|
if request.method == 'POST':
|
||||||
|
print(request.form['user_id'])
|
||||||
|
if request.form['user_id'] in file_data:
|
||||||
ident = request.form['user_id']
|
ident = request.form['user_id']
|
||||||
return redirect(url_for('view_answers', user_id=ident))
|
return redirect(url_for('view_answers', user_id=ident))
|
||||||
return render_template('answers.html', form=form, title='Sortierhut', text='Hallo, Admin Fooboar')
|
return render_template('answers.html', form=form, title='Sortierhut', text='Hallo, Admin Fooboar')
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user