From 507634ffdc6cb28a12ca65ad693b5cf4791cc02e Mon Sep 17 00:00:00 2001 From: Adarnof Date: Thu, 28 Jul 2016 12:02:39 -0400 Subject: [PATCH] Add main character field to character admin --- eveonline/admin.py | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/eveonline/admin.py b/eveonline/admin.py index 2547a259..3e76c84b 100644 --- a/eveonline/admin.py +++ b/eveonline/admin.py @@ -4,14 +4,27 @@ from models import EveCharacter from models import EveApiKeyPair from models import EveAllianceInfo from models import EveCorporationInfo +from authentication.managers import AuthServicesInfoManager -admin.site.register(EveApiKeyPair) admin.site.register(EveAllianceInfo) admin.site.register(EveCorporationInfo) +class EveApiKeyPairAdmin(admin.ModelAdmin): + search_fields = ['api_id', 'user__username'] + list_display = ['api_id', 'user'] class EveCharacterAdmin(admin.ModelAdmin): - search_fields = ['character_name', 'corporation_name', 'alliance_name', 'user__username'] - list_display = ('character_name', 'corporation_name', 'alliance_name', 'user') + search_fields = ['character_name', 'corporation_name', 'alliance_name', 'user__username', 'api_id'] + list_display = ('character_name', 'corporation_name', 'alliance_name', 'user', 'main_character') + + def main_character(self, obj): + auth = AuthServicesInfoManager.get_auth_for_user(obj.user) + if auth and auth.main_char_id: + try: + return EveCharacter.objects.get(character_id=auth.main_char_id) + except EveCharacter.DoesNotExist: + pass + return None admin.site.register(EveCharacter, EveCharacterAdmin) +admin.site.register(EveApiKeyPair, EveApiKeyPairAdmin)