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 wtforms import Form, StringField, SelectField, RadioField, TextAreaField, BooleanField, validators
|
||||
from wtforms.fields.html5 import EmailField
|
||||
import importlib
|
||||
|
||||
app = Flask(__name__)
|
||||
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'),])
|
||||
solution_text = TextAreaField(u'Textfeld')
|
||||
|
||||
|
||||
def create_used_id_list():
|
||||
data = list()
|
||||
|
||||
@ -54,29 +54,23 @@ def create_used_id_list():
|
||||
data.append(line[0])
|
||||
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):
|
||||
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('/')
|
||||
def index():
|
||||
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'])
|
||||
def questions():
|
||||
form = QuestionForm(request.form)
|
||||
@ -87,12 +81,10 @@ def questions():
|
||||
new_row.append(new_id)
|
||||
for item in request.form:
|
||||
new_row.append(request.form[item])
|
||||
if len(new_row) == 6:
|
||||
new_row.append('n')
|
||||
writer = csv.writer(f)
|
||||
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 render_template('questions.html', form=form, title='Sortierhut')
|
||||
|
||||
@ -143,10 +135,14 @@ def admin_solution():
|
||||
|
||||
@app.route('/answers', methods=['GET', 'POST'])
|
||||
def answers():
|
||||
file_data = create_used_id_list()
|
||||
print(file_data)
|
||||
form = AnswerForm(request.form)
|
||||
if request.method == 'POST' and form.validate():
|
||||
ident = request.form['user_id']
|
||||
return redirect(url_for('view_answers', user_id=ident))
|
||||
if request.method == 'POST':
|
||||
print(request.form['user_id'])
|
||||
if request.form['user_id'] in file_data:
|
||||
ident = request.form['user_id']
|
||||
return redirect(url_for('view_answers', user_id=ident))
|
||||
return render_template('answers.html', form=form, title='Sortierhut', text='Hallo, Admin Fooboar')
|
||||
|
||||
@app.route('/view_answers<user_id>')
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user