Cleanup char/service selection, let the QuerySet do the work.

This commit is contained in:
2010-03-12 12:19:21 +00:00
parent cb49170d33
commit 2d8856c742

View File

@@ -28,17 +28,8 @@ class EveAPIForm(forms.Form):
def UserServiceAccountForm(user): def UserServiceAccountForm(user):
""" Generate a Service Account form based on the user's permissions """ """ Generate a Service Account form based on the user's permissions """
current_services = [] services = Service.objects.filter(groups__in=user.groups.all()).exclude(id__in=ServiceAccount.objects.filter(user=user).values('service'))
for sa in ServiceAccount.objects.filter(user=user): chars = EVEPlayerCharacter.objects.filter(corporation__group__in=user.groups.all(),eveaccount__user=user)
current_services.append(sa.service)
services = set(Service.objects.filter(groups__in=user.groups.all())) - set(current_services)
eveacc = EVEAccount.objects.filter(user=user)
chars = []
for srv in services:
for char in eveacc.characters.all():
if char.corporation.group = srv.group and not char in chars:
chars.append(char)
class ServiceAccountForm(forms.Form): class ServiceAccountForm(forms.Form):
""" Service Account Form """ """ Service Account Form """