Added blue support to the auth

This commit is contained in:
Raynaldo Rivera
2014-11-02 21:53:26 -07:00
parent f0e62f7f83
commit 48373c285a
19 changed files with 354 additions and 53 deletions

View File

@@ -66,9 +66,6 @@ def add_to_databases(user, groups, syncgroups):
for group in groups:
syncgroup = syncgroups.filter(groupname=group.name)
if not syncgroup:
# gotta create group
# create syncgroup
# create service groups
synccache = SyncGroupCache()
synccache.groupname = group.name
synccache.user = user
@@ -155,7 +152,8 @@ def run_api_refresh():
if main_alliance_id == settings.ALLIANCE_ID:
pass
else:
deactivate_services(user)
if not authserviceinfo.is_blue:
deactivate_services(user)
else:
# nuke it
deactivate_services(user)
@@ -166,17 +164,16 @@ def run_api_refresh():
# Run Every 2 hours
@periodic_task(run_every=crontab(minute=0, hour="*/2"))
def run_alliance_corp_update():
# I am not proud of this block of code
if EveApiManager.check_if_api_server_online():
# Updated alliance info
alliance_info = EveApiManager.get_alliance_information(settings.ALLIANCE_ID)
# Populate alliance info
if not EveManager.check_if_alliance_exists_by_id(settings.ALLIANCE_ID):
EveManager.create_alliance_info(settings.ALLIANCE_ID, alliance_info['name'], alliance_info['ticker'],
alliance_info['executor_id'], alliance_info['member_count'])
EveManager.update_alliance_info(settings.ALLIANCE_ID, alliance_info['executor_id'],
alliance_info['member_count'])
alliance_info['executor_id'], alliance_info['member_count'], False)
alliance = EveManager.get_alliance_info_by_id(settings.ALLIANCE_ID)
@@ -185,13 +182,101 @@ def run_alliance_corp_update():
corpinfo = EveApiManager.get_corporation_information(alliance_corp)
if not EveManager.check_if_corporation_exists_by_id(corpinfo['id']):
EveManager.create_corporation_info(corpinfo['id'], corpinfo['name'], corpinfo['ticker'],
corpinfo['members']['current'], alliance)
corpinfo['members']['current'], False, alliance)
# Update all the corps
for all_corp_info in EveManager.get_all_corporation_info():
corpinfo = EveApiManager.get_corporation_information(all_corp_info.corporation_id)
if corpinfo['alliance']['id'] == int(settings.ALLIANCE_ID):
EveManager.update_corporation_info(corpinfo['id'], corpinfo['members']['current'], alliance)
# Create the corps in the standings
alliance_standings = EveApiManager.get_alliance_standings()
if alliance_standings:
for standing_id in EveApiManager.get_alliance_standings()['alliance']:
if int(alliance_standings['alliance'][standing_id]['standing']) >= settings.ALLIANCE_BLUE_STANDING:
if EveApiManager.check_if_id_is_character(standing_id):
pass
elif EveApiManager.check_if_id_is_corp(standing_id):
corpinfo = EveApiManager.get_corporation_information(standing_id)
if not EveManager.check_if_corporation_exists_by_id(standing_id):
EveManager.create_corporation_info(corpinfo['id'], corpinfo['name'], corpinfo['ticker'],
corpinfo['members']['current'], True, None)
else:
# Alliance id create corps
blue_alliance_info = EveApiManager.get_alliance_information(standing_id)
if not EveManager.check_if_alliance_exists_by_id(standing_id):
EveManager.create_alliance_info(standing_id, blue_alliance_info['name'],
blue_alliance_info['ticker'],
blue_alliance_info['executor_id'],
blue_alliance_info['member_count'], True)
blue_alliance = EveManager.get_alliance_info_by_id(standing_id)
for blue_alliance_corp in blue_alliance_info['member_corps']:
blue_info = EveApiManager.get_corporation_information(blue_alliance_corp)
if not EveManager.check_if_corporation_exists_by_id(blue_info['id']):
EveManager.create_corporation_info(blue_info['id'], blue_info['name'],
blue_info['ticker'],
blue_info['members']['current'], True, blue_alliance)
# Update all allinace info's
for all_alliance_info in EveManager.get_all_alliance_info():
all_alliance_api_info = EveApiManager.get_alliance_information(all_alliance_info.alliance_id)
if all_alliance_info.alliance_id == settings.ALLIANCE_ID:
EveManager.update_alliance_info(all_alliance_api_info['id'], all_alliance_api_info['executor_id'],
all_alliance_api_info['member_count'], False)
else:
# No longer in the alliance nuke it
all_corp_info.delete()
if int(alliance_standings['alliance'][int(all_alliance_info.alliance_id)][
'standing']) >= settings.ALLIANCE_BLUE_STANDING:
EveManager.update_alliance_info(all_alliance_api_info['id'], 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)
# Update corp infos
for all_corp_info in EveManager.get_all_corporation_info():
alliance = None
corpinfo = EveApiManager.get_corporation_information(all_corp_info.corporation_id)
if corpinfo['alliance']['id'] is not None:
alliance = EveManager.get_alliance_info_by_id(corpinfo['alliance']['id'])
if alliance is not None:
if all_corp_info.alliance.alliance_id == settings.ALLIANCE_ID:
EveManager.update_corporation_info(corpinfo['id'], corpinfo['members']['current'], alliance, False)
else:
if int(alliance.alliance_id) in alliance_standings['alliance']:
if int(alliance_standings['alliance'][int(alliance.alliance_id)][
'standing']) >= settings.ALLIANCE_BLUE_STANDING:
EveManager.update_corporation_info(corpinfo['id'], corpinfo['members']['current'], alliance,
True)
else:
EveManager.update_corporation_info(corpinfo['id'], corpinfo['members']['current'], alliance,
False)
else:
EveManager.update_corporation_info(corpinfo['id'], corpinfo['members']['current'], alliance,
False)
else:
if int(all_corp_info.corporation_id) in alliance_standings['alliance']:
if int(alliance_standings['alliance'][int(all_corp_info.corporation_id)][
'standing']) >= settings.ALLIANCE_BLUE_STANDING:
EveManager.update_corporation_info(corpinfo['id'], corpinfo['members']['current'], None, True)
else:
EveManager.update_corporation_info(corpinfo['id'], corpinfo['members']['current'], None, False)
else:
EveManager.update_corporation_info(corpinfo['id'], corpinfo['members']['current'], None, False)
# Nuke the none believers
# Check the corps
for all_corp_info in EveManager.get_all_corporation_info():
if all_corp_info.alliance is not None:
if all_corp_info.alliance.alliance_id != settings.ALLIANCE_ID:
if not all_corp_info.is_blue:
all_corp_info.delete()
else:
if not all_corp_info.is_blue:
all_corp_info.delete()
# Check the alliances
for all_alliance_info in EveManager.get_all_alliance_info():
if all_alliance_info.alliance_id != settings.ALLIANCE_ID:
if not all_alliance_info.is_blue:
all_alliance_info.delete()