-
-
-
-
diff --git a/alliance_auth/settings.py.example b/alliance_auth/settings.py.example
index fec7351c..26fcd0b5 100755
--- a/alliance_auth/settings.py.example
+++ b/alliance_auth/settings.py.example
@@ -161,7 +161,7 @@ STATIC_URL = '/static/'
# Set to FALSE for alliance
# Set to TRUE for corp
###########################
-IS_CORP = 'False' == os.environ.get('AA_IS_CORP', 'True')
+IS_CORP = 'True' == os.environ.get('AA_IS_CORP', 'True')
#################
diff --git a/celerytask/tasks.py b/celerytask/tasks.py
index c835950b..45f758e9 100755
--- a/celerytask/tasks.py
+++ b/celerytask/tasks.py
@@ -211,7 +211,9 @@ 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=authserviceinfo.main_char_id).corporation_id
+ oldcorp_id = 0
+ if EveManager.get_character_by_id(authserviceinfo.main_char_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):
@@ -227,59 +229,66 @@ def run_api_refresh():
if valid_key:
# Check our main character
character = EveManager.get_character_by_id(authserviceinfo.main_char_id)
- corp = EveManager.get_corporation_info_by_id(character.corporation_id)
- main_corp_id = EveManager.get_charater_corporation_id_by_id(authserviceinfo.main_char_id)
- main_alliance_id = EveManager.get_charater_alliance_id_by_id(authserviceinfo.main_char_id)
- if (settings.IS_CORP and main_corp_id == settings.CORP_ID) or (not settings.IS_CORP and main_alliance_id == settings.ALLIANCE_ID):
- if not check_if_user_has_permission(user, "member"):
- #transition from none or blue to member
- if check_if_user_has_permission(user, "blue_member"):
- #strip blue status
- remove_member_permission(user, "blue_member")
- remove_user_from_group(user, settings.DEFAULT_BLUE_GROUP)
- AuthServicesInfoManager.update_is_blue(False, user)
- #add to auth group
- add_member_permission(user, "member")
- add_user_to_group(user, settings.DEFAULT_AUTH_GROUP)
- #add to required corp group
- add_user_to_group(user, generate_corp_group_name(character.corporation_name))
- elif corp.corporation_id != oldcorp_id:
- #changed corps, both corps auth'd, need to change group assignment
- oldcorp = EveCorporationInfo.objects.get(corporation_id=oldcorp_id)
- remove_user_from_group(user, generate_corp_group_name(oldcorp.corporation_name))
- add_user_to_group(user, generate_corp_group_name(character.corporation_name))
- #reset services to force new mumble names and group assignments
- deactivate_services(user)
- elif corp is not None:
- if corp.is_blue is not True:
+ if character is not None and EveManager.check_if_corporation_exists_by_id(character.corporation_id):
+ corp = EveManager.get_corporation_info_by_id(character.corporation_id)
+ main_corp_id = EveManager.get_charater_corporation_id_by_id(authserviceinfo.main_char_id)
+ main_alliance_id = EveManager.get_charater_alliance_id_by_id(authserviceinfo.main_char_id)
+ if (settings.IS_CORP and main_corp_id == settings.CORP_ID) or (not settings.IS_CORP and main_alliance_id == settings.ALLIANCE_ID):
+ if not check_if_user_has_permission(user, "member"):
+ #transition from none or blue to member
+ if check_if_user_has_permission(user, "blue_member"):
+ #strip blue status
+ remove_member_permission(user, "blue_member")
+ remove_user_from_group(user, settings.DEFAULT_BLUE_GROUP)
+ AuthServicesInfoManager.update_is_blue(False, user)
+ #add to auth group
+ add_member_permission(user, "member")
+ add_user_to_group(user, settings.DEFAULT_AUTH_GROUP)
+ #add to required corp group
+ add_user_to_group(user, generate_corp_group_name(character.corporation_name))
+ elif corp.corporation_id != oldcorp_id:
+ #changed corps, both corps auth'd, need to change group assignment
+ oldcorp = EveCorporationInfo.objects.get(corporation_id=oldcorp_id)
+ remove_user_from_group(user, generate_corp_group_name(oldcorp.corporation_name))
+ add_user_to_group(user, generate_corp_group_name(character.corporation_name))
+ #reset services to force new mumble names and group assignments
+ deactivate_services(user)
+ elif corp is not None:
+ if corp.is_blue is not True:
+ if check_if_user_has_permission(user, "member"):
+ #transition from member to nobody
+ disable_alliance_member(user, authserviceinfo.main_char_id)
+ elif check_if_user_has_permission(user, "blue_member"):
+ #transition from blue to nobody
+ disable_blue_member(user)
+ else:
+ #stay nobody, make sure no services
+ deactivate_services(user)
+ else:
+ if check_if_user_has_permission(user, "member"):
+ #remove auth member to prepare for member to blue transition
+ disable_alliance_member(user, authserviceinfo.main_char_id)
+ if not check_if_user_has_permission(user, "blue_member"):
+ #perform nobody to blue transition
+ add_member_permission(user, "blue_member")
+ add_user_to_group(user, settings.DEFAULT_BLUE_GROUP)
+ AuthServicesInfoManager.update_is_blue(True, user)
+
+ else:
+ # disable accounts with missing corp model (not blue or member)
if check_if_user_has_permission(user, "member"):
- #transition from member to nobody
disable_alliance_member(user, authserviceinfo.main_char_id)
elif check_if_user_has_permission(user, "blue_member"):
- #transition from blue to nobody
disable_blue_member(user)
else:
- #stay nobody, make sure no services
deactivate_services(user)
- else:
- if check_if_user_has_permission(user, "member"):
- #remove auth member to prepare for member to blue transition
- disable_alliance_member(user, authserviceinfo.main_char_id)
- if not check_if_user_has_permission(user, "blue_member"):
- #perform nobody to blue transition
- add_member_permission(user, "blue_member")
- add_user_to_group(user, settings.DEFAULT_BLUE_GROUP)
- AuthServicesInfoManager.update_is_blue(True, user)
-
else:
- # disable accounts with missing corp model (not blue or member)
if check_if_user_has_permission(user, "member"):
disable_alliance_member(user, authserviceinfo.main_char_id)
elif check_if_user_has_permission(user, "blue_member"):
disable_blue_member(user)
else:
deactivate_services(user)
-
else:
# disable accounts with invalid keys
if check_if_user_has_permission(user, "member"):
@@ -313,7 +322,7 @@ def run_corp_update():
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)
+ 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)
@@ -419,7 +428,7 @@ def run_corp_update():
# Remove irrelevent corp and alliance models
# Check the corps
for all_corp_info in EveManager.get_all_corporation_info():
- 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 (settings.IS_CORP and all_corp_info.corporation_id != settings.CORP_ID) or (not settings.IS_CORP and all_corp_info.alliance.alliance_id != settings.ALLIANCE_ID):
if not all_corp_info.is_blue:
all_corp_info.delete()
@@ -428,7 +437,3 @@ def run_corp_update():
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/groupmanagement/admin.py b/groupmanagement/admin.py
index 59a1e5c4..c89f1c75 100644
--- a/groupmanagement/admin.py
+++ b/groupmanagement/admin.py
@@ -2,7 +2,9 @@ from django.contrib import admin
from models import GroupDescription
from models import GroupRequest
+from models import HiddenGroup
admin.site.register(GroupDescription)
admin.site.register(GroupRequest)
+admin.site.register(HiddenGroup)
diff --git a/groupmanagement/models.py b/groupmanagement/models.py
index 895728d6..d6ca4ffe 100644
--- a/groupmanagement/models.py
+++ b/groupmanagement/models.py
@@ -21,4 +21,10 @@ class GroupRequest(models.Model):
main_char = models.ForeignKey(EveCharacter)
def __str__(self):
- return self.user.username + ":" + self.group.name
\ No newline at end of file
+ return self.user.username + ":" + self.group.name
+
+class HiddenGroup(models.Model):
+ group = models.ForeignKey(Group, unique=True)
+
+ def __str__(self):
+ return self.group.name + " - Hidden"
diff --git a/groupmanagement/views.py b/groupmanagement/views.py
index e817dbb6..44042e5f 100755
--- a/groupmanagement/views.py
+++ b/groupmanagement/views.py
@@ -8,6 +8,7 @@ from django.contrib.auth.models import Group
from models import GroupDescription
from models import GroupRequest
+from models import HiddenGroup
from authentication.managers import AuthServicesInfoManager
from eveonline.managers import EveManager
@@ -100,6 +101,8 @@ def groups_view(request):
pass
elif settings.DEFAULT_BLUE_GROUP in group.name:
pass
+ elif HiddenGroup.objects.filter(group=group).exists():
+ pass
else:
# Get the descriptionn
groupDesc = GroupDescription.objects.filter(group=group)
diff --git a/registration/forms.py b/registration/forms.py
index 11d66f51..9a6b8324 100644
--- a/registration/forms.py
+++ b/registration/forms.py
@@ -3,7 +3,7 @@ from django.contrib.auth.models import User
class RegistrationForm(forms.Form):
- username = forms.CharField(max_length=32, required=True)
+ username = forms.CharField(max_length=30, required=True)
password = forms.CharField(widget=forms.PasswordInput(), required=True)
password_again = forms.CharField(widget=forms.PasswordInput(), required=True, label="Password Again")
email = forms.CharField(max_length=254, required=True)
@@ -28,4 +28,4 @@ class RegistrationForm(forms.Form):
if self.cleaned_data['email'] != self.cleaned_data['email_again']:
raise forms.ValidationError(u'Emails do not match')
- return self.cleaned_data
\ No newline at end of file
+ return self.cleaned_data
diff --git a/services/managers/phpbb3_manager.py b/services/managers/phpbb3_manager.py
index ce9dc62f..26ffea4d 100755
--- a/services/managers/phpbb3_manager.py
+++ b/services/managers/phpbb3_manager.py
@@ -32,9 +32,18 @@ class Phpbb3Manager:
SQL_GET_USER_GROUPS = r"SELECT phpbb_groups.group_name FROM phpbb_groups , phpbb_user_group WHERE " \
r"phpbb_user_group.group_id = phpbb_groups.group_id AND user_id=%s"
+ SQL_ADD_USER_AVATAR = r"UPDATE phpbb_users SET user_avatar_type=2, user_avatar_width=64, user_avatar_height=64, user_avatar=%s WHERE user_id = %s"
+
def __init__(self):
pass
+ @staticmethod
+ def __add_avatar(username, characterid):
+ avatar_url = "http://image.eveonline.com/Character/" + characterid + "_64.jpg"
+ cursor = connections['phpbb3'].cursor()
+ userid = Phpbb3Manager.__get_user_id(username)
+ cursor.execute(Phpbb3Manager.SQL_ADD_USER_AVATAR, [avatar_url, userid])
+
@staticmethod
def __generate_random_pass():
return os.urandom(8).encode('hex')
@@ -113,7 +122,7 @@ class Phpbb3Manager:
pass
@staticmethod
- def add_user(username, email, groups):
+ def add_user(username, email, groups, characterid):
cursor = connections['phpbb3'].cursor()
username_clean = Phpbb3Manager.__santatize_username(username)
@@ -130,6 +139,7 @@ class Phpbb3Manager:
email, 2, Phpbb3Manager.__get_current_utc_date(),
"", ""])
Phpbb3Manager.update_groups(username_clean, groups)
+ Phpbb3Manager.__add_avatar(username_clean, characterid)
except:
pass
@@ -203,12 +213,13 @@ class Phpbb3Manager:
return False
@staticmethod
- def update_user_password(username):
+ def update_user_password(username, characterid):
cursor = connections['phpbb3'].cursor()
password = Phpbb3Manager.__generate_random_pass()
if Phpbb3Manager.check_user(username):
pwhash = Phpbb3Manager.__gen_hash(password)
cursor.execute(Phpbb3Manager.SQL_UPDATE_USER_PASSWORD, [pwhash, username])
+ Phpbb3Manager.__add_avatar(username, characterid)
return password
return ""
@@ -219,4 +230,4 @@ class Phpbb3Manager:
try:
cursor.execute(Phpbb3Manager.SQL_DIS_USER, [email, password, username])
except:
- pass
\ No newline at end of file
+ pass
diff --git a/services/managers/teamspeak3_manager.py b/services/managers/teamspeak3_manager.py
index 4c50dab1..291b58a1 100755
--- a/services/managers/teamspeak3_manager.py
+++ b/services/managers/teamspeak3_manager.py
@@ -115,19 +115,22 @@ class Teamspeak3Manager:
@staticmethod
def _sync_ts_group_db():
- remote_groups = Teamspeak3Manager._group_list()
- local_groups = TSgroup.objects.all()
- for key in remote_groups:
- remote_groups[key] = int(remote_groups[key])
+ try:
+ remote_groups = Teamspeak3Manager._group_list()
+ local_groups = TSgroup.objects.all()
+ for key in remote_groups:
+ remote_groups[key] = int(remote_groups[key])
- for group in local_groups:
- if group.ts_group_id not in remote_groups.values():
- TSgroup.objects.filter(ts_group_id=group.ts_group_id).delete()
- for key in remote_groups:
- g = TSgroup(ts_group_id=remote_groups[key],ts_group_name=key)
- q = TSgroup.objects.filter(ts_group_id=g.ts_group_id)
- if not q:
- g.save()
+ for group in local_groups:
+ if group.ts_group_id not in remote_groups.values():
+ TSgroup.objects.filter(ts_group_id=group.ts_group_id).delete()
+ for key in remote_groups:
+ g = TSgroup(ts_group_id=remote_groups[key],ts_group_name=key)
+ q = TSgroup.objects.filter(ts_group_id=g.ts_group_id)
+ if not q:
+ g.save()
+ except:
+ pass
@staticmethod
def add_user(username, corp_ticker):
@@ -139,9 +142,9 @@ class Teamspeak3Manager:
server_groups = Teamspeak3Manager._group_list()
if not settings.DEFAULT_AUTH_GROUP in server_groups:
- Teamspeak3Manager._create_group(settings.DEFAULT_ALLIANCE_GROUP)
+ Teamspeak3Manager._create_group(settings.DEFAULT_AUTH_GROUP)
- alliance_group_id = Teamspeak3Manager._group_id_by_name(settings.DEFAULT_ALLIANCE_GROUP)
+ alliance_group_id = Teamspeak3Manager._group_id_by_name(settings.DEFAULT_AUTH_GROUP)
ret = server.send_command('tokenadd', {'tokentype': 0, 'tokenid1': alliance_group_id, 'tokenid2': 0,
'tokendescription': username_clean,
diff --git a/services/managers/util/ts3.py b/services/managers/util/ts3.py
index f13a04ba..1122737b 100755
--- a/services/managers/util/ts3.py
+++ b/services/managers/util/ts3.py
@@ -139,11 +139,12 @@ class TS3Proto():
v = [v[0], '='.join(v[1:])]
key, value = v
keys[key] = self._unescape_str(value)
- elif v[0][0] and v[0][0] == '-':
- # Option
- opts.append(v[0][1:])
- else:
- command = v[0]
+ elif (not v == ['']):
+ if v[0][0] and v[0][0] == '-':
+ # Option
+ opts.append(v[0][1:])
+ else:
+ command = v[0]
d = {'keys': keys, 'opts': opts}
if command:
@@ -241,4 +242,4 @@ class TS3Server(TS3Proto):
@type id: int
"""
if self._connected and id > 0:
- self.send_command('use', keys={'sid': id})
\ No newline at end of file
+ self.send_command('use', keys={'sid': id})
diff --git a/services/views.py b/services/views.py
index 7b09d8c6..f0ba185b 100755
--- a/services/views.py
+++ b/services/views.py
@@ -100,7 +100,7 @@ def activate_forum(request):
authinfo = AuthServicesInfoManager.get_auth_service_info(request.user)
# Valid now we get the main characters
character = EveManager.get_character_by_id(authinfo.main_char_id)
- result = Phpbb3Manager.add_user(character.character_name, request.user.email, ['REGISTERED'])
+ result = Phpbb3Manager.add_user(character.character_name, request.user.email, ['REGISTERED'], authinfo.main_char_id)
# if empty we failed
if result[0] != "":
AuthServicesInfoManager.update_user_forum_info(result[0], result[1], request.user)
@@ -126,7 +126,7 @@ def deactivate_forum(request):
@user_passes_test(service_blue_alliance_test)
def reset_forum_password(request):
authinfo = AuthServicesInfoManager.get_auth_service_info(request.user)
- result = Phpbb3Manager.update_user_password(authinfo.forum_username)
+ result = Phpbb3Manager.update_user_password(authinfo.forum_username, authinfo.main_char_id)
# false we failed
if result != "":
AuthServicesInfoManager.update_user_forum_info(authinfo.forum_username, result, request.user)
diff --git a/static/img/index_images/Thumbs.db b/static/img/index_images/Thumbs.db
deleted file mode 100644
index 748e9555..00000000
Binary files a/static/img/index_images/Thumbs.db and /dev/null differ
diff --git a/templates/public/base.html b/templates/public/base.html
index cc582d80..d2153f1e 100755
--- a/templates/public/base.html
+++ b/templates/public/base.html
@@ -37,9 +37,9 @@
{% if IS_CORP %}
-
+
+
-
-
-
-