mirror of
https://gitlab.com/allianceauth/allianceauth.git
synced 2025-07-13 06:20:16 +02:00
Merge pull request #97 from Adarnof/check_exists
Added logic to check if corp or alliance exists
This commit is contained in:
commit
7dd9e670a8
@ -369,17 +369,22 @@ def run_corp_update():
|
|||||||
|
|
||||||
# Update all allinace info's
|
# Update all allinace info's
|
||||||
for all_alliance_info in EveManager.get_all_alliance_info():
|
for all_alliance_info in EveManager.get_all_alliance_info():
|
||||||
all_alliance_api_info = EveApiManager.get_alliance_information(all_alliance_info.alliance_id)
|
if EveApiManager.check_if_alliance_exists(all_alliance_info.alliance_id):
|
||||||
if (not settings.IS_CORP and all_alliance_info.alliance_id == settings.ALLIANCE_ID):
|
all_alliance_api_info = EveApiManager.get_alliance_information(all_alliance_info.alliance_id)
|
||||||
EveManager.update_alliance_info(all_alliance_api_info['id'], all_alliance_api_info['executor_id'],
|
if (not settings.IS_CORP and all_alliance_info.alliance_id == settings.ALLIANCE_ID):
|
||||||
all_alliance_api_info['member_count'], False)
|
EveManager.update_alliance_info(all_alliance_api_info['id'], all_alliance_api_info['executor_id'],
|
||||||
elif standing_level in corp_standings:
|
all_alliance_api_info['member_count'], False)
|
||||||
if int(all_alliance_info.alliance_id) in corp_standings[standing_level]:
|
elif standing_level in corp_standings:
|
||||||
if int(corp_standings[standing_level][int(all_alliance_info.alliance_id)][
|
if int(all_alliance_info.alliance_id) in corp_standings[standing_level]:
|
||||||
'standing']) >= settings.BLUE_STANDING:
|
if int(corp_standings[standing_level][int(all_alliance_info.alliance_id)][
|
||||||
EveManager.update_alliance_info(all_alliance_api_info['id'],
|
'standing']) >= settings.BLUE_STANDING:
|
||||||
all_alliance_api_info['executor_id'],
|
EveManager.update_alliance_info(all_alliance_api_info['id'],
|
||||||
all_alliance_api_info['member_count'], True)
|
all_alliance_api_info['executor_id'],
|
||||||
|
all_alliance_api_info['member_count'], True)
|
||||||
|
else:
|
||||||
|
EveManager.update_alliance_info(all_alliance_api_info['id'],
|
||||||
|
all_alliance_api_info['executor_id'],
|
||||||
|
all_alliance_api_info['member_count'], False)
|
||||||
else:
|
else:
|
||||||
EveManager.update_alliance_info(all_alliance_api_info['id'],
|
EveManager.update_alliance_info(all_alliance_api_info['id'],
|
||||||
all_alliance_api_info['executor_id'],
|
all_alliance_api_info['executor_id'],
|
||||||
@ -389,41 +394,44 @@ def run_corp_update():
|
|||||||
all_alliance_api_info['executor_id'],
|
all_alliance_api_info['executor_id'],
|
||||||
all_alliance_api_info['member_count'], False)
|
all_alliance_api_info['member_count'], False)
|
||||||
else:
|
else:
|
||||||
EveManager.update_alliance_info(all_alliance_api_info['id'],
|
#alliance no longer exists
|
||||||
all_alliance_api_info['executor_id'],
|
all_alliance_info.delete()
|
||||||
all_alliance_api_info['member_count'], False)
|
|
||||||
|
|
||||||
# Update corp infos
|
# Update corp infos
|
||||||
for all_corp_info in EveManager.get_all_corporation_info():
|
for all_corp_info in EveManager.get_all_corporation_info():
|
||||||
alliance = None
|
if EveApiManager.check_if_corp_exists(all_corp_info.corporation_id):
|
||||||
corpinfo = EveApiManager.get_corporation_information(all_corp_info.corporation_id)
|
alliance = None
|
||||||
if corpinfo['alliance']['id'] is not None:
|
corpinfo = EveApiManager.get_corporation_information(all_corp_info.corporation_id)
|
||||||
alliance = EveManager.get_alliance_info_by_id(corpinfo['alliance']['id'])
|
if corpinfo['alliance']['id'] is not None:
|
||||||
|
alliance = EveManager.get_alliance_info_by_id(corpinfo['alliance']['id'])
|
||||||
|
|
||||||
if alliance is not None and all_corp_info.alliance is not None:
|
if alliance is not None and all_corp_info.alliance is not None:
|
||||||
|
|
||||||
if (not settings.IS_CORP) and (all_corp_info.alliance.alliance_id == settings.ALLIANCE_ID):
|
if (not settings.IS_CORP) and (all_corp_info.alliance.alliance_id == settings.ALLIANCE_ID):
|
||||||
EveManager.update_corporation_info(corpinfo['id'], corpinfo['members']['current'], alliance, False)
|
EveManager.update_corporation_info(corpinfo['id'], corpinfo['members']['current'], alliance, False)
|
||||||
elif int(alliance.alliance_id) in corp_standings[standing_level]:
|
elif int(alliance.alliance_id) in corp_standings[standing_level]:
|
||||||
if int(corp_standings[standing_level][int(alliance.alliance_id)][
|
if int(corp_standings[standing_level][int(alliance.alliance_id)][
|
||||||
'standing']) >= settings.BLUE_STANDING:
|
'standing']) >= settings.BLUE_STANDING:
|
||||||
EveManager.update_corporation_info(corpinfo['id'], corpinfo['members']['current'], alliance,
|
EveManager.update_corporation_info(corpinfo['id'], corpinfo['members']['current'], alliance,
|
||||||
True)
|
True)
|
||||||
|
else:
|
||||||
|
EveManager.update_corporation_info(corpinfo['id'], corpinfo['members']['current'], alliance,
|
||||||
|
False)
|
||||||
else:
|
else:
|
||||||
EveManager.update_corporation_info(corpinfo['id'], corpinfo['members']['current'], alliance,
|
EveManager.update_corporation_info(corpinfo['id'], corpinfo['members']['current'], alliance,
|
||||||
False)
|
False)
|
||||||
else:
|
else:
|
||||||
EveManager.update_corporation_info(corpinfo['id'], corpinfo['members']['current'], alliance,
|
if int(all_corp_info.corporation_id) in corp_standings[standing_level]:
|
||||||
False)
|
if int(corp_standings[standing_level][int(all_corp_info.corporation_id)][
|
||||||
else:
|
'standing']) >= settings.BLUE_STANDING:
|
||||||
if int(all_corp_info.corporation_id) in corp_standings[standing_level]:
|
EveManager.update_corporation_info(corpinfo['id'], corpinfo['members']['current'], None, True)
|
||||||
if int(corp_standings[standing_level][int(all_corp_info.corporation_id)][
|
else:
|
||||||
'standing']) >= settings.BLUE_STANDING:
|
EveManager.update_corporation_info(corpinfo['id'], corpinfo['members']['current'], None, False)
|
||||||
EveManager.update_corporation_info(corpinfo['id'], corpinfo['members']['current'], None, True)
|
|
||||||
else:
|
else:
|
||||||
EveManager.update_corporation_info(corpinfo['id'], corpinfo['members']['current'], None, False)
|
EveManager.update_corporation_info(corpinfo['id'], corpinfo['members']['current'], None, False)
|
||||||
else:
|
else:
|
||||||
EveManager.update_corporation_info(corpinfo['id'], corpinfo['members']['current'], None, False)
|
#corp has closed
|
||||||
|
all_corp_info.delete()
|
||||||
|
|
||||||
# Remove irrelevent corp and alliance models
|
# Remove irrelevent corp and alliance models
|
||||||
# Check the corps
|
# Check the corps
|
||||||
|
@ -179,3 +179,38 @@ class EveApiManager():
|
|||||||
return False
|
return False
|
||||||
|
|
||||||
return False
|
return False
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def check_if_alliance_exists(alliance_id):
|
||||||
|
try:
|
||||||
|
api = evelink.api.API()
|
||||||
|
eve = evelink.eve.EVE(api=api)
|
||||||
|
alliances = eve.alliances()
|
||||||
|
if int(alliance_id) in alliances[0]:
|
||||||
|
return True
|
||||||
|
else:
|
||||||
|
return False
|
||||||
|
except evelink.api.APIError as error:
|
||||||
|
print error
|
||||||
|
return False
|
||||||
|
except ValueError as error:
|
||||||
|
#attempts to catch error resulting from checking alliance_of nonetype models
|
||||||
|
print error
|
||||||
|
return False
|
||||||
|
return False
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def check_if_corp_exists(corp_id):
|
||||||
|
try:
|
||||||
|
api = evelink.api.API()
|
||||||
|
corp = evelink.corp.Corp(api=api)
|
||||||
|
corpinfo = corp.corporation_sheet(corp_id=corp_id)
|
||||||
|
if corpinfo[0]['members']['current'] > 0:
|
||||||
|
return True
|
||||||
|
else:
|
||||||
|
return False
|
||||||
|
except evelink.api.APIError as error:
|
||||||
|
#could be smart and check for error code523 to verify error due to no corp instead of catch-all
|
||||||
|
print error
|
||||||
|
return False
|
||||||
|
return False
|
||||||
|
Loading…
x
Reference in New Issue
Block a user