mirror of
https://github.com/nikdoof/limetime.git
synced 2025-12-20 14:09:24 +00:00
Initial import of codebase
This commit is contained in:
23
app/timer/management/commands/import_alliances.py
Normal file
23
app/timer/management/commands/import_alliances.py
Normal file
@@ -0,0 +1,23 @@
|
||||
from django.core.management.base import BaseCommand, CommandError
|
||||
from django.db import transaction
|
||||
from timer.models import Alliance, Corporation
|
||||
from eveapi import EVEAPIConnection
|
||||
|
||||
class Command(BaseCommand):
|
||||
args = ''
|
||||
help = 'Updates alliances from the EVE API'
|
||||
|
||||
def handle(self, *args, **options):
|
||||
api = EVEAPIConnection()
|
||||
|
||||
alliance_list = api.eve.AllianceList().alliances
|
||||
print 'Updating %d alliances... ' % len(alliance_list)
|
||||
with transaction.commit_on_success():
|
||||
for alliance in alliance_list:
|
||||
allobj, created = Alliance.objects.get_or_create(pk=alliance.allianceID)
|
||||
allobj.name = alliance.name
|
||||
allobj.save()
|
||||
corp_ids = [x.corporationID for x in alliance.memberCorporations]
|
||||
Corporation.objects.exclude(pk__in=corp_ids).update(alliance=None)
|
||||
Corporation.objects.filter(pk__in=corp_ids).update(alliance=allobj)
|
||||
print 'Done'
|
||||
Reference in New Issue
Block a user