mirror of
https://github.com/nikdoof/test-auth.git
synced 2025-12-14 14:52:15 +00:00
Check for valid director API keys
This commit is contained in:
@@ -40,12 +40,16 @@ class EVEPlayerCorporation(EVEAPIModel):
|
||||
""" Returns the number of characters with stored API keys """
|
||||
return self.eveplayercharacter_set.filter(eveaccount__isnull=False).count()
|
||||
|
||||
@property
|
||||
def director_api_keys(self):
|
||||
return self.directors.filter(eveaccount__isnull=False, eveaccount__api_keytype=API_KEYTYPE_FULL, eveaccount__api_status=API_STATUS_OK)
|
||||
|
||||
@property
|
||||
def api_key_coverage(self):
|
||||
""" Returns the percentage coverage of API keys for the corporation's members """
|
||||
|
||||
# Check if we have a full director key, see if we can base our assumptions off what is in auth already
|
||||
if self.directors.filter(eveaccount__isnull=False, eveaccount__api_keytype=API_KEYTYPE_FULL).count():
|
||||
if self.director_api_keys.count():
|
||||
membercount = self.eveplayercharacter_set.count()
|
||||
else:
|
||||
membercount = self.member_count
|
||||
|
||||
@@ -13,6 +13,7 @@
|
||||
<li><b>Member Count:</b> {{ corporation.member_count }}</li>
|
||||
<li><b>Known Members:</b> {{ corporation.eveplayercharacter_set.count }}</li>
|
||||
{% if view_members %}
|
||||
<li><b>Full Director API Available: {% if corporation.director_api_keys %}<span style="color: green;">Yes</span>{% else %}<span style="color: red;">No</span>{% endif %}</b></li>
|
||||
<li><b>Members with API Keys:</b> {{ corporation.api_keys }}</li>
|
||||
<li><b>API Coverage:</b> {{ corporation.api_key_coverage|floatformat:2 }}%</li>
|
||||
{% endif %}
|
||||
|
||||
@@ -11,6 +11,7 @@ from django.core import serializers
|
||||
|
||||
from eve_proxy.models import ApiAccessLog
|
||||
from eve_proxy.exceptions import DocumentRetrievalError
|
||||
from eve_api.app_defines import *
|
||||
from eve_api.forms import EveAPIForm
|
||||
from eve_api.models import EVEAccount, EVEPlayerCharacter, EVEPlayerCorporation
|
||||
from eve_api.tasks import import_apikey_result
|
||||
@@ -191,6 +192,6 @@ def eveapi_corporation(request, corporationid, template='eve_api/corporation.htm
|
||||
context = {
|
||||
'corporation': corporation,
|
||||
'members': corporation.eveplayercharacter_set.select_related('eveaccount', 'roles').order_by('corporation_date').only('id', 'name', 'corporation_date'),
|
||||
'view_members': corporation.eveplayercharacter_set.filter(eveaccount__user=request.user, roles__name="Director").count() or request.user.is_superuser,
|
||||
'view_members': corporation.eveplayercharacter_set.filter(eveaccount__user=request.user, roles__name="roleDirector").count() or request.user.is_superuser,
|
||||
}
|
||||
return render_to_response(template, context, context_instance=RequestContext(request))
|
||||
|
||||
Reference in New Issue
Block a user