diff --git a/alliance_auth/settings.py.example b/alliance_auth/settings.py.example index 47efc40c..d86a64df 100755 --- a/alliance_auth/settings.py.example +++ b/alliance_auth/settings.py.example @@ -20,6 +20,7 @@ BASE_DIR = os.path.dirname(os.path.dirname(__file__)) # See https://docs.djangoproject.com/en/1.6/howto/deployment/checklist/ # SECURITY WARNING: keep the secret key used in production secret! +# Generate a new key here: http://www.miniwebtool.com/django-secret-key-generator/ SECRET_KEY = os.environ.get('AA_SECRET_KEY', '5xvh4e0x&@-$6(kj%4^80pdo1n5v-!mtx(e(1tw@kn-1le*ts@') # SECURITY WARNING: don't run with debug turned on in production! @@ -77,8 +78,8 @@ DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'alliance_auth', - 'USER': os.environ.get('AA_DB_DEFAULT_USER', 'allianceauth'), - 'PASSWORD': os.environ.get('AA_DB_DEFAULT_PASSWORD', 'allianceauth'), + 'USER': os.environ.get('AA_DB_DEFAULT_USER', 'allianceserver'), + 'PASSWORD': os.environ.get('AA_DB_DEFAULT_PASSWORD', 'password'), 'HOST': os.environ.get('AA_DB_DEFAULT_HOST', '127.0.0.1'), 'PORT': os.environ.get('AA_DB_DEFAULT_PORT', '3306'), }, @@ -86,8 +87,8 @@ DATABASES = { 'phpbb3': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'alliance_forum', - 'USER': os.environ.get('AA_DB_PHPBB3_USER', 'allianceauth'), - 'PASSWORD': os.environ.get('AA_DB_PHPBB3_PASSWORD', 'allianceauth'), + 'USER': os.environ.get('AA_DB_PHPBB3_USER', 'allianceserver'), + 'PASSWORD': os.environ.get('AA_DB_PHPBB3_PASSWORD', 'password'), 'HOST': os.environ.get('AA_DB_PHPBB3_HOST', '127.0.0.1'), 'PORT': os.environ.get('AA_DB_PHPBB3_PORT', '3306'), }, @@ -95,8 +96,8 @@ DATABASES = { 'mumble': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'alliance_mumble', - 'USER': os.environ.get('AA_DB_MUMBLE_USER', 'alliancemumble'), - 'PASSWORD': os.environ.get('AA_DB_MUMBLE_PASSWORD', 'alliancemumble'), + 'USER': os.environ.get('AA_DB_MUMBLE_USER', 'allianceserver'), + 'PASSWORD': os.environ.get('AA_DB_MUMBLE_PASSWORD', 'password'), 'HOST': os.environ.get('AA_DB_MUMBLE_HOST', '127.0.0.1'), 'PORT': os.environ.get('AA_DB_MUMBLE_PORT', '3306'), } @@ -111,6 +112,9 @@ TEMPLATE_CONTEXT_PROCESSORS = ( 'django.core.context_processors.tz', 'django.contrib.messages.context_processors.messages', 'django.core.context_processors.request', + 'util.context_processors.is_corp', + 'util.context_processors.corp_id', + 'util.context_processors.corp_name', 'util.context_processors.alliance_id', 'util.context_processors.alliance_name', 'util.context_processors.jabber_url', @@ -150,17 +154,27 @@ STATIC_URL = '/static/' ## ##################################################### +########################### +# ALLIANCE / CORP TOGGLE +########################### +# Specifies to run membership checks against corp or alliance +# Set to FALSE for alliance +# Set to TRUE for corp +########################### +IS_CORP = 'False' == os.environ.get('AA_IS_CORP', 'True') + + ################# # EMAIL SETTINGS ################# # DOMAIN - The alliance auth domain_url # EMAIL_HOST - SMTP Server URL # EMAIL_PORT - SMTP Server PORT -# EMAIL_HOST_USER - Email Username +# EMAIL_HOST_USER - Email Username (for gmail, the part before @gmail.com) # EMAIL_HOST_PASSWORD - Email Password # EMAIL_USE_TLS - Set to use TLS encryption ################# -DOMAIN = os.environ.get('AA_DOMAIN', 'https://the99eve.com') +DOMAIN = os.environ.get('AA_DOMAIN', 'https://yourdomain.com') EMAIL_HOST = os.environ.get('AA_EMAIL_HOST', 'smtp.gmail.com') EMAIL_PORT = int(os.environ.get('AA_EMAIL_PORT', '587')) EMAIL_HOST_USER = os.environ.get('AA_EMAIL_HOST_USER', '') @@ -170,54 +184,66 @@ EMAIL_USE_TLS = 'True' == os.environ.get('AA_EMAIL_USE_TLS', 'True') ######################### # Default Group Settings ######################### -# DEFAULT_ALLIANCE_GROUP - Default group alliance members are put in +# DEFAULT_AUTH_GROUP - Default group members are put in # DEFAULT_BLUE_GROUP - Default group for blue members ######################### -DEFAULT_ALLIANCE_GROUP = os.environ.get('AA_DEFAULT_ALLIANCE_GROUP', 'AllianceMember') -DEFAULT_BLUE_GROUP = os.environ.get('AA_DEFAULT_BLUE_GROUP', 'BlueMember') +DEFAULT_AUTH_GROUP = os.environ.get('AA_DEFAULT_ALLIANCE_GROUP', 'Member') +DEFAULT_BLUE_GROUP = os.environ.get('AA_DEFAULT_BLUE_GROUP', 'Blue') ######################### # Alliance Service Setup ######################### -# ENABLE_ALLIANCE_FORUM - Enable forum support in the auth for alliance members -# ENABLE_ALLIANCE_JABBER - Enable jabber support in the auth for alliance members -# ENABLE_ALLIANCE_MUMBLE - Enable mumble support in the auth for alliance members -# ENABLE_ALLIANCE_IPBOARD - Enable IPBoard forum support in the auth for alliance members +# ENABLE_AUTH_FORUM - Enable forum support in the auth for auth'd members +# ENABLE_AUTH_JABBER - Enable jabber support in the auth for auth'd members +# ENABLE_AUTH_MUMBLE - Enable mumble support in the auth for auth'd members +# ENABLE_AUTH_IPBOARD - Enable IPBoard forum support in the auth for auth'd members ######################### -ENABLE_ALLIANCE_FORUM = 'True' == os.environ.get('AA_ENABLE_ALLIANCE_FORUM', 'True') -ENABLE_ALLIANCE_JABBER = 'True' == os.environ.get('AA_ENABLE_ALLIANCE_JABBER', 'True') -ENABLE_ALLIANCE_MUMBLE = 'True' == os.environ.get('AA_ENABLE_ALLIANCE_MUMBLE', 'True') -ENABLE_ALLIANCE_IPBOARD = 'True' == os.environ.get('AA_ENABLE_ALLIANCE_IPBOARD', 'False') -ENABLE_ALLIANCE_TEAMSPEAK3 = 'True' == os.environ.get('AA_ENABLE_ALLIANCE_TEAMSPEAK3', 'False') +ENABLE_AUTH_FORUM = 'True' == os.environ.get('AA_ENABLE_AUTH_FORUM', 'True') +ENABLE_AUTH_JABBER = 'True' == os.environ.get('AA_ENABLE_AUTH_JABBER', 'True') +ENABLE_AUTH_MUMBLE = 'True' == os.environ.get('AA_ENABLE_AUTH_MUMBLE', 'True') +ENABLE_AUTH_IPBOARD = 'True' == os.environ.get('AA_ENABLE_AUTH_IPBOARD', 'False') +ENABLE_AUTH_TEAMSPEAK3 = 'True' == os.environ.get('AA_ENABLE_AUTH_TEAMSPEAK3', 'False') ##################### # Blue service Setup ##################### +# BLUE_STANDING - The default lowest standings setting to consider blue # ENABLE_BLUE_FORUM - Enable forum support in the auth for blues # ENABLE_BLUE_JABBER - Enable jabber support in the auth for blues # ENABLE_BLUE_MUMBLE - Enable mumble support in the auth for blues # ENABLE_BLUE_IPBOARD - Enable IPBoard forum support in the auth for blues ##################### +BLUE_STANDING = float(os.environ.get('AA_BLUE_STANDING', '5.0')) ENABLE_BLUE_FORUM = 'True' == os.environ.get('AA_ENABLE_BLUE_FORUM', 'False') ENABLE_BLUE_JABBER = 'True' == os.environ.get('AA_ENABLE_BLUE_JABBER', 'False') ENABLE_BLUE_MUMBLE = 'True' == os.environ.get('AA_ENABLE_BLUE_MUMBLE', 'True') ENABLE_BLUE_IPBOARD = 'True' == os.environ.get('AA_ENABLE_BLUE_IPBOARD', 'False') ENABLE_BLUE_TEAMSPEAK3 = 'True' == os.environ.get('AA_ENABLE_BLUE_TEAMSPEAK3', 'False') +######################### +# Corp Configuration +######################### +# If running in alliance mode, the following should be for the executor corp# +# CORP_ID - Set this to your corp ID (get this from https://zkillboard.com/corporation/#######) +# CORP_NAME - Set this to your Corporation Name +# CORP_API_ID - Set this to the api id for the corp API key +# CORP_API_VCODE - Set this to the api vcode for the corp API key +######################## +CORP_ID = os.environ.get('AA_CORP_ID', '') +CORP_NAME = os.environ.get('AA_CORP_NAME', '') +CORP_API_ID = os.environ.get('AA_CORP_API_ID', '') +CORP_API_VCODE = os.environ.get('AA_CORP_API_VCODE', '') + + ######################### # Alliance Configuration ######################### -# ALLIANCE_ID - Set this to your AllianceID +# ALLIANCE_ID - Set this to your Alliance ID (get this from https://zkillboard.com/alliance/#######) # ALLIANCE_NAME - Set this to your Alliance Name -# ALLIANCE_EXEC_CORP_ID - Set this to the api id for the exec corp -# ALLIANCE_EXEC_CORP_VCODE - Set this to the api vcode for the exe corp -# ALLIANCE_BLUE_STANDING - The default lowest standings setting to consider blue ######################## -ALLIANCE_ID = os.environ.get('AA_ALLIANCE_ID', '99001336') -ALLIANCE_NAME = os.environ.get('AA_ALLIANCE_NAME', 'Somealliance') -ALLIANCE_EXEC_CORP_ID = os.environ.get('AA_ALLIANCE_EXEC_CORP_ID', '') -ALLIANCE_EXEC_CORP_VCODE = os.environ.get('AA_ALLIANCE_EXEC_CORP_VCODE', '') -ALLIANCE_BLUE_STANDING = float(os.environ.get('AA_ALLIANCE_BLUE_STANDING', '5.0')) +ALLIANCE_ID = os.environ.get('AA_ALLIANCE_ID', '') +ALLIANCE_NAME = os.environ.get('AA_ALLIANCE_NAME', '') + ##################### # HR Configuration @@ -235,7 +261,7 @@ JACK_KNIFE_URL = os.environ.get('AA_JACK_KNIFE_URL', 'http://ridetheclown.com/ev # IPBOARD_APIKEY - Api key to interact with ipboard # IPBOARD_APIMODULE - Module for alliance auth *leave alone* ##################### -FORUM_URL = os.environ.get('AA_FORUM_URL', "http://someaddress.com") +FORUM_URL = os.environ.get('AA_FORUM_URL', "http://someurl.com") IPBOARD_ENDPOINT = os.environ.get('AA_IPBOARD_ENDPOINT', 'someaddress.com/interface/board/index.php') IPBOARD_APIKEY = os.environ.get('AA_IPBOARD_APIKEY', 'somekeyhere') IPBOARD_APIMODULE = 'aa' @@ -246,15 +272,16 @@ IPBOARD_APIMODULE = 'aa' # JABBER_URL - Jabber address url # JABBER_PORT - Jabber service portal # JABBER_SERVER - Jabber server url -# OPENFIRE_ADDRESS - Address of the openfire admin console -# OPENFIRE_SECRET_KEY - Openfire userservice secret key +# OPENFIRE_ADDRESS - Address of the openfire admin console including port +# Please use http with 9090 or https with 9091 +# OPENFIRE_SECRET_KEY - Openfire REST API secret key # BROADCAST_USER - Broadcast user JID # BROADCAST_USER_PASSWORD - Broadcast user password ###################### -JABBER_URL = os.environ.get('AA_JABBER_URL', "someaddress.com") +JABBER_URL = os.environ.get('AA_JABBER_URL', "someurl.com") JABBER_PORT = int(os.environ.get('AA_JABBER_PORT', '5223')) -JABBER_SERVER = os.environ.get('AA_JABBER_SERVER', "someadddress.com") -OPENFIRE_ADDRESS = os.environ.get('AA_OPENFIRE_ADDRESS', "http://someaddress.com:9090/") +JABBER_SERVER = os.environ.get('AA_JABBER_SERVER', "someurl.com") +OPENFIRE_ADDRESS = os.environ.get('AA_OPENFIRE_ADDRESS', "http://someurl.com:9090") OPENFIRE_SECRET_KEY = os.environ.get('AA_OPENFIRE_SECRET_KEY', "somekey") BROADCAST_USER = os.environ.get('AA_BROADCAST_USER', "broadcast@") + JABBER_URL BROADCAST_USER_PASSWORD = os.environ.get('AA_BROADCAST_USER_PASSWORD', "somepassword") diff --git a/celerytask/tasks.py b/celerytask/tasks.py index 50b3660c..edfb5449 100755 --- a/celerytask/tasks.py +++ b/celerytask/tasks.py @@ -13,7 +13,32 @@ from authentication.models import AuthServicesInfo from eveonline.managers import EveManager from services.managers.eve_api_manager import EveApiManager from util.common_task import deactivate_services +from util import add_member_permission +from util import remove_member_permission +from util import check_if_user_has_permission +from util.common_task import add_user_to_group +from util.common_task import remove_user_from_group +from util.common_task import generate_corp_group_name +from eveonline.models import EveCharacter +from eveonline.models import EveCorporationInfo +from authentication.managers import AuthServicesInfoManager +def generate_corp_group_name(corpname): + return 'Corp_' + corpname.replace(' ', '_') + +def disable_alliance_member(user, char_id): + remove_member_permission(user, 'member') + remove_user_from_group(user, settings.DEFAULT_AUTH_GROUP) + remove_user_from_group(user, + generate_corp_group_name( + EveManager.get_character_by_id(char_id).corporation_name)) + deactivate_services(user) + +def disable_blue_member(user): + remove_member_permission(user, 'blue_member') + remove_user_from_group(user, settings.DEFAULT_BLUE_GROUP) + deactivate_services(user) + AuthServicesInfoManager.update_is_blue(False, user) def update_jabber_groups(user): syncgroups = SyncGroupCache.objects.filter(user=user) @@ -188,6 +213,8 @@ def run_api_refresh(): print 'Running update on user: ' + user.username if authserviceinfo.main_char_id: if authserviceinfo.main_char_id != "": + #preserve old corp ID for corp change test on members + oldcorp_id = EveCharacter.objects.get(character_id=authserviceinfo.main_char_id).corporation_id for api_key_pair in api_key_pairs: print 'Running on ' + api_key_pair.api_id + ':' + api_key_pair.api_key if EveApiManager.api_key_is_valid(api_key_pair.api_id, api_key_pair.api_key): @@ -204,49 +231,110 @@ def run_api_refresh(): # Check our main character character = EveManager.get_character_by_id(authserviceinfo.main_char_id) corp = EveManager.get_corporation_info_by_id(character.corporation_id) + main_corp_id = EveManager.get_charater_corporation_id_by_id(authserviceinfo.main_char_id) main_alliance_id = EveManager.get_charater_alliance_id_by_id(authserviceinfo.main_char_id) - if main_alliance_id == settings.ALLIANCE_ID: - pass + if (settings.IS_CORP and main_corp_id == settings.CORP_ID) or (not settings.IS_CORP and main_alliance_id == settings.ALLIANCE_ID): + if not check_if_user_has_permission(user, "member"): + #transition from none or blue to member + if check_if_user_has_permission(user, "blue_member"): + #strip blue status + remove_member_permission(user, "blue_member") + remove_user_from_group(user, settings.DEFAULT_BLUE_GROUP) + AuthServicesInfoManager.update_is_blue(False, user) + #add to auth group + add_member_permission(user, "member") + add_user_to_group(user, settings.DEFAULT_AUTH_GROUP) + #add to required corp group + add_user_to_group(user, generate_corp_group_name(character.corporation_name)) + elif corp.corporation_id != oldcorp_id: + #changed corps, both corps auth'd, need to change group assignment + oldcorp = EveCorporationInfo.objects.get(corporation_id=oldcorp_id) + remove_user_from_group(user, generate_corp_group_name(oldcorp.corporation_name)) + add_user_to_group(user, generate_corp_group_name(character.corporation_name)) + #reset services to force new mumble names and group assignments + deactivate_services(user) elif corp is not None: if corp.is_blue is not True: + if check_if_user_has_permission(user, "member"): + #transition from member to nobody + disable_alliance_member(user, authserviceinfo.main_char_id) + elif check_if_user_has_permission(user, "blue_member"): + #transition from blue to nobody + disable_blue_member(user) + else: + #stay nobody, make sure no services + deactivate_services(user) + else: + if check_if_user_has_permission(user, "member"): + #remove auth member to prepare for member to blue transition + disable_alliance_member(user, authserviceinfo.main_char_id) + if not check_if_user_has_permission(user, "blue_member"): + #perform nobody to blue transition + add_member_permission(user, "blue_member") + add_user_to_group(user, settings.DEFAULT_BLUE_GROUP) + AuthServicesInfoManager.update_is_blue(True, user) + + else: + # disable accounts with missing corp model (not blue or member) + if check_if_user_has_permission(user, "member"): + disable_alliance_member(user, authserviceinfo.main_char_id) + elif check_if_user_has_permission(user, "blue_member"): + disable_blue_member(user) + else: deactivate_services(user) + + else: + # disable accounts with invalid keys + if check_if_user_has_permission(user, "member"): + disable_alliance_member(user, authserviceinfo.main_char_id) + elif check_if_user_has_permission(user, "blue_member"): + disable_blue_member(user) else: deactivate_services(user) - else: - # nuke it - deactivate_services(user) + else: print 'No main_char_id set' # Run Every 2 hours @periodic_task(run_every=crontab(minute=0, hour="*/2")) -def run_alliance_corp_update(): +def run_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'], False) - - alliance = EveManager.get_alliance_info_by_id(settings.ALLIANCE_ID) - - # Create the corps in the alliance - for alliance_corp in alliance_info['member_corps']: - corpinfo = EveApiManager.get_corporation_information(alliance_corp) + if settings.IS_CORP: + # Create the corp + corpinfo = EveApiManager.get_corporation_information(settings.CORP_ID) if not EveManager.check_if_corporation_exists_by_id(corpinfo['id']): EveManager.create_corporation_info(corpinfo['id'], corpinfo['name'], corpinfo['ticker'], - corpinfo['members']['current'], False, alliance) + corpinfo['members']['current'], False, None) + else: + # 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'], False) + alliance = EveManager.get_alliance_info_by_id(settings.ALLIANCE_ID) + # Create the corps in the alliance + for alliance_corp in alliance_info['member_corps']: + 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'], False, alliance) + + #determine what level of standings to check + #refer to https://github.com/eve-val/evelink/blob/master/evelink/parsing/contact_list.py#L43 + standing_level = 'alliance' + if settings.IS_CORP: + standing_level = 'corp' # 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: + corp_standings = EveApiManager.get_corp_standings() + if corp_standings: + for standing_id in EveApiManager.get_corp_standings()[standing_level]: + if int(corp_standings[standing_level][standing_id]['standing']) >= settings.BLUE_STANDING: if EveApiManager.check_if_id_is_character(standing_id): pass elif EveApiManager.check_if_id_is_corp(standing_id): @@ -276,22 +364,16 @@ def run_alliance_corp_update(): # 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: + if (not settings.IS_CORP and 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: - if 'alliance' in alliance_standings: - if int(all_alliance_info.alliance_id) in alliance_standings['alliance']: - 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) - + elif standing_level in corp_standings: + if int(all_alliance_info.alliance_id) in corp_standings[standing_level]: + if int(corp_standings[standing_level][int(all_alliance_info.alliance_id)][ + 'standing']) >= settings.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'], @@ -300,6 +382,10 @@ def run_alliance_corp_update(): EveManager.update_alliance_info(all_alliance_api_info['id'], all_alliance_api_info['executor_id'], all_alliance_api_info['member_count'], False) + 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(): @@ -310,46 +396,42 @@ def run_alliance_corp_update(): if alliance is not None and all_corp_info.alliance is not None: - if 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) - 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) + elif int(alliance.alliance_id) in corp_standings[standing_level]: + if int(corp_standings[standing_level][int(alliance.alliance_id)][ + 'standing']) >= settings.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: + if int(all_corp_info.corporation_id) in corp_standings[standing_level]: + if int(corp_standings[standing_level][int(all_corp_info.corporation_id)][ + 'standing']) >= settings.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 + # Remove irrelevent corp and alliance models # 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 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 (settings.IS_CORP and all_corp_info.corporation_id != settings.CORP_ID) or (not settings.IS_CORP and all_corp_info.alliance_id != settings.ALLIANCE_ID): 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 settings.IS_CORP and all_alliance_info.alliance_id != settings.ALLIANCE_ID): if all_alliance_info.is_blue is not True: all_alliance_info.delete() + if all_alliance_info.is_blue is not True: + all_alliance_info.delete() diff --git a/eveonline/forms.py b/eveonline/forms.py index 44b1138e..a4a9a43d 100644 --- a/eveonline/forms.py +++ b/eveonline/forms.py @@ -7,7 +7,7 @@ from eveonline.managers import EveManager class UpdateKeyForm(forms.Form): api_id = forms.CharField(max_length=254, required=True, label="Key ID") api_key = forms.CharField(max_length=254, required=True, label="Verification Code") - is_blue = forms.BooleanField(label="Blue to alliance", required=False) + is_blue = forms.BooleanField(label="Blue to corp/alliance", required=False) def clean(self): if EveManager.check_if_api_key_pair_exist(self.cleaned_data['api_id']): @@ -28,4 +28,4 @@ class UpdateKeyForm(forms.Form): self.cleaned_data['api_key']): raise forms.ValidationError(u'API supplied is not a full api key') - return self.cleaned_data \ No newline at end of file + return self.cleaned_data diff --git a/eveonline/managers.py b/eveonline/managers.py index 270ee7d5..b604b1c5 100644 --- a/eveonline/managers.py +++ b/eveonline/managers.py @@ -205,4 +205,9 @@ class EveManager: @staticmethod def get_all_alliance_info(): - return EveAllianceInfo.objects.all() \ No newline at end of file + return EveAllianceInfo.objects.all() + + @staticmethod + def get_charater_corporation_id_by_id(char_id): + if EveCharacter.objects.filter(character_id=char_id).exists(): + return EveCharacter.objects.get(character_id=char_id).corporation_id diff --git a/eveonline/views.py b/eveonline/views.py index 008c68dc..d5b4ab58 100755 --- a/eveonline/views.py +++ b/eveonline/views.py @@ -22,9 +22,9 @@ from eveonline.models import EveApiKeyPair from authentication.models import AuthServicesInfo -def disable_alliance_member(user, char_id): - remove_member_permission(user, 'alliance_member') - remove_user_from_group(user, settings.DEFAULT_ALLIANCE_GROUP) +def disable_member(user, char_id): + remove_member_permission(user, 'member') + remove_user_from_group(user, settings.DEFAULT_AUTH_GROUP) remove_user_from_group(user, generate_corp_group_name( EveManager.get_character_by_id(char_id).corporation_name)) @@ -80,7 +80,7 @@ def api_key_removal(request, api_id): if authinfo.is_blue: disable_blue_member(request.user) else: - disable_alliance_member(request.user, authinfo.main_char_id) + disable_member(request.user, authinfo.main_char_id) EveManager.delete_api_key_pair(api_id, request.user.id) EveManager.delete_characters_by_api_id(api_id, request.user.id) @@ -104,9 +104,9 @@ def main_character_change(request, char_id): character_info = EveManager.get_character_by_id(char_id) corporation_info = EveManager.get_corporation_info_by_id(character_info.corporation_id) - if EveManager.get_charater_alliance_id_by_id(char_id) == settings.ALLIANCE_ID: - add_member_permission(request.user, 'alliance_member') - add_user_to_group(request.user, settings.DEFAULT_ALLIANCE_GROUP) + if (settings.IS_CORP and EveManager.get_charater_corporation_id_by_id(char_id) == settings.CORP_ID) or (not settings.IS_CORP and EveManager.get_charater_alliance_id_by_id(char_id) == settings.ALLIANCE_ID): + add_member_permission(request.user, 'member') + add_user_to_group(request.user, settings.DEFAULT_AUTH_GROUP) add_user_to_group(request.user, generate_corp_group_name(EveManager.get_character_by_id(char_id).corporation_name)) @@ -116,15 +116,15 @@ def main_character_change(request, char_id): add_user_to_group(request.user, settings.DEFAULT_BLUE_GROUP) AuthServicesInfoManager.update_is_blue(True, request.user) else: - if check_if_user_has_permission(request.user, 'alliance_member'): - disable_alliance_member(request.user, previousmainid) + if check_if_user_has_permission(request.user, 'member'): + disable_member(request.user, previousmainid) if check_if_user_has_permission(request.user, 'blue_member'): disable_blue_member(request.user) else: # TODO: disable serivces - if check_if_user_has_permission(request.user, 'alliance_member'): - disable_alliance_member(request.user, previousmainid) + if check_if_user_has_permission(request.user, 'member'): + disable_member(request.user, previousmainid) if check_if_user_has_permission(request.user, 'blue_member'): disable_blue_member(request.user) diff --git a/groupmanagement/views.py b/groupmanagement/views.py index 473c1493..e817dbb6 100755 --- a/groupmanagement/views.py +++ b/groupmanagement/views.py @@ -96,7 +96,7 @@ def groups_view(request): # Check if group is a corp if "Corp_" in group.name: pass - elif settings.DEFAULT_ALLIANCE_GROUP in group.name: + elif settings.DEFAULT_AUTH_GROUP in group.name: pass elif settings.DEFAULT_BLUE_GROUP in group.name: pass @@ -146,4 +146,4 @@ def group_request_leave(request, group_id): grouprequest.leave_request = True grouprequest.save() - return HttpResponseRedirect("/groups") \ No newline at end of file + return HttpResponseRedirect("/groups") diff --git a/hrapplications/forms.py b/hrapplications/forms.py index 8fa9671a..7d1ad0e7 100755 --- a/hrapplications/forms.py +++ b/hrapplications/forms.py @@ -3,13 +3,17 @@ from django.conf import settings from eveonline.models import EveCorporationInfo - class HRApplicationForm(forms.Form): allchoices = [] - for corp in EveCorporationInfo.objects.all(): - if corp.alliance is not None: - if corp.alliance.alliance_id == settings.ALLIANCE_ID: - allchoices.append((str(corp.corporation_id), str(corp.corporation_name))) + + if settings.IS_CORP: + corp = EveCorporationInfo.objects.get(corporation_id=settings.CORP_ID) + allchoices.append((str(corp.corporation_id), str(corp.corporation_name))) + else: + for corp in EveCorporationInfo.objects.all(): + if corp.alliance is not None: + if corp.alliance.alliance_id == settings.ALLIANCE_ID: + allchoices.append((str(corp.corporation_id), str(corp.corporation_name))) character_name = forms.CharField(max_length=254, required=True, label="Main Character Name") full_api_id = forms.CharField(max_length=254, required=True, label="API ID") @@ -26,4 +30,4 @@ class HRApplicationCommentForm(forms.Form): class HRApplicationSearchForm(forms.Form): - search_string = forms.CharField(max_length=254, required=True, label="Search String") \ No newline at end of file + search_string = forms.CharField(max_length=254, required=True, label="Search String") diff --git a/hrapplications/models.py b/hrapplications/models.py index 68fd06b4..3e6bd0ed 100755 --- a/hrapplications/models.py +++ b/hrapplications/models.py @@ -1,8 +1,8 @@ from django.db import models from django.contrib.auth.models import User -from eveonline.models import EveCorporationInfo from eveonline.models import EveCharacter +from eveonline.models import EveCorporationInfo class HRApplication(models.Model): @@ -33,4 +33,4 @@ class HRApplicationComment(models.Model): commenter_character = models.ForeignKey(EveCharacter) def __str__(self): - return str(self.application.character_name) + " - Comment" \ No newline at end of file + return str(self.application.character_name) + " - Comment" diff --git a/hrapplications/views.py b/hrapplications/views.py index 02bfc0bb..4954b107 100755 --- a/hrapplications/views.py +++ b/hrapplications/views.py @@ -28,11 +28,11 @@ def hr_application_management_view(request): # Get the corp the member is in auth_info = AuthServicesInfo.objects.get(user=request.user) if auth_info.main_char_id != "": - main_alliance_id = EveManager.get_charater_alliance_id_by_id(auth_info.main_char_id) - if main_alliance_id == settings.ALLIANCE_ID: + main_corp_id = EveManager.get_charater_corporation_id_by_id(auth_info.main_char_id) + if main_corp_id == settings.CORP_ID: main_char = EveCharacter.objects.get(character_id=auth_info.main_char_id) corp = EveCorporationInfo.objects.get(corporation_id=main_char.corporation_id) - corp_applications = HRApplication.objects.filter(corp=corp).filter(approved_denied=None) + corp_applications = HRApplication.objects.filter(approved_denied=None) else: corp_applications = None diff --git a/run_alliance_corp_update.py b/run_alliance_corp_update.py index c41709f2..05b31ecc 100644 --- a/run_alliance_corp_update.py +++ b/run_alliance_corp_update.py @@ -1,6 +1,6 @@ from util import bootstrap_permissions -from celerytask.tasks import run_alliance_corp_update +from celerytask.tasks import run_corp_update bootstrap_permissions() -run_alliance_corp_update() +run_corp_update() quit() diff --git a/services/managers/eve_api_manager.py b/services/managers/eve_api_manager.py index 5a77aaec..bcba1e38 100644 --- a/services/managers/eve_api_manager.py +++ b/services/managers/eve_api_manager.py @@ -140,10 +140,10 @@ class EveApiManager(): return False @staticmethod - def get_alliance_standings(): - if settings.ALLIANCE_EXEC_CORP_ID != "": + def get_corp_standings(): + if settings.CORP_API_ID != "": try: - api = evelink.api.API(api_key=(settings.ALLIANCE_EXEC_CORP_ID, settings.ALLIANCE_EXEC_CORP_VCODE)) + api = evelink.api.API(api_key=(settings.CORP_API_ID, settings.CORP_API_VCODE)) corp = evelink.corp.Corp(api=api) corpinfo = corp.contacts() results = corpinfo[0] @@ -178,4 +178,4 @@ class EveApiManager(): except evelink.api.APIError as error: return False - return False \ No newline at end of file + return False diff --git a/services/managers/teamspeak3_manager.py b/services/managers/teamspeak3_manager.py index a8c2c65d..43632d65 100755 --- a/services/managers/teamspeak3_manager.py +++ b/services/managers/teamspeak3_manager.py @@ -127,7 +127,7 @@ class Teamspeak3Manager: server_groups = Teamspeak3Manager._group_list() - if not settings.DEFAULT_ALLIANCE_GROUP in server_groups: + if not settings.DEFAULT_AUTH_GROUP in server_groups: Teamspeak3Manager._create_group(settings.DEFAULT_ALLIANCE_GROUP) alliance_group_id = Teamspeak3Manager._group_id_by_name(settings.DEFAULT_ALLIANCE_GROUP) diff --git a/services/views.py b/services/views.py index a48fca9a..7b09d8c6 100755 --- a/services/views.py +++ b/services/views.py @@ -91,7 +91,7 @@ def services_view(request): def service_blue_alliance_test(user): - return check_if_user_has_permission(user, 'alliance_member') or check_if_user_has_permission(user, 'blue_member') + return check_if_user_has_permission(user, 'member') or check_if_user_has_permission(user, 'blue_member') @login_required diff --git a/srp/views.py b/srp/views.py index 61a160be..2ae7061e 100755 --- a/srp/views.py +++ b/srp/views.py @@ -18,7 +18,7 @@ from form import SrpFleetMainUpdateForm def srp_util_test(user): - return check_if_user_has_permission(user, 'alliance_member') or check_if_user_has_permission(user, 'blue_member') + return check_if_user_has_permission(user, 'member') or check_if_user_has_permission(user, 'blue_member') @login_required @@ -273,4 +273,4 @@ def srp_fleet_edit_view(request, fleet_id): render_items = {'form': form, "no_fleet_id": no_fleet_id} return render_to_response('registered/srpfleetupdate.html', render_items, - context_instance=RequestContext(request)) \ No newline at end of file + context_instance=RequestContext(request)) diff --git a/templates/public/base.html b/templates/public/base.html index 55a6fc3c..5e71db27 100755 --- a/templates/public/base.html +++ b/templates/public/base.html @@ -36,7 +36,7 @@ @@ -76,7 +76,7 @@ class="fa fa-users fa-fw grayiconecolor"> Characters - {% if perms.auth.alliance_member %} + {% if perms.auth.member %}
  • Aux Navigation
  • - {% if perms.auth.alliance_member or perms.auth.blue_member %} + {% if perms.auth.member or perms.auth.blue_member %}
  • {% endif %} - {% if not perms.auth.alliance_member and not perms.auth.blue_member or perms.auth.human_resources %} + {% if not perms.auth.member and not perms.auth.blue_member or perms.auth.human_resources %}
  • {% endif %} - {% if perms.auth.alliance_member or perms.auth.blue_member %} + {% if perms.auth.member or perms.auth.blue_member %}
  • Change Password
  • - {% if perms.auth.alliance_member or perms.auth.blue_member %} + {% if perms.auth.member or perms.auth.blue_member %}
  • - - {{ ALLIANCE_NAME }} - Login - + {% if IS_CORP %} + {{ CORP_NAME }} - Login + {% else %} + {{ ALLIANCE_NAME }} - Login + {% endif %} + diff --git a/templates/public/register.html b/templates/public/register.html index e3de6049..e61547ad 100644 --- a/templates/public/register.html +++ b/templates/public/register.html @@ -10,7 +10,11 @@ - {{ ALLIANCE_NAME }} - Login + {% if IS_CORP %} + {{ CORP_NAME }} - Login + {% else %} + {{ ALLIANCE_NAME }} - Login + {% endif %} diff --git a/templates/registered/addapikey.html b/templates/registered/addapikey.html index 8661466d..1f802162 100644 --- a/templates/registered/addapikey.html +++ b/templates/registered/addapikey.html @@ -23,12 +23,19 @@ href="https://community.eveonline.com/support/api-key/CreatePredefined?accessMask=268435455">Create a full API key

    - -

    - NOTE: If you are part of the alliance do not check "Blue" this is for people who are blue to the - alliance - but are not in it. Blue access is limited. -

    + {% if IS_CORP %} +

    + NOTE: If you are part of the corp do not check "Blue", this is for people who are blue to the + corp + but are not in it. Blue access is limited. +

    + {% else %} +

    + NOTE: If you are part of the alliance do not check "Blue", this is for people who are blue to the + alliance + but are not in it. Blue access is limited. +

    + {% endif %}

    Do not change the accessmask or deselect options or it will not work

    diff --git a/templates/registered/corpstats.html b/templates/registered/corpstats.html index 65a7f037..050dc2ee 100755 --- a/templates/registered/corpstats.html +++ b/templates/registered/corpstats.html @@ -6,7 +6,7 @@

    Corporation Stats

    - {% if perms.auth.alliance_member %} + {% if perms.auth.member %}
    @@ -67,7 +67,11 @@
    {% else %} -

    Not part of the alliance

    + {% if IS_CORP %} + + {% else %} + + {% endif %} {% endif %}
    {% endblock content %} diff --git a/templates/registered/dashboard.html b/templates/registered/dashboard.html index 2bce23f5..8cc27ea5 100644 --- a/templates/registered/dashboard.html +++ b/templates/registered/dashboard.html @@ -1,12 +1,12 @@ {% extends "public/base.html" %} {% block title %}Alliance Auth{% endblock %} -{% block page_title %}Something something here{% endblock page_title %} +{% block page_title %}Dashboard{% endblock page_title %} {% block content %}

    Dashboard

    - {% if perms.auth.alliance_member %} + {% if perms.auth.member %}
    @@ -59,7 +59,11 @@
    {% else %} -

    Not part of the alliance

    + {% if IS_CORP %} +

    Not part of the corporation.

    + {% else %} +

    Not part of the alliance.

    + {% endif %} {% endif %} {% endblock content %} diff --git a/templates/registered/fleetfits.html b/templates/registered/fleetfits.html new file mode 100644 index 00000000..47b59748 --- /dev/null +++ b/templates/registered/fleetfits.html @@ -0,0 +1,19 @@ +{% extends "public/base.html" %} +{% load bootstrap %} +{% load staticfiles %} + +{% block title %}Alliance Auth{% endblock %} + +{% block page_title %}Alliance Fleet Doctrines{% endblock page_title %} +{% block extra_css %}{% endblock extra_css %} + +{% block content %} + +Main bash/defense doctrine (SHIELD)
    +Vexor Navy Issue
    +Ishtar
    +Scimitar
    +Scythe
    +
    +Ship DNA can be exported by different tools I recommend using fleetup.com OR https://www.fuzzwork.co.uk/ships/dnagen.php to get the Ship DNA +{% endblock content %} diff --git a/templates/registered/groups.html b/templates/registered/groups.html index 9cb52c8a..49ebe67a 100644 --- a/templates/registered/groups.html +++ b/templates/registered/groups.html @@ -9,7 +9,7 @@ {% block content %}

    Available Groups

    - {% if perms.auth.alliance_member %} + {% if perms.auth.member %} @@ -52,7 +52,11 @@ {% endfor %}
    GroupID
    {% else %} - + {% if IS_CORP %} + + {% else %} + + {% endif %} {% endif %}
    diff --git a/templates/registered/hrapplicationmanagement.html b/templates/registered/hrapplicationmanagement.html index 4c7584c1..189e8fe6 100755 --- a/templates/registered/hrapplicationmanagement.html +++ b/templates/registered/hrapplicationmanagement.html @@ -9,7 +9,7 @@ {% block content %}
    - {% if not perms.auth.alliance_member %} + {% if not perms.auth.member %}

    Personal Applications diff --git a/templates/registration/password_reset_complete.html b/templates/registration/password_reset_complete.html index 07578cd8..0f904ed8 100644 --- a/templates/registration/password_reset_complete.html +++ b/templates/registration/password_reset_complete.html @@ -12,7 +12,11 @@ - {{ ALLIANCE_NAME }} - Login + {% if IS_CORP %} + {{ CORP_NAME }} - Login + {% else %} + {{ ALLIANCE_NAME }} - Login + {% endif %} diff --git a/templates/registration/password_reset_confirm.html b/templates/registration/password_reset_confirm.html index eb6ca827..14c81116 100644 --- a/templates/registration/password_reset_confirm.html +++ b/templates/registration/password_reset_confirm.html @@ -12,8 +12,11 @@ - {{ ALLIANCE_NAME }} - Login - + {% if IS_CORP %} + {{ CORP_NAME }} - Login + {% else %} + {{ ALLIANCE_NAME }} - Login + {% endif %} diff --git a/templates/registration/password_reset_done.html b/templates/registration/password_reset_done.html index d8ab12ae..cb872305 100644 --- a/templates/registration/password_reset_done.html +++ b/templates/registration/password_reset_done.html @@ -12,7 +12,7 @@ - {{ ALLIANCE_NAME }} - Login + {{ CORP_NAME }} - Login diff --git a/templates/registration/password_reset_email.html b/templates/registration/password_reset_email.html index ddbf50ef..63d42122 100644 --- a/templates/registration/password_reset_email.html +++ b/templates/registration/password_reset_email.html @@ -4,12 +4,12 @@ {% trans "Please go to the following page and choose a new password:" %} {% block reset_link %} - https://the99eve.com{% url 'password_reset_confirm' uidb64=uid token=token %} + https://someurl.com{% url 'password_reset_confirm' uidb64=uid token=token %} {% endblock %} {% trans "Your username, in case you've forgotten:" %} {{ user.get_username }} {% trans "Thanks for using our site!" %} - {% blocktrans %}The The 99 Percent team{% endblocktrans %} + {% blocktrans %}Your Corporation{% endblocktrans %} {% endautoescape %} diff --git a/templates/registration/password_reset_form.html b/templates/registration/password_reset_form.html index cfcc7e03..4470f79d 100644 --- a/templates/registration/password_reset_form.html +++ b/templates/registration/password_reset_form.html @@ -12,7 +12,11 @@ - {{ ALLIANCE_NAME }} - Login + {% if IS_CORP %} + {{ CORP_NAME }} - Login + {% else %} + {{ ALLIANCE_NAME }} - Login + {% endif %} diff --git a/timerboard/views.py b/timerboard/views.py index 8f9a44ee..013c8352 100755 --- a/timerboard/views.py +++ b/timerboard/views.py @@ -15,7 +15,7 @@ from models import Timer def timer_util_test(user): - return check_if_user_has_permission(user, 'alliance_member') or check_if_user_has_permission(user, 'blue_member') + return check_if_user_has_permission(user, 'member') or check_if_user_has_permission(user, 'blue_member') @login_required @@ -74,4 +74,4 @@ def remove_timer(request, timer_id): if Timer.objects.filter(id=timer_id).exists(): timer = Timer.objects.get(id=timer_id) timer.delete() - return HttpResponseRedirect("/timers/") \ No newline at end of file + return HttpResponseRedirect("/timers/") diff --git a/util/__init__.py b/util/__init__.py index c896973a..99a8cbbc 100755 --- a/util/__init__.py +++ b/util/__init__.py @@ -9,7 +9,7 @@ from django.conf import settings def bootstrap_permissions(): ct = ContentType.objects.get_for_model(User) - Permission.objects.get_or_create(codename="alliance_member", content_type=ct, name="alliance_member") + Permission.objects.get_or_create(codename="member", content_type=ct, name="member") Permission.objects.get_or_create(codename="group_management", content_type=ct, name="group_management") Permission.objects.get_or_create(codename="jabber_broadcast", content_type=ct, name="jabber_broadcast") Permission.objects.get_or_create(codename="human_resources", content_type=ct, name="human_resources") @@ -17,7 +17,7 @@ def bootstrap_permissions(): Permission.objects.get_or_create(codename="corp_stats", content_type=ct, name="corp_stats") Permission.objects.get_or_create(codename="timer_management", content_type=ct, name="timer_management") Permission.objects.get_or_create(codename="srp_management", content_type=ct, name="srp_management") - Group.objects.get_or_create(name=settings.DEFAULT_ALLIANCE_GROUP) + Group.objects.get_or_create(name=settings.DEFAULT_AUTH_GROUP) Group.objects.get_or_create(name=settings.DEFAULT_BLUE_GROUP) @@ -54,4 +54,4 @@ def random_string(string_length=10): random = str(uuid.uuid4()) # Convert UUID format to a Python string. random = random.upper() # Make all characters uppercase. random = random.replace("-", "") # Remove the UUID '-'. - return random[0:string_length] # Return the random string. \ No newline at end of file + return random[0:string_length] # Return the random string. diff --git a/util/context_processors.py b/util/context_processors.py index c3b1689e..1e188065 100755 --- a/util/context_processors.py +++ b/util/context_processors.py @@ -2,13 +2,20 @@ from django.conf import settings from django.utils import timezone +def is_corp(request): + return {'IS_CORP': settings.IS_CORP} + +def corp_id(request): + return {'CORP_ID': settings.CORP_ID} + +def corp_name(request): + return {'CORP_NAME': settings.CORP_NAME} + def alliance_id(request): return {'ALLIANCE_ID': settings.ALLIANCE_ID} - def alliance_name(request): - return {'ALLIANCE_NAME': settings.ALLIANCE_NAME} - + return {'ALLIANCE_NAME': settings.CORP_NAME} def jabber_url(request): return {'JABBER_URL': settings.JABBER_URL} @@ -17,11 +24,11 @@ def jabber_url(request): def domain_url(request): return {'DOMAIN': settings.DOMAIN, 'MUMBLE_URL': settings.MUMBLE_URL, 'FORUM_URL': settings.FORUM_URL, - 'ENABLE_ALLIANCE_FORUM': settings.ENABLE_ALLIANCE_FORUM, - 'ENABLE_ALLIANCE_JABBER': settings.ENABLE_ALLIANCE_JABBER, - 'ENABLE_ALLIANCE_MUMBLE': settings.ENABLE_ALLIANCE_MUMBLE, - 'ENABLE_ALLIANCE_IPBOARD': settings.ENABLE_ALLIANCE_IPBOARD, - 'ENABLE_ALLIANCE_TEAMSPEAK3': settings.ENABLE_ALLIANCE_TEAMSPEAK3, + 'ENABLE_AUTH_FORUM': settings.ENABLE_AUTH_FORUM, + 'ENABLE_AUTH_JABBER': settings.ENABLE_AUTH_JABBER, + 'ENABLE_AUTH_MUMBLE': settings.ENABLE_AUTH_MUMBLE, + 'ENABLE_AUTH_IPBOARD': settings.ENABLE_AUTH_IPBOARD, + 'ENABLE_AUTH_TEAMSPEAK3': settings.ENABLE_AUTH_TEAMSPEAK3, 'ENABLE_BLUE_JABBER': settings.ENABLE_BLUE_JABBER, 'ENABLE_BLUE_FORUM': settings.ENABLE_BLUE_FORUM, 'ENABLE_BLUE_MUMBLE': settings.ENABLE_BLUE_MUMBLE, @@ -29,4 +36,4 @@ def domain_url(request): 'ENABLE_BLUE_TEAMSPEAK3': settings.ENABLE_BLUE_TEAMSPEAK3, 'TEAMSPEAK3_PUBLIC_URL': settings.TEAMSPEAK3_PUBLIC_URL, 'JACK_KNIFE_URL': settings.JACK_KNIFE_URL, - 'CURRENT_UTC_TIME': timezone.now()} \ No newline at end of file + 'CURRENT_UTC_TIME': timezone.now()}