Skip to content
Snippets Groups Projects
Verified Commit f5d2fe0a authored by Nik | Klampfradler's avatar Nik | Klampfradler
Browse files

Merge remote-tracking branch 'origin/master' into 175-graphql-schemas

parents d1dd87a5 7c464908
No related branches found
No related tags found
No related merge requests found
Pipeline #84255 passed
...@@ -11,10 +11,8 @@ class LessonSubstitutionForm(forms.ModelForm): ...@@ -11,10 +11,8 @@ class LessonSubstitutionForm(forms.ModelForm):
class Meta: class Meta:
model = LessonSubstitution model = LessonSubstitution
fields = ["week", "lesson_period", "subject", "teachers", "room", "cancelled"] fields = ["subject", "teachers", "room", "cancelled"]
widgets = { widgets = {
"week": forms.NumberInput(attrs={"disabled": True}),
"lesson_period": forms.Select(attrs={"disabled": True}),
"teachers": ModelSelect2MultipleWidget( "teachers": ModelSelect2MultipleWidget(
search_fields=[ search_fields=[
"first_name__icontains", "first_name__icontains",
......
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
{% block page_title %}{% blocktrans %}Edit substitution{% endblocktrans %}{% endblock %} {% block page_title %}{% blocktrans %}Edit substitution{% endblocktrans %}{% endblock %}
{% block content %} {% block content %}
<p class="flow-text">{{ date }}: {{ lesson_period }}</p>
<form method="post"> <form method="post">
{% csrf_token %} {% csrf_token %}
...@@ -19,7 +20,6 @@ ...@@ -19,7 +20,6 @@
{% include "core/partials/save_button.html" %} {% include "core/partials/save_button.html" %}
{% if substitution %} {% if substitution %}
{# FIXME Respect year as well #}
<a href="{% url 'delete_substitution' substitution.lesson_period.id substitution.week %}" <a href="{% url 'delete_substitution' substitution.lesson_period.id substitution.week %}"
class="btn red waves-effect waves-light"> class="btn red waves-effect waves-light">
<i class="material-icons iconify left" data-icon="mdi:delete-outline"></i> {% trans "Delete" %} <i class="material-icons iconify left" data-icon="mdi:delete-outline"></i> {% trans "Delete" %}
......
...@@ -30,7 +30,7 @@ from .util.chronos_helpers import ( ...@@ -30,7 +30,7 @@ from .util.chronos_helpers import (
get_substitutions_context_data, get_substitutions_context_data,
get_teachers, get_teachers,
) )
from .util.date import CalendarWeek, get_weeks_for_year from .util.date import CalendarWeek, get_weeks_for_year, week_weekday_to_date
from .util.js import date_unix from .util.js import date_unix
...@@ -248,6 +248,8 @@ def edit_substitution(request: HttpRequest, id_: int, week: int) -> HttpResponse ...@@ -248,6 +248,8 @@ def edit_substitution(request: HttpRequest, id_: int, week: int) -> HttpResponse
lesson_period = get_object_or_404(LessonPeriod, pk=id_) lesson_period = get_object_or_404(LessonPeriod, pk=id_)
wanted_week = lesson_period.lesson.get_calendar_week(week) wanted_week = lesson_period.lesson.get_calendar_week(week)
context["lesson_period"] = lesson_period
context["date"] = week_weekday_to_date(wanted_week, lesson_period.period.weekday)
lesson_substitution = get_substitution_by_id(request, id_, week) lesson_substitution = get_substitution_by_id(request, id_, week)
...@@ -265,7 +267,12 @@ def edit_substitution(request: HttpRequest, id_: int, week: int) -> HttpResponse ...@@ -265,7 +267,12 @@ def edit_substitution(request: HttpRequest, id_: int, week: int) -> HttpResponse
if request.method == "POST": if request.method == "POST":
if edit_substitution_form.is_valid(): if edit_substitution_form.is_valid():
edit_substitution_form.save(commit=True) lesson_substitution = edit_substitution_form.save(commit=False)
if not lesson_substitution.pk:
lesson_substitution.lesson_period = lesson_period
lesson_substitution.week = wanted_week.week
lesson_substitution.year = wanted_week.year
lesson_substitution.save()
messages.success(request, _("The substitution has been saved.")) messages.success(request, _("The substitution has been saved."))
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment