Remove remaining usage of django.contrib.auth.model.User. GitLab issue #225.

This commit is contained in:
Roberto Rosario
2016-03-08 02:21:03 -04:00
parent 5d8dd19895
commit 927c0bf657
11 changed files with 38 additions and 25 deletions

View File

@@ -4,6 +4,7 @@ from django.conf import settings
from django.contrib import messages
from django.contrib.auth import get_user_model
from django.contrib.auth.models import Group
from django.contrib.contenttypes.models import ContentType
from django.core.urlresolvers import reverse, reverse_lazy
from django.http import HttpResponseRedirect
from django.shortcuts import get_object_or_404, render_to_response
@@ -72,6 +73,18 @@ class GroupMembersView(AssignRemoveView):
right_list_title = _('Members of groups')
view_permission = permission_group_edit
@staticmethod
def generate_choices(choices):
results = []
for choice in choices:
ct = ContentType.objects.get_for_model(choice)
label = choice.get_full_name() if choice.get_full_name() else choice
results.append(('%s,%s' % (ct.model, choice.pk), '%s' % (label)))
# Sort results by the label not the key value
return sorted(results, key=lambda x: x[1])
def add(self, item):
self.get_object().user_set.add(item)
@@ -85,14 +98,14 @@ class GroupMembersView(AssignRemoveView):
return get_object_or_404(Group, pk=self.kwargs['pk'])
def left_list(self):
return AssignRemoveView.generate_choices(
return GroupMembersView.generate_choices(
get_user_model().objects.exclude(
groups=self.get_object()
).exclude(is_staff=True).exclude(is_superuser=True)
)
def right_list(self):
return AssignRemoveView.generate_choices(
return GroupMembersView.generate_choices(
self.get_object().user_set.all()
)