Skip to content

Commit 986369c

Browse files
committed
Restore message in a form if it's incorrect.
Simplify controller a bit.
1 parent 4ca754e commit 986369c

File tree

2 files changed

+11
-7
lines changed

2 files changed

+11
-7
lines changed

ennead/templates/dialogue.html

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
{% extends 'base.html' %}
2-
2+
{% set task=thread.task %}
3+
{% set student=thread.student %}
34
{% block title %}{{task.order_num}}. {{ task.name }}{% endblock %}
45

56
{% block body %}
@@ -58,7 +59,7 @@ <h5 class="card-header">Критерии проверки</h5>
5859
<div class="col-9 offset-1">
5960
<hr/>
6061
<form id="post-form" action="{{ url_for('post_to_thread', task_id=task.id, student_id=student.id) }}" method="POST">
61-
{{ markdown_editor(text='', name='text', id='post-textarea') }}
62+
{{ markdown_editor(text=msg_value, name='text', id='post-textarea') }}
6263
{% if g.user.is_teacher %}
6364
<div class="form-check">
6465
<input class="form-check-input" type="checkbox" name="hide_from_student" value="hide_from_student" id="hide_from_student">
@@ -69,7 +70,7 @@ <h5 class="card-header">Критерии проверки</h5>
6970
<div class="form-group row">
7071
<label for="score-setter" class="col-form-label col-2">Балл:</label>
7172
<div class="col-5">
72-
<input type="number" step="any" name="score" value={{ thread.score }} class="form-control" id="score-setter">
73+
<input type="number" step="any" name="score" value={{ score_value }} class="form-control" id="score-setter">
7374
</div>
7475
</div>
7576
{% endif %}

ennead/views/dialogue.py

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -47,8 +47,8 @@ def thread_page(task_id: int, student_id: int) -> Response:
4747
return redirect(url_for('index'))
4848
thread = get_thread(task_id, student_id)
4949
posts = thread.ordered_posts(show_hidden=g.user.is_teacher)
50-
return render_template('dialogue.html', thread=thread, task=thread.task,
51-
student=thread.student, posts=posts)
50+
return render_template('dialogue.html', thread=thread, posts=posts,
51+
msg_value='', score_value=thread.score)
5252

5353

5454
@require_logged_in
@@ -67,8 +67,11 @@ def post_to_thread(task_id: int, student_id: int) -> Response:
6767
author=g.user, thread=thread,
6868
hide_from_student=hide_from_student)
6969
else:
70-
# TODO: redirect back to a dialogue, restoring a message draft not to lose it
71-
pass
70+
# Right now, unnecessary because only empty message can be incorrect
71+
posts = thread.ordered_posts(show_hidden=g.user.is_teacher)
72+
return render_template('dialogue.html', thread=thread, posts=posts,
73+
msg_value=request.form.get('text'),
74+
score_value=request.form.get('score'))
7275

7376
if g.user.is_teacher:
7477
score = float(request.form.get('score'))

0 commit comments

Comments
 (0)