Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • AlekSIS/official/AlekSIS-App-Alsijil
  • sunweaver/AlekSIS-App-Alsijil
  • 8tincsoVluke/AlekSIS-App-Alsijil
  • perfreicpo/AlekSIS-App-Alsijil
  • noifobarep/AlekSIS-App-Alsijil
  • 7ingannisdo/AlekSIS-App-Alsijil
  • unmruntartpa/AlekSIS-App-Alsijil
  • balrorebta/AlekSIS-App-Alsijil
  • comliFdifwa/AlekSIS-App-Alsijil
  • 3ranaadza/AlekSIS-App-Alsijil
10 results
Show changes
Commits on Source (20)
Showing
with 1699 additions and 848 deletions
......@@ -9,6 +9,16 @@ and this project adheres to `Semantic Versioning`_.
Unreleased
----------
Added
~~~~~
* Add feature to manage instructions and track whether groups have been instructed accordingly (e. g. for alarm plans).
Fixed
~~~~~
* Students were displayed multiple times in class register views.
`2.1`_ - 2022-06-25
-------------------
......
from django.contrib import admin
from .models import Instruction
admin.site.register(Instruction)
......@@ -5,7 +5,7 @@ from material import Layout, Row
from aleksis.core.models import SchoolTerm
from .models import PersonalNote
from .models import Instruction, PersonalNote
class PersonalNoteFilter(FilterSet):
......@@ -45,3 +45,22 @@ class PersonalNoteFilter(FilterSet):
"excuse_type": ["exact"],
"extra_marks": ["exact"],
}
class InstructionFilter(FilterSet):
def __init__(self, data=None, *args, **kwargs):
current_school_term = SchoolTerm.current
# if data is not None:
data = data.copy() if data is not None else {}
if "school_term" not in data and current_school_term:
data["school_term"] = current_school_term
super().__init__(data, *args, **kwargs)
class Meta:
model = Instruction
fields = {
"school_term": ["exact"],
}
......@@ -31,15 +31,18 @@ from .models import (
ExtraMark,
GroupRole,
GroupRoleAssignment,
Instruction,
LessonDocumentation,
PersonalNote,
)
class LessonDocumentationForm(forms.ModelForm):
layout = Layout("topic", "homework", "group_note")
class Meta:
model = LessonDocumentation
fields = ["topic", "homework", "group_note"]
fields = ["topic", "homework", "group_note", "done_instructions"]
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
......@@ -406,3 +409,15 @@ class RegisterObjectActionForm(ListActionForm):
"""Action form for managing register objects for use with ``RegisterObjectTable``."""
actions = [send_request_to_check_entry]
class InstructionForm(forms.ModelForm):
layout = Layout("school_term", "name", "icon", "pdf_file", "groups")
class Meta:
model = Instruction
fields = ["school_term", "name", "icon", "pdf_file", "groups"]
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.fields["school_term"].required = True
......@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-06-25 15:28+0200\n"
"POT-Creation-Date: 2022-08-15 10:22+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
......@@ -34,6 +34,7 @@ msgstr ""
#: aleksis/apps/alsijil/actions.py:48 aleksis/apps/alsijil/tables.py:29
#: aleksis/apps/alsijil/tables.py:53 aleksis/apps/alsijil/tables.py:78
#: aleksis/apps/alsijil/templates/alsijil/group_role/partials/assignment_options.html:29
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:80
msgid "Delete"
msgstr ""
......@@ -110,7 +111,7 @@ msgstr ""
msgid "Before"
msgstr ""
#: aleksis/apps/alsijil/filters.py:14 aleksis/apps/alsijil/forms.py:349
#: aleksis/apps/alsijil/filters.py:14 aleksis/apps/alsijil/forms.py:352
#: aleksis/apps/alsijil/tables.py:116
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:130
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:227
......@@ -127,51 +128,51 @@ msgstr ""
msgid "Tardiness is bigger than"
msgstr ""
#: aleksis/apps/alsijil/forms.py:47
#: aleksis/apps/alsijil/forms.py:50
msgid "Homework for the next lesson"
msgstr ""
#: aleksis/apps/alsijil/forms.py:53
#: aleksis/apps/alsijil/forms.py:56
msgid "Carry over data to all other lessons with the same subject in this week"
msgstr ""
#: aleksis/apps/alsijil/forms.py:98 aleksis/apps/alsijil/forms.py:256
#: aleksis/apps/alsijil/forms.py:348
#: aleksis/apps/alsijil/forms.py:101 aleksis/apps/alsijil/forms.py:259
#: aleksis/apps/alsijil/forms.py:351
#: aleksis/apps/alsijil/templates/alsijil/print/full_register.html:219
msgid "Group"
msgstr ""
#: aleksis/apps/alsijil/forms.py:104
#: aleksis/apps/alsijil/forms.py:107
#: aleksis/apps/alsijil/templates/alsijil/print/full_register.html:190
#: aleksis/apps/alsijil/templates/alsijil/print/full_register.html:221
msgid "Teacher"
msgstr ""
#: aleksis/apps/alsijil/forms.py:121
#: aleksis/apps/alsijil/forms.py:124
msgid "You can't select a group and a teacher both."
msgstr ""
#: aleksis/apps/alsijil/forms.py:192 aleksis/apps/alsijil/forms.py:350
#: aleksis/apps/alsijil/models.py:491
#: aleksis/apps/alsijil/forms.py:195 aleksis/apps/alsijil/forms.py:353
#: aleksis/apps/alsijil/models.py:504
#: aleksis/apps/alsijil/templates/alsijil/group_role/assigned_list.html:64
msgid "Start date"
msgstr ""
#: aleksis/apps/alsijil/forms.py:193 aleksis/apps/alsijil/forms.py:351
#: aleksis/apps/alsijil/models.py:495
#: aleksis/apps/alsijil/forms.py:196 aleksis/apps/alsijil/forms.py:354
#: aleksis/apps/alsijil/models.py:508
#: aleksis/apps/alsijil/templates/alsijil/group_role/assigned_list.html:65
msgid "End date"
msgstr ""
#: aleksis/apps/alsijil/forms.py:194
#: aleksis/apps/alsijil/forms.py:197
msgid "Start period"
msgstr ""
#: aleksis/apps/alsijil/forms.py:195
#: aleksis/apps/alsijil/forms.py:198
msgid "End period"
msgstr ""
#: aleksis/apps/alsijil/forms.py:196 aleksis/apps/alsijil/tables.py:117
#: aleksis/apps/alsijil/forms.py:199 aleksis/apps/alsijil/tables.py:117
#: aleksis/apps/alsijil/tables.py:138
#: aleksis/apps/alsijil/templates/alsijil/absences/register_confirm.html:50
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:397
......@@ -181,7 +182,7 @@ msgstr ""
msgid "Absent"
msgstr ""
#: aleksis/apps/alsijil/forms.py:197 aleksis/apps/alsijil/tables.py:146
#: aleksis/apps/alsijil/forms.py:200 aleksis/apps/alsijil/tables.py:146
#: aleksis/apps/alsijil/templates/alsijil/absences/register_confirm.html:54
#: aleksis/apps/alsijil/templates/alsijil/class_register/person.html:134
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/notes.html:31
......@@ -191,32 +192,32 @@ msgstr ""
msgid "Excused"
msgstr ""
#: aleksis/apps/alsijil/forms.py:199 aleksis/apps/alsijil/models.py:71
#: aleksis/apps/alsijil/models.py:253
#: aleksis/apps/alsijil/forms.py:202 aleksis/apps/alsijil/models.py:76
#: aleksis/apps/alsijil/models.py:258
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/notes.html:32
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/notes.html:73
msgid "Excuse type"
msgstr ""
#: aleksis/apps/alsijil/forms.py:204
#: aleksis/apps/alsijil/forms.py:207
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/notes.html:34
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/notes.html:94
#: aleksis/apps/alsijil/templates/alsijil/print/full_register.html:354
msgid "Remarks"
msgstr ""
#: aleksis/apps/alsijil/forms.py:269
#: aleksis/apps/alsijil/forms.py:272
#: aleksis/apps/alsijil/templates/alsijil/absences/register.html:9
#: aleksis/apps/alsijil/templates/alsijil/group_role/assigned_list.html:63
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/notes.html:28
msgid "Person"
msgstr ""
#: aleksis/apps/alsijil/forms.py:346
#: aleksis/apps/alsijil/forms.py:349
msgid "School term"
msgstr ""
#: aleksis/apps/alsijil/forms.py:347
#: aleksis/apps/alsijil/forms.py:350
msgid "Has lesson documentation"
msgstr ""
......@@ -261,27 +262,34 @@ msgstr ""
msgid "My students"
msgstr ""
#: aleksis/apps/alsijil/menus.py:71
#: aleksis/apps/alsijil/menus.py:71 aleksis/apps/alsijil/models.py:553
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:7
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:8
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:24
msgid "Instructions"
msgstr ""
#: aleksis/apps/alsijil/menus.py:82
#: aleksis/apps/alsijil/templates/alsijil/group_role/assign.html:11
#: aleksis/apps/alsijil/templates/alsijil/group_role/assign.html:18
msgid "Assign group role"
msgstr ""
#: aleksis/apps/alsijil/menus.py:82
#: aleksis/apps/alsijil/menus.py:93
#: aleksis/apps/alsijil/templates/alsijil/class_register/all_objects.html:5
#: aleksis/apps/alsijil/templates/alsijil/class_register/all_objects.html:8
msgid "All lessons"
msgstr ""
#: aleksis/apps/alsijil/menus.py:93 aleksis/apps/alsijil/models.py:72
#: aleksis/apps/alsijil/menus.py:104 aleksis/apps/alsijil/models.py:77
#: aleksis/apps/alsijil/templates/alsijil/excuse_type/list.html:8
#: aleksis/apps/alsijil/templates/alsijil/excuse_type/list.html:9
#: aleksis/apps/alsijil/templates/alsijil/partials/legend.html:30
msgid "Excuse types"
msgstr ""
#: aleksis/apps/alsijil/menus.py:104 aleksis/apps/alsijil/models.py:258
#: aleksis/apps/alsijil/models.py:443 aleksis/apps/alsijil/tables.py:120
#: aleksis/apps/alsijil/menus.py:115 aleksis/apps/alsijil/models.py:263
#: aleksis/apps/alsijil/models.py:456 aleksis/apps/alsijil/tables.py:120
#: aleksis/apps/alsijil/templates/alsijil/extra_mark/list.html:8
#: aleksis/apps/alsijil/templates/alsijil/extra_mark/list.html:9
#: aleksis/apps/alsijil/templates/alsijil/partials/legend.html:57
......@@ -291,7 +299,7 @@ msgstr ""
msgid "Extra marks"
msgstr ""
#: aleksis/apps/alsijil/menus.py:115
#: aleksis/apps/alsijil/menus.py:126
msgid "Manage group roles"
msgstr ""
......@@ -335,146 +343,165 @@ msgstr ""
msgid "Can register an absence for a person"
msgstr ""
#: aleksis/apps/alsijil/models.py:50 aleksis/apps/alsijil/models.py:430
#: aleksis/apps/alsijil/models.py:55 aleksis/apps/alsijil/models.py:443
msgid "Short name"
msgstr ""
#: aleksis/apps/alsijil/models.py:51 aleksis/apps/alsijil/models.py:431
#: aleksis/apps/alsijil/models.py:455
#: aleksis/apps/alsijil/models.py:56 aleksis/apps/alsijil/models.py:444
#: aleksis/apps/alsijil/models.py:468 aleksis/apps/alsijil/models.py:529
#: aleksis/apps/alsijil/templates/alsijil/class_register/groups.html:20
#: aleksis/apps/alsijil/templates/alsijil/partials/persons_with_stats.html:12
#: aleksis/apps/alsijil/templates/alsijil/partials/persons_with_stats.html:23
msgid "Name"
msgstr ""
#: aleksis/apps/alsijil/models.py:55 aleksis/apps/alsijil/tables.py:41
#: aleksis/apps/alsijil/models.py:60 aleksis/apps/alsijil/tables.py:41
msgid "Count as absent"
msgstr ""
#: aleksis/apps/alsijil/models.py:57
#: aleksis/apps/alsijil/models.py:62
msgid "If checked, this excuse type will be counted as a missed lesson. If not checked,it won't show up in the absence report."
msgstr ""
#: aleksis/apps/alsijil/models.py:233 aleksis/apps/alsijil/models.py:332
#: aleksis/apps/alsijil/models.py:238 aleksis/apps/alsijil/models.py:337
msgid "Year"
msgstr ""
#: aleksis/apps/alsijil/models.py:292
#: aleksis/apps/alsijil/models.py:297
msgid "Personal note"
msgstr ""
#: aleksis/apps/alsijil/models.py:293
#: aleksis/apps/alsijil/models.py:298
#: aleksis/apps/alsijil/templates/alsijil/class_register/person.html:47
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:375
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/notes.html:22
msgid "Personal notes"
msgstr ""
#: aleksis/apps/alsijil/models.py:344
#: aleksis/apps/alsijil/models.py:349
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:132
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:263
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:342
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:26
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:49
#: aleksis/apps/alsijil/templates/alsijil/print/full_register.html:421
msgid "Lesson topic"
msgstr ""
#: aleksis/apps/alsijil/models.py:345
#: aleksis/apps/alsijil/models.py:350
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:133
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:269
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:347
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:34
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:57
#: aleksis/apps/alsijil/templates/alsijil/print/full_register.html:422
msgid "Homework"
msgstr ""
#: aleksis/apps/alsijil/models.py:346
#: aleksis/apps/alsijil/models.py:351
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:134
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:275
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:351
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:42
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:65
msgid "Group note"
msgstr ""
#: aleksis/apps/alsijil/models.py:396
#: aleksis/apps/alsijil/models.py:358
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:23
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:73
msgid "Done instructions"
msgstr ""
#: aleksis/apps/alsijil/models.py:409
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:17
msgid "Lesson documentation"
msgstr ""
#: aleksis/apps/alsijil/models.py:397
#: aleksis/apps/alsijil/models.py:410
#: aleksis/apps/alsijil/templates/alsijil/class_register/person.html:43
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:21
msgid "Lesson documentations"
msgstr ""
#: aleksis/apps/alsijil/models.py:442
#: aleksis/apps/alsijil/models.py:455
msgid "Extra mark"
msgstr ""
#: aleksis/apps/alsijil/models.py:456
#: aleksis/apps/alsijil/models.py:469 aleksis/apps/alsijil/models.py:530
msgid "Icon"
msgstr ""
#: aleksis/apps/alsijil/models.py:457
#: aleksis/apps/alsijil/models.py:470
msgid "Colour"
msgstr ""
#: aleksis/apps/alsijil/models.py:463 aleksis/apps/alsijil/models.py:478
#: aleksis/apps/alsijil/models.py:476 aleksis/apps/alsijil/models.py:491
#: aleksis/apps/alsijil/templates/alsijil/group_role/assigned_list.html:62
msgid "Group role"
msgstr ""
#: aleksis/apps/alsijil/models.py:464
#: aleksis/apps/alsijil/models.py:477
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:34
#: aleksis/apps/alsijil/templates/alsijil/group_role/list.html:8
#: aleksis/apps/alsijil/templates/alsijil/group_role/list.html:9
msgid "Group roles"
msgstr ""
#: aleksis/apps/alsijil/models.py:468
#: aleksis/apps/alsijil/models.py:481
msgid "Can assign group role"
msgstr ""
#: aleksis/apps/alsijil/models.py:484
#: aleksis/apps/alsijil/models.py:497
msgid "Assigned person"
msgstr ""
#: aleksis/apps/alsijil/models.py:489 aleksis/apps/alsijil/tables.py:105
#: aleksis/apps/alsijil/models.py:502 aleksis/apps/alsijil/models.py:540
#: aleksis/apps/alsijil/tables.py:105
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:128
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:246
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:326
msgid "Groups"
msgstr ""
#: aleksis/apps/alsijil/models.py:496
#: aleksis/apps/alsijil/models.py:509
msgid "Can be left empty if end date is not clear yet"
msgstr ""
#: aleksis/apps/alsijil/models.py:511
#: aleksis/apps/alsijil/models.py:524
msgid "Group role assignment"
msgstr ""
#: aleksis/apps/alsijil/models.py:512
#: aleksis/apps/alsijil/models.py:525
msgid "Group role assignments"
msgstr ""
#: aleksis/apps/alsijil/models.py:519
#: aleksis/apps/alsijil/models.py:533
msgid "PDF file"
msgstr ""
#: aleksis/apps/alsijil/models.py:542
msgid "The instruction will be shown for the members and owners of the selected groups. Leave empty to show for all groups."
msgstr ""
#: aleksis/apps/alsijil/models.py:552
msgid "Instruction"
msgstr ""
#: aleksis/apps/alsijil/models.py:565
msgid "Can view lesson overview"
msgstr ""
#: aleksis/apps/alsijil/models.py:520
#: aleksis/apps/alsijil/models.py:566
msgid "Can view week overview"
msgstr ""
#: aleksis/apps/alsijil/models.py:521
#: aleksis/apps/alsijil/models.py:567
msgid "Can view full register"
msgstr ""
#: aleksis/apps/alsijil/models.py:522
#: aleksis/apps/alsijil/models.py:568
msgid "Can register absence"
msgstr ""
#: aleksis/apps/alsijil/models.py:523
#: aleksis/apps/alsijil/models.py:569
msgid "Can list all personal note filters"
msgstr ""
......@@ -561,6 +588,7 @@ msgstr ""
#: aleksis/apps/alsijil/tables.py:23 aleksis/apps/alsijil/tables.py:47
#: aleksis/apps/alsijil/tables.py:72
#: aleksis/apps/alsijil/templates/alsijil/group_role/partials/assignment_options.html:13
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:74
msgid "Edit"
msgstr ""
......@@ -779,6 +807,7 @@ msgid "Close"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/class_register/person.html:79
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:49
msgid "Filter"
msgstr ""
......@@ -970,6 +999,33 @@ msgstr ""
msgid "Stop"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/instruction/create.html:6
#: aleksis/apps/alsijil/templates/alsijil/instruction/create.html:7
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:37
msgid "Create instruction"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/instruction/edit.html:6
#: aleksis/apps/alsijil/templates/alsijil/instruction/edit.html:7
msgid "Edit instruction"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:15
msgid "All instructions"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:43
msgid "Filter instructions"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:53
msgid "Reset filter"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:86
msgid "Show PDF file with instruction"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/notifications/check.html:1
msgid "Please check if the following class register entries are complete and correct:"
msgstr ""
......@@ -1064,6 +1120,14 @@ msgid ""
" "
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:31
msgid "Instruction done"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:81
msgid "Instruction done in this lesson"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/more.html:13
msgid "Change history"
msgstr ""
......@@ -1375,78 +1439,90 @@ msgstr ""
msgid "Notes"
msgstr ""
#: aleksis/apps/alsijil/views.py:118
#: aleksis/apps/alsijil/views.py:122
msgid "You either selected an invalid lesson or there is currently no lesson in progress."
msgstr ""
#: aleksis/apps/alsijil/views.py:151
#: aleksis/apps/alsijil/views.py:155
msgid "You are not allowed to create a lesson documentation for a lesson in the future."
msgstr ""
#: aleksis/apps/alsijil/views.py:268
#: aleksis/apps/alsijil/views.py:278
msgid "The lesson documentation has been saved."
msgstr ""
#: aleksis/apps/alsijil/views.py:302
#: aleksis/apps/alsijil/views.py:312
msgid "The personal notes have been saved."
msgstr ""
#: aleksis/apps/alsijil/views.py:1119
#: aleksis/apps/alsijil/views.py:1129
msgid "The absence has been saved."
msgstr ""
#: aleksis/apps/alsijil/views.py:1140
#: aleksis/apps/alsijil/views.py:1150
msgid "The personal note has been deleted."
msgstr ""
#: aleksis/apps/alsijil/views.py:1162
#: aleksis/apps/alsijil/views.py:1172
msgid "The extra mark has been created."
msgstr ""
#: aleksis/apps/alsijil/views.py:1174
#: aleksis/apps/alsijil/views.py:1184
msgid "The extra mark has been saved."
msgstr ""
#: aleksis/apps/alsijil/views.py:1185
#: aleksis/apps/alsijil/views.py:1195
msgid "The extra mark has been deleted."
msgstr ""
#: aleksis/apps/alsijil/views.py:1206
#: aleksis/apps/alsijil/views.py:1216
msgid "The excuse type has been created."
msgstr ""
#: aleksis/apps/alsijil/views.py:1218
#: aleksis/apps/alsijil/views.py:1228
msgid "The excuse type has been saved."
msgstr ""
#: aleksis/apps/alsijil/views.py:1229
#: aleksis/apps/alsijil/views.py:1239
msgid "The excuse type has been deleted."
msgstr ""
#: aleksis/apps/alsijil/views.py:1250
#: aleksis/apps/alsijil/views.py:1260
msgid "The group role has been created."
msgstr ""
#: aleksis/apps/alsijil/views.py:1262
#: aleksis/apps/alsijil/views.py:1272
msgid "The group role has been saved."
msgstr ""
#: aleksis/apps/alsijil/views.py:1273
#: aleksis/apps/alsijil/views.py:1283
msgid "The group role has been deleted."
msgstr ""
#: aleksis/apps/alsijil/views.py:1306 aleksis/apps/alsijil/views.py:1338
#: aleksis/apps/alsijil/views.py:1316 aleksis/apps/alsijil/views.py:1348
msgid "The group role has been assigned."
msgstr ""
#: aleksis/apps/alsijil/views.py:1357
#: aleksis/apps/alsijil/views.py:1367
msgid "The group role assignment has been saved."
msgstr ""
#: aleksis/apps/alsijil/views.py:1378
#: aleksis/apps/alsijil/views.py:1388
msgid "The group role assignment has been stopped."
msgstr ""
#: aleksis/apps/alsijil/views.py:1391
#: aleksis/apps/alsijil/views.py:1401
msgid "The group role assignment has been deleted."
msgstr ""
#: aleksis/apps/alsijil/views.py:1543
msgid "The instruction has been created."
msgstr ""
#: aleksis/apps/alsijil/views.py:1555
msgid "The instruction has been saved."
msgstr ""
#: aleksis/apps/alsijil/views.py:1566
msgid "The instruction has been deleted."
msgstr ""
......@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-06-25 15:28+0200\n"
"POT-Creation-Date: 2022-08-15 10:22+0200\n"
"PO-Revision-Date: 2020-07-26 14:08+0000\n"
"Last-Translator: Julian <leuckerj@gmail.com>\n"
"Language-Team: Latin <https://translate.edugit.org/projects/aleksis/aleksis-app-alsijil/la/>\n"
......@@ -34,6 +34,7 @@ msgstr ""
#: aleksis/apps/alsijil/actions.py:48 aleksis/apps/alsijil/tables.py:29
#: aleksis/apps/alsijil/tables.py:53 aleksis/apps/alsijil/tables.py:78
#: aleksis/apps/alsijil/templates/alsijil/group_role/partials/assignment_options.html:29
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:80
msgid "Delete"
msgstr ""
......@@ -110,7 +111,7 @@ msgstr ""
msgid "Before"
msgstr ""
#: aleksis/apps/alsijil/filters.py:14 aleksis/apps/alsijil/forms.py:349
#: aleksis/apps/alsijil/filters.py:14 aleksis/apps/alsijil/forms.py:352
#: aleksis/apps/alsijil/tables.py:116
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:130
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:227
......@@ -127,51 +128,51 @@ msgstr ""
msgid "Tardiness is bigger than"
msgstr ""
#: aleksis/apps/alsijil/forms.py:47
#: aleksis/apps/alsijil/forms.py:50
msgid "Homework for the next lesson"
msgstr ""
#: aleksis/apps/alsijil/forms.py:53
#: aleksis/apps/alsijil/forms.py:56
msgid "Carry over data to all other lessons with the same subject in this week"
msgstr ""
#: aleksis/apps/alsijil/forms.py:98 aleksis/apps/alsijil/forms.py:256
#: aleksis/apps/alsijil/forms.py:348
#: aleksis/apps/alsijil/forms.py:101 aleksis/apps/alsijil/forms.py:259
#: aleksis/apps/alsijil/forms.py:351
#: aleksis/apps/alsijil/templates/alsijil/print/full_register.html:219
msgid "Group"
msgstr "Grex"
#: aleksis/apps/alsijil/forms.py:104
#: aleksis/apps/alsijil/forms.py:107
#: aleksis/apps/alsijil/templates/alsijil/print/full_register.html:190
#: aleksis/apps/alsijil/templates/alsijil/print/full_register.html:221
msgid "Teacher"
msgstr ""
#: aleksis/apps/alsijil/forms.py:121
#: aleksis/apps/alsijil/forms.py:124
msgid "You can't select a group and a teacher both."
msgstr ""
#: aleksis/apps/alsijil/forms.py:192 aleksis/apps/alsijil/forms.py:350
#: aleksis/apps/alsijil/models.py:491
#: aleksis/apps/alsijil/forms.py:195 aleksis/apps/alsijil/forms.py:353
#: aleksis/apps/alsijil/models.py:504
#: aleksis/apps/alsijil/templates/alsijil/group_role/assigned_list.html:64
msgid "Start date"
msgstr ""
#: aleksis/apps/alsijil/forms.py:193 aleksis/apps/alsijil/forms.py:351
#: aleksis/apps/alsijil/models.py:495
#: aleksis/apps/alsijil/forms.py:196 aleksis/apps/alsijil/forms.py:354
#: aleksis/apps/alsijil/models.py:508
#: aleksis/apps/alsijil/templates/alsijil/group_role/assigned_list.html:65
msgid "End date"
msgstr ""
#: aleksis/apps/alsijil/forms.py:194
#: aleksis/apps/alsijil/forms.py:197
msgid "Start period"
msgstr ""
#: aleksis/apps/alsijil/forms.py:195
#: aleksis/apps/alsijil/forms.py:198
msgid "End period"
msgstr ""
#: aleksis/apps/alsijil/forms.py:196 aleksis/apps/alsijil/tables.py:117
#: aleksis/apps/alsijil/forms.py:199 aleksis/apps/alsijil/tables.py:117
#: aleksis/apps/alsijil/tables.py:138
#: aleksis/apps/alsijil/templates/alsijil/absences/register_confirm.html:50
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:397
......@@ -181,7 +182,7 @@ msgstr ""
msgid "Absent"
msgstr ""
#: aleksis/apps/alsijil/forms.py:197 aleksis/apps/alsijil/tables.py:146
#: aleksis/apps/alsijil/forms.py:200 aleksis/apps/alsijil/tables.py:146
#: aleksis/apps/alsijil/templates/alsijil/absences/register_confirm.html:54
#: aleksis/apps/alsijil/templates/alsijil/class_register/person.html:134
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/notes.html:31
......@@ -191,32 +192,32 @@ msgstr ""
msgid "Excused"
msgstr ""
#: aleksis/apps/alsijil/forms.py:199 aleksis/apps/alsijil/models.py:71
#: aleksis/apps/alsijil/models.py:253
#: aleksis/apps/alsijil/forms.py:202 aleksis/apps/alsijil/models.py:76
#: aleksis/apps/alsijil/models.py:258
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/notes.html:32
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/notes.html:73
msgid "Excuse type"
msgstr ""
#: aleksis/apps/alsijil/forms.py:204
#: aleksis/apps/alsijil/forms.py:207
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/notes.html:34
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/notes.html:94
#: aleksis/apps/alsijil/templates/alsijil/print/full_register.html:354
msgid "Remarks"
msgstr ""
#: aleksis/apps/alsijil/forms.py:269
#: aleksis/apps/alsijil/forms.py:272
#: aleksis/apps/alsijil/templates/alsijil/absences/register.html:9
#: aleksis/apps/alsijil/templates/alsijil/group_role/assigned_list.html:63
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/notes.html:28
msgid "Person"
msgstr "Persona"
#: aleksis/apps/alsijil/forms.py:346
#: aleksis/apps/alsijil/forms.py:349
msgid "School term"
msgstr ""
#: aleksis/apps/alsijil/forms.py:347
#: aleksis/apps/alsijil/forms.py:350
msgid "Has lesson documentation"
msgstr ""
......@@ -263,27 +264,34 @@ msgstr ""
msgid "My students"
msgstr ""
#: aleksis/apps/alsijil/menus.py:71
#: aleksis/apps/alsijil/menus.py:71 aleksis/apps/alsijil/models.py:553
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:7
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:8
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:24
msgid "Instructions"
msgstr ""
#: aleksis/apps/alsijil/menus.py:82
#: aleksis/apps/alsijil/templates/alsijil/group_role/assign.html:11
#: aleksis/apps/alsijil/templates/alsijil/group_role/assign.html:18
msgid "Assign group role"
msgstr ""
#: aleksis/apps/alsijil/menus.py:82
#: aleksis/apps/alsijil/menus.py:93
#: aleksis/apps/alsijil/templates/alsijil/class_register/all_objects.html:5
#: aleksis/apps/alsijil/templates/alsijil/class_register/all_objects.html:8
msgid "All lessons"
msgstr ""
#: aleksis/apps/alsijil/menus.py:93 aleksis/apps/alsijil/models.py:72
#: aleksis/apps/alsijil/menus.py:104 aleksis/apps/alsijil/models.py:77
#: aleksis/apps/alsijil/templates/alsijil/excuse_type/list.html:8
#: aleksis/apps/alsijil/templates/alsijil/excuse_type/list.html:9
#: aleksis/apps/alsijil/templates/alsijil/partials/legend.html:30
msgid "Excuse types"
msgstr ""
#: aleksis/apps/alsijil/menus.py:104 aleksis/apps/alsijil/models.py:258
#: aleksis/apps/alsijil/models.py:443 aleksis/apps/alsijil/tables.py:120
#: aleksis/apps/alsijil/menus.py:115 aleksis/apps/alsijil/models.py:263
#: aleksis/apps/alsijil/models.py:456 aleksis/apps/alsijil/tables.py:120
#: aleksis/apps/alsijil/templates/alsijil/extra_mark/list.html:8
#: aleksis/apps/alsijil/templates/alsijil/extra_mark/list.html:9
#: aleksis/apps/alsijil/templates/alsijil/partials/legend.html:57
......@@ -293,7 +301,7 @@ msgstr ""
msgid "Extra marks"
msgstr ""
#: aleksis/apps/alsijil/menus.py:115
#: aleksis/apps/alsijil/menus.py:126
msgid "Manage group roles"
msgstr ""
......@@ -337,104 +345,110 @@ msgstr ""
msgid "Can register an absence for a person"
msgstr ""
#: aleksis/apps/alsijil/models.py:50 aleksis/apps/alsijil/models.py:430
#: aleksis/apps/alsijil/models.py:55 aleksis/apps/alsijil/models.py:443
#, fuzzy
#| msgid "First name"
msgid "Short name"
msgstr "Primus nomen"
#: aleksis/apps/alsijil/models.py:51 aleksis/apps/alsijil/models.py:431
#: aleksis/apps/alsijil/models.py:455
#: aleksis/apps/alsijil/models.py:56 aleksis/apps/alsijil/models.py:444
#: aleksis/apps/alsijil/models.py:468 aleksis/apps/alsijil/models.py:529
#: aleksis/apps/alsijil/templates/alsijil/class_register/groups.html:20
#: aleksis/apps/alsijil/templates/alsijil/partials/persons_with_stats.html:12
#: aleksis/apps/alsijil/templates/alsijil/partials/persons_with_stats.html:23
msgid "Name"
msgstr ""
#: aleksis/apps/alsijil/models.py:55 aleksis/apps/alsijil/tables.py:41
#: aleksis/apps/alsijil/models.py:60 aleksis/apps/alsijil/tables.py:41
msgid "Count as absent"
msgstr ""
#: aleksis/apps/alsijil/models.py:57
#: aleksis/apps/alsijil/models.py:62
msgid "If checked, this excuse type will be counted as a missed lesson. If not checked,it won't show up in the absence report."
msgstr ""
#: aleksis/apps/alsijil/models.py:233 aleksis/apps/alsijil/models.py:332
#: aleksis/apps/alsijil/models.py:238 aleksis/apps/alsijil/models.py:337
msgid "Year"
msgstr ""
#: aleksis/apps/alsijil/models.py:292
#: aleksis/apps/alsijil/models.py:297
#, fuzzy
#| msgid "Person"
msgid "Personal note"
msgstr "Persona"
#: aleksis/apps/alsijil/models.py:293
#: aleksis/apps/alsijil/models.py:298
#: aleksis/apps/alsijil/templates/alsijil/class_register/person.html:47
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:375
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/notes.html:22
msgid "Personal notes"
msgstr ""
#: aleksis/apps/alsijil/models.py:344
#: aleksis/apps/alsijil/models.py:349
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:132
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:263
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:342
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:26
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:49
#: aleksis/apps/alsijil/templates/alsijil/print/full_register.html:421
msgid "Lesson topic"
msgstr ""
#: aleksis/apps/alsijil/models.py:345
#: aleksis/apps/alsijil/models.py:350
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:133
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:269
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:347
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:34
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:57
#: aleksis/apps/alsijil/templates/alsijil/print/full_register.html:422
msgid "Homework"
msgstr ""
#: aleksis/apps/alsijil/models.py:346
#: aleksis/apps/alsijil/models.py:351
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:134
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:275
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:351
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:42
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:65
#, fuzzy
#| msgid "Group"
msgid "Group note"
msgstr "Grex"
#: aleksis/apps/alsijil/models.py:396
#: aleksis/apps/alsijil/models.py:358
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:23
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:73
msgid "Done instructions"
msgstr ""
#: aleksis/apps/alsijil/models.py:409
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:17
msgid "Lesson documentation"
msgstr ""
#: aleksis/apps/alsijil/models.py:397
#: aleksis/apps/alsijil/models.py:410
#: aleksis/apps/alsijil/templates/alsijil/class_register/person.html:43
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:21
msgid "Lesson documentations"
msgstr ""
#: aleksis/apps/alsijil/models.py:442
#: aleksis/apps/alsijil/models.py:455
msgid "Extra mark"
msgstr ""
#: aleksis/apps/alsijil/models.py:456
#: aleksis/apps/alsijil/models.py:469 aleksis/apps/alsijil/models.py:530
msgid "Icon"
msgstr ""
#: aleksis/apps/alsijil/models.py:457
#: aleksis/apps/alsijil/models.py:470
msgid "Colour"
msgstr ""
#: aleksis/apps/alsijil/models.py:463 aleksis/apps/alsijil/models.py:478
#: aleksis/apps/alsijil/models.py:476 aleksis/apps/alsijil/models.py:491
#: aleksis/apps/alsijil/templates/alsijil/group_role/assigned_list.html:62
#, fuzzy
#| msgid "Group"
msgid "Group role"
msgstr "Grex"
#: aleksis/apps/alsijil/models.py:464
#: aleksis/apps/alsijil/models.py:477
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:34
#: aleksis/apps/alsijil/templates/alsijil/group_role/list.html:8
#: aleksis/apps/alsijil/templates/alsijil/group_role/list.html:9
......@@ -443,15 +457,16 @@ msgstr "Grex"
msgid "Group roles"
msgstr "Grex"
#: aleksis/apps/alsijil/models.py:468
#: aleksis/apps/alsijil/models.py:481
msgid "Can assign group role"
msgstr ""
#: aleksis/apps/alsijil/models.py:484
#: aleksis/apps/alsijil/models.py:497
msgid "Assigned person"
msgstr ""
#: aleksis/apps/alsijil/models.py:489 aleksis/apps/alsijil/tables.py:105
#: aleksis/apps/alsijil/models.py:502 aleksis/apps/alsijil/models.py:540
#: aleksis/apps/alsijil/tables.py:105
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:128
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:246
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:326
......@@ -460,35 +475,47 @@ msgstr ""
msgid "Groups"
msgstr "Grex"
#: aleksis/apps/alsijil/models.py:496
#: aleksis/apps/alsijil/models.py:509
msgid "Can be left empty if end date is not clear yet"
msgstr ""
#: aleksis/apps/alsijil/models.py:511
#: aleksis/apps/alsijil/models.py:524
msgid "Group role assignment"
msgstr ""
#: aleksis/apps/alsijil/models.py:512
#: aleksis/apps/alsijil/models.py:525
msgid "Group role assignments"
msgstr ""
#: aleksis/apps/alsijil/models.py:519
#: aleksis/apps/alsijil/models.py:533
msgid "PDF file"
msgstr ""
#: aleksis/apps/alsijil/models.py:542
msgid "The instruction will be shown for the members and owners of the selected groups. Leave empty to show for all groups."
msgstr ""
#: aleksis/apps/alsijil/models.py:552
msgid "Instruction"
msgstr ""
#: aleksis/apps/alsijil/models.py:565
msgid "Can view lesson overview"
msgstr ""
#: aleksis/apps/alsijil/models.py:520
#: aleksis/apps/alsijil/models.py:566
msgid "Can view week overview"
msgstr ""
#: aleksis/apps/alsijil/models.py:521
#: aleksis/apps/alsijil/models.py:567
msgid "Can view full register"
msgstr ""
#: aleksis/apps/alsijil/models.py:522
#: aleksis/apps/alsijil/models.py:568
msgid "Can register absence"
msgstr ""
#: aleksis/apps/alsijil/models.py:523
#: aleksis/apps/alsijil/models.py:569
msgid "Can list all personal note filters"
msgstr ""
......@@ -575,6 +602,7 @@ msgstr ""
#: aleksis/apps/alsijil/tables.py:23 aleksis/apps/alsijil/tables.py:47
#: aleksis/apps/alsijil/tables.py:72
#: aleksis/apps/alsijil/templates/alsijil/group_role/partials/assignment_options.html:13
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:74
msgid "Edit"
msgstr ""
......@@ -797,6 +825,7 @@ msgid "Close"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/class_register/person.html:79
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:49
msgid "Filter"
msgstr ""
......@@ -992,6 +1021,35 @@ msgstr ""
msgid "Stop"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/instruction/create.html:6
#: aleksis/apps/alsijil/templates/alsijil/instruction/create.html:7
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:37
msgid "Create instruction"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/instruction/edit.html:6
#: aleksis/apps/alsijil/templates/alsijil/instruction/edit.html:7
msgid "Edit instruction"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:15
msgid "All instructions"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:43
#, fuzzy
#| msgid "Person"
msgid "Filter instructions"
msgstr "Persona"
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:53
msgid "Reset filter"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:86
msgid "Show PDF file with instruction"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/notifications/check.html:1
msgid "Please check if the following class register entries are complete and correct:"
msgstr ""
......@@ -1086,6 +1144,14 @@ msgid ""
" "
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:31
msgid "Instruction done"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:81
msgid "Instruction done in this lesson"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/more.html:13
msgid "Change history"
msgstr ""
......@@ -1399,81 +1465,93 @@ msgstr ""
msgid "Notes"
msgstr ""
#: aleksis/apps/alsijil/views.py:118
#: aleksis/apps/alsijil/views.py:122
msgid "You either selected an invalid lesson or there is currently no lesson in progress."
msgstr ""
#: aleksis/apps/alsijil/views.py:151
#: aleksis/apps/alsijil/views.py:155
msgid "You are not allowed to create a lesson documentation for a lesson in the future."
msgstr ""
#: aleksis/apps/alsijil/views.py:268
#: aleksis/apps/alsijil/views.py:278
msgid "The lesson documentation has been saved."
msgstr ""
#: aleksis/apps/alsijil/views.py:302
#: aleksis/apps/alsijil/views.py:312
msgid "The personal notes have been saved."
msgstr ""
#: aleksis/apps/alsijil/views.py:1119
#: aleksis/apps/alsijil/views.py:1129
msgid "The absence has been saved."
msgstr ""
#: aleksis/apps/alsijil/views.py:1140
#: aleksis/apps/alsijil/views.py:1150
msgid "The personal note has been deleted."
msgstr ""
#: aleksis/apps/alsijil/views.py:1162
#: aleksis/apps/alsijil/views.py:1172
msgid "The extra mark has been created."
msgstr ""
#: aleksis/apps/alsijil/views.py:1174
#: aleksis/apps/alsijil/views.py:1184
msgid "The extra mark has been saved."
msgstr ""
#: aleksis/apps/alsijil/views.py:1185
#: aleksis/apps/alsijil/views.py:1195
msgid "The extra mark has been deleted."
msgstr ""
#: aleksis/apps/alsijil/views.py:1206
#: aleksis/apps/alsijil/views.py:1216
msgid "The excuse type has been created."
msgstr ""
#: aleksis/apps/alsijil/views.py:1218
#: aleksis/apps/alsijil/views.py:1228
msgid "The excuse type has been saved."
msgstr ""
#: aleksis/apps/alsijil/views.py:1229
#: aleksis/apps/alsijil/views.py:1239
msgid "The excuse type has been deleted."
msgstr ""
#: aleksis/apps/alsijil/views.py:1250
#: aleksis/apps/alsijil/views.py:1260
msgid "The group role has been created."
msgstr ""
#: aleksis/apps/alsijil/views.py:1262
#: aleksis/apps/alsijil/views.py:1272
msgid "The group role has been saved."
msgstr ""
#: aleksis/apps/alsijil/views.py:1273
#: aleksis/apps/alsijil/views.py:1283
msgid "The group role has been deleted."
msgstr ""
#: aleksis/apps/alsijil/views.py:1306 aleksis/apps/alsijil/views.py:1338
#: aleksis/apps/alsijil/views.py:1316 aleksis/apps/alsijil/views.py:1348
msgid "The group role has been assigned."
msgstr ""
#: aleksis/apps/alsijil/views.py:1357
#: aleksis/apps/alsijil/views.py:1367
msgid "The group role assignment has been saved."
msgstr ""
#: aleksis/apps/alsijil/views.py:1378
#: aleksis/apps/alsijil/views.py:1388
msgid "The group role assignment has been stopped."
msgstr ""
#: aleksis/apps/alsijil/views.py:1391
#: aleksis/apps/alsijil/views.py:1401
msgid "The group role assignment has been deleted."
msgstr ""
#: aleksis/apps/alsijil/views.py:1543
msgid "The instruction has been created."
msgstr ""
#: aleksis/apps/alsijil/views.py:1555
msgid "The instruction has been saved."
msgstr ""
#: aleksis/apps/alsijil/views.py:1566
msgid "The instruction has been deleted."
msgstr ""
#~ msgid "Description"
#~ msgstr "Descriptio"
......@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-06-25 15:28+0200\n"
"POT-Creation-Date: 2022-08-15 10:22+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
......@@ -33,6 +33,7 @@ msgstr ""
#: aleksis/apps/alsijil/actions.py:48 aleksis/apps/alsijil/tables.py:29
#: aleksis/apps/alsijil/tables.py:53 aleksis/apps/alsijil/tables.py:78
#: aleksis/apps/alsijil/templates/alsijil/group_role/partials/assignment_options.html:29
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:80
msgid "Delete"
msgstr ""
......@@ -109,7 +110,7 @@ msgstr ""
msgid "Before"
msgstr ""
#: aleksis/apps/alsijil/filters.py:14 aleksis/apps/alsijil/forms.py:349
#: aleksis/apps/alsijil/filters.py:14 aleksis/apps/alsijil/forms.py:352
#: aleksis/apps/alsijil/tables.py:116
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:130
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:227
......@@ -126,51 +127,51 @@ msgstr ""
msgid "Tardiness is bigger than"
msgstr ""
#: aleksis/apps/alsijil/forms.py:47
#: aleksis/apps/alsijil/forms.py:50
msgid "Homework for the next lesson"
msgstr ""
#: aleksis/apps/alsijil/forms.py:53
#: aleksis/apps/alsijil/forms.py:56
msgid "Carry over data to all other lessons with the same subject in this week"
msgstr ""
#: aleksis/apps/alsijil/forms.py:98 aleksis/apps/alsijil/forms.py:256
#: aleksis/apps/alsijil/forms.py:348
#: aleksis/apps/alsijil/forms.py:101 aleksis/apps/alsijil/forms.py:259
#: aleksis/apps/alsijil/forms.py:351
#: aleksis/apps/alsijil/templates/alsijil/print/full_register.html:219
msgid "Group"
msgstr ""
#: aleksis/apps/alsijil/forms.py:104
#: aleksis/apps/alsijil/forms.py:107
#: aleksis/apps/alsijil/templates/alsijil/print/full_register.html:190
#: aleksis/apps/alsijil/templates/alsijil/print/full_register.html:221
msgid "Teacher"
msgstr ""
#: aleksis/apps/alsijil/forms.py:121
#: aleksis/apps/alsijil/forms.py:124
msgid "You can't select a group and a teacher both."
msgstr ""
#: aleksis/apps/alsijil/forms.py:192 aleksis/apps/alsijil/forms.py:350
#: aleksis/apps/alsijil/models.py:491
#: aleksis/apps/alsijil/forms.py:195 aleksis/apps/alsijil/forms.py:353
#: aleksis/apps/alsijil/models.py:504
#: aleksis/apps/alsijil/templates/alsijil/group_role/assigned_list.html:64
msgid "Start date"
msgstr ""
#: aleksis/apps/alsijil/forms.py:193 aleksis/apps/alsijil/forms.py:351
#: aleksis/apps/alsijil/models.py:495
#: aleksis/apps/alsijil/forms.py:196 aleksis/apps/alsijil/forms.py:354
#: aleksis/apps/alsijil/models.py:508
#: aleksis/apps/alsijil/templates/alsijil/group_role/assigned_list.html:65
msgid "End date"
msgstr ""
#: aleksis/apps/alsijil/forms.py:194
#: aleksis/apps/alsijil/forms.py:197
msgid "Start period"
msgstr ""
#: aleksis/apps/alsijil/forms.py:195
#: aleksis/apps/alsijil/forms.py:198
msgid "End period"
msgstr ""
#: aleksis/apps/alsijil/forms.py:196 aleksis/apps/alsijil/tables.py:117
#: aleksis/apps/alsijil/forms.py:199 aleksis/apps/alsijil/tables.py:117
#: aleksis/apps/alsijil/tables.py:138
#: aleksis/apps/alsijil/templates/alsijil/absences/register_confirm.html:50
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:397
......@@ -180,7 +181,7 @@ msgstr ""
msgid "Absent"
msgstr ""
#: aleksis/apps/alsijil/forms.py:197 aleksis/apps/alsijil/tables.py:146
#: aleksis/apps/alsijil/forms.py:200 aleksis/apps/alsijil/tables.py:146
#: aleksis/apps/alsijil/templates/alsijil/absences/register_confirm.html:54
#: aleksis/apps/alsijil/templates/alsijil/class_register/person.html:134
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/notes.html:31
......@@ -190,32 +191,32 @@ msgstr ""
msgid "Excused"
msgstr ""
#: aleksis/apps/alsijil/forms.py:199 aleksis/apps/alsijil/models.py:71
#: aleksis/apps/alsijil/models.py:253
#: aleksis/apps/alsijil/forms.py:202 aleksis/apps/alsijil/models.py:76
#: aleksis/apps/alsijil/models.py:258
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/notes.html:32
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/notes.html:73
msgid "Excuse type"
msgstr ""
#: aleksis/apps/alsijil/forms.py:204
#: aleksis/apps/alsijil/forms.py:207
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/notes.html:34
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/notes.html:94
#: aleksis/apps/alsijil/templates/alsijil/print/full_register.html:354
msgid "Remarks"
msgstr ""
#: aleksis/apps/alsijil/forms.py:269
#: aleksis/apps/alsijil/forms.py:272
#: aleksis/apps/alsijil/templates/alsijil/absences/register.html:9
#: aleksis/apps/alsijil/templates/alsijil/group_role/assigned_list.html:63
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/notes.html:28
msgid "Person"
msgstr ""
#: aleksis/apps/alsijil/forms.py:346
#: aleksis/apps/alsijil/forms.py:349
msgid "School term"
msgstr ""
#: aleksis/apps/alsijil/forms.py:347
#: aleksis/apps/alsijil/forms.py:350
msgid "Has lesson documentation"
msgstr ""
......@@ -260,27 +261,34 @@ msgstr ""
msgid "My students"
msgstr ""
#: aleksis/apps/alsijil/menus.py:71
#: aleksis/apps/alsijil/menus.py:71 aleksis/apps/alsijil/models.py:553
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:7
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:8
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:24
msgid "Instructions"
msgstr ""
#: aleksis/apps/alsijil/menus.py:82
#: aleksis/apps/alsijil/templates/alsijil/group_role/assign.html:11
#: aleksis/apps/alsijil/templates/alsijil/group_role/assign.html:18
msgid "Assign group role"
msgstr ""
#: aleksis/apps/alsijil/menus.py:82
#: aleksis/apps/alsijil/menus.py:93
#: aleksis/apps/alsijil/templates/alsijil/class_register/all_objects.html:5
#: aleksis/apps/alsijil/templates/alsijil/class_register/all_objects.html:8
msgid "All lessons"
msgstr ""
#: aleksis/apps/alsijil/menus.py:93 aleksis/apps/alsijil/models.py:72
#: aleksis/apps/alsijil/menus.py:104 aleksis/apps/alsijil/models.py:77
#: aleksis/apps/alsijil/templates/alsijil/excuse_type/list.html:8
#: aleksis/apps/alsijil/templates/alsijil/excuse_type/list.html:9
#: aleksis/apps/alsijil/templates/alsijil/partials/legend.html:30
msgid "Excuse types"
msgstr ""
#: aleksis/apps/alsijil/menus.py:104 aleksis/apps/alsijil/models.py:258
#: aleksis/apps/alsijil/models.py:443 aleksis/apps/alsijil/tables.py:120
#: aleksis/apps/alsijil/menus.py:115 aleksis/apps/alsijil/models.py:263
#: aleksis/apps/alsijil/models.py:456 aleksis/apps/alsijil/tables.py:120
#: aleksis/apps/alsijil/templates/alsijil/extra_mark/list.html:8
#: aleksis/apps/alsijil/templates/alsijil/extra_mark/list.html:9
#: aleksis/apps/alsijil/templates/alsijil/partials/legend.html:57
......@@ -290,7 +298,7 @@ msgstr ""
msgid "Extra marks"
msgstr ""
#: aleksis/apps/alsijil/menus.py:115
#: aleksis/apps/alsijil/menus.py:126
msgid "Manage group roles"
msgstr ""
......@@ -334,146 +342,165 @@ msgstr ""
msgid "Can register an absence for a person"
msgstr ""
#: aleksis/apps/alsijil/models.py:50 aleksis/apps/alsijil/models.py:430
#: aleksis/apps/alsijil/models.py:55 aleksis/apps/alsijil/models.py:443
msgid "Short name"
msgstr ""
#: aleksis/apps/alsijil/models.py:51 aleksis/apps/alsijil/models.py:431
#: aleksis/apps/alsijil/models.py:455
#: aleksis/apps/alsijil/models.py:56 aleksis/apps/alsijil/models.py:444
#: aleksis/apps/alsijil/models.py:468 aleksis/apps/alsijil/models.py:529
#: aleksis/apps/alsijil/templates/alsijil/class_register/groups.html:20
#: aleksis/apps/alsijil/templates/alsijil/partials/persons_with_stats.html:12
#: aleksis/apps/alsijil/templates/alsijil/partials/persons_with_stats.html:23
msgid "Name"
msgstr ""
#: aleksis/apps/alsijil/models.py:55 aleksis/apps/alsijil/tables.py:41
#: aleksis/apps/alsijil/models.py:60 aleksis/apps/alsijil/tables.py:41
msgid "Count as absent"
msgstr ""
#: aleksis/apps/alsijil/models.py:57
#: aleksis/apps/alsijil/models.py:62
msgid "If checked, this excuse type will be counted as a missed lesson. If not checked,it won't show up in the absence report."
msgstr ""
#: aleksis/apps/alsijil/models.py:233 aleksis/apps/alsijil/models.py:332
#: aleksis/apps/alsijil/models.py:238 aleksis/apps/alsijil/models.py:337
msgid "Year"
msgstr ""
#: aleksis/apps/alsijil/models.py:292
#: aleksis/apps/alsijil/models.py:297
msgid "Personal note"
msgstr ""
#: aleksis/apps/alsijil/models.py:293
#: aleksis/apps/alsijil/models.py:298
#: aleksis/apps/alsijil/templates/alsijil/class_register/person.html:47
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:375
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/notes.html:22
msgid "Personal notes"
msgstr ""
#: aleksis/apps/alsijil/models.py:344
#: aleksis/apps/alsijil/models.py:349
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:132
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:263
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:342
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:26
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:49
#: aleksis/apps/alsijil/templates/alsijil/print/full_register.html:421
msgid "Lesson topic"
msgstr ""
#: aleksis/apps/alsijil/models.py:345
#: aleksis/apps/alsijil/models.py:350
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:133
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:269
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:347
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:34
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:57
#: aleksis/apps/alsijil/templates/alsijil/print/full_register.html:422
msgid "Homework"
msgstr ""
#: aleksis/apps/alsijil/models.py:346
#: aleksis/apps/alsijil/models.py:351
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:134
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:275
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:351
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:42
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:65
msgid "Group note"
msgstr ""
#: aleksis/apps/alsijil/models.py:396
#: aleksis/apps/alsijil/models.py:358
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:23
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:73
msgid "Done instructions"
msgstr ""
#: aleksis/apps/alsijil/models.py:409
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:17
msgid "Lesson documentation"
msgstr ""
#: aleksis/apps/alsijil/models.py:397
#: aleksis/apps/alsijil/models.py:410
#: aleksis/apps/alsijil/templates/alsijil/class_register/person.html:43
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:21
msgid "Lesson documentations"
msgstr ""
#: aleksis/apps/alsijil/models.py:442
#: aleksis/apps/alsijil/models.py:455
msgid "Extra mark"
msgstr ""
#: aleksis/apps/alsijil/models.py:456
#: aleksis/apps/alsijil/models.py:469 aleksis/apps/alsijil/models.py:530
msgid "Icon"
msgstr ""
#: aleksis/apps/alsijil/models.py:457
#: aleksis/apps/alsijil/models.py:470
msgid "Colour"
msgstr ""
#: aleksis/apps/alsijil/models.py:463 aleksis/apps/alsijil/models.py:478
#: aleksis/apps/alsijil/models.py:476 aleksis/apps/alsijil/models.py:491
#: aleksis/apps/alsijil/templates/alsijil/group_role/assigned_list.html:62
msgid "Group role"
msgstr ""
#: aleksis/apps/alsijil/models.py:464
#: aleksis/apps/alsijil/models.py:477
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:34
#: aleksis/apps/alsijil/templates/alsijil/group_role/list.html:8
#: aleksis/apps/alsijil/templates/alsijil/group_role/list.html:9
msgid "Group roles"
msgstr ""
#: aleksis/apps/alsijil/models.py:468
#: aleksis/apps/alsijil/models.py:481
msgid "Can assign group role"
msgstr ""
#: aleksis/apps/alsijil/models.py:484
#: aleksis/apps/alsijil/models.py:497
msgid "Assigned person"
msgstr ""
#: aleksis/apps/alsijil/models.py:489 aleksis/apps/alsijil/tables.py:105
#: aleksis/apps/alsijil/models.py:502 aleksis/apps/alsijil/models.py:540
#: aleksis/apps/alsijil/tables.py:105
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:128
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:246
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:326
msgid "Groups"
msgstr ""
#: aleksis/apps/alsijil/models.py:496
#: aleksis/apps/alsijil/models.py:509
msgid "Can be left empty if end date is not clear yet"
msgstr ""
#: aleksis/apps/alsijil/models.py:511
#: aleksis/apps/alsijil/models.py:524
msgid "Group role assignment"
msgstr ""
#: aleksis/apps/alsijil/models.py:512
#: aleksis/apps/alsijil/models.py:525
msgid "Group role assignments"
msgstr ""
#: aleksis/apps/alsijil/models.py:519
#: aleksis/apps/alsijil/models.py:533
msgid "PDF file"
msgstr ""
#: aleksis/apps/alsijil/models.py:542
msgid "The instruction will be shown for the members and owners of the selected groups. Leave empty to show for all groups."
msgstr ""
#: aleksis/apps/alsijil/models.py:552
msgid "Instruction"
msgstr ""
#: aleksis/apps/alsijil/models.py:565
msgid "Can view lesson overview"
msgstr ""
#: aleksis/apps/alsijil/models.py:520
#: aleksis/apps/alsijil/models.py:566
msgid "Can view week overview"
msgstr ""
#: aleksis/apps/alsijil/models.py:521
#: aleksis/apps/alsijil/models.py:567
msgid "Can view full register"
msgstr ""
#: aleksis/apps/alsijil/models.py:522
#: aleksis/apps/alsijil/models.py:568
msgid "Can register absence"
msgstr ""
#: aleksis/apps/alsijil/models.py:523
#: aleksis/apps/alsijil/models.py:569
msgid "Can list all personal note filters"
msgstr ""
......@@ -560,6 +587,7 @@ msgstr ""
#: aleksis/apps/alsijil/tables.py:23 aleksis/apps/alsijil/tables.py:47
#: aleksis/apps/alsijil/tables.py:72
#: aleksis/apps/alsijil/templates/alsijil/group_role/partials/assignment_options.html:13
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:74
msgid "Edit"
msgstr ""
......@@ -778,6 +806,7 @@ msgid "Close"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/class_register/person.html:79
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:49
msgid "Filter"
msgstr ""
......@@ -969,6 +998,33 @@ msgstr ""
msgid "Stop"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/instruction/create.html:6
#: aleksis/apps/alsijil/templates/alsijil/instruction/create.html:7
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:37
msgid "Create instruction"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/instruction/edit.html:6
#: aleksis/apps/alsijil/templates/alsijil/instruction/edit.html:7
msgid "Edit instruction"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:15
msgid "All instructions"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:43
msgid "Filter instructions"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:53
msgid "Reset filter"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:86
msgid "Show PDF file with instruction"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/notifications/check.html:1
msgid "Please check if the following class register entries are complete and correct:"
msgstr ""
......@@ -1063,6 +1119,14 @@ msgid ""
" "
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:31
msgid "Instruction done"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:81
msgid "Instruction done in this lesson"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/more.html:13
msgid "Change history"
msgstr ""
......@@ -1374,78 +1438,90 @@ msgstr ""
msgid "Notes"
msgstr ""
#: aleksis/apps/alsijil/views.py:118
#: aleksis/apps/alsijil/views.py:122
msgid "You either selected an invalid lesson or there is currently no lesson in progress."
msgstr ""
#: aleksis/apps/alsijil/views.py:151
#: aleksis/apps/alsijil/views.py:155
msgid "You are not allowed to create a lesson documentation for a lesson in the future."
msgstr ""
#: aleksis/apps/alsijil/views.py:268
#: aleksis/apps/alsijil/views.py:278
msgid "The lesson documentation has been saved."
msgstr ""
#: aleksis/apps/alsijil/views.py:302
#: aleksis/apps/alsijil/views.py:312
msgid "The personal notes have been saved."
msgstr ""
#: aleksis/apps/alsijil/views.py:1119
#: aleksis/apps/alsijil/views.py:1129
msgid "The absence has been saved."
msgstr ""
#: aleksis/apps/alsijil/views.py:1140
#: aleksis/apps/alsijil/views.py:1150
msgid "The personal note has been deleted."
msgstr ""
#: aleksis/apps/alsijil/views.py:1162
#: aleksis/apps/alsijil/views.py:1172
msgid "The extra mark has been created."
msgstr ""
#: aleksis/apps/alsijil/views.py:1174
#: aleksis/apps/alsijil/views.py:1184
msgid "The extra mark has been saved."
msgstr ""
#: aleksis/apps/alsijil/views.py:1185
#: aleksis/apps/alsijil/views.py:1195
msgid "The extra mark has been deleted."
msgstr ""
#: aleksis/apps/alsijil/views.py:1206
#: aleksis/apps/alsijil/views.py:1216
msgid "The excuse type has been created."
msgstr ""
#: aleksis/apps/alsijil/views.py:1218
#: aleksis/apps/alsijil/views.py:1228
msgid "The excuse type has been saved."
msgstr ""
#: aleksis/apps/alsijil/views.py:1229
#: aleksis/apps/alsijil/views.py:1239
msgid "The excuse type has been deleted."
msgstr ""
#: aleksis/apps/alsijil/views.py:1250
#: aleksis/apps/alsijil/views.py:1260
msgid "The group role has been created."
msgstr ""
#: aleksis/apps/alsijil/views.py:1262
#: aleksis/apps/alsijil/views.py:1272
msgid "The group role has been saved."
msgstr ""
#: aleksis/apps/alsijil/views.py:1273
#: aleksis/apps/alsijil/views.py:1283
msgid "The group role has been deleted."
msgstr ""
#: aleksis/apps/alsijil/views.py:1306 aleksis/apps/alsijil/views.py:1338
#: aleksis/apps/alsijil/views.py:1316 aleksis/apps/alsijil/views.py:1348
msgid "The group role has been assigned."
msgstr ""
#: aleksis/apps/alsijil/views.py:1357
#: aleksis/apps/alsijil/views.py:1367
msgid "The group role assignment has been saved."
msgstr ""
#: aleksis/apps/alsijil/views.py:1378
#: aleksis/apps/alsijil/views.py:1388
msgid "The group role assignment has been stopped."
msgstr ""
#: aleksis/apps/alsijil/views.py:1391
#: aleksis/apps/alsijil/views.py:1401
msgid "The group role assignment has been deleted."
msgstr ""
#: aleksis/apps/alsijil/views.py:1543
msgid "The instruction has been created."
msgstr ""
#: aleksis/apps/alsijil/views.py:1555
msgid "The instruction has been saved."
msgstr ""
#: aleksis/apps/alsijil/views.py:1566
msgid "The instruction has been deleted."
msgstr ""
......@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-06-25 15:28+0200\n"
"POT-Creation-Date: 2022-08-15 10:22+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
......@@ -33,6 +33,7 @@ msgstr ""
#: aleksis/apps/alsijil/actions.py:48 aleksis/apps/alsijil/tables.py:29
#: aleksis/apps/alsijil/tables.py:53 aleksis/apps/alsijil/tables.py:78
#: aleksis/apps/alsijil/templates/alsijil/group_role/partials/assignment_options.html:29
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:80
msgid "Delete"
msgstr ""
......@@ -109,7 +110,7 @@ msgstr ""
msgid "Before"
msgstr ""
#: aleksis/apps/alsijil/filters.py:14 aleksis/apps/alsijil/forms.py:349
#: aleksis/apps/alsijil/filters.py:14 aleksis/apps/alsijil/forms.py:352
#: aleksis/apps/alsijil/tables.py:116
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:130
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:227
......@@ -126,51 +127,51 @@ msgstr ""
msgid "Tardiness is bigger than"
msgstr ""
#: aleksis/apps/alsijil/forms.py:47
#: aleksis/apps/alsijil/forms.py:50
msgid "Homework for the next lesson"
msgstr ""
#: aleksis/apps/alsijil/forms.py:53
#: aleksis/apps/alsijil/forms.py:56
msgid "Carry over data to all other lessons with the same subject in this week"
msgstr ""
#: aleksis/apps/alsijil/forms.py:98 aleksis/apps/alsijil/forms.py:256
#: aleksis/apps/alsijil/forms.py:348
#: aleksis/apps/alsijil/forms.py:101 aleksis/apps/alsijil/forms.py:259
#: aleksis/apps/alsijil/forms.py:351
#: aleksis/apps/alsijil/templates/alsijil/print/full_register.html:219
msgid "Group"
msgstr ""
#: aleksis/apps/alsijil/forms.py:104
#: aleksis/apps/alsijil/forms.py:107
#: aleksis/apps/alsijil/templates/alsijil/print/full_register.html:190
#: aleksis/apps/alsijil/templates/alsijil/print/full_register.html:221
msgid "Teacher"
msgstr ""
#: aleksis/apps/alsijil/forms.py:121
#: aleksis/apps/alsijil/forms.py:124
msgid "You can't select a group and a teacher both."
msgstr ""
#: aleksis/apps/alsijil/forms.py:192 aleksis/apps/alsijil/forms.py:350
#: aleksis/apps/alsijil/models.py:491
#: aleksis/apps/alsijil/forms.py:195 aleksis/apps/alsijil/forms.py:353
#: aleksis/apps/alsijil/models.py:504
#: aleksis/apps/alsijil/templates/alsijil/group_role/assigned_list.html:64
msgid "Start date"
msgstr ""
#: aleksis/apps/alsijil/forms.py:193 aleksis/apps/alsijil/forms.py:351
#: aleksis/apps/alsijil/models.py:495
#: aleksis/apps/alsijil/forms.py:196 aleksis/apps/alsijil/forms.py:354
#: aleksis/apps/alsijil/models.py:508
#: aleksis/apps/alsijil/templates/alsijil/group_role/assigned_list.html:65
msgid "End date"
msgstr ""
#: aleksis/apps/alsijil/forms.py:194
#: aleksis/apps/alsijil/forms.py:197
msgid "Start period"
msgstr ""
#: aleksis/apps/alsijil/forms.py:195
#: aleksis/apps/alsijil/forms.py:198
msgid "End period"
msgstr ""
#: aleksis/apps/alsijil/forms.py:196 aleksis/apps/alsijil/tables.py:117
#: aleksis/apps/alsijil/forms.py:199 aleksis/apps/alsijil/tables.py:117
#: aleksis/apps/alsijil/tables.py:138
#: aleksis/apps/alsijil/templates/alsijil/absences/register_confirm.html:50
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:397
......@@ -180,7 +181,7 @@ msgstr ""
msgid "Absent"
msgstr ""
#: aleksis/apps/alsijil/forms.py:197 aleksis/apps/alsijil/tables.py:146
#: aleksis/apps/alsijil/forms.py:200 aleksis/apps/alsijil/tables.py:146
#: aleksis/apps/alsijil/templates/alsijil/absences/register_confirm.html:54
#: aleksis/apps/alsijil/templates/alsijil/class_register/person.html:134
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/notes.html:31
......@@ -190,32 +191,32 @@ msgstr ""
msgid "Excused"
msgstr ""
#: aleksis/apps/alsijil/forms.py:199 aleksis/apps/alsijil/models.py:71
#: aleksis/apps/alsijil/models.py:253
#: aleksis/apps/alsijil/forms.py:202 aleksis/apps/alsijil/models.py:76
#: aleksis/apps/alsijil/models.py:258
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/notes.html:32
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/notes.html:73
msgid "Excuse type"
msgstr ""
#: aleksis/apps/alsijil/forms.py:204
#: aleksis/apps/alsijil/forms.py:207
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/notes.html:34
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/notes.html:94
#: aleksis/apps/alsijil/templates/alsijil/print/full_register.html:354
msgid "Remarks"
msgstr ""
#: aleksis/apps/alsijil/forms.py:269
#: aleksis/apps/alsijil/forms.py:272
#: aleksis/apps/alsijil/templates/alsijil/absences/register.html:9
#: aleksis/apps/alsijil/templates/alsijil/group_role/assigned_list.html:63
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/notes.html:28
msgid "Person"
msgstr ""
#: aleksis/apps/alsijil/forms.py:346
#: aleksis/apps/alsijil/forms.py:349
msgid "School term"
msgstr ""
#: aleksis/apps/alsijil/forms.py:347
#: aleksis/apps/alsijil/forms.py:350
msgid "Has lesson documentation"
msgstr ""
......@@ -260,27 +261,34 @@ msgstr ""
msgid "My students"
msgstr ""
#: aleksis/apps/alsijil/menus.py:71
#: aleksis/apps/alsijil/menus.py:71 aleksis/apps/alsijil/models.py:553
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:7
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:8
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:24
msgid "Instructions"
msgstr ""
#: aleksis/apps/alsijil/menus.py:82
#: aleksis/apps/alsijil/templates/alsijil/group_role/assign.html:11
#: aleksis/apps/alsijil/templates/alsijil/group_role/assign.html:18
msgid "Assign group role"
msgstr ""
#: aleksis/apps/alsijil/menus.py:82
#: aleksis/apps/alsijil/menus.py:93
#: aleksis/apps/alsijil/templates/alsijil/class_register/all_objects.html:5
#: aleksis/apps/alsijil/templates/alsijil/class_register/all_objects.html:8
msgid "All lessons"
msgstr ""
#: aleksis/apps/alsijil/menus.py:93 aleksis/apps/alsijil/models.py:72
#: aleksis/apps/alsijil/menus.py:104 aleksis/apps/alsijil/models.py:77
#: aleksis/apps/alsijil/templates/alsijil/excuse_type/list.html:8
#: aleksis/apps/alsijil/templates/alsijil/excuse_type/list.html:9
#: aleksis/apps/alsijil/templates/alsijil/partials/legend.html:30
msgid "Excuse types"
msgstr ""
#: aleksis/apps/alsijil/menus.py:104 aleksis/apps/alsijil/models.py:258
#: aleksis/apps/alsijil/models.py:443 aleksis/apps/alsijil/tables.py:120
#: aleksis/apps/alsijil/menus.py:115 aleksis/apps/alsijil/models.py:263
#: aleksis/apps/alsijil/models.py:456 aleksis/apps/alsijil/tables.py:120
#: aleksis/apps/alsijil/templates/alsijil/extra_mark/list.html:8
#: aleksis/apps/alsijil/templates/alsijil/extra_mark/list.html:9
#: aleksis/apps/alsijil/templates/alsijil/partials/legend.html:57
......@@ -290,7 +298,7 @@ msgstr ""
msgid "Extra marks"
msgstr ""
#: aleksis/apps/alsijil/menus.py:115
#: aleksis/apps/alsijil/menus.py:126
msgid "Manage group roles"
msgstr ""
......@@ -334,146 +342,165 @@ msgstr ""
msgid "Can register an absence for a person"
msgstr ""
#: aleksis/apps/alsijil/models.py:50 aleksis/apps/alsijil/models.py:430
#: aleksis/apps/alsijil/models.py:55 aleksis/apps/alsijil/models.py:443
msgid "Short name"
msgstr ""
#: aleksis/apps/alsijil/models.py:51 aleksis/apps/alsijil/models.py:431
#: aleksis/apps/alsijil/models.py:455
#: aleksis/apps/alsijil/models.py:56 aleksis/apps/alsijil/models.py:444
#: aleksis/apps/alsijil/models.py:468 aleksis/apps/alsijil/models.py:529
#: aleksis/apps/alsijil/templates/alsijil/class_register/groups.html:20
#: aleksis/apps/alsijil/templates/alsijil/partials/persons_with_stats.html:12
#: aleksis/apps/alsijil/templates/alsijil/partials/persons_with_stats.html:23
msgid "Name"
msgstr ""
#: aleksis/apps/alsijil/models.py:55 aleksis/apps/alsijil/tables.py:41
#: aleksis/apps/alsijil/models.py:60 aleksis/apps/alsijil/tables.py:41
msgid "Count as absent"
msgstr ""
#: aleksis/apps/alsijil/models.py:57
#: aleksis/apps/alsijil/models.py:62
msgid "If checked, this excuse type will be counted as a missed lesson. If not checked,it won't show up in the absence report."
msgstr ""
#: aleksis/apps/alsijil/models.py:233 aleksis/apps/alsijil/models.py:332
#: aleksis/apps/alsijil/models.py:238 aleksis/apps/alsijil/models.py:337
msgid "Year"
msgstr ""
#: aleksis/apps/alsijil/models.py:292
#: aleksis/apps/alsijil/models.py:297
msgid "Personal note"
msgstr ""
#: aleksis/apps/alsijil/models.py:293
#: aleksis/apps/alsijil/models.py:298
#: aleksis/apps/alsijil/templates/alsijil/class_register/person.html:47
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:375
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/notes.html:22
msgid "Personal notes"
msgstr ""
#: aleksis/apps/alsijil/models.py:344
#: aleksis/apps/alsijil/models.py:349
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:132
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:263
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:342
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:26
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:49
#: aleksis/apps/alsijil/templates/alsijil/print/full_register.html:421
msgid "Lesson topic"
msgstr ""
#: aleksis/apps/alsijil/models.py:345
#: aleksis/apps/alsijil/models.py:350
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:133
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:269
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:347
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:34
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:57
#: aleksis/apps/alsijil/templates/alsijil/print/full_register.html:422
msgid "Homework"
msgstr ""
#: aleksis/apps/alsijil/models.py:346
#: aleksis/apps/alsijil/models.py:351
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:134
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:275
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:351
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:42
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:65
msgid "Group note"
msgstr ""
#: aleksis/apps/alsijil/models.py:396
#: aleksis/apps/alsijil/models.py:358
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:23
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:73
msgid "Done instructions"
msgstr ""
#: aleksis/apps/alsijil/models.py:409
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:17
msgid "Lesson documentation"
msgstr ""
#: aleksis/apps/alsijil/models.py:397
#: aleksis/apps/alsijil/models.py:410
#: aleksis/apps/alsijil/templates/alsijil/class_register/person.html:43
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:21
msgid "Lesson documentations"
msgstr ""
#: aleksis/apps/alsijil/models.py:442
#: aleksis/apps/alsijil/models.py:455
msgid "Extra mark"
msgstr ""
#: aleksis/apps/alsijil/models.py:456
#: aleksis/apps/alsijil/models.py:469 aleksis/apps/alsijil/models.py:530
msgid "Icon"
msgstr ""
#: aleksis/apps/alsijil/models.py:457
#: aleksis/apps/alsijil/models.py:470
msgid "Colour"
msgstr ""
#: aleksis/apps/alsijil/models.py:463 aleksis/apps/alsijil/models.py:478
#: aleksis/apps/alsijil/models.py:476 aleksis/apps/alsijil/models.py:491
#: aleksis/apps/alsijil/templates/alsijil/group_role/assigned_list.html:62
msgid "Group role"
msgstr ""
#: aleksis/apps/alsijil/models.py:464
#: aleksis/apps/alsijil/models.py:477
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:34
#: aleksis/apps/alsijil/templates/alsijil/group_role/list.html:8
#: aleksis/apps/alsijil/templates/alsijil/group_role/list.html:9
msgid "Group roles"
msgstr ""
#: aleksis/apps/alsijil/models.py:468
#: aleksis/apps/alsijil/models.py:481
msgid "Can assign group role"
msgstr ""
#: aleksis/apps/alsijil/models.py:484
#: aleksis/apps/alsijil/models.py:497
msgid "Assigned person"
msgstr ""
#: aleksis/apps/alsijil/models.py:489 aleksis/apps/alsijil/tables.py:105
#: aleksis/apps/alsijil/models.py:502 aleksis/apps/alsijil/models.py:540
#: aleksis/apps/alsijil/tables.py:105
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:128
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:246
#: aleksis/apps/alsijil/templates/alsijil/class_register/week_view.html:326
msgid "Groups"
msgstr ""
#: aleksis/apps/alsijil/models.py:496
#: aleksis/apps/alsijil/models.py:509
msgid "Can be left empty if end date is not clear yet"
msgstr ""
#: aleksis/apps/alsijil/models.py:511
#: aleksis/apps/alsijil/models.py:524
msgid "Group role assignment"
msgstr ""
#: aleksis/apps/alsijil/models.py:512
#: aleksis/apps/alsijil/models.py:525
msgid "Group role assignments"
msgstr ""
#: aleksis/apps/alsijil/models.py:519
#: aleksis/apps/alsijil/models.py:533
msgid "PDF file"
msgstr ""
#: aleksis/apps/alsijil/models.py:542
msgid "The instruction will be shown for the members and owners of the selected groups. Leave empty to show for all groups."
msgstr ""
#: aleksis/apps/alsijil/models.py:552
msgid "Instruction"
msgstr ""
#: aleksis/apps/alsijil/models.py:565
msgid "Can view lesson overview"
msgstr ""
#: aleksis/apps/alsijil/models.py:520
#: aleksis/apps/alsijil/models.py:566
msgid "Can view week overview"
msgstr ""
#: aleksis/apps/alsijil/models.py:521
#: aleksis/apps/alsijil/models.py:567
msgid "Can view full register"
msgstr ""
#: aleksis/apps/alsijil/models.py:522
#: aleksis/apps/alsijil/models.py:568
msgid "Can register absence"
msgstr ""
#: aleksis/apps/alsijil/models.py:523
#: aleksis/apps/alsijil/models.py:569
msgid "Can list all personal note filters"
msgstr ""
......@@ -560,6 +587,7 @@ msgstr ""
#: aleksis/apps/alsijil/tables.py:23 aleksis/apps/alsijil/tables.py:47
#: aleksis/apps/alsijil/tables.py:72
#: aleksis/apps/alsijil/templates/alsijil/group_role/partials/assignment_options.html:13
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:74
msgid "Edit"
msgstr ""
......@@ -778,6 +806,7 @@ msgid "Close"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/class_register/person.html:79
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:49
msgid "Filter"
msgstr ""
......@@ -969,6 +998,33 @@ msgstr ""
msgid "Stop"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/instruction/create.html:6
#: aleksis/apps/alsijil/templates/alsijil/instruction/create.html:7
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:37
msgid "Create instruction"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/instruction/edit.html:6
#: aleksis/apps/alsijil/templates/alsijil/instruction/edit.html:7
msgid "Edit instruction"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:15
msgid "All instructions"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:43
msgid "Filter instructions"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:53
msgid "Reset filter"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/instruction/list.html:86
msgid "Show PDF file with instruction"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/notifications/check.html:1
msgid "Please check if the following class register entries are complete and correct:"
msgstr ""
......@@ -1063,6 +1119,14 @@ msgid ""
" "
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:31
msgid "Instruction done"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/documentation.html:81
msgid "Instruction done in this lesson"
msgstr ""
#: aleksis/apps/alsijil/templates/alsijil/partials/lesson/tabs/more.html:13
msgid "Change history"
msgstr ""
......@@ -1374,78 +1438,90 @@ msgstr ""
msgid "Notes"
msgstr ""
#: aleksis/apps/alsijil/views.py:118
#: aleksis/apps/alsijil/views.py:122
msgid "You either selected an invalid lesson or there is currently no lesson in progress."
msgstr ""
#: aleksis/apps/alsijil/views.py:151
#: aleksis/apps/alsijil/views.py:155
msgid "You are not allowed to create a lesson documentation for a lesson in the future."
msgstr ""
#: aleksis/apps/alsijil/views.py:268
#: aleksis/apps/alsijil/views.py:278
msgid "The lesson documentation has been saved."
msgstr ""
#: aleksis/apps/alsijil/views.py:302
#: aleksis/apps/alsijil/views.py:312
msgid "The personal notes have been saved."
msgstr ""
#: aleksis/apps/alsijil/views.py:1119
#: aleksis/apps/alsijil/views.py:1129
msgid "The absence has been saved."
msgstr ""
#: aleksis/apps/alsijil/views.py:1140
#: aleksis/apps/alsijil/views.py:1150
msgid "The personal note has been deleted."
msgstr ""
#: aleksis/apps/alsijil/views.py:1162
#: aleksis/apps/alsijil/views.py:1172
msgid "The extra mark has been created."
msgstr ""
#: aleksis/apps/alsijil/views.py:1174
#: aleksis/apps/alsijil/views.py:1184
msgid "The extra mark has been saved."
msgstr ""
#: aleksis/apps/alsijil/views.py:1185
#: aleksis/apps/alsijil/views.py:1195
msgid "The extra mark has been deleted."
msgstr ""
#: aleksis/apps/alsijil/views.py:1206
#: aleksis/apps/alsijil/views.py:1216
msgid "The excuse type has been created."
msgstr ""
#: aleksis/apps/alsijil/views.py:1218
#: aleksis/apps/alsijil/views.py:1228
msgid "The excuse type has been saved."
msgstr ""
#: aleksis/apps/alsijil/views.py:1229
#: aleksis/apps/alsijil/views.py:1239
msgid "The excuse type has been deleted."
msgstr ""
#: aleksis/apps/alsijil/views.py:1250
#: aleksis/apps/alsijil/views.py:1260
msgid "The group role has been created."
msgstr ""
#: aleksis/apps/alsijil/views.py:1262
#: aleksis/apps/alsijil/views.py:1272
msgid "The group role has been saved."
msgstr ""
#: aleksis/apps/alsijil/views.py:1273
#: aleksis/apps/alsijil/views.py:1283
msgid "The group role has been deleted."
msgstr ""
#: aleksis/apps/alsijil/views.py:1306 aleksis/apps/alsijil/views.py:1338
#: aleksis/apps/alsijil/views.py:1316 aleksis/apps/alsijil/views.py:1348
msgid "The group role has been assigned."
msgstr ""
#: aleksis/apps/alsijil/views.py:1357
#: aleksis/apps/alsijil/views.py:1367
msgid "The group role assignment has been saved."
msgstr ""
#: aleksis/apps/alsijil/views.py:1378
#: aleksis/apps/alsijil/views.py:1388
msgid "The group role assignment has been stopped."
msgstr ""
#: aleksis/apps/alsijil/views.py:1391
#: aleksis/apps/alsijil/views.py:1401
msgid "The group role assignment has been deleted."
msgstr ""
#: aleksis/apps/alsijil/views.py:1543
msgid "The instruction has been created."
msgstr ""
#: aleksis/apps/alsijil/views.py:1555
msgid "The instruction has been saved."
msgstr ""
#: aleksis/apps/alsijil/views.py:1566
msgid "The instruction has been deleted."
msgstr ""
......@@ -67,6 +67,17 @@ MENUS = {
),
],
},
{
"name": _("Instructions"),
"url": "instructions",
"icon": "rule_folder",
"validators": [
(
"aleksis.core.util.predicates.permission_validator",
"alsijil.view_instructions_rule",
),
],
},
{
"name": _("Assign group role"),
"url": "assign_group_role_multiple",
......
This diff is collapsed.
# Generated by Django 3.2.13 on 2022-06-14 13:51
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('core', '0019_fix_uniqueness_per_site'),
('alsijil', '0017_instruction'),
]
operations = [
migrations.AddField(
model_name='lessondocumentation',
name='done_instructions',
field=models.ManyToManyField(blank=True, null=True, related_name='documentations', to='alsijil.Instruction', verbose_name='Done instructions'),
),
]
......@@ -2,6 +2,7 @@ from datetime import date
from typing import Optional, Union
from urllib.parse import urlparse
from django.core.validators import FileExtensionValidator
from django.db import models
from django.db.models.constraints import CheckConstraint
from django.db.models.query_utils import Q
......@@ -31,8 +32,12 @@ from aleksis.apps.alsijil.managers import (
from aleksis.apps.chronos.managers import GroupPropertiesMixin
from aleksis.apps.chronos.mixins import WeekRelatedMixin
from aleksis.apps.chronos.models import Event, ExtraLesson, LessonPeriod, TimePeriod
from aleksis.core.mixins import ExtensibleModel, GlobalPermissionModel
from aleksis.core.models import SchoolTerm
from aleksis.core.mixins import (
ExtensibleModel,
GlobalPermissionModel,
SchoolTermRelatedExtensibleModel,
)
from aleksis.core.models import Group, SchoolTerm
from aleksis.core.util.core_helpers import get_site_preferences
from aleksis.core.util.model_helpers import ICONS
......@@ -345,6 +350,14 @@ class LessonDocumentation(RegisterObjectRelatedMixin, ExtensibleModel):
homework = models.CharField(verbose_name=_("Homework"), max_length=200, blank=True)
group_note = models.CharField(verbose_name=_("Group note"), max_length=200, blank=True)
done_instructions = models.ManyToManyField(
"Instruction",
blank=True,
null=True,
related_name="documentations",
verbose_name=_("Done instructions"),
)
def carry_over_data(self, all_periods_of_lesson: LessonPeriod):
"""Carry over data to given periods in this lesson if data is not already set.
......@@ -512,6 +525,39 @@ class GroupRoleAssignment(GroupPropertiesMixin, ExtensibleModel):
verbose_name_plural = _("Group role assignments")
class Instruction(SchoolTermRelatedExtensibleModel):
name = models.CharField(max_length=255, verbose_name=_("Name"))
icon = models.CharField(max_length=50, blank=True, choices=ICONS, verbose_name=_("Icon"))
pdf_file = models.FileField(
upload_to="instructions/",
verbose_name=_("PDF file"),
validators=[FileExtensionValidator(["pdf"])],
)
groups = models.ManyToManyField(
to=Group,
blank=True,
null=True,
verbose_name=_("Groups"),
help_text=_(
"The instruction will be shown for the members and owners of the selected groups. "
"Leave empty to show for all groups."
),
related_name="instructions",
)
def __str__(self):
return self.name
class Meta:
verbose_name = _("Instruction")
verbose_name_plural = _("Instructions")
constraints = [
models.UniqueConstraint(
fields=["site_id", "name", "school_term"], name="site_name_school_term_unique"
)
]
class AlsijilGlobalPermissions(GlobalPermissionModel):
class Meta:
managed = False
......
......@@ -11,12 +11,14 @@ from aleksis.core.util.predicates import (
)
from .util.predicates import (
has_any_instruction,
has_lesson_group_object_perm,
has_person_group_object_perm,
has_personal_note_group_perm,
is_group_member,
is_group_owner,
is_group_role_assignment_group_owner,
is_instruction_for_person,
is_lesson_original_teacher,
is_lesson_parent_group_owner,
is_lesson_participant,
......@@ -347,3 +349,31 @@ view_register_objects_list_predicate = has_person & (
| has_global_perm("alsijil.view_full_register")
)
add_perm("alsijil.view_register_objects_list_rule", view_register_objects_list_predicate)
view_instructions_predicate = has_person & (
has_global_perm("alsijil.view_instruction") | has_any_instruction
)
add_perm("alsijil.view_instructions_rule", view_instructions_predicate)
view_done_instructions_predicate = has_person & (has_global_perm("alsijil.view_instruction"))
add_perm("alsijil.view_done_instructions_rule", view_instructions_predicate)
view_instruction_predicate = has_person & (
has_global_perm("alsijil.view_instruction")
| is_instruction_for_person
| has_object_perm("alsijil.view_instruction")
)
add_perm("alsijil.view_instruction_rule", view_instruction_predicate)
add_instruction_predicate = view_instructions_predicate & has_global_perm("alsijil.add_instruction")
add_perm("alsijil.add_instruction_rule", add_instruction_predicate)
edit_instruction_predicate = view_instructions_predicate & (
has_global_perm("alsijil.change_instruction") | has_object_perm("alsijil.change_instruction")
)
add_perm("alsijil.edit_instruction_rule", edit_instruction_predicate)
delete_instruction_predicate = view_instructions_predicate & (
has_global_perm("alsijil.delete_instruction") | has_object_perm("alsijil.delete_instruction")
)
add_perm("alsijil.delete_instruction_rule", delete_instruction_predicate)
{# -*- engine:django -*- #}
{% extends "core/base.html" %}
{% load material_form i18n %}
{% block browser_title %}{% blocktrans %}Create instruction{% endblocktrans %}{% endblock %}
{% block page_title %}{% blocktrans %}Create instruction{% endblocktrans %}{% endblock %}
{% block content %}
<form method="post" enctype="multipart/form-data">
{% csrf_token %}
{% form form=form %}{% endform %}
{% include "core/partials/save_button.html" %}
</form>
{% endblock %}
{# -*- engine:django -*- #}
{% extends "core/base.html" %}
{% load material_form i18n %}
{% block browser_title %}{% blocktrans %}Edit instruction{% endblocktrans %}{% endblock %}
{% block page_title %}{% blocktrans %}Edit instruction{% endblocktrans %}{% endblock %}
{% block content %}
<form method="post" enctype="multipart/form-data">
{% csrf_token %}
{% form form=form %}{% endform %}
{% include "core/partials/save_button.html" %}
</form>
{{ form.media.js }}
{% endblock %}
{# -*- engine:django -*- #}
{% extends "core/base.html" %}
{% load i18n rules material_form %}
{% block browser_title %}{% blocktrans %}Instructions{% endblocktrans %}{% endblock %}
{% block page_title %}{% blocktrans %}Instructions{% endblocktrans %}{% endblock %}
{% block nav_content %}
<ul class="tabs tabs-transparent tabs-icons tabs-fixed-width">
<li class="tab">
<a href="#all">
<i class="material-icons">list</i>
{% trans "All instructions" %}
</a>
</li>
{% has_perm "alsijil.view_done_instructions_rule" user as can_view_done %}
{% if can_view_done %}
<li class="tab">
<a href="#done">
<i class="material-icons">done_all</i>
{% trans "Done instructions" %}
</a>
</li>
{% endif %}
</ul>
{% endblock %}
{% block content %}
<div class="row no-margin">
<div class="col s12">
{% has_perm "alsijil.add_instruction_rule" user as can_add %}
{% if can_add %}
<a class="btn green waves-effect waves-light margin-bottom" href="{% url 'create_instruction' %}">
<i class="material-icons left">add</i>
{% trans "Create instruction" %}
</a>
{% endif %}
<form action="" method="get">
<div class="card">
<div class="card-content">
<div class="card-title">{% trans "Filter instructions" %}</div>
{% form form=filter.form %}{% endform %}
</div>
<div class="card-action-light">
<button type="submit" class="btn waves-effect waves-light green">
<i class="material-icons left">filter_alt</i>
{% trans "Filter" %}
</button>
<a href="{% url "instructions" %}" class="btn waves-effect waves-light red">
<i class="material-icons left">cancel</i>
{% trans "Reset filter" %}
</a>
</div>
</div>
</form>
</div>
</div>
<div class="row" id="all">
{% for instruction in instruction_list %}
<div class=" col s12 m12 l6 xl4">
<div class="card">
<div class="card-content">
<i class="material-icons materialize-circle primary-color-text left small iconify" data-icon="mdi:{{ instruction.icon|default:"clipboard-check-outline" }}"></i>
<span class="card-title"> {{ instruction.name }}</span>
{% has_perm "alsijil.edit_instruction_rule" user as can_edit %}
{% has_perm "alsijil.delete_instruction_rule" user as can_delete %}
{% if can_edit %}
<a class="btn-flat waves-effect waves-orange orange-text"
href="{% url "edit_instruction" instruction.pk %}">
<i class="material-icons left">edit</i>
{% trans "Edit" %}
</a>
{% endif %}
{% if can_delete %}
<a class="btn-flat waves-effect waves-red red-text" href="{% url "delete_instruction" instruction.pk %}">
<i class="material-icons left">delete</i>
{% trans "Delete" %}
</a>
{% endif %}
</div>
<div class="card-action">
<a class="" href="{{ instruction.pdf_file.url }}" target="_blank">
{% trans "Show PDF file with instruction" %}
</a>
</div>
</div>
</div>
{% endfor %}
</div>
{% has_perm "alsijil.view_done_instructions_rule" user as can_view_done %}
{% if can_view_done %}
<div class="row" id="done">
<table>
<tr>
<th></th>
{% for instruction in object_list %}
<th>{{ instruction.name }}</th>
{% endfor %}
</tr>
{% for group, instructions in done_instructions.items %}
<tr>
<th>{{ group.name }}</th>
{% for instruction, el in instructions.items %}
{% with done=el.0 docs=el.1 %}
<td class="{% if done %}green-text green lighten-5{% else %}red-text red lighten-5{% endif %}">
<i class="material-icons left">{% if done %}check{% else %}clear{% endif %}</i>
<small>
{% for doc in docs %}
{{ doc.date }}, {{ doc.register_object.teacher_short_names }}{% if not forloop.last %};{% endif %}
{% endfor %}
</small>
</td>
{% endwith %}
{% endfor %}
</tr>
{% endfor %}
</table>
</div>
{% endif %}
{% endblock %}