From f7657a73253a72f00c91e45c294bd4d1aa2475d3 Mon Sep 17 00:00:00 2001 From: Andrew Williams Date: Wed, 10 Nov 2010 12:01:00 +0000 Subject: [PATCH] Update-directors now works better causing less unneeded task triggering --- update-directors.py | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) mode change 100755 => 100644 update-directors.py diff --git a/update-directors.py b/update-directors.py old mode 100755 new mode 100644 index 76cce57..1684ece --- a/update-directors.py +++ b/update-directors.py @@ -11,23 +11,24 @@ path = os.path.dirname(os.path.realpath( __file__ )) activate_this = os.path.join(path, 'env/bin/activate_this.py') execfile(activate_this, dict(__file__=activate_this)) -import sys -import logging from django.core.management import setup_environ import settings - setup_environ(settings) from eve_api.models import EVEPlayerCharacter -from django.contrib.auth.models import Group -import unicodedata -import re +from django.contrib.auth.models import Group, User g = Group.objects.get(name="Alliance Directors") -c = EVEPlayerCharacter.objects.filter(corporation__alliance__name="Test Alliance Please Ignore",director=True) -for m in g.user_set.all(): +users = [] +for char in EVEPlayerCharacter.objects.filter(corporation__alliance__name="Test Alliance Please Ignore",director=True): + users.append(char.eveaccount_set.all()[0].user) + +add = set(users) - set(g.user_set.all()) +rem = set(g.user_set.all()) - set(users) + +for m in rem: m.groups.remove(g) -for char in c: - char.eveaccount_set.all()[0].user.groups.add(g) +for m in add: + m.groups.add(g)