diff --git a/biscuit/apps/alsijil/templates/alsijil/lesson.html b/biscuit/apps/alsijil/templates/alsijil/lesson.html index 0c61a87395ee5c3331a4d6e21bd21c7a998bb7df..ad483edcf32023946ec0b420cd4c54ca6c8bf667 100644 --- a/biscuit/apps/alsijil/templates/alsijil/lesson.html +++ b/biscuit/apps/alsijil/templates/alsijil/lesson.html @@ -24,63 +24,47 @@ {% endblock %} {% block content %} - {% if lesson_period %} - <form method="post"> - {% csrf_token %} + <form method="post"> + {% csrf_token %} - <div class="card"> - <div class="card-header bg-light text-dark"> - {% blocktrans %}Lesson documentation{% endblocktrans %} - </div> - <div class="card-body"> - {% csrf_token %} - {% bootstrap_form lesson_documentation_form %} - </div> + <div class="card"> + <div class="card-header bg-light text-dark"> + {% blocktrans %}Lesson documentation{% endblocktrans %} </div> + <div class="card-body"> + {% csrf_token %} + {% bootstrap_form lesson_documentation_form %} + </div> + </div> - <div class="card"> - <div class="card-header bg-light text-dark"> - {% blocktrans %}Personal notes{% endblocktrans %} - </div> - <div class="card-body"> - {{ personal_note_formset.management_form }} + <div class="card"> + <div class="card-header bg-light text-dark"> + {% blocktrans %}Personal notes{% endblocktrans %} + </div> + <div class="card-body"> + {{ personal_note_formset.management_form }} - <table class="table table-striped table-bordered table-hover table-responsive-xl"> + <table class="table table-striped table-bordered table-hover table-responsive-xl"> + <tr> + <th>{% blocktrans %}Person{% endblocktrans %}</th> + <th>{% blocktrans %}Absent{% endblocktrans %}</th> + <th>{% blocktrans %}Tardiness{% endblocktrans %}</th> + <th>{% blocktrans %}Excused{% endblocktrans %}</th> + <th>{% blocktrans %}Remarks{% endblocktrans %}</th> + </tr> + {% for form in personal_note_formset %} + {{ form.id }} <tr> - <th>{% blocktrans %}Person{% endblocktrans %}</th> - <th>{% blocktrans %}Absent{% endblocktrans %}</th> - <th>{% blocktrans %}Tardiness{% endblocktrans %}</th> - <th>{% blocktrans %}Excused{% endblocktrans %}</th> - <th>{% blocktrans %}Remarks{% endblocktrans %}</th> + <td>{{ form.person_name }}</td> + <td>{{ form.absent }}</td> + <td>{{ form.late }}</td> + <td>{{ form.excused }}</td> + <td>{{ form.remarks }}</td> </tr> - {% for form in personal_note_formset %} - {{ form.id }} - <tr> - <td>{{ form.person_name }}</td> - <td>{{ form.absent }}</td> - <td>{{ form.late }}</td> - <td>{{ form.excused }}</td> - <td>{{ form.remarks }}</td> - </tr> - {% endfor %} - </table> - </div> - </div> - <input type="submit" value="{% blocktrans %}Save{% endblocktrans %}" /> - </form> - {% else %} - <div class="card text-white bg-danger"> - <div class="card-header"> - {% blocktrans %}No lesson found{% endblocktrans %} - </div> - <div class="card-body"> - <p> - {% blocktrans %} - You either selected an invalid lesson or there - is currently no lesson in progress. - {% endblocktrans %} - </p> + {% endfor %} + </table> </div> </div> - {% endif %} + <input type="submit" value="{% blocktrans %}Save{% endblocktrans %}" /> + </form> {% endblock %} diff --git a/biscuit/apps/alsijil/views.py b/biscuit/apps/alsijil/views.py index bba07d956cef7b2ec33771600f020b14fc27984a..4f6fa11f12b76c2928120bed1a205b1c37af5e3c 100644 --- a/biscuit/apps/alsijil/views.py +++ b/biscuit/apps/alsijil/views.py @@ -3,8 +3,9 @@ from typing import Optional from django.contrib.auth.decorators import login_required from django.db.models import Exists, OuterRef, Q -from django.http import HttpRequest, HttpResponse, HttpResponseNotFound +from django.http import Http404, HttpRequest, HttpResponse from django.shortcuts import render +from django.utils.translation import ugettext as _ from django.views.decorators.cache import cache_page from biscuit.apps.chronos.models import LessonPeriod, TimePeriod @@ -30,8 +31,7 @@ def lesson(request: HttpRequest, week: Optional[int] = None, period_id: Optional wanted_week = current_week() if not lesson_period: - #XXX TODO: nice error page (“no lesson currently running for you?†or so) - return HttpResponseNotFound("no current lesson found for you") + raise Http404(_('You either selected an invalid lesson or there is currently no lesson in progress.')) context['lesson_period'] = lesson_period context['week'] = wanted_week