Attendance Tracking for Free Schools #380
Labels
No labels
Security
TeX
auto-update
board
done
board
ready
board
todo
check
delete-eslint-rc-js
check
update-builddeps-package-json
check
update-eslint-rc-js
check
update-gitignore
check
update-merge-request-template
check
update-prettier-ignore
check
update-pyproject-toml
check
update-renovate-json
check
update-tox-ini
part
backend
part
ci
part
docs
part
frontend
part
i18n
part
non-technical
part
packaging
prio
1
prio
2
prio
3
release-mr-5.x
size
large
size
medium
size
small
source
customer
source
customer::fsmw
source
customer::fss
source
customer::teckids
source
downstream
type
breaking
type
bug
type
feature
type
refactoring
workflow
blocked
workflow
confirmed
workflow
current-todo
workflow
discussing
workflow
new-app
workflow
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
aleksis/AlekSIS-App-Alsijil#380
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Milestones
A. Get more insights in the work of community-run/democratic schools
B. Implement two major attendance tracking modes for democratic schools: Attendance by different teachers tracking for sub-courses
C. Implement two major attendance tracking modes for democratic schools: Student self check-in
Mode I: Attendance by different teachers tracking for sub-courses
Milestone 5.B
Idee
Mode II: Student Self Check-In
Milestone 5.A
Ideen
Mittagessen, Ganztag
morgens
während des Tages
gehen zu Angebot
gehen in kein Angebot
„Spezial-Angebote” (z.B. Sport, Ausflug)
Check-Out
Derzeitiges Datenmodell
Documentation→ diese zeigt dann auf bspw einLessonEventaus ChronosDocumentationhat Gruppe, Subject, TimeframeParticipationStatusmuss nicht mit Start/Ende von der Documentation übereinstimmenParticipationStatusohne Absence und ohneAbsenceReasonAbsenceReasonshaben eincount_as_absent-Feld, however das wird nur für abschließende Berechnungen verwendet, man ist trotzdem faktisch nicht Teil der Lehrveranstaltung (vgl. schulisch entschuldigt)AbsenceParticipationStatusObjekte angelegt (alle mit Kolego-Absencesind abwesend, alle anderen per default anwesend)Documentations haben einenCourse, darin wird auf Gruppe(n) verwiesenParticipationStatus, der besagt, sie seien anwesendAnforderungen
aus den beiden Modes folgen folgende Usecases:
ParticipationStatus)AbsencReasondie nicht als absent zählt) besagt)ParticipationStatuserstellt wird, muss gefragt werden, was mit den anderen, die gleichzeitig sind, passieren soll (löschen, auf abwesend setzen, ignorieren)ParticipationStatusmanuell (und nicht automatisch) erstellenParticipationStatusselber verwaltenAbsenceReasonnotwendig, falls nur Eltern/Lehrer entschuldigen können sollenCalendarEventzeigen?ParticipationStatusmanuell (und nicht automatisch) erstellenParticipationStatusanpassbar machenNotwendige Änderungen
Backend
ParticipationStatusdeaktivierbar machenParticipationStatusüberprüfen, ob es einen zeitlich überlappenden für gleiche Person gibt, und das entsprechend berücksichtigen (bspw Abbruch bei automatisch, Nachfrage bei manuell)AbsenceReasonvergeben darf (bspw nur Eltern+Lehrerentschuldigt, nur Lehrerschulisch entschuldigt, etc.)Frontend
ManageStudentsDialogsollte es eine Möglichkeit geben, manuell einenParticipationStatuszu erstellen ("eine An/Abwesenheit loggen"), je nach permissions können sich da Schüler auch selbst eincheckenFurther thoughts (dev meeting)
Linked to #370 (self-checkin via NFC)
Meeting on 23.04.2026
on_first_touchfor auto,manualfor teacher-only,open_check_inmandatory_check_in→ automatically mark all students as absentchanged due date to April 24, 2026
marked this issue as related to #370
marked this issue as related to #377
marked this issue as related to #378
Probably should build on top of !909
created branch
380-attendance-tracking-for-free-schoolsto address this issuementioned in merge request !915
changed the description
mentioned in issue #370
marked the checklist item Möglichkeit für Teachers, andere einzuchecken as completed
changed the description
marked this issue as related to AlekSIS-App-Cursus#51
marked the checklist item we need CourseTypes in Cursus to differentiate, which Lessons have which Participation Creation behaviour (if lesson is null → default to global preference) as completed
marked the checklist item add third case: on_first_touch for auto, manual for teacher-only, open_check_in as completed
marked the checklist item add fourth case: mandatory_check_in → automatically mark all students as absent as completed
marked the checklist item add a second button for self-checkin (depending on mode) as completed
marked the checklist item hide register-participation dialog if you cannot do that (permission/mode) as completed
marked this issue as related to AlekSIS-App-Chronos#278
marked the checklist item new widget on person page: show current participation(s), on full-screen show all as completed
mentioned in commit
54e9989c50