Skip to content
Snippets Groups Projects
Verified Commit 5747c372 authored by Tom Teichler's avatar Tom Teichler :beers:
Browse files

Use django_select2 everywhere in chronos. Advances BiscuIT-ng#102.

parent 4be76495
No related branches found
No related tags found
1 merge request!22Use django_select2 everywhere in chronos. Advances BiscuIT-ng#102.
from django import forms
from django.db.models import Count
from django.utils.translation import ugettext_lazy as _
from django_select2.forms import ModelSelect2MultipleWidget, Select2Widget
from biscuit.core.models import Person, Group
......@@ -10,18 +11,21 @@ from .models import Room, LessonSubstitution, Subject, LessonPeriod
class SelectForm(forms.Form):
group = forms.ModelChoiceField(
queryset=Group.objects.annotate(lessons_count=Count('lessons')).filter(lessons_count__gt=0),
label=_('Group'), required=False)
label=_('Group'), required=False, widget=Select2Widget)
teacher = forms.ModelChoiceField(
queryset=Person.objects.annotate(lessons_count=Count(
'lessons_as_teacher')).filter(lessons_count__gt=0),
label=_('Teacher'), required=False)
label=_('Teacher'), required=False, widget=Select2Widget)
room = forms.ModelChoiceField(
queryset=Room.objects.annotate(lessons_count=Count(
'lesson_periods')).filter(lessons_count__gt=0),
label=_('Room'), required=False)
label=_('Room'), required=False, widget=Select2Widget)
class LessonSubstitutionForm(forms.ModelForm):
class Meta:
model = LessonSubstitution
fields = ['week', 'lesson_period', 'subject', 'teachers', 'room', 'cancelled']
widgets = {
'teachers': ModelSelect2MultipleWidget(search_fields=['first_name__icontains', 'last_name__icontains', 'short_name__icontains'])
}
......@@ -3,6 +3,17 @@
{% extends "core/base.html" %}
{% load bootstrap4 font_awesome i18n %}
{% block bootstrap4_extra_head %}
{{ block.super }}
{{ edit_substitution_form.media.css }}
{% endblock %}
{% block bootstrap4_extra_script %}
{{ block.super }}
{{ edit_substitution_form.media.js }}
{% endblock %}
{% block bootstrap4_title %}{% blocktrans %}Edit substitution{% endblocktrans %} - {{ block.super }}{% endblock %}
{% block page_title %}{% blocktrans %}Edit substitution{% endblocktrans %}{% endblock %}
......
......@@ -6,6 +6,12 @@
{% block bootstrap4_extra_head %}
{{ block.super }}
<link rel="stylesheet" href="{% static 'css/chronos/timetable.css' %}" />
{{ select_form.media.css }}
{% endblock %}
{% block bootstrap4_extra_script %}
{{ block.super }}
{{ select_form.media.js }}
{% endblock %}
{% block bootstrap4_title %}{% blocktrans %}Timetable{% endblocktrans %} - {{ block.super }}{% endblock %}
......
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