From 7340a90308ae2fd092cd42e87e110265a70b39e9 Mon Sep 17 00:00:00 2001 From: Adarnof Date: Thu, 2 Jun 2016 17:43:02 -0400 Subject: [PATCH] Delete characters removed from API keys Closes #452 --- celerytask/tasks.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/celerytask/tasks.py b/celerytask/tasks.py index 959c7492..f5c01f70 100755 --- a/celerytask/tasks.py +++ b/celerytask/tasks.py @@ -430,6 +430,11 @@ def refresh_api(api_key_pair): if new_character: logger.debug("Creating new character %s from api key %s" % (characters.result[char]['name'], api_key_pair.api_id)) EveManager.create_characters_from_list(characters, user, api_key_pair.api_id) + current_chars = EveCharacter.objects.filter(api_id=api_key_pair.api_id) + for c in current_chars: + if not int(c.character_id) in characters.result: + logger.info("Character %s no longer found on API ID %s" % (c, api_key_pair.api_id)) + c.delete() else: logger.debug("API key %s is no longer valid; it and its characters will be deleted." % api_key_pair.api_id) EveManager.delete_characters_by_api_id(api_key_pair.api_id, user.id)