Expanded functionality to full alliance support. The design may leave some things to wish for...

This commit is contained in:
Ydmir
2016-01-24 00:13:58 +01:00
parent 39a77829db
commit 25b89fdecb
8 changed files with 113 additions and 59 deletions

View File

@@ -195,23 +195,17 @@ class EveApiManager():
return {}
@staticmethod
def get_corp_membertracking():
if settings.IS_CORP:
if settings.CORP_API_ID and settings.CORP_API_VCODE:
try:
logger.debug("Getting corp membertracking with api id %s" % settings.CORP_API_ID)
api = evelink.api.API(api_key=(settings.CORP_API_ID, settings.CORP_API_VCODE))
corp = evelink.corp.Corp(api=api)
membertracking = corp.members()
results = membertracking.result
logger.debug("Got corp membertracking from settings: %s" % results)
return results
except evelink.api.APIError as error:
logger.exception("Unhandled APIError occured.", exc_info=True)
else:
logger.error("No corp API key supplied in settings. Unable to get standings.")
else:
logger.error("Membertracking function only works in corporation mode.")
def get_corp_membertracking(api, vcode):
try:
logger.debug("Getting corp membertracking with api id %s" % settings.CORP_API_ID)
api = evelink.api.API(api_key=(api, vcode))
corp = evelink.corp.Corp(api=api)
membertracking = corp.members()
results = membertracking.result
logger.debug("Got corp membertracking from settings: %s" % results)
return results
except evelink.api.APIError as error:
logger.exception("Unhandled APIError occured.", exc_info=True)
return {}

View File

@@ -0,0 +1,19 @@
from django.conf import settings
import logging
import requests
import json
class EveWhoManager():
def __init__(self):
pass
@staticmethod
def get_corporation_members(corpid):
url = "http://evewho.com/api.php?type=corplist&id=%s" % corpid
jsondata = requests.get(url).content
data=json.loads(jsondata.decode())
return {row["character_id"]:{"name":row["name"]} for row in data["characters"]}