module
pretalx.event.domain.queries.organiser
Functions 1
organisers_for_user(user)sourceOrganisers the user can administer, annotated with event and team counts.
def organisers_for_user(user):
"""Organisers the user can administer, annotated with event and team counts."""
if user.is_administrator:
organisers = Organiser.objects.all()
else:
organisers = Organiser.objects.filter(
pk__in={
team.organiser_id
for team in user.teams.filter(can_change_organiser_settings=True)
}
)
return organisers.annotate(
event_count=Count("events", distinct=True),
team_count=Count("teams", distinct=True),
)