Skip to content
Snippets Groups Projects
Commit ebd5e7f4 authored by Jonathan Weth's avatar Jonathan Weth :keyboard:
Browse files

Merge branch '261-confidential-issue' into 'master'

Confidential Issue

Closes #261

See merge request !382
parents bd902488 e319b916
No related branches found
No related tags found
1 merge request!382Confidential Issue
Pipeline #193591 failed
from datetime import date, datetime, timedelta from datetime import date, datetime, timedelta
from typing import TYPE_CHECKING, Optional from typing import TYPE_CHECKING, Optional
from django.db.models import Q from django.db.models import Count, Q
from guardian.shortcuts import get_objects_for_user from guardian.shortcuts import get_objects_for_user
...@@ -19,7 +19,11 @@ if TYPE_CHECKING: ...@@ -19,7 +19,11 @@ if TYPE_CHECKING:
def get_teachers(user: "User"): def get_teachers(user: "User"):
"""Get the teachers whose timetables are allowed to be seen by current user.""" """Get the teachers whose timetables are allowed to be seen by current user."""
teachers = Person.objects.all().order_by("short_name", "last_name") teachers = (
Person.objects.annotate(course_count=Count("courses_as_teacher"))
.filter(course_count__gt=0)
.order_by("short_name", "last_name")
)
if not user.has_perm("chronos.view_all_person_timetables"): if not user.has_perm("chronos.view_all_person_timetables"):
teachers.filter( teachers.filter(
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment