Bulk of the profile work is done.

This commit is contained in:
Adarnof
2017-03-23 22:54:25 -04:00
parent bb87fdd958
commit e15d79b834
155 changed files with 1693 additions and 3080 deletions

View File

@@ -33,11 +33,6 @@ class Teamspeak3Manager:
sanatized = "[" + corp_ticker + "]" + username
return sanatized[:30]
@staticmethod
def __generate_username_blue(username, corp_ticker):
sanatized = "[BLUE][" + corp_ticker + "]" + username
return sanatized[:30]
@staticmethod
def _get_userid(uid):
logger.debug("Looking for uid %s on TS3 server." % uid)
@@ -210,34 +205,6 @@ class Teamspeak3Manager:
logger.exception("Failed to add teamspeak user %s - received response: %s" % (username_clean, ret))
return "", ""
@staticmethod
def add_blue_user(username, corp_ticker):
username_clean = Teamspeak3Manager.__santatize_username(Teamspeak3Manager.__generate_username_blue(username,
corp_ticker))
server = Teamspeak3Manager.__get_created_server()
logger.debug("Adding user to TS3 server with cleaned username %s" % username_clean)
server_groups = Teamspeak3Manager._group_list()
if settings.DEFAULT_BLUE_GROUP not in server_groups:
Teamspeak3Manager._create_group(settings.DEFAULT_BLUE_GROUP)
blue_group_id = Teamspeak3Manager._group_id_by_name(settings.DEFAULT_BLUE_GROUP)
try:
ret = server.send_command('tokenadd', {'tokentype': 0, 'tokenid1': blue_group_id, 'tokenid2': 0,
'tokendescription': username_clean,
'tokencustomset': "ident=sso_uid value=%s" % username_clean})
except TeamspeakError as e:
logger.error("Failed to add blue teamspeak user %s: %s" % (username, str(e)))
return "",""
try:
token = ret['keys']['token']
logger.info("Created permission token for blue user %s on TS3 server" % username_clean)
return username_clean, token
except:
logger.exception("Failed to add blue teamspeak user %s - received response: %s" % (username_clean, ret))
return "", ""
@staticmethod
def delete_user(uid):
server = Teamspeak3Manager.__get_created_server()

View File

@@ -3,13 +3,10 @@ from __future__ import unicode_literals
import logging
from alliance_auth.celeryapp import app
from celery.schedules import crontab
from django.conf import settings
from django.contrib.auth.models import User
from django.core.exceptions import ObjectDoesNotExist
from notifications import notify
from authentication.models import AuthServicesInfo
from .util.ts3 import TeamspeakError
from .manager import Teamspeak3Manager
from .models import AuthTS, TSgroup, UserTSgroup, Teamspeak3User

View File

@@ -4,11 +4,6 @@ from django.contrib import messages
from django.contrib.auth.decorators import login_required, permission_required
from django.shortcuts import render, redirect
from authentication.states import BLUE_STATE
from authentication.models import AuthServicesInfo
from eveonline.managers import EveManager
from eveonline.models import EveAllianceInfo
from services.modules.teamspeak3.manager import Teamspeak3Manager
from .forms import TeamspeakJoinForm
@@ -25,20 +20,11 @@ ACCESS_PERM = 'teamspeak3.access_teamspeak3'
def activate_teamspeak3(request):
logger.debug("activate_teamspeak3 called by user %s" % request.user)
authinfo = AuthServicesInfo.objects.get(user=request.user)
character = EveManager.get_main_character(request.user)
character = request.user.profile.main_character
ticker = character.corporation_ticker
if authinfo.state == BLUE_STATE:
logger.debug("Adding TS3 user for blue user %s with main character %s" % (request.user, character))
# Blue members should have alliance ticker (if in alliance)
if EveAllianceInfo.objects.filter(alliance_id=character.alliance_id).exists():
alliance = EveAllianceInfo.objects.filter(alliance_id=character.alliance_id)[0]
ticker = alliance.alliance_ticker
result = Teamspeak3Manager.add_blue_user(character.character_name, ticker)
else:
logger.debug("Adding TS3 user for user %s with main character %s" % (request.user, character))
result = Teamspeak3Manager.add_user(character.character_name, ticker)
logger.debug("Adding TS3 user for user %s with main character %s" % (request.user, character))
result = Teamspeak3Manager.add_user(character.character_name, ticker)
# if its empty we failed
if result[0] is not "":
@@ -93,20 +79,12 @@ def reset_teamspeak3_perm(request):
logger.debug("reset_teamspeak3_perm called by user %s" % request.user)
if not Teamspeak3Tasks.has_account(request.user):
return redirect("auth_services")
authinfo = AuthServicesInfo.objects.get(user=request.user)
character = EveManager.get_main_character(request.user)
character = request.user.profile.main_character
logger.debug("Deleting TS3 user for user %s" % request.user)
Teamspeak3Manager.delete_user(request.user.teamspeak3.uid)
if authinfo.state == BLUE_STATE:
logger.debug(
"Generating new permission key for blue user %s with main character %s" % (request.user, character))
result = Teamspeak3Manager.generate_new_blue_permissionkey(request.user.teamspeak3.uid,
character.character_name,
character.corporation_ticker)
else:
logger.debug("Generating new permission key for user %s with main character %s" % (request.user, character))
result = Teamspeak3Manager.generate_new_permissionkey(request.user.teamspeak3.uid, character.character_name,
logger.debug("Generating new permission key for user %s with main character %s" % (request.user, character))
result = Teamspeak3Manager.generate_new_permissionkey(request.user.teamspeak3.uid, character.character_name,
character.corporation_ticker)
# if blank we failed