diff --git a/gruppenbildungsspiel.py b/gruppenbildungsspiel.py index 6981213..669d00b 100644 --- a/gruppenbildungsspiel.py +++ b/gruppenbildungsspiel.py @@ -11,21 +11,21 @@ app.jinja_env.lstrip_blocks = True datafile = "data.csv" -def input_check(form, field): +def check_input(form, field): if field.data == 'default': raise validators.ValidationError('Bitte wähle eine Option aus') class QuestionForm(Form): computers = [('default', 'Bitte auswählen'), ('hal', 'HAL 9000 (2001: Odyssee im Weltraum)'), ('deepthought', 'Deep Thought (Hitchhiker\'s Guide)'), ('neuromancer', 'Neuromancer (Neuromancer)'), ('samantha', 'Samatha (Her)'), ('tars', 'TARS und CASE (Interstellar)')] - computer = SelectField(u'Fiktionaler Lieblingscomputer', choices=computers, validators=[validators.InputRequired(), input_check]) + computer = SelectField(u'Fiktionaler Lieblingscomputer', choices=computers, validators=[validators.InputRequired(), check_input]) statuses = [('default', 'Bitte auswählen'), ('200', '200 OK'), ('300', '300 Multiple Choices'), ('301', '301 Moved Permanently'), ('402', '402 Payment Required'), ('404', '404 (Sleep) Not Found'), ('408', '408 Request Timeout'), ('418', '418 I am a teapot'), ('450', '450 Blocked by Windows Parental Controls'), ('451', '451 Unavailable For Legal Reasons'), ('502', '502 Bad Gateway (Internetkurort)')] - status = SelectField(u'Welcher HTTP-Statuscode trifft am häufigsten auf dich zu?', choices=statuses, validators=[validators.InputRequired(), input_check]) + status = SelectField(u'Welcher HTTP-Statuscode trifft am häufigsten auf dich zu?', choices=statuses, validators=[validators.InputRequired(), check_input]) vegetables = [('default', 'Bitte auswählen'), ('karotte', '🥕'), ('broccoli','🥦'), ('aubergine', '🍆'), ('kartoffel', '🥔'), ('bretzel', '🥨'), ('tomate', '🍅'), ('chili', '🌶️')] - vegetable = SelectField(u'Lieblingsgemüse', choices=vegetables, validators=[validators.InputRequired(), input_check]) + vegetable = SelectField(u'Lieblingsgemüse', choices=vegetables, validators=[validators.InputRequired(), check_input]) spirit_animals = [('default', 'Bitte auswählen'), ('feuer', 'Feuerfuchs'), ('wasser', 'Wasserhahn'), ('erde', 'Erdferkel'), ('luft', 'Luftschlange')] - spirit_animal = SelectField(u'Spirit Animal', choices=spirit_animals, validators=[validators.InputRequired(), input_check]) + spirit_animal = SelectField(u'Spirit Animal', choices=spirit_animals, validators=[validators.InputRequired(), check_input]) operating_systems = [('default', 'Bitte auswählen'), ('windows', 'Windows'), ('mac', 'Mac'), ('linux', 'Linux'), ('kaffee', 'Kaffee'), ('glados', 'GLaDOS')] - operating_system = SelectField(u'Bevorzugtes Betriebssystem', choices=operating_systems, validators=[validators.InputRequired(), input_check]) + operating_system = SelectField(u'Bevorzugtes Betriebssystem', choices=operating_systems, validators=[validators.InputRequired(), check_input]) check = BooleanField('Bitte nicht ankreuzen') email = EmailField('Email-Adresse') @@ -40,7 +40,6 @@ def create_used_id_list(): reader = csv.reader(f) for line in reader: data.append(line[0]) - print(data) return data class AnswerForm(Form): @@ -76,7 +75,7 @@ def questions(): @app.route('/result') def result(user_id): - return render_template('result.html', hausname='Knuth', haustext='Mitglieder dieses Hauses mögen LaTeX-Anzüge und Eisbären.', id=user_id) + return render_template('result.html', title='Sortierhut', hausname='Knuth', haustext='Mitglieder dieses Hauses mögen LaTeX-Anzüge und Eisbären.', id=user_id) @app.route('/admin') def admin(): @@ -92,7 +91,14 @@ def answers(): @app.route('/view_answers') def view_answers(user_id): - return render_template('view.html', title='Sortierhut', user_id=user_id) + user_row = list() + with open(datafile, "r", newline='') as f: + reader = csv.reader(f) + for line in reader: + if line[0] == user_id: + user_row = line + break + return render_template('view.html', title='Sortierhut', user_id=user_id, user_row=user_row) @app.route('/solution') def solution(): diff --git a/static/main.css b/static/main.css index ba8a2b0..f307db7 100644 --- a/static/main.css +++ b/static/main.css @@ -95,3 +95,8 @@ header h1 { display: inline; vertical-align: center; } + +/* view answers page: highlight chosen options */ +.choice { + font-weight: 900; +} diff --git a/templates/form.html b/templates/form.html index 6808594..382c169 100644 --- a/templates/form.html +++ b/templates/form.html @@ -6,7 +6,7 @@

Fiktionaler Computer