@permission_required('django_spire_auth_group.view_authgroup')
def detail_view(request: WSGIRequest, pk: int) -> TemplateResponse:
group = get_object_or_404(models.AuthGroup, pk=pk)
active_user_list = group.user_set.filter(is_active=True).order_by('first_name', 'last_name')
inactive_user_list = group.user_set.filter(is_active=False).order_by('first_name', 'last_name')
paginated_active_user_list = Paginator(active_user_list, 10).get_page(
request.GET.get('page', 1)
)
paginated_inactive_user_list = Paginator(inactive_user_list, 10).get_page(
request.GET.get('page', 1)
)
nav = AuthGroupNavigation()
nav.page_title = str(group)
nav.breadcrumbs.add_model_instance_string(
group, view_name='django_spire:auth:group:page:detail', view_kwargs={'pk': group.pk}
)
context = nav.as_context()
context['group'] = group
context['permission_data'] = generate_group_perm_data(group, with_special_role=True)
context['active_user_list'] = paginated_active_user_list
context['inactive_user_list'] = paginated_inactive_user_list
return TemplateResponse(
request, context=context, template='django_spire/auth/group/page/detail_page.html'
)