From e98bc36a9cd61a49f61c224d421e2101408500ef Mon Sep 17 00:00:00 2001 From: Adarnof Date: Thu, 17 Sep 2015 04:42:36 +0000 Subject: [PATCH 01/26] Removed all dependency on alliance membership Renamed permission 'alliance_member' 'member' Renamed multiple variables in settings.py and associated handlers in util Maybe it still works? --- celerytask/tasks.py | 101 +++++++----------- eveonline/managers.py | 7 +- eveonline/views.py | 22 ++-- groupmanagement/views.py | 4 +- hrapplications/forms.py | 12 +-- hrapplications/models.py | 4 +- hrapplications/views.py | 7 +- run_alliance_corp_update.py | 4 +- services/managers/eve_api_manager.py | 8 +- services/managers/teamspeak3_manager.py | 2 +- services/views.py | 2 +- srp/views.py | 4 +- templates/public/base.html | 12 +-- templates/public/login.html | 2 +- templates/public/register.html | 2 +- templates/registered/corpstats.html | 4 +- templates/registered/dashboard.html | 4 +- templates/registered/groups.html | 4 +- .../registered/hrapplicationmanagement.html | 2 +- templates/registered/services.html | 14 +-- .../registration/password_reset_complete.html | 2 +- .../registration/password_reset_confirm.html | 2 +- .../registration/password_reset_done.html | 2 +- .../registration/password_reset_email.html | 4 +- .../registration/password_reset_form.html | 2 +- timerboard/views.py | 4 +- util/__init__.py | 6 +- util/context_processors.py | 20 ++-- 28 files changed, 115 insertions(+), 148 deletions(-) diff --git a/celerytask/tasks.py b/celerytask/tasks.py index 50b3660c..9f1bde7f 100755 --- a/celerytask/tasks.py +++ b/celerytask/tasks.py @@ -204,8 +204,8 @@ 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_alliance_id = EveManager.get_charater_alliance_id_by_id(authserviceinfo.main_char_id) - if main_alliance_id == settings.ALLIANCE_ID: + main_corp_id = EveManager.get_charater_corporation_id_by_id(authserviceinfo.main_char_id) + if main_corp_id == settings.CORP_ID: pass elif corp is not None: if corp.is_blue is not True: @@ -221,32 +221,21 @@ def run_api_refresh(): # 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 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) + # 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) # 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()['alliance']: + if int(corp_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): @@ -276,30 +265,25 @@ 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: - 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) - + if 'alliance' in corp_standings: + if int(all_alliance_info.alliance_id) in corp_standings['alliance']: + if int(alliance_standings['alliance'][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'], all_alliance_api_info['member_count'], False) - else: + else: 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,24 +294,21 @@ 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: - 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) + if int(alliance.alliance_id) in corp_standings['alliance']: + if int(alliance_standings['alliance'][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['alliance']: + if int(corp_standings['alliance'][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) @@ -337,19 +318,13 @@ def run_alliance_corp_update(): # 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 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 all_corp_info.corporation_id != settings.CORP_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 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/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..3f98e3b6 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 EveManager.get_charater_corporation_id_by_id(char_id) == settings.CORP_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..17d672e2 100755 --- a/hrapplications/forms.py +++ b/hrapplications/forms.py @@ -1,20 +1,10 @@ from django import forms 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))) - 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") full_api_key = forms.CharField(max_length=254, required=True, label="API Verification Code") - corp = forms.ChoiceField(choices=allchoices, required=True, label="Corp") is_a_spi = forms.ChoiceField(choices=[('Yes', 'Yes'), ('No', 'No')], required=True, label='Are you a spy?') about = forms.CharField(widget=forms.Textarea, required=False, label="About You") extra = forms.CharField(widget=forms.Textarea, required=False, label="Extra Application Info") @@ -26,4 +16,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..4e6d96d4 100755 --- a/hrapplications/models.py +++ b/hrapplications/models.py @@ -1,7 +1,6 @@ from django.db import models from django.contrib.auth.models import User -from eveonline.models import EveCorporationInfo from eveonline.models import EveCharacter @@ -13,7 +12,6 @@ class HRApplication(models.Model): about = models.TextField(default="") extra = models.TextField(default="") - corp = models.ForeignKey(EveCorporationInfo) user = models.ForeignKey(User) approved_denied = models.NullBooleanField(blank=True, null=True) @@ -33,4 +31,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..aa64eb97 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 @@ -56,7 +56,6 @@ def hr_application_create_view(request): application.character_name = form.cleaned_data['character_name'] application.full_api_id = form.cleaned_data['full_api_id'] application.full_api_key = form.cleaned_data['full_api_key'] - application.corp = EveCorporationInfo.objects.get(corporation_id=form.cleaned_data['corp']) application.is_a_spi = form.cleaned_data['is_a_spi'] application.about = form.cleaned_data['about'] application.extra = form.cleaned_data['extra'] 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 + {{ CORP_NAME }} - Login diff --git a/templates/public/register.html b/templates/public/register.html index e3de6049..d6e9a881 100644 --- a/templates/public/register.html +++ b/templates/public/register.html @@ -10,7 +10,7 @@ - {{ ALLIANCE_NAME }} - Login + {{ CORP_NAME }} - Login diff --git a/templates/registered/corpstats.html b/templates/registered/corpstats.html index 65a7f037..b5db3f77 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,7 @@
    {% else %} -

    Not part of the alliance

    +

    Not part of the corporation

    {% endif %}
    {% endblock content %} diff --git a/templates/registered/dashboard.html b/templates/registered/dashboard.html index 2bce23f5..a35fa91b 100644 --- a/templates/registered/dashboard.html +++ b/templates/registered/dashboard.html @@ -6,7 +6,7 @@

    Dashboard

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

    Not part of the alliance

    +

    Not part of the corporation

    {% endif %} {% endblock content %} diff --git a/templates/registered/groups.html b/templates/registered/groups.html index 9cb52c8a..82f25822 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,7 @@ {% endfor %}
    GroupID
    {% else %} - + {% 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..dd2d7597 100644 --- a/templates/registration/password_reset_complete.html +++ b/templates/registration/password_reset_complete.html @@ -12,7 +12,7 @@ - {{ ALLIANCE_NAME }} - Login + {{ CORP_NAME }} - Login diff --git a/templates/registration/password_reset_confirm.html b/templates/registration/password_reset_confirm.html index eb6ca827..13d5d062 100644 --- a/templates/registration/password_reset_confirm.html +++ b/templates/registration/password_reset_confirm.html @@ -12,7 +12,7 @@ - {{ ALLIANCE_NAME }} - Login + {{ CORP_NAME }} - Login 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..1bdbc9e4 100644 --- a/templates/registration/password_reset_form.html +++ b/templates/registration/password_reset_form.html @@ -12,7 +12,7 @@ - {{ ALLIANCE_NAME }} - Login + {{ CORP_NAME }} - Login 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..e20f5568 100755 --- a/util/context_processors.py +++ b/util/context_processors.py @@ -2,12 +2,12 @@ from django.conf import settings from django.utils import timezone -def alliance_id(request): - return {'ALLIANCE_ID': settings.ALLIANCE_ID} +def corp_id(request): + return {'CORP_ID': settings.CORP_ID} -def alliance_name(request): - return {'ALLIANCE_NAME': settings.ALLIANCE_NAME} +def corp_name(request): + return {'CORP_NAME': settings.CORP_NAME} def jabber_url(request): @@ -17,11 +17,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 +29,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()} From 48d1afb104fe8ffa3a78c8362367beee49585542 Mon Sep 17 00:00:00 2001 From: Adarnof Date: Thu, 17 Sep 2015 05:02:06 +0000 Subject: [PATCH 02/26] Fixed indentation in tasks.py Removed reference to undefined variable 'alliance' when checking corps --- celerytask/tasks.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/celerytask/tasks.py b/celerytask/tasks.py index 9f1bde7f..bd6c231d 100755 --- a/celerytask/tasks.py +++ b/celerytask/tasks.py @@ -229,7 +229,7 @@ def run_corp_update(): 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) # Create the corps in the standings corp_standings = EveApiManager.get_corp_standings() @@ -276,7 +276,7 @@ def run_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: + else: EveManager.update_alliance_info(all_alliance_api_info['id'], all_alliance_api_info['executor_id'], all_alliance_api_info['member_count'], False) From 55a56374d26afa73ffadaa25d6b5d31c16711f33 Mon Sep 17 00:00:00 2001 From: Adarnof Date: Thu, 17 Sep 2015 05:28:52 +0000 Subject: [PATCH 03/26] Updated settings template --- alliance_auth/settings.py.example | 54 +++++++++++++++---------------- 1 file changed, 27 insertions(+), 27 deletions(-) diff --git a/alliance_auth/settings.py.example b/alliance_auth/settings.py.example index 47efc40c..b091d2db 100755 --- a/alliance_auth/settings.py.example +++ b/alliance_auth/settings.py.example @@ -77,8 +77,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 +86,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 +95,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,8 +111,8 @@ TEMPLATE_CONTEXT_PROCESSORS = ( 'django.core.context_processors.tz', 'django.contrib.messages.context_processors.messages', 'django.core.context_processors.request', - 'util.context_processors.alliance_id', - 'util.context_processors.alliance_name', + 'util.context_processors.corp_id', + 'util.context_processors.corp_name', 'util.context_processors.jabber_url', 'util.context_processors.domain_url' ) @@ -160,7 +160,7 @@ STATIC_URL = '/static/' # 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', '') @@ -173,8 +173,8 @@ EMAIL_USE_TLS = 'True' == os.environ.get('AA_EMAIL_USE_TLS', 'True') # DEFAULT_ALLIANCE_GROUP - Default group alliance 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 @@ -184,11 +184,11 @@ DEFAULT_BLUE_GROUP = os.environ.get('AA_DEFAULT_BLUE_GROUP', 'BlueMember') # 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_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 @@ -213,11 +213,11 @@ ENABLE_BLUE_TEAMSPEAK3 = 'True' == os.environ.get('AA_ENABLE_BLUE_TEAMSPEAK3', ' # 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')) +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', '') +BLUE_STANDING = float(os.environ.get('AA_BLUE_STANDING', '5.0')) ##################### # HR Configuration @@ -235,7 +235,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', "") 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' @@ -251,10 +251,10 @@ IPBOARD_APIMODULE = 'aa' # 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', "") 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', "") +OPENFIRE_ADDRESS = os.environ.get('AA_OPENFIRE_ADDRESS', "") 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") @@ -265,7 +265,7 @@ BROADCAST_USER_PASSWORD = os.environ.get('AA_BROADCAST_USER_PASSWORD', "somepass # MUMBLE_URL - Mumble server url # MUMBLE_SERVER_ID - Mumble server id ###################################### -MUMBLE_URL = os.environ.get('AA_MUMBLE_URL', "someurl.com") +MUMBLE_URL = os.environ.get('AA_MUMBLE_URL', "") MUMBLE_SERVER_ID = int(os.environ.get('AA_MUMBLE_SERVER_ID', '1')) ###################################### @@ -279,7 +279,7 @@ MUMBLE_SERVER_ID = int(os.environ.get('AA_MUMBLE_SERVER_ID', '1')) # TEAMSPEAK3_AUTHED_GROUP_ID - Default authed group id # TEAMSPEAK3_PUBLIC_URL - teamspeak3 public url used for link creation ###################################### -TEAMSPEAK3_SERVER_IP = os.environ.get('AA_TEAMSPEAK3_SERVER_IP', '127.0.0.1') +TEAMSPEAK3_SERVER_IP = os.environ.get('AA_TEAMSPEAK3_SERVER_IP', '') TEAMSPEAK3_SERVER_PORT = int(os.environ.get('AA_TEAMSPEAK3_SERVER_PORT', '10011')) TEAMSPEAK3_SERVERQUERY_USER = os.environ.get('AA_TEAMSPEAK3_SERVERQUERY_USER', 'serveradmin') TEAMSPEAK3_SERVERQUERY_PASSWORD = os.environ.get('AA_TEAMSPEAK3_SERVERQUERY_PASSWORD', 'passwordhere') From db0a4c235a280fb934048db52db6c9706c89df6d Mon Sep 17 00:00:00 2001 From: Adarnof Date: Fri, 18 Sep 2015 03:51:02 +0000 Subject: [PATCH 04/26] Fixed reference to renamed variable "ALLIANCE_BLUE_STANDING" -> "BLUE_STANDING" --- celerytask/tasks.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/celerytask/tasks.py b/celerytask/tasks.py index bd6c231d..1a875c0d 100755 --- a/celerytask/tasks.py +++ b/celerytask/tasks.py @@ -235,7 +235,7 @@ def run_corp_update(): corp_standings = EveApiManager.get_corp_standings() if corp_standings: for standing_id in EveApiManager.get_corp_standings()['alliance']: - if int(corp_standings['alliance'][standing_id]['standing']) >= settings.ALLIANCE_BLUE_STANDING: + if int(corp_standings['alliance'][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): From c227695160c33893c79673b9a1db99bbf2dd15cc Mon Sep 17 00:00:00 2001 From: Adarnof Date: Fri, 18 Sep 2015 03:53:37 +0000 Subject: [PATCH 05/26] Removed references to blue alliance standings, replaced with blue corp standings. --- eveonline/forms.py | 4 ++-- templates/registered/addapikey.html | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/eveonline/forms.py b/eveonline/forms.py index 44b1138e..c0b6c17e 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", 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/templates/registered/addapikey.html b/templates/registered/addapikey.html index 8661466d..d39478c3 100644 --- a/templates/registered/addapikey.html +++ b/templates/registered/addapikey.html @@ -25,8 +25,8 @@

    - NOTE: If you are part of the alliance do not check "Blue" this is for people who are blue to the - alliance + 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.

    From 259c2c7141d4f7c1fc50c23fd93b691d8f88a863 Mon Sep 17 00:00:00 2001 From: Adarnof Date: Fri, 18 Sep 2015 03:59:44 +0000 Subject: [PATCH 06/26] Fixed refences to renamed variable "alliance_standings" -> "corp_standings" --- celerytask/tasks.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/celerytask/tasks.py b/celerytask/tasks.py index 1a875c0d..026635cb 100755 --- a/celerytask/tasks.py +++ b/celerytask/tasks.py @@ -267,7 +267,7 @@ def run_corp_update(): all_alliance_api_info = EveApiManager.get_alliance_information(all_alliance_info.alliance_id) if 'alliance' in corp_standings: if int(all_alliance_info.alliance_id) in corp_standings['alliance']: - if int(alliance_standings['alliance'][int(all_alliance_info.alliance_id)][ + if int(corp_standings['alliance'][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'], @@ -295,7 +295,7 @@ def run_corp_update(): if alliance is not None and all_corp_info.alliance is not None: if int(alliance.alliance_id) in corp_standings['alliance']: - if int(alliance_standings['alliance'][int(alliance.alliance_id)][ + if int(corp_standings['alliance'][int(alliance.alliance_id)][ 'standing']) >= settings.BLUE_STANDING: EveManager.update_corporation_info(corpinfo['id'], corpinfo['members']['current'], alliance, True) From c0d8e880ab4c3a3dd299e5cb5c20a40ba2420e8b Mon Sep 17 00:00:00 2001 From: Adarnof Date: Fri, 18 Sep 2015 04:26:21 +0000 Subject: [PATCH 07/26] Started adding member -> blue permission handling during api check. Probably very buggy. --- celerytask/tasks.py | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/celerytask/tasks.py b/celerytask/tasks.py index 026635cb..c389a2a8 100755 --- a/celerytask/tasks.py +++ b/celerytask/tasks.py @@ -13,6 +13,9 @@ 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 def update_jabber_groups(user): @@ -210,11 +213,37 @@ def run_api_refresh(): elif corp is not None: if corp.is_blue is not True: deactivate_services(user) + if check_if_user_has_permission(user, "member"): + remove_member_permission(user, "member") + if check_if_user_has_permission(user, "blue_member"): + remove_member_permission(user, "blue_member") + else: + if check_if_user_has_permission(user, "member"): + remove_member_permission(user, "member") + if not check_if_user_has_permission(user, "blue_member"): + add_member_permission(user, "blue_member") + + #Fix mumble username ticker + result = MumbleManager.delete_user(authserviceinfo.mumble_username) + remove_all_syncgroups_for_service(user, "mumble") + if result: + AuthServicesInfoManager.update_user_mumble_info("", "", request.user) + #make new user (how generous) + else: deactivate_services(user) + if check_if_user_has_permission(user, "member"): + remove_member_permission(user, "member") + if check_if_user_has_permission(user, "blue_member"): + remove_member_permission(user, "blue_member") else: # nuke it deactivate_services(user) + if check_if_user_has_permission(user, "member"): + remove_member_permission(user, "member") + if check_if_user_has_permission(user, "blue_member"): + remove_member_permission(user, "blue_member") + else: print 'No main_char_id set' From a62988530d7168d7887b8e72aa84c0f09560ac76 Mon Sep 17 00:00:00 2001 From: Adarnof Date: Sat, 19 Sep 2015 05:28:49 +0000 Subject: [PATCH 08/26] Reworked permission correction during API check. Is cleaner... a bit. --- celerytask/tasks.py | 35 ++++++++++++++++++++++------------- 1 file changed, 22 insertions(+), 13 deletions(-) diff --git a/celerytask/tasks.py b/celerytask/tasks.py index c389a2a8..25ed080b 100755 --- a/celerytask/tasks.py +++ b/celerytask/tasks.py @@ -16,7 +16,10 @@ 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 eveonline.views import disable_alliance_member +from eveonline.views import disable_blue_member +from util.common_task import add_user_to_group +from util.common_task import remove_user_from_group def update_jabber_groups(user): syncgroups = SyncGroupCache.objects.filter(user=user) @@ -212,16 +215,19 @@ def run_api_refresh(): pass elif corp is not None: if corp.is_blue is not True: - deactivate_services(user) if check_if_user_has_permission(user, "member"): - remove_member_permission(user, "member") - if check_if_user_has_permission(user, "blue_member"): - remove_member_permission(user, "blue_member") + disable_alliance_member(user, authserviceinfo.main_char_id) + elif check_if_user_has_permission(user, "blue_member"): + disable_blue_member(user, authserviceonfo.main_char_id) + else: + deactivate_services(user) else: if check_if_user_has_permission(user, "member"): remove_member_permission(user, "member") + remove_user_from_group(user, settings.DEFAULT_AUTH_GROUP) if not check_if_user_has_permission(user, "blue_member"): add_member_permission(user, "blue_member") + add_user_to_group(user, settings.DEFAULT_BLUE_GROUP) #Fix mumble username ticker result = MumbleManager.delete_user(authserviceinfo.mumble_username) @@ -231,18 +237,21 @@ def run_api_refresh(): #make new user (how generous) else: - deactivate_services(user) if check_if_user_has_permission(user, "member"): - remove_member_permission(user, "member") - if check_if_user_has_permission(user, "blue_member"): - remove_member_permission(user, "blue_member") + disable_alliance_member(user, authserviceinfo.main_char_id) + elif check_if_user_has_permission(user, "blue_member"): + disable_blue_member(user, authserviceonfo.main_char_id) + else: + deactivate_services(user) + else: # nuke it - deactivate_services(user) if check_if_user_has_permission(user, "member"): - remove_member_permission(user, "member") - if check_if_user_has_permission(user, "blue_member"): - remove_member_permission(user, "blue_member") + disable_alliance_member(user, authserviceinfo.main_char_id) + elif check_if_user_has_permission(user, "blue_member"): + disable_blue_member(user, authserviceonfo.main_char_id) + else: + deactivate_services(user) else: print 'No main_char_id set' From 6e01001fda1faeb895740ce9e998bdc5fdaaf816 Mon Sep 17 00:00:00 2001 From: Adarnof Date: Sat, 19 Sep 2015 05:33:40 +0000 Subject: [PATCH 09/26] Made available a live copy of fleet fit example template to reduce unexpected template errors on fresh installs. Definitely needs customizing. --- templates/registered/fleetfits.html | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 templates/registered/fleetfits.html 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 %} From cb79054db9b13a68775e322f687eddffa8ef9a41 Mon Sep 17 00:00:00 2001 From: Adarnof Date: Sat, 19 Sep 2015 05:52:14 +0000 Subject: [PATCH 10/26] Added member -> blue handling to mumble username --- celerytask/tasks.py | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/celerytask/tasks.py b/celerytask/tasks.py index 25ed080b..206652ad 100755 --- a/celerytask/tasks.py +++ b/celerytask/tasks.py @@ -20,6 +20,8 @@ from eveonline.views import disable_alliance_member from eveonline.views import disable_blue_member from util.common_task import add_user_to_group from util.common_task import remove_user_from_group +from services.managers.mumble_manager import MumbleManager +from celerytask.tasks import update_mumble_groups def update_jabber_groups(user): syncgroups = SyncGroupCache.objects.filter(user=user) @@ -230,12 +232,14 @@ def run_api_refresh(): add_user_to_group(user, settings.DEFAULT_BLUE_GROUP) #Fix mumble username ticker - result = MumbleManager.delete_user(authserviceinfo.mumble_username) - remove_all_syncgroups_for_service(user, "mumble") - if result: - AuthServicesInfoManager.update_user_mumble_info("", "", request.user) - #make new user (how generous) - + MumbleManager.delete_user(authserviceinfo.mumble_username) + remove_all_syncgroups_for_service(user, "mumble") + AuthServicesInfoManager.update_user_mumble_info("", "", request.user) + + #make new user (how generous) + result = MumbleManager.create_blue_user(character.corporation_ticker, character.character_name) + AuthServicesInfoManager.update_user_mumble_info(result[0], result[1], user) + update_mumble_groups(request.user) else: if check_if_user_has_permission(user, "member"): disable_alliance_member(user, authserviceinfo.main_char_id) From fe6325cef93807cb0578340760288cf4b4dc43fa Mon Sep 17 00:00:00 2001 From: Adarnof Date: Sat, 19 Sep 2015 05:58:33 +0000 Subject: [PATCH 11/26] Added blue -> member handling to celerytask --- celerytask/tasks.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/celerytask/tasks.py b/celerytask/tasks.py index 206652ad..500a67d8 100755 --- a/celerytask/tasks.py +++ b/celerytask/tasks.py @@ -214,7 +214,14 @@ def run_api_refresh(): corp = EveManager.get_corporation_info_by_id(character.corporation_id) main_corp_id = EveManager.get_charater_corporation_id_by_id(authserviceinfo.main_char_id) if main_corp_id == settings.CORP_ID: - pass + if not check_if_user_has_permission(user, "member"): + #transition from 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(settings.DEFAULT_BLUE_GROUP) + add_member_permission(user, "member") + add_user_to_group(user, settings.DEFAULT_AUTH_GROUP) elif corp is not None: if corp.is_blue is not True: if check_if_user_has_permission(user, "member"): From 9e189a639dc33d7ec0a23b799466261ca5111d41 Mon Sep 17 00:00:00 2001 From: Adarnof Date: Sat, 19 Sep 2015 21:47:45 +0000 Subject: [PATCH 12/26] Cleaned up corp -> blue and blue -> corp transitions in API check --- celerybeat.pid | 1 + celerytask/tasks.py | 21 +++++++++++++++------ 2 files changed, 16 insertions(+), 6 deletions(-) create mode 100644 celerybeat.pid diff --git a/celerybeat.pid b/celerybeat.pid new file mode 100644 index 00000000..7160aec0 --- /dev/null +++ b/celerybeat.pid @@ -0,0 +1 @@ +28392 diff --git a/celerytask/tasks.py b/celerytask/tasks.py index 500a67d8..d2cda95e 100755 --- a/celerytask/tasks.py +++ b/celerytask/tasks.py @@ -16,12 +16,21 @@ 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 eveonline.views import disable_alliance_member -from eveonline.views import disable_blue_member from util.common_task import add_user_to_group from util.common_task import remove_user_from_group -from services.managers.mumble_manager import MumbleManager -from celerytask.tasks import update_mumble_groups + +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) def update_jabber_groups(user): syncgroups = SyncGroupCache.objects.filter(user=user) @@ -227,7 +236,7 @@ def run_api_refresh(): 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, authserviceonfo.main_char_id) + disable_blue_member(user) else: deactivate_services(user) else: @@ -260,7 +269,7 @@ def run_api_refresh(): 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, authserviceonfo.main_char_id) + disable_blue_member(user) else: deactivate_services(user) From b40c6ffa621a174ce1db94423c7cf10390497547 Mon Sep 17 00:00:00 2001 From: Adarnof Date: Sat, 19 Sep 2015 22:17:00 +0000 Subject: [PATCH 13/26] Fixed variable descriptions --- alliance_auth/settings.py.example | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/alliance_auth/settings.py.example b/alliance_auth/settings.py.example index b091d2db..7c9d832a 100755 --- a/alliance_auth/settings.py.example +++ b/alliance_auth/settings.py.example @@ -170,7 +170,7 @@ 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_AUTH_GROUP = os.environ.get('AA_DEFAULT_ALLIANCE_GROUP', 'Member') @@ -179,10 +179,10 @@ 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_AUTH_FORUM = 'True' == os.environ.get('AA_ENABLE_AUTH_FORUM', 'True') ENABLE_AUTH_JABBER = 'True' == os.environ.get('AA_ENABLE_AUTH_JABBER', 'True') @@ -207,11 +207,11 @@ ENABLE_BLUE_TEAMSPEAK3 = 'True' == os.environ.get('AA_ENABLE_BLUE_TEAMSPEAK3', ' ######################### # Alliance Configuration ######################### -# ALLIANCE_ID - Set this to your AllianceID -# 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 +# 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 +# BLUE_STANDING - The default lowest standings setting to consider blue ######################## CORP_ID = os.environ.get('AA_CORP_ID', '') CORP_NAME = os.environ.get('AA_CORP_NAME', '') From a40e29ea891398e57dc0fbf420cd3ef5dfd98c43 Mon Sep 17 00:00:00 2001 From: Adarnof Date: Wed, 23 Sep 2015 15:43:01 -0400 Subject: [PATCH 14/26] Added depenedent function generate_corp_group_name until I can figure out how to import from util.common_task.py --- celerytask/tasks.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/celerytask/tasks.py b/celerytask/tasks.py index d2cda95e..a1fe0c4b 100755 --- a/celerytask/tasks.py +++ b/celerytask/tasks.py @@ -19,6 +19,9 @@ 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 +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) From 31a98f86c3930c27e11532623554d11f92686268 Mon Sep 17 00:00:00 2001 From: Adarnof Date: Wed, 23 Sep 2015 23:11:58 -0400 Subject: [PATCH 15/26] Added corp toggle variable and updated descriptions --- alliance_auth/settings.py.example | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/alliance_auth/settings.py.example b/alliance_auth/settings.py.example index 7c9d832a..06589f99 100755 --- a/alliance_auth/settings.py.example +++ b/alliance_auth/settings.py.example @@ -150,6 +150,16 @@ 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 + + ################# # EMAIL SETTINGS ################# @@ -205,7 +215,7 @@ ENABLE_BLUE_IPBOARD = 'True' == os.environ.get('AA_ENABLE_BLUE_IPBOARD', 'False' ENABLE_BLUE_TEAMSPEAK3 = 'True' == os.environ.get('AA_ENABLE_BLUE_TEAMSPEAK3', 'False') ######################### -# Alliance Configuration +# Corp Configuration ######################### # CORP_ID - Set this to your corp ID (get this from https://zkillboard.com/corporation/#######) # CORP_NAME - Set this to your Corporation Name @@ -219,6 +229,19 @@ CORP_API_ID = os.environ.get('AA_CORP_API_ID', '') CORP_API_VCODE = os.environ.get('AA_CORP_API_VCODE', '') BLUE_STANDING = float(os.environ.get('AA_BLUE_STANDING', '5.0')) +######################### +# Alliance Configuration +######################### +# ALLIANCE_ID - Set this to your corp ID (get this from https://zkillboard.com/corporation/#######) +# ALLIANCE_NAME - Set this to your Corporation Name +# ALLIANCE_API_ID - Set this to the api id for the corp API key +# ALLIANCE_API_VCODE - Set this to the api vcode for the corp API key +# BLUE_STANDING - The default lowest standings setting to consider blue +######################## +ALLIANCE_ID = os.environ.get('AA_ALLIANCE_ID', '') +ALLIANCE_NAME = os.environ.get('AA_ALLIANCE_NAME', '') + + ##################### # HR Configuration ##################### From 2c98b5e4a6a135939b8cd9cd01d6d603975cb2be Mon Sep 17 00:00:00 2001 From: Adarnof Date: Sun, 20 Sep 2015 03:34:29 +0000 Subject: [PATCH 16/26] Re-added corp choice to HRApplicationsw --- alliance_auth/settings.py.example | 2 +- hrapplications/forms.py | 12 ++++++++++++ hrapplications/models.py | 1 + hrapplications/views.py | 1 + 4 files changed, 15 insertions(+), 1 deletion(-) diff --git a/alliance_auth/settings.py.example b/alliance_auth/settings.py.example index 06589f99..9d26f81b 100755 --- a/alliance_auth/settings.py.example +++ b/alliance_auth/settings.py.example @@ -157,7 +157,7 @@ STATIC_URL = '/static/' # Set to FALSE for alliance # Set to TRUE for corp ########################### -IS_CORP = False +IS_CORP = 'False' == os.environ.get('AA_IS_CORP', 'True') ################# diff --git a/hrapplications/forms.py b/hrapplications/forms.py index 17d672e2..4e07f7c7 100755 --- a/hrapplications/forms.py +++ b/hrapplications/forms.py @@ -2,9 +2,21 @@ from django import forms from django.conf import settings class HRApplicationForm(forms.Form): + allchoices = [] + + if settings.IS_CORP: + corp = EveCorporationInfo.objects.filter(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") full_api_key = forms.CharField(max_length=254, required=True, label="API Verification Code") + corp = forms.ChoiceField(choices=allchoices, required=True, label="Corp") is_a_spi = forms.ChoiceField(choices=[('Yes', 'Yes'), ('No', 'No')], required=True, label='Are you a spy?') about = forms.CharField(widget=forms.Textarea, required=False, label="About You") extra = forms.CharField(widget=forms.Textarea, required=False, label="Extra Application Info") diff --git a/hrapplications/models.py b/hrapplications/models.py index 4e6d96d4..585ee53c 100755 --- a/hrapplications/models.py +++ b/hrapplications/models.py @@ -12,6 +12,7 @@ class HRApplication(models.Model): about = models.TextField(default="") extra = models.TextField(default="") + corp = models.ForeignKey(EveCorporationInfo) user = models.ForeignKey(User) approved_denied = models.NullBooleanField(blank=True, null=True) diff --git a/hrapplications/views.py b/hrapplications/views.py index aa64eb97..4954b107 100755 --- a/hrapplications/views.py +++ b/hrapplications/views.py @@ -56,6 +56,7 @@ def hr_application_create_view(request): application.character_name = form.cleaned_data['character_name'] application.full_api_id = form.cleaned_data['full_api_id'] application.full_api_key = form.cleaned_data['full_api_key'] + application.corp = EveCorporationInfo.objects.get(corporation_id=form.cleaned_data['corp']) application.is_a_spi = form.cleaned_data['is_a_spi'] application.about = form.cleaned_data['about'] application.extra = form.cleaned_data['extra'] From 5853b41e58ecf80bfaa1ff15431809375c344045 Mon Sep 17 00:00:00 2001 From: Adarnof Date: Sun, 20 Sep 2015 04:19:30 +0000 Subject: [PATCH 17/26] Abstracted standing level (corp or alliance) depending on toggle --- celerytask/tasks.py | 25 ++++++++++++++++--------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/celerytask/tasks.py b/celerytask/tasks.py index a1fe0c4b..38b9ae09 100755 --- a/celerytask/tasks.py +++ b/celerytask/tasks.py @@ -292,11 +292,18 @@ def run_corp_update(): EveManager.create_corporation_info(corpinfo['id'], corpinfo['name'], corpinfo['ticker'], corpinfo['members']['current'], False, None) + + #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 corp_standings = EveApiManager.get_corp_standings() if corp_standings: - for standing_id in EveApiManager.get_corp_standings()['alliance']: - if int(corp_standings['alliance'][standing_id]['standing']) >= settings.BLUE_STANDING: + 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): @@ -326,9 +333,9 @@ def run_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 'alliance' in corp_standings: - if int(all_alliance_info.alliance_id) in corp_standings['alliance']: - if int(corp_standings['alliance'][int(all_alliance_info.alliance_id)][ + if 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'], @@ -355,8 +362,8 @@ def run_corp_update(): if alliance is not None and all_corp_info.alliance is not None: - if int(alliance.alliance_id) in corp_standings['alliance']: - if int(corp_standings['alliance'][int(alliance.alliance_id)][ + if 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) @@ -367,8 +374,8 @@ def run_corp_update(): EveManager.update_corporation_info(corpinfo['id'], corpinfo['members']['current'], alliance, False) else: - if int(all_corp_info.corporation_id) in corp_standings['alliance']: - if int(corp_standings['alliance'][int(all_corp_info.corporation_id)][ + 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: From cf5a099006ca8b12b3eb57cb1cf50dddf6f839e6 Mon Sep 17 00:00:00 2001 From: Adarnof Date: Mon, 21 Sep 2015 09:28:54 +0000 Subject: [PATCH 18/26] Minor fixes regarding HRApplication corp handling --- alliance_auth/settings.py.corp | 289 +++++++++++++++++++++++++++++++++ hrapplications/forms.py | 4 +- hrapplications/models.py | 1 + 3 files changed, 293 insertions(+), 1 deletion(-) create mode 100755 alliance_auth/settings.py.corp diff --git a/alliance_auth/settings.py.corp b/alliance_auth/settings.py.corp new file mode 100755 index 00000000..2ea65a12 --- /dev/null +++ b/alliance_auth/settings.py.corp @@ -0,0 +1,289 @@ +""" +Django settings for alliance_auth project. + +For more information on this file, see +https://docs.djangoproject.com/en/1.6/topics/settings/ + +For the full list of settings and their values, see +https://docs.djangoproject.com/en/1.6/ref/settings/ +""" + +# Build paths inside the project like this: os.path.join(BASE_DIR, ...) +import os + +import djcelery + +djcelery.setup_loader() +BASE_DIR = os.path.dirname(os.path.dirname(__file__)) + +# Quick-start development settings - unsuitable for production +# See https://docs.djangoproject.com/en/1.6/howto/deployment/checklist/ + +# SECURITY WARNING: keep the secret key used in production secret! +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! +DEBUG = 'True' == os.environ.get('AA_DEBUG','True') + +TEMPLATE_DEBUG = True + +ALLOWED_HOSTS = [] + +BROKER_URL = 'amqp://guest:guest@localhost:5672/' + +CELERYBEAT_SCHEDULER = "djcelery.schedulers.DatabaseScheduler" + +# Application definition +INSTALLED_APPS = ( + 'django.contrib.admin', + 'django.contrib.auth', + 'django.contrib.contenttypes', + 'django.contrib.sessions', + 'django.contrib.messages', + 'django.contrib.staticfiles', + 'django.contrib.humanize', + 'django_evolution', + 'djcelery', + 'celerytask', + 'bootstrapform', + 'authentication', + 'portal', + 'registration', + 'services', + 'eveonline', + 'groupmanagement', + 'hrapplications', + 'timerboard', + 'srp', +) + +MIDDLEWARE_CLASSES = ( + 'django.contrib.sessions.middleware.SessionMiddleware', + 'django.middleware.common.CommonMiddleware', + 'django.middleware.csrf.CsrfViewMiddleware', + 'django.contrib.auth.middleware.AuthenticationMiddleware', + 'django.contrib.messages.middleware.MessageMiddleware', + 'django.middleware.clickjacking.XFrameOptionsMiddleware', +) + +ROOT_URLCONF = 'alliance_auth.urls' + +WSGI_APPLICATION = 'alliance_auth.wsgi.application' + +# Database +# https://docs.djangoproject.com/en/1.6/ref/settings/#databases + +DATABASES = { + 'default': { + 'ENGINE': 'django.db.backends.mysql', + 'NAME': 'alliance_auth', + 'USER': os.environ.get('AA_DB_DEFAULT_USER', 'allianceserver'), + 'PASSWORD': os.environ.get('AA_DB_DEFAULT_PASSWORD', 'potato'), + 'HOST': os.environ.get('AA_DB_DEFAULT_HOST', '127.0.0.1'), + 'PORT': os.environ.get('AA_DB_DEFAULT_PORT', '3306'), + }, + + 'phpbb3': { + 'ENGINE': 'django.db.backends.mysql', + 'NAME': 'alliance_forum', + 'USER': os.environ.get('AA_DB_PHPBB3_USER', 'allianceserver'), + 'PASSWORD': os.environ.get('AA_DB_PHPBB3_PASSWORD', 'potato'), + 'HOST': os.environ.get('AA_DB_PHPBB3_HOST', '127.0.0.1'), + 'PORT': os.environ.get('AA_DB_PHPBB3_PORT', '3306'), + }, + + 'mumble': { + 'ENGINE': 'django.db.backends.mysql', + 'NAME': 'alliance_mumble', + 'USER': os.environ.get('AA_DB_MUMBLE_USER', 'allianceserver'), + 'PASSWORD': os.environ.get('AA_DB_MUMBLE_PASSWORD', 'potato'), + 'HOST': os.environ.get('AA_DB_MUMBLE_HOST', '127.0.0.1'), + 'PORT': os.environ.get('AA_DB_MUMBLE_PORT', '3306'), + } +} + +TEMPLATE_CONTEXT_PROCESSORS = ( + 'django.contrib.auth.context_processors.auth', + 'django.core.context_processors.debug', + 'django.core.context_processors.i18n', + 'django.core.context_processors.media', + 'django.core.context_processors.static', + 'django.core.context_processors.tz', + 'django.contrib.messages.context_processors.messages', + 'django.core.context_processors.request', + 'util.context_processors.corp_id', + 'util.context_processors.corp_name', + 'util.context_processors.jabber_url', + 'util.context_processors.domain_url' +) + +TEMPLATE_DIRS = ( + 'templates', + '/home/allianceserver/allianceauth/templates', +) + +STATICFILES_DIRS = ( + 'static', + '/home/allianceserver/allianceauth/static', +) + +LOGIN_URL = '/login_user/' + +# Internationalization +# https://docs.djangoproject.com/en/1.6/topics/i18n/ + +LANGUAGE_CODE = os.environ.get('AA_LANGUAGE_CODE', 'en-us') + +TIME_ZONE = os.environ.get('AA_TIME_ZONE', 'UTC') + +USE_I18N = True + +USE_L10N = True + +USE_TZ = True + +# Static files (CSS, JavaScript, Images) +# https://docs.djangoproject.com/en/1.6/howto/static-files/ +STATIC_URL = '/static/' + +##################################################### +## +## Alliance configuration starts here +## +##################################################### + +################# +# 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_PASSWORD - Email Password +# EMAIL_USE_TLS - Set to use TLS encryption +################# +DOMAIN = os.environ.get('AA_DOMAIN', 'https://youarebeingmonitored.net') +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', '') +EMAIL_HOST_PASSWORD = os.environ.get('AA_EMAIL_HOST_PASSWORD', '') +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_BLUE_GROUP - Default group for blue members +######################### +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 = '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 +##################### +# 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 +##################### +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') + +######################### +# Alliance Configuration +######################### +# ALLIANCE_ID - Set this to your AllianceID +# 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 +######################## +CORP_ID = os.environ.get('AA_CORP_ID', '98382747') +CORP_NAME = os.environ.get('AA_CORP_NAME', 'Super Secret Spaceship Syndicate') +CORP_API_ID = os.environ.get('AA_CORP_API_ID', '4682782') +CORP_API_VCODE = os.environ.get('AA_CORP_API_VCODE', 'hTdKJ2fND4ACxFimr6TNjjn7GATutmrDOR5BreoWtn6vsKhLGmjv9ORvFLjBfVdo') +BLUE_STANDING = float(os.environ.get('AA_BLUE_STANDING', '5.0')) + +##################### +# HR Configuration +##################### +# JACK_KNIFE_URL - Url for the audit page of API Jack knife +# Should seriously replace with your own. +##################### +JACK_KNIFE_URL = os.environ.get('AA_JACK_KNIFE_URL', 'http://ridetheclown.com/eveapi/audit.php') + +##################### +# Forum Configuration +##################### +# FORUM_URL - Forum url location +# IPBOARD_ENDPOINT - Api endpoint if using ipboard +# IPBOARD_APIKEY - Api key to interact with ipboard +# IPBOARD_APIMODULE - Module for alliance auth *leave alone* +##################### +FORUM_URL = os.environ.get('AA_FORUM_URL', "127.0.0.1/forums") +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' + +###################### +# Jabber Configuration +###################### +# 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 +# BROADCAST_USER - Broadcast user JID +# BROADCAST_USER_PASSWORD - Broadcast user password +###################### +JABBER_URL = os.environ.get('AA_JABBER_URL', "127.0.01") +JABBER_PORT = int(os.environ.get('AA_JABBER_PORT', '5223')) +JABBER_SERVER = os.environ.get('AA_JABBER_SERVER', "mntr") +OPENFIRE_ADDRESS = os.environ.get('AA_OPENFIRE_ADDRESS', "http://127.0.0.1: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") + +###################################### +# Mumble Configuration +###################################### +# MUMBLE_URL - Mumble server url +# MUMBLE_SERVER_ID - Mumble server id +###################################### +MUMBLE_URL = os.environ.get('AA_MUMBLE_URL', "youarebeingmonitored.net") +MUMBLE_SERVER_ID = int(os.environ.get('AA_MUMBLE_SERVER_ID', '1')) + +###################################### +# Teamspeak3 Configuration +###################################### +# TEAMSPEAK3_SERVER_IP - Teamspeak3 server ip +# TEAMSPEAK3_SERVER_PORT - Teamspeak3 server port +# TEAMSPEAK3_SERVERQUERY_USER - Teamspeak3 serverquery username +# TEAMSPEAK3_SERVERQUERY_PASSWORD - Teamspeak3 serverquery password +# TEAMSPEAK3_VIRTUAL_SERVER - Virtual server id +# TEAMSPEAK3_AUTHED_GROUP_ID - Default authed group id +# TEAMSPEAK3_PUBLIC_URL - teamspeak3 public url used for link creation +###################################### +TEAMSPEAK3_SERVER_IP = os.environ.get('AA_TEAMSPEAK3_SERVER_IP', '127.0.0.1') +TEAMSPEAK3_SERVER_PORT = int(os.environ.get('AA_TEAMSPEAK3_SERVER_PORT', '10011')) +TEAMSPEAK3_SERVERQUERY_USER = os.environ.get('AA_TEAMSPEAK3_SERVERQUERY_USER', 'serveradmin') +TEAMSPEAK3_SERVERQUERY_PASSWORD = os.environ.get('AA_TEAMSPEAK3_SERVERQUERY_PASSWORD', 'passwordhere') +TEAMSPEAK3_VIRTUAL_SERVER = int(os.environ.get('AA_TEAMSPEAK3_VIRTUAL_SERVER', '1')) +TEAMSPEAK3_PUBLIC_URL = os.environ.get('AA_TEAMSPEAK3_PUBLIC_URL', 'someaddress.com') diff --git a/hrapplications/forms.py b/hrapplications/forms.py index 4e07f7c7..7d1ad0e7 100755 --- a/hrapplications/forms.py +++ b/hrapplications/forms.py @@ -1,11 +1,13 @@ from django import forms from django.conf import settings +from eveonline.models import EveCorporationInfo + class HRApplicationForm(forms.Form): allchoices = [] if settings.IS_CORP: - corp = EveCorporationInfo.objects.filter(corporation_id=settings.CORP_ID) + 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(): diff --git a/hrapplications/models.py b/hrapplications/models.py index 585ee53c..3e6bd0ed 100755 --- a/hrapplications/models.py +++ b/hrapplications/models.py @@ -2,6 +2,7 @@ from django.db import models from django.contrib.auth.models import User from eveonline.models import EveCharacter +from eveonline.models import EveCorporationInfo class HRApplication(models.Model): From 8152ae7e296d59ae734ee2d0ca5ac63f1c2fefe0 Mon Sep 17 00:00:00 2001 From: Adarnof Date: Mon, 21 Sep 2015 09:31:02 +0000 Subject: [PATCH 19/26] Removed accidental inclusion of working file. --- alliance_auth/settings.py.corp | 289 --------------------------------- 1 file changed, 289 deletions(-) delete mode 100755 alliance_auth/settings.py.corp diff --git a/alliance_auth/settings.py.corp b/alliance_auth/settings.py.corp deleted file mode 100755 index 2ea65a12..00000000 --- a/alliance_auth/settings.py.corp +++ /dev/null @@ -1,289 +0,0 @@ -""" -Django settings for alliance_auth project. - -For more information on this file, see -https://docs.djangoproject.com/en/1.6/topics/settings/ - -For the full list of settings and their values, see -https://docs.djangoproject.com/en/1.6/ref/settings/ -""" - -# Build paths inside the project like this: os.path.join(BASE_DIR, ...) -import os - -import djcelery - -djcelery.setup_loader() -BASE_DIR = os.path.dirname(os.path.dirname(__file__)) - -# Quick-start development settings - unsuitable for production -# See https://docs.djangoproject.com/en/1.6/howto/deployment/checklist/ - -# SECURITY WARNING: keep the secret key used in production secret! -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! -DEBUG = 'True' == os.environ.get('AA_DEBUG','True') - -TEMPLATE_DEBUG = True - -ALLOWED_HOSTS = [] - -BROKER_URL = 'amqp://guest:guest@localhost:5672/' - -CELERYBEAT_SCHEDULER = "djcelery.schedulers.DatabaseScheduler" - -# Application definition -INSTALLED_APPS = ( - 'django.contrib.admin', - 'django.contrib.auth', - 'django.contrib.contenttypes', - 'django.contrib.sessions', - 'django.contrib.messages', - 'django.contrib.staticfiles', - 'django.contrib.humanize', - 'django_evolution', - 'djcelery', - 'celerytask', - 'bootstrapform', - 'authentication', - 'portal', - 'registration', - 'services', - 'eveonline', - 'groupmanagement', - 'hrapplications', - 'timerboard', - 'srp', -) - -MIDDLEWARE_CLASSES = ( - 'django.contrib.sessions.middleware.SessionMiddleware', - 'django.middleware.common.CommonMiddleware', - 'django.middleware.csrf.CsrfViewMiddleware', - 'django.contrib.auth.middleware.AuthenticationMiddleware', - 'django.contrib.messages.middleware.MessageMiddleware', - 'django.middleware.clickjacking.XFrameOptionsMiddleware', -) - -ROOT_URLCONF = 'alliance_auth.urls' - -WSGI_APPLICATION = 'alliance_auth.wsgi.application' - -# Database -# https://docs.djangoproject.com/en/1.6/ref/settings/#databases - -DATABASES = { - 'default': { - 'ENGINE': 'django.db.backends.mysql', - 'NAME': 'alliance_auth', - 'USER': os.environ.get('AA_DB_DEFAULT_USER', 'allianceserver'), - 'PASSWORD': os.environ.get('AA_DB_DEFAULT_PASSWORD', 'potato'), - 'HOST': os.environ.get('AA_DB_DEFAULT_HOST', '127.0.0.1'), - 'PORT': os.environ.get('AA_DB_DEFAULT_PORT', '3306'), - }, - - 'phpbb3': { - 'ENGINE': 'django.db.backends.mysql', - 'NAME': 'alliance_forum', - 'USER': os.environ.get('AA_DB_PHPBB3_USER', 'allianceserver'), - 'PASSWORD': os.environ.get('AA_DB_PHPBB3_PASSWORD', 'potato'), - 'HOST': os.environ.get('AA_DB_PHPBB3_HOST', '127.0.0.1'), - 'PORT': os.environ.get('AA_DB_PHPBB3_PORT', '3306'), - }, - - 'mumble': { - 'ENGINE': 'django.db.backends.mysql', - 'NAME': 'alliance_mumble', - 'USER': os.environ.get('AA_DB_MUMBLE_USER', 'allianceserver'), - 'PASSWORD': os.environ.get('AA_DB_MUMBLE_PASSWORD', 'potato'), - 'HOST': os.environ.get('AA_DB_MUMBLE_HOST', '127.0.0.1'), - 'PORT': os.environ.get('AA_DB_MUMBLE_PORT', '3306'), - } -} - -TEMPLATE_CONTEXT_PROCESSORS = ( - 'django.contrib.auth.context_processors.auth', - 'django.core.context_processors.debug', - 'django.core.context_processors.i18n', - 'django.core.context_processors.media', - 'django.core.context_processors.static', - 'django.core.context_processors.tz', - 'django.contrib.messages.context_processors.messages', - 'django.core.context_processors.request', - 'util.context_processors.corp_id', - 'util.context_processors.corp_name', - 'util.context_processors.jabber_url', - 'util.context_processors.domain_url' -) - -TEMPLATE_DIRS = ( - 'templates', - '/home/allianceserver/allianceauth/templates', -) - -STATICFILES_DIRS = ( - 'static', - '/home/allianceserver/allianceauth/static', -) - -LOGIN_URL = '/login_user/' - -# Internationalization -# https://docs.djangoproject.com/en/1.6/topics/i18n/ - -LANGUAGE_CODE = os.environ.get('AA_LANGUAGE_CODE', 'en-us') - -TIME_ZONE = os.environ.get('AA_TIME_ZONE', 'UTC') - -USE_I18N = True - -USE_L10N = True - -USE_TZ = True - -# Static files (CSS, JavaScript, Images) -# https://docs.djangoproject.com/en/1.6/howto/static-files/ -STATIC_URL = '/static/' - -##################################################### -## -## Alliance configuration starts here -## -##################################################### - -################# -# 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_PASSWORD - Email Password -# EMAIL_USE_TLS - Set to use TLS encryption -################# -DOMAIN = os.environ.get('AA_DOMAIN', 'https://youarebeingmonitored.net') -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', '') -EMAIL_HOST_PASSWORD = os.environ.get('AA_EMAIL_HOST_PASSWORD', '') -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_BLUE_GROUP - Default group for blue members -######################### -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 = '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 -##################### -# 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 -##################### -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') - -######################### -# Alliance Configuration -######################### -# ALLIANCE_ID - Set this to your AllianceID -# 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 -######################## -CORP_ID = os.environ.get('AA_CORP_ID', '98382747') -CORP_NAME = os.environ.get('AA_CORP_NAME', 'Super Secret Spaceship Syndicate') -CORP_API_ID = os.environ.get('AA_CORP_API_ID', '4682782') -CORP_API_VCODE = os.environ.get('AA_CORP_API_VCODE', 'hTdKJ2fND4ACxFimr6TNjjn7GATutmrDOR5BreoWtn6vsKhLGmjv9ORvFLjBfVdo') -BLUE_STANDING = float(os.environ.get('AA_BLUE_STANDING', '5.0')) - -##################### -# HR Configuration -##################### -# JACK_KNIFE_URL - Url for the audit page of API Jack knife -# Should seriously replace with your own. -##################### -JACK_KNIFE_URL = os.environ.get('AA_JACK_KNIFE_URL', 'http://ridetheclown.com/eveapi/audit.php') - -##################### -# Forum Configuration -##################### -# FORUM_URL - Forum url location -# IPBOARD_ENDPOINT - Api endpoint if using ipboard -# IPBOARD_APIKEY - Api key to interact with ipboard -# IPBOARD_APIMODULE - Module for alliance auth *leave alone* -##################### -FORUM_URL = os.environ.get('AA_FORUM_URL', "127.0.0.1/forums") -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' - -###################### -# Jabber Configuration -###################### -# 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 -# BROADCAST_USER - Broadcast user JID -# BROADCAST_USER_PASSWORD - Broadcast user password -###################### -JABBER_URL = os.environ.get('AA_JABBER_URL', "127.0.01") -JABBER_PORT = int(os.environ.get('AA_JABBER_PORT', '5223')) -JABBER_SERVER = os.environ.get('AA_JABBER_SERVER', "mntr") -OPENFIRE_ADDRESS = os.environ.get('AA_OPENFIRE_ADDRESS', "http://127.0.0.1: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") - -###################################### -# Mumble Configuration -###################################### -# MUMBLE_URL - Mumble server url -# MUMBLE_SERVER_ID - Mumble server id -###################################### -MUMBLE_URL = os.environ.get('AA_MUMBLE_URL', "youarebeingmonitored.net") -MUMBLE_SERVER_ID = int(os.environ.get('AA_MUMBLE_SERVER_ID', '1')) - -###################################### -# Teamspeak3 Configuration -###################################### -# TEAMSPEAK3_SERVER_IP - Teamspeak3 server ip -# TEAMSPEAK3_SERVER_PORT - Teamspeak3 server port -# TEAMSPEAK3_SERVERQUERY_USER - Teamspeak3 serverquery username -# TEAMSPEAK3_SERVERQUERY_PASSWORD - Teamspeak3 serverquery password -# TEAMSPEAK3_VIRTUAL_SERVER - Virtual server id -# TEAMSPEAK3_AUTHED_GROUP_ID - Default authed group id -# TEAMSPEAK3_PUBLIC_URL - teamspeak3 public url used for link creation -###################################### -TEAMSPEAK3_SERVER_IP = os.environ.get('AA_TEAMSPEAK3_SERVER_IP', '127.0.0.1') -TEAMSPEAK3_SERVER_PORT = int(os.environ.get('AA_TEAMSPEAK3_SERVER_PORT', '10011')) -TEAMSPEAK3_SERVERQUERY_USER = os.environ.get('AA_TEAMSPEAK3_SERVERQUERY_USER', 'serveradmin') -TEAMSPEAK3_SERVERQUERY_PASSWORD = os.environ.get('AA_TEAMSPEAK3_SERVERQUERY_PASSWORD', 'passwordhere') -TEAMSPEAK3_VIRTUAL_SERVER = int(os.environ.get('AA_TEAMSPEAK3_VIRTUAL_SERVER', '1')) -TEAMSPEAK3_PUBLIC_URL = os.environ.get('AA_TEAMSPEAK3_PUBLIC_URL', 'someaddress.com') From a3de13f0555d30cd7791cba343038135917788d7 Mon Sep 17 00:00:00 2001 From: Adarnof Date: Sat, 31 Oct 2015 17:35:00 -0400 Subject: [PATCH 20/26] cleaned up settings descriptions incorporated alliance/corp check into main character change restored alliance text to forms returned optional alliance checking to periodic tasks (pray for me) deleted accidental inclusion of PID file this is gonna tickle. Signed-off-by: Adarnof --- alliance_auth/settings.py.example | 33 +++++++------ celerybeat.pid | 1 - celerytask/tasks.py | 81 ++++++++++++++++++++++--------- eveonline/forms.py | 2 +- eveonline/views.py | 2 +- 5 files changed, 76 insertions(+), 43 deletions(-) delete mode 100644 celerybeat.pid diff --git a/alliance_auth/settings.py.example b/alliance_auth/settings.py.example index 9d26f81b..9c7a6a2c 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! @@ -166,7 +167,7 @@ IS_CORP = 'False' == os.environ.get('AA_IS_CORP', 'True') # 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 ################# @@ -203,11 +204,13 @@ ENABLE_AUTH_TEAMSPEAK3 = 'True' == os.environ.get('AA_ENABLE_AUTH_TEAMSPEAK3', ' ##################### # 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') @@ -217,26 +220,23 @@ ENABLE_BLUE_TEAMSPEAK3 = 'True' == os.environ.get('AA_ENABLE_BLUE_TEAMSPEAK3', ' ######################### # 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 -# BLUE_STANDING - The default lowest standings setting to consider blue ######################## 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', '') -BLUE_STANDING = float(os.environ.get('AA_BLUE_STANDING', '5.0')) + ######################### # Alliance Configuration ######################### -# ALLIANCE_ID - Set this to your corp ID (get this from https://zkillboard.com/corporation/#######) -# ALLIANCE_NAME - Set this to your Corporation Name -# ALLIANCE_API_ID - Set this to the api id for the corp API key -# ALLIANCE_API_VCODE - Set this to the api vcode for the corp API key -# BLUE_STANDING - The default lowest standings setting to consider blue +# ALLIANCE_ID - Set this to your Alliance ID (get this from https://zkillboard.com/alliance/#######) +# ALLIANCE_NAME - Set this to your Alliance Name ######################## ALLIANCE_ID = os.environ.get('AA_ALLIANCE_ID', '') ALLIANCE_NAME = os.environ.get('AA_ALLIANCE_NAME', '') @@ -258,7 +258,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', "") +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' @@ -269,15 +269,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', "") +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', "") -OPENFIRE_ADDRESS = os.environ.get('AA_OPENFIRE_ADDRESS', "") +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") @@ -288,7 +289,7 @@ BROADCAST_USER_PASSWORD = os.environ.get('AA_BROADCAST_USER_PASSWORD', "somepass # MUMBLE_URL - Mumble server url # MUMBLE_SERVER_ID - Mumble server id ###################################### -MUMBLE_URL = os.environ.get('AA_MUMBLE_URL', "") +MUMBLE_URL = os.environ.get('AA_MUMBLE_URL', "someurl.com") MUMBLE_SERVER_ID = int(os.environ.get('AA_MUMBLE_SERVER_ID', '1')) ###################################### @@ -302,7 +303,7 @@ MUMBLE_SERVER_ID = int(os.environ.get('AA_MUMBLE_SERVER_ID', '1')) # TEAMSPEAK3_AUTHED_GROUP_ID - Default authed group id # TEAMSPEAK3_PUBLIC_URL - teamspeak3 public url used for link creation ###################################### -TEAMSPEAK3_SERVER_IP = os.environ.get('AA_TEAMSPEAK3_SERVER_IP', '') +TEAMSPEAK3_SERVER_IP = os.environ.get('AA_TEAMSPEAK3_SERVER_IP', '127.0.0.1') TEAMSPEAK3_SERVER_PORT = int(os.environ.get('AA_TEAMSPEAK3_SERVER_PORT', '10011')) TEAMSPEAK3_SERVERQUERY_USER = os.environ.get('AA_TEAMSPEAK3_SERVERQUERY_USER', 'serveradmin') TEAMSPEAK3_SERVERQUERY_PASSWORD = os.environ.get('AA_TEAMSPEAK3_SERVERQUERY_PASSWORD', 'passwordhere') diff --git a/celerybeat.pid b/celerybeat.pid deleted file mode 100644 index 7160aec0..00000000 --- a/celerybeat.pid +++ /dev/null @@ -1 +0,0 @@ -28392 diff --git a/celerytask/tasks.py b/celerytask/tasks.py index 38b9ae09..b2b38e36 100755 --- a/celerytask/tasks.py +++ b/celerytask/tasks.py @@ -225,7 +225,8 @@ def run_api_refresh(): 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) - if main_corp_id == settings.CORP_ID: + main_alliance_id = EveManager.get_charater_alliance_id_by_id(authserviceinfo.main_char_id) + 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 blue to member if check_if_user_has_permission(user, "blue_member"): @@ -237,29 +238,38 @@ def run_api_refresh(): 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: + change_status = False if check_if_user_has_permission(user, "member"): - remove_member_permission(user, "member") - remove_user_from_group(user, settings.DEFAULT_AUTH_GROUP) + #remove auth member to prepare for member to blue transition + disable_alliance_member(user, authserviceinfo.main_char_id) + change_status = True if not check_if_user_has_permission(user, "blue_member"): + #perform member to blue transition add_member_permission(user, "blue_member") add_user_to_group(user, settings.DEFAULT_BLUE_GROUP) - - #Fix mumble username ticker - MumbleManager.delete_user(authserviceinfo.mumble_username) - remove_all_syncgroups_for_service(user, "mumble") - AuthServicesInfoManager.update_user_mumble_info("", "", request.user) - - #make new user (how generous) - result = MumbleManager.create_blue_user(character.corporation_ticker, character.character_name) - AuthServicesInfoManager.update_user_mumble_info(result[0], result[1], user) - update_mumble_groups(request.user) + change_status = True + + #if user has mumble account, rename it with proper ticker + if (not authserviceinfo.mumble_username == "") and change_status: + #Fix mumble username ticker + MumbleManager.delete_user(authserviceinfo.mumble_username) + remove_all_syncgroups_for_service(user, "mumble") + AuthServicesInfoManager.update_user_mumble_info("", "", request.user) + #make new user (how generous) + result = MumbleManager.create_blue_user(character.corporation_ticker, character.character_name) + AuthServicesInfoManager.update_user_mumble_info(result[0], result[1], user) + update_mumble_groups(request.user) else: + # disable accounts with missing corp data 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"): @@ -268,7 +278,7 @@ def run_api_refresh(): deactivate_services(user) else: - # nuke it + # 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"): @@ -286,12 +296,27 @@ def run_corp_update(): # I am not proud of this block of code if EveApiManager.check_if_api_server_online(): - # 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, None) - + 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, 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 @@ -333,7 +358,10 @@ def run_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 standing_level in corp_standings: + 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) + 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: @@ -362,7 +390,9 @@ def run_corp_update(): if alliance is not None and all_corp_info.alliance is not None: - if int(alliance.alliance_id) in corp_standings[standing_level]: + 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) + 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, @@ -383,15 +413,18 @@ def run_corp_update(): 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.corporation_id != settings.CORP_ID: + 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 (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 c0b6c17e..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 corp", 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']): diff --git a/eveonline/views.py b/eveonline/views.py index 3f98e3b6..d5b4ab58 100755 --- a/eveonline/views.py +++ b/eveonline/views.py @@ -104,7 +104,7 @@ 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_corporation_id_by_id(char_id) == settings.CORP_ID: + 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, From 984ab31d3348c8261614d3ef43e10bcf065910ed Mon Sep 17 00:00:00 2001 From: Adarnof Date: Sat, 31 Oct 2015 17:59:27 -0400 Subject: [PATCH 21/26] changed templates to reflect corp or alliance toggle created context processors for IS_CORP, ALLIANCE_ID and ALLIANCE_NAME variables Signed-off-by: Adarnof --- alliance_auth/settings.py.example | 3 +++ templates/public/login.html | 9 ++++++--- templates/public/register.html | 6 +++++- templates/registered/addapikey.html | 19 +++++++++++++------ templates/registered/corpstats.html | 6 +++++- templates/registered/dashboard.html | 8 ++++++-- templates/registered/groups.html | 6 +++++- templates/registered/services.html | 6 +++++- .../registration/password_reset_complete.html | 6 +++++- .../registration/password_reset_confirm.html | 7 +++++-- .../registration/password_reset_form.html | 6 +++++- util/context_processors.py | 9 ++++++++- 12 files changed, 71 insertions(+), 20 deletions(-) diff --git a/alliance_auth/settings.py.example b/alliance_auth/settings.py.example index 9c7a6a2c..d86a64df 100755 --- a/alliance_auth/settings.py.example +++ b/alliance_auth/settings.py.example @@ -112,8 +112,11 @@ 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', 'util.context_processors.domain_url' ) diff --git a/templates/public/login.html b/templates/public/login.html index 364536bb..c6e05a8f 100644 --- a/templates/public/login.html +++ b/templates/public/login.html @@ -10,9 +10,12 @@ - - {{ CORP_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 d6e9a881..e61547ad 100644 --- a/templates/public/register.html +++ b/templates/public/register.html @@ -10,7 +10,11 @@ - {{ CORP_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 d39478c3..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 corp do not check "Blue" this is for people who are blue to the - corp - 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 b5db3f77..050dc2ee 100755 --- a/templates/registered/corpstats.html +++ b/templates/registered/corpstats.html @@ -67,7 +67,11 @@

    {% else %} -

    Not part of the corporation

    + {% if IS_CORP %} + + {% else %} + + {% endif %} {% endif %} {% endblock content %} diff --git a/templates/registered/dashboard.html b/templates/registered/dashboard.html index a35fa91b..8cc27ea5 100644 --- a/templates/registered/dashboard.html +++ b/templates/registered/dashboard.html @@ -1,6 +1,6 @@ {% 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 %} @@ -59,7 +59,11 @@ {% else %} -

    Not part of the corporation

    + {% if IS_CORP %} +

    Not part of the corporation.

    + {% else %} +

    Not part of the alliance.

    + {% endif %} {% endif %} {% endblock content %} diff --git a/templates/registered/groups.html b/templates/registered/groups.html index 82f25822..49ebe67a 100644 --- a/templates/registered/groups.html +++ b/templates/registered/groups.html @@ -52,7 +52,11 @@ {% endfor %} {% else %} - + {% if IS_CORP %} + + {% else %} + + {% endif %} {% endif %} diff --git a/templates/registered/services.html b/templates/registered/services.html index 90eb0fe8..81935390 100755 --- a/templates/registered/services.html +++ b/templates/registered/services.html @@ -300,7 +300,11 @@ {% endif %} {% else %} - + {% if IS_CORP %} + + {% else %} + + {% endif %} {% endif %} diff --git a/templates/registration/password_reset_complete.html b/templates/registration/password_reset_complete.html index dd2d7597..0f904ed8 100644 --- a/templates/registration/password_reset_complete.html +++ b/templates/registration/password_reset_complete.html @@ -12,7 +12,11 @@ - {{ CORP_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 13d5d062..14c81116 100644 --- a/templates/registration/password_reset_confirm.html +++ b/templates/registration/password_reset_confirm.html @@ -12,8 +12,11 @@ - {{ CORP_NAME }} - Login - + {% if IS_CORP %} + {{ CORP_NAME }} - Login + {% else %} + {{ ALLIANCE_NAME }} - Login + {% endif %} diff --git a/templates/registration/password_reset_form.html b/templates/registration/password_reset_form.html index 1bdbc9e4..4470f79d 100644 --- a/templates/registration/password_reset_form.html +++ b/templates/registration/password_reset_form.html @@ -12,7 +12,11 @@ - {{ CORP_NAME }} - Login + {% if IS_CORP %} + {{ CORP_NAME }} - Login + {% else %} + {{ ALLIANCE_NAME }} - Login + {% endif %} diff --git a/util/context_processors.py b/util/context_processors.py index e20f5568..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.CORP_NAME} def jabber_url(request): return {'JABBER_URL': settings.JABBER_URL} From e091575453674a58cf22a5cdab3447081bb0c991 Mon Sep 17 00:00:00 2001 From: Adarnof Date: Sat, 31 Oct 2015 21:09:57 -0400 Subject: [PATCH 22/26] fixed indentation error --- celerytask/tasks.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/celerytask/tasks.py b/celerytask/tasks.py index b2b38e36..a7ffeb1c 100755 --- a/celerytask/tasks.py +++ b/celerytask/tasks.py @@ -308,9 +308,9 @@ def run_corp_update(): # 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'], + 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) + 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) From 45b0bb575349808c57079eb9a2220f48f53de2f4 Mon Sep 17 00:00:00 2001 From: Adarnof Date: Sat, 31 Oct 2015 22:46:45 -0400 Subject: [PATCH 23/26] corrected function parameters --- celerytask/tasks.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/celerytask/tasks.py b/celerytask/tasks.py index a7ffeb1c..ca9616f8 100755 --- a/celerytask/tasks.py +++ b/celerytask/tasks.py @@ -273,7 +273,7 @@ def run_api_refresh(): 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, authserviceonfo.main_char_id) + disable_blue_member(user) else: deactivate_services(user) From 9402329374cdafbf8ab6bc604f8f3179de9cd65a Mon Sep 17 00:00:00 2001 From: Adarnof Date: Sun, 1 Nov 2015 01:45:40 -0400 Subject: [PATCH 24/26] added corp change handling while auth'd --- celerytask/tasks.py | 38 ++++++++++++++++++++------------------ 1 file changed, 20 insertions(+), 18 deletions(-) diff --git a/celerytask/tasks.py b/celerytask/tasks.py index ca9616f8..be3cbfe9 100755 --- a/celerytask/tasks.py +++ b/celerytask/tasks.py @@ -18,6 +18,9 @@ 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 def generate_corp_group_name(corpname): return 'Corp_' + corpname.replace(' ', '_') @@ -208,6 +211,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=authservicesinfo.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): @@ -228,13 +233,23 @@ def run_api_refresh(): main_alliance_id = EveManager.get_charater_alliance_id_by_id(authserviceinfo.main_char_id) 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 blue to 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(settings.DEFAULT_BLUE_GROUP) + remove_user_from_group(user, settings.DEFAULT_BLUE_GROUP) + #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"): @@ -247,29 +262,16 @@ def run_api_refresh(): #stay nobody, make sure no services deactivate_services(user) else: - change_status = False 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) - change_status = True if not check_if_user_has_permission(user, "blue_member"): - #perform member to blue transition + #perform nobody to blue transition add_member_permission(user, "blue_member") add_user_to_group(user, settings.DEFAULT_BLUE_GROUP) - change_status = True - - #if user has mumble account, rename it with proper ticker - if (not authserviceinfo.mumble_username == "") and change_status: - #Fix mumble username ticker - MumbleManager.delete_user(authserviceinfo.mumble_username) - remove_all_syncgroups_for_service(user, "mumble") - AuthServicesInfoManager.update_user_mumble_info("", "", request.user) - #make new user (how generous) - result = MumbleManager.create_blue_user(character.corporation_ticker, character.character_name) - AuthServicesInfoManager.update_user_mumble_info(result[0], result[1], user) - update_mumble_groups(request.user) + else: - # disable accounts with missing corp data + # 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"): From 7ad37c2cd26313be9c34a3f9dfdd1f8472739423 Mon Sep 17 00:00:00 2001 From: Adarnof Date: Wed, 4 Nov 2015 17:35:07 +0000 Subject: [PATCH 25/26] Corrected typo in run_api_refresh --- celerytask/tasks.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/celerytask/tasks.py b/celerytask/tasks.py index be3cbfe9..0598cf65 100755 --- a/celerytask/tasks.py +++ b/celerytask/tasks.py @@ -212,7 +212,7 @@ def run_api_refresh(): 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=authservicesinfo.main_char_id).corporation_id + 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): From 6c4520bf58cd098aa5667f9d3459f395842706ee Mon Sep 17 00:00:00 2001 From: Adarnof Date: Wed, 4 Nov 2015 19:54:14 +0000 Subject: [PATCH 26/26] Update IS_BLUE authserviceinfo field during blue<->member transition --- celerytask/tasks.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/celerytask/tasks.py b/celerytask/tasks.py index 0598cf65..edfb5449 100755 --- a/celerytask/tasks.py +++ b/celerytask/tasks.py @@ -21,6 +21,7 @@ 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(' ', '_') @@ -37,6 +38,7 @@ 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) @@ -238,6 +240,7 @@ def run_api_refresh(): #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) @@ -269,6 +272,7 @@ def run_api_refresh(): #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)