From 87c4e17bd2fe31d222053e5607ae626ef1ec4b4f Mon Sep 17 00:00:00 2001 From: Andrew Williams Date: Thu, 13 Jan 2011 17:02:10 +0000 Subject: [PATCH] Remove old members from a corporation on update --- eve_api/tasks/corporation.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/eve_api/tasks/corporation.py b/eve_api/tasks/corporation.py index dfcd45d..a122573 100644 --- a/eve_api/tasks/corporation.py +++ b/eve_api/tasks/corporation.py @@ -80,7 +80,14 @@ def import_corp_members(api_userid, api_key, character_id): set = basic_xml_parse_doc(char_doc)['eveapi']['result']['members'] corp = EVEPlayerCharacter.objects.get(id=character_id).corporation + charlist = [] for character in set: + charlist.append(int(character['characterID'])) charobj = EVEPlayerCharacter.objects.filter(id=character['characterID']) - charobj.update(last_login=character['logonDateTime'], last_logoff=character['logoffDateTime'], current_location_id=int(character['locationID'])) + charobj.update(last_login=character['logonDateTime'], last_logoff=character['logoffDateTime'], current_location_id=int(character['locationID'], corporation_date=character['startDateTime'])) + + removemembers = EVEPlayerCharacter.objects.exclude(corporation=corp,id__in=charlist) + removemembers.update(corporation=None, corporation_date=None) + #for char in removemembers: + # import_eve_character.delay(char.id)