diff --git a/app/eve_api/tasks/character.py b/app/eve_api/tasks/character.py index 044c5aa..7e26477 100644 --- a/app/eve_api/tasks/character.py +++ b/app/eve_api/tasks/character.py @@ -130,13 +130,14 @@ def import_eve_character_func(character_id, api_key=None, user_id=None, logger=l logger.error('Error retrieving SkillInTraining.xml.aspx for User ID %s, Character ID %s - %s' % (user_id, character_id, exc)) else: queuedoc = basic_xml_parse_doc(skillqueue) - queuedoc = queuedoc['eveapi']['result'] - EVEPlayerCharacterSkill.objects.filter(character=pchar).update(in_training=0) - if int(queuedoc['skillInTraining']): - skillobj, created = EVESkill.objects.get_or_create(id=queuedoc['trainingTypeID']) - charskillobj, created = EVEPlayerCharacterSkill.objects.get_or_create(skill=skillobj, character=pchar) - charskillobj.in_training = queuedoc['trainingToLevel'] - charskillobj.save() + if 'error' in queuedoc['eveapi'] and 'result' in queuedoc['eveapi']: + queuedoc = queuedoc['eveapi']['result'] + EVEPlayerCharacterSkill.objects.filter(character=pchar).update(in_training=0) + if int(queuedoc['skillInTraining']): + skillobj, created = EVESkill.objects.get_or_create(id=queuedoc['trainingTypeID']) + charskillobj, created = EVEPlayerCharacterSkill.objects.get_or_create(skill=skillobj, character=pchar) + charskillobj.in_training = queuedoc['trainingToLevel'] + charskillobj.save() # Process the character's roles pchar.roles.clear() diff --git a/app/eve_proxy/models.py b/app/eve_proxy/models.py index d6e4a58..c67e0c3 100755 --- a/app/eve_proxy/models.py +++ b/app/eve_proxy/models.py @@ -100,9 +100,11 @@ class CachedDocumentManager(models.Manager): except: pass else: - for k in ['userid', 'apikey', 'vcode', 'keyid']: - if k in params: del params[k] - ApiAccessLog(userid=v, service='Unknown', time_access=doc.time_retrieved, document=self.construct_url(url_path, params)).save() + fparams = {} + for k in params: + if not k in ['userid', 'apikey', 'vcode', 'keyid']: fparams[k] = params[k] + + ApiAccessLog(userid=v, service='Unknown', time_access=doc.time_retrieved, document=self.construct_url(url_path, fparams)).save() return doc