Revision 2e06f08d
b/other/astakos_conflicting_users.py | ||
---|---|---|
1 |
import os |
|
2 |
import sys |
|
3 |
os.environ['DJANGO_SETTINGS_MODULE'] = 'synnefo.settings' |
|
4 |
|
|
5 |
from django.conf import settings |
|
6 |
from astakos.im.models import AstakosUser |
|
7 |
|
|
8 |
def duplicate_users(): |
|
9 |
for u in AstakosUser.objects.filter(): |
|
10 |
if AstakosUser.objects.filter(email__iexact=u.email).count() > 1: |
|
11 |
print AstakosUser.objects.filter(email__iexact=u.email).values('pk', |
|
12 |
'email', |
|
13 |
'is_active') |
|
14 |
|
|
15 |
if len(sys.argv) == 2: |
|
16 |
pk = int(sys.argv[1]) |
|
17 |
user = AstakosUser.objects.get(pk=pk) |
|
18 |
if AstakosUser.objects.filter(email__iexact=user.email).count() == 1: |
|
19 |
print "No duplicate emails found for user %s" % (user) |
|
20 |
exit() |
|
21 |
user = AstakosUser.objects.get(pk=pk) |
|
22 |
print "Deleting user %r" % (user) |
|
23 |
user.delete() |
|
24 |
exit() |
|
25 |
else: |
|
26 |
duplicate_users() |
|
27 |
|
Also available in: Unified diff