mirror of
https://gitlab.com/allianceauth/allianceauth.git
synced 2025-07-11 21:40:17 +02:00
Merge pull request #319 from Adarnof/receiver
Replace run_databaseUpdate with m2m receiver
This commit is contained in:
commit
ae1da75d81
@ -0,0 +1 @@
|
||||
import signals
|
29
celerytask/signals.py
Normal file
29
celerytask/signals.py
Normal file
@ -0,0 +1,29 @@
|
||||
from django.db.models.signals import m2m_changed
|
||||
from django.dispatch import receiver
|
||||
from django.contrib.auth.models import User
|
||||
import logging
|
||||
from .tasks import update_jabber_groups
|
||||
from .tasks import update_mumble_groups
|
||||
from .tasks import update_forum_groups
|
||||
from .tasks import update_ipboard_groups
|
||||
from .tasks import update_discord_groups
|
||||
from authentication.models import AuthServicesInfo
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
@receiver(m2m_changed, sender=User.groups.through)
|
||||
def m2m_changed_user_groups(sender, instance, action, *args, **kwargs):
|
||||
logger.debug("Received m2m_changed from %s groups with action %s" % (instance, action))
|
||||
if action=="post_add" or action=="post_remove" or action=="post_clear":
|
||||
logger.debug("Triggering service group update for %s" % instance)
|
||||
auth, c = AuthServicesInfo.objects.get_or_create(user=instance)
|
||||
if auth.jabber_username:
|
||||
update_jabber_groups.delay(instance)
|
||||
if auth.jabber_username:
|
||||
update_jabber_groups.delay(instance)
|
||||
if auth.forum_username:
|
||||
update_forum_groups.delay(instance)
|
||||
if auth.ipboard_username:
|
||||
update_ipboard_groups.delay(instance)
|
||||
if auth.discord_username:
|
||||
update_discord_groups.delay(instance)
|
@ -4,7 +4,6 @@ from django.contrib.auth.models import User
|
||||
from django.contrib.auth.models import Group
|
||||
from notifications import notify
|
||||
from celery import task
|
||||
from models import SyncGroupCache
|
||||
from celery.task.schedules import crontab
|
||||
from services.managers.openfire_manager import OpenfireManager
|
||||
from services.managers.mumble_manager import MumbleManager
|
||||
@ -54,68 +53,75 @@ def disable_member(user):
|
||||
def is_teamspeak3_active():
|
||||
return settings.ENABLE_AUTH_TEAMSPEAK3 or settings.ENABLE_BLUE_TEAMSPEAK3
|
||||
|
||||
@task
|
||||
def update_jabber_groups(user):
|
||||
logger.debug("Updating jabber groups for user %s" % user)
|
||||
syncgroups = SyncGroupCache.objects.filter(user=user)
|
||||
authserviceinfo = AuthServicesInfo.objects.get(user=user)
|
||||
groups = []
|
||||
logger.debug("User %s has %s syncgroups." % (user, len(syncgroups)))
|
||||
for syncgroup in syncgroups:
|
||||
groups.append(str(syncgroup.groupname))
|
||||
|
||||
for group in user.groups.all():
|
||||
groups.append(str(group.name))
|
||||
if len(groups) == 0:
|
||||
groups.append('empty')
|
||||
logger.debug("Updating user %s jabber groups to %s" % (user, groups))
|
||||
|
||||
OpenfireManager.update_user_groups(authserviceinfo.jabber_username, authserviceinfo.jabber_password, groups)
|
||||
try:
|
||||
OpenfireManager.update_user_groups(authserviceinfo.jabber_username, authserviceinfo.jabber_password, groups)
|
||||
except:
|
||||
logger.warn("Jabber group sync failed for %s, retrying in 10 mins" % user)
|
||||
raise self.retry(countdown = 60 * 10)
|
||||
logger.debug("Updated user %s jabber groups." % user)
|
||||
|
||||
|
||||
@task
|
||||
def update_mumble_groups(user):
|
||||
logger.debug("Updating mumble groups for user %s" % user)
|
||||
syncgroups = SyncGroupCache.objects.filter(user=user)
|
||||
authserviceinfo = AuthServicesInfo.objects.get(user=user)
|
||||
groups = []
|
||||
logger.debug("User %s has %s syncgroups." % (user, len(syncgroups)))
|
||||
for syncgroup in syncgroups:
|
||||
groups.append(str(syncgroup.groupname))
|
||||
|
||||
for group in user.groups.all():
|
||||
groups.append(str(group.name))
|
||||
if len(groups) == 0:
|
||||
groups.append('empty')
|
||||
logger.debug("Updating user %s mumble groups to %s" % (user, groups))
|
||||
MumbleManager.update_groups(authserviceinfo.mumble_username, groups)
|
||||
try:
|
||||
MumbleManager.update_groups(authserviceinfo.mumble_username, groups)
|
||||
except:
|
||||
logger.warn("Mumble group sync failed for %s, retrying in 10 mins" % user)
|
||||
raise self.retry(countdown = 60 * 10)
|
||||
logger.debug("Updated user %s mumble groups." % user)
|
||||
|
||||
@task
|
||||
def update_forum_groups(user):
|
||||
logger.debug("Updating forum groups for user %s" % user)
|
||||
syncgroups = SyncGroupCache.objects.filter(user=user)
|
||||
authserviceinfo = AuthServicesInfo.objects.get(user=user)
|
||||
groups = []
|
||||
logger.debug("User %s has %s syncgroups." % (user, len(syncgroups)))
|
||||
for syncgroup in syncgroups:
|
||||
groups.append(str(syncgroup.groupname))
|
||||
|
||||
for group in user.groups.all():
|
||||
groups.append(str(group.name))
|
||||
if len(groups) == 0:
|
||||
groups.append('empty')
|
||||
logger.debug("Updating user %s forum groups to %s" % (user, groups))
|
||||
Phpbb3Manager.update_groups(authserviceinfo.forum_username, groups)
|
||||
try:
|
||||
Phpbb3Manager.update_groups(authserviceinfo.forum_username, groups)
|
||||
except:
|
||||
logger.warn("Phpbb group sync failed for %s, retrying in 10 mins" % user)
|
||||
raise self.retry(countdown = 60 * 10)
|
||||
logger.debug("Updated user %s forum groups." % user)
|
||||
|
||||
@task
|
||||
def update_ipboard_groups(user):
|
||||
logger.debug("Updating user %s ipboard groups." % user)
|
||||
syncgroups = SyncGroupCache.objects.filter(user=user)
|
||||
authserviceinfo = AuthServicesInfo.objects.get(user=user)
|
||||
groups = []
|
||||
logger.debug("User %s has %s syncgroups." % (user, len(syncgroups)))
|
||||
for syncgroup in syncgroups:
|
||||
groups.append(str(syncgroup.groupname))
|
||||
|
||||
for group in user.groups.all():
|
||||
groups.append(str(group.name))
|
||||
if len(groups) == 0:
|
||||
groups.append('empty')
|
||||
logger.debug("Updating user %s ipboard groups to %s" % (user, groups))
|
||||
IPBoardManager.update_groups(authserviceinfo.ipboard_username, groups)
|
||||
try:
|
||||
IPBoardManager.update_groups(authserviceinfo.ipboard_username, groups)
|
||||
except:
|
||||
logger.warn("IPBoard group sync failed for %s, retrying in 10 mins" % user)
|
||||
raise self.retry(countdown = 60 * 10)
|
||||
logger.debug("Updated user %s ipboard groups." % user)
|
||||
|
||||
@task
|
||||
def update_teamspeak3_groups(user):
|
||||
logger.debug("Updating user %s teamspeak3 groups" % user)
|
||||
usergroups = user.groups.all()
|
||||
@ -131,129 +137,23 @@ def update_teamspeak3_groups(user):
|
||||
Teamspeak3Manager.update_groups(authserviceinfo.teamspeak3_uid, groups)
|
||||
logger.debug("Updated user %s teamspeak3 groups." % user)
|
||||
|
||||
@task
|
||||
def update_discord_groups(user):
|
||||
logger.debug("Updating discord groups for user %s" % user)
|
||||
syncgroups = SyncGroupCache.objects.filter(user=user)
|
||||
authserviceinfo = AuthServicesInfo.objects.get(user=user)
|
||||
groups = []
|
||||
for syncgroup in syncgroups:
|
||||
groups.append(str(syncgroup.groupname))
|
||||
|
||||
logger.debug("User %s has %s syncgroups." % (user, len(syncgroups)))
|
||||
for group in user.groups.all():
|
||||
groups.append(str(group.name))
|
||||
if len(groups) == 0:
|
||||
logger.debug("No syncgroups found for user. Adding empty group.")
|
||||
groups.append('empty')
|
||||
logger.debug("Updating user %s discord groups to %s" % (user, groups))
|
||||
DiscordManager.update_groups(authserviceinfo.discord_uid, groups)
|
||||
try:
|
||||
DiscordManager.update_groups(authserviceinfo.discord_uid, groups)
|
||||
except:
|
||||
logger.warn("Discord group sync failed for %s, retrying in 10 mins" % user)
|
||||
raise self.retry(countdown = 60 * 10)
|
||||
logger.debug("Updated user %s discord groups." % user)
|
||||
|
||||
def create_syncgroup_for_user(user, groupname, servicename):
|
||||
logger.debug("Creating syncgroupcache for user %s group %s in service %s" % (user, groupname, servicename))
|
||||
synccache = SyncGroupCache()
|
||||
synccache.groupname = groupname
|
||||
synccache.user = user
|
||||
synccache.servicename = servicename
|
||||
synccache.save()
|
||||
logger.info("Created syncgroup for user %s group %s in service %s" % (user, groupname, servicename))
|
||||
|
||||
|
||||
def remove_all_syncgroups_for_service(user, servicename):
|
||||
logger.debug("Removing all syncgroups for user %s service %s" % (user, servicename))
|
||||
syncgroups = SyncGroupCache.objects.filter(user=user)
|
||||
logger.debug("User %s has %s syncgroups." % (user, len(syncgroups)))
|
||||
for syncgroup in syncgroups:
|
||||
if syncgroup.servicename == servicename:
|
||||
logger.debug("Deleting syncgroups %s" % syncgroup)
|
||||
syncgroup.delete()
|
||||
logger.info("Removed all syncgroups for user %s service %s" % (user, servicename))
|
||||
|
||||
|
||||
def add_to_databases(user, groups, syncgroups):
|
||||
logger.debug("add_to_database for user %s called. groups %s - syncgroups %s" % (user, groups, syncgroups))
|
||||
authserviceinfo = None
|
||||
try:
|
||||
authserviceinfo = AuthServicesInfo.objects.get(user=user)
|
||||
logger.debug("Got authservicesinfo object %s" % authserviceinfo)
|
||||
except:
|
||||
logger.debug("No authservicesinfo object found for user %s" % user)
|
||||
pass
|
||||
|
||||
if authserviceinfo:
|
||||
authserviceinfo = AuthServicesInfo.objects.get(user=user)
|
||||
|
||||
if authserviceinfo.teamspeak3_uid and authserviceinfo.teamspeak3_uid != "":
|
||||
logger.debug("Updating user TS groups.")
|
||||
update_teamspeak3_groups(user)
|
||||
|
||||
for group in groups:
|
||||
if authserviceinfo.jabber_username and authserviceinfo.jabber_username != "":
|
||||
if syncgroups.filter(groupname=group.name).filter(servicename="openfire").exists() is not True:
|
||||
logger.debug("User %s has jabber username %s - missing group %s." % (user, authserviceinfo.jabber_username, group.name))
|
||||
create_syncgroup_for_user(user, group.name, "openfire")
|
||||
update_jabber_groups(user)
|
||||
if authserviceinfo.mumble_username and authserviceinfo.mumble_username != "":
|
||||
if syncgroups.filter(groupname=group.name).filter(servicename="mumble").exists() is not True:
|
||||
logger.debug("User %s has mumble username %s - missing group %s." % (user, authserviceinfo.mumble_username, group.name))
|
||||
create_syncgroup_for_user(user, group.name, "mumble")
|
||||
update_mumble_groups(user)
|
||||
if authserviceinfo.forum_username and authserviceinfo.forum_username != "":
|
||||
if syncgroups.filter(groupname=group.name).filter(servicename="phpbb3").exists() is not True:
|
||||
logger.debug("User %s has phpbb username %s - missing group %s." % (user, authserviceinfo.forum_username, group.name))
|
||||
create_syncgroup_for_user(user, group.name, "phpbb3")
|
||||
update_forum_groups(user)
|
||||
if authserviceinfo.ipboard_username and authserviceinfo.ipboard_username != "":
|
||||
if syncgroups.filter(groupname=group.name).filter(servicename="ipboard").exists() is not True:
|
||||
logger.debug("User %s has ipboard username %s - missing group %s." % (user, authserviceinfo.ipboard_username, group.name))
|
||||
create_syncgroup_for_user(user, group.name, "ipboard")
|
||||
update_ipboard_groups(user)
|
||||
if authserviceinfo.discord_uid and authserviceinfo.discord_uid != "":
|
||||
if syncgroups.filter(groupname=group.name).filter(servicename="discord").exists() is not True:
|
||||
logger.debug("User %s has discord uid %s - missing group %s." % (user, authserviceinfo.discord_uid, group.name))
|
||||
create_syncgroup_for_user(user, group.name, "discord")
|
||||
update_discord_groups(user)
|
||||
|
||||
|
||||
def remove_from_databases(user, groups, syncgroups):
|
||||
logger.debug("remove_from_database for user %s called. groups %s - syncgroups %s" % (user, groups, syncgroups))
|
||||
authserviceinfo = None
|
||||
try:
|
||||
authserviceinfo = AuthServicesInfo.objects.get(user=user)
|
||||
logger.debug("Got authservicesinfo object %s" % authserviceinfo)
|
||||
except:
|
||||
logger.debug("No authservicesinfo object found for user %s" % user)
|
||||
pass
|
||||
|
||||
if authserviceinfo:
|
||||
update = False
|
||||
for syncgroup in syncgroups:
|
||||
group = groups.filter(name=syncgroup.groupname)
|
||||
logger.debug("Got group %s for syncgroup %s" % (group, syncgroup))
|
||||
if not group:
|
||||
logger.debug("Deleting syncgroup %s" % syncgroup)
|
||||
syncgroup.delete()
|
||||
update = True
|
||||
|
||||
if update:
|
||||
logger.debug("Syncgroups updated. Propogating to services for user %s" % user)
|
||||
if authserviceinfo.jabber_username and authserviceinfo.jabber_username != "":
|
||||
logger.debug("User %s has jabber username %s - updating groups." % (user, authserviceinfo.jabber_username))
|
||||
update_jabber_groups(user)
|
||||
if authserviceinfo.mumble_username and authserviceinfo.mumble_username != "":
|
||||
logger.debug("User %s has mumble username %s - updating groups." % (user, authserviceinfo.mumble_username))
|
||||
update_mumble_groups(user)
|
||||
if authserviceinfo.forum_username and authserviceinfo.forum_username != "":
|
||||
logger.debug("User %s has forum username %s - updating groups." % (user, authserviceinfo.forum_username))
|
||||
update_forum_groups(user)
|
||||
if authserviceinfo.ipboard_username and authserviceinfo.ipboard_username != "":
|
||||
logger.debug("User %s has ipboard username %s - updating groups." % (user, authserviceinfo.ipboard_username))
|
||||
update_ipboard_groups(user)
|
||||
if authserviceinfo.teamspeak3_uid and authserviceinfo.teamspeak3_uid != "":
|
||||
logger.debug("User %s has ts3 uid %s - updating groups." % (user, authserviceinfo.teamspeak3_uid))
|
||||
update_teamspeak3_groups(user)
|
||||
if authserviceinfo.discord_uid and authserviceinfo.discord_uid != "":
|
||||
logger.debug("User %s has discord uid %s - updating groups." % (user, authserviceinfo.discord_uid))
|
||||
update_discord_groups(user)
|
||||
|
||||
def assign_corp_group(auth):
|
||||
corp_group = None
|
||||
if auth.main_char_id:
|
||||
@ -421,24 +321,6 @@ def set_state(user):
|
||||
if change:
|
||||
notify(user, "Membership State Change", message="You membership state has been changed to %s" % state)
|
||||
|
||||
# Run every minute
|
||||
@periodic_task(run_every=crontab(minute="*/10"))
|
||||
def run_databaseUpdate():
|
||||
logger.debug("Starting database update.")
|
||||
users = User.objects.all()
|
||||
if (is_teamspeak3_active()):
|
||||
logger.debug("TS3 installed. Syncing local group objects.")
|
||||
Teamspeak3Manager._sync_ts_group_db()
|
||||
for user in users:
|
||||
logger.debug("Initiating database update for user %s" % user)
|
||||
groups = user.groups.all()
|
||||
logger.debug("User has groups %s" % groups)
|
||||
syncgroups = SyncGroupCache.objects.filter(user=user)
|
||||
logger.debug("User has syncgroups %s" % syncgroups)
|
||||
add_to_databases(user, groups, syncgroups)
|
||||
remove_from_databases(user, groups, syncgroups)
|
||||
time.sleep(1)
|
||||
|
||||
# Run every 2 hours
|
||||
@periodic_task(run_every=crontab(minute="0", hour="*/2"))
|
||||
def run_discord_token_cleanup():
|
||||
|
@ -16,7 +16,6 @@ from managers.teamspeak3_manager import Teamspeak3Manager
|
||||
from managers.discord_manager import DiscordManager
|
||||
from authentication.managers import AuthServicesInfoManager
|
||||
from eveonline.managers import EveManager
|
||||
from celerytask.tasks import remove_all_syncgroups_for_service
|
||||
from celerytask.tasks import update_jabber_groups
|
||||
from celerytask.tasks import update_mumble_groups
|
||||
from celerytask.tasks import update_forum_groups
|
||||
@ -135,7 +134,7 @@ def activate_forum(request):
|
||||
if result[0] != "":
|
||||
AuthServicesInfoManager.update_user_forum_info(result[0], result[1], request.user)
|
||||
logger.debug("Updated authserviceinfo for user %s with forum credentials. Updating groups." % request.user)
|
||||
update_forum_groups(request.user)
|
||||
update_forum_groups.delay(request.user)
|
||||
logger.info("Succesfully activated forum for user %s" % request.user)
|
||||
return HttpResponseRedirect("/services/")
|
||||
logger.error("Unsuccesful attempt to activate forum for user %s" % request.user)
|
||||
@ -148,7 +147,6 @@ def deactivate_forum(request):
|
||||
logger.debug("deactivate_forum called by user %s" % request.user)
|
||||
authinfo = AuthServicesInfoManager.get_auth_service_info(request.user)
|
||||
result = Phpbb3Manager.disable_user(authinfo.forum_username)
|
||||
remove_all_syncgroups_for_service(request.user, "phpbb")
|
||||
# false we failed
|
||||
if result:
|
||||
AuthServicesInfoManager.update_user_forum_info("", "", request.user)
|
||||
@ -185,7 +183,7 @@ def activate_ipboard_forum(request):
|
||||
if result[0] != "":
|
||||
AuthServicesInfoManager.update_user_ipboard_info(result[0], result[1], request.user)
|
||||
logger.debug("Updated authserviceinfo for user %s with ipboard credentials. Updating groups." % request.user)
|
||||
update_ipboard_groups(request.user)
|
||||
update_ipboard_groups.delay(request.user)
|
||||
logger.info("Succesfully activated ipboard for user %s" % request.user)
|
||||
return HttpResponseRedirect("/services/")
|
||||
logger.error("Unsuccesful attempt to activate ipboard for user %s" % request.user)
|
||||
@ -198,7 +196,6 @@ def deactivate_ipboard_forum(request):
|
||||
logger.debug("deactivate_ipboard_forum called by user %s" % request.user)
|
||||
authinfo = AuthServicesInfoManager.get_auth_service_info(request.user)
|
||||
result = IPBoardManager.disable_user(authinfo.ipboard_username)
|
||||
remove_all_syncgroups_for_service(request.user, "ipboard")
|
||||
# false we failed
|
||||
if result:
|
||||
AuthServicesInfoManager.update_user_ipboard_info("", "", request.user)
|
||||
@ -234,7 +231,7 @@ def activate_jabber(request):
|
||||
if info[0] is not "":
|
||||
AuthServicesInfoManager.update_user_jabber_info(info[0], info[1], request.user)
|
||||
logger.debug("Updated authserviceinfo for user %s with jabber credentials. Updating groups." % request.user)
|
||||
update_jabber_groups(request.user)
|
||||
update_jabber_groups.delay(request.user)
|
||||
logger.info("Succesfully activated jabber for user %s" % request.user)
|
||||
return HttpResponseRedirect("/services/")
|
||||
logger.error("Unsuccesful attempt to activate jabber for user %s" % request.user)
|
||||
@ -247,7 +244,6 @@ def deactivate_jabber(request):
|
||||
logger.debug("deactivate_jabber called by user %s" % request.user)
|
||||
authinfo = AuthServicesInfoManager.get_auth_service_info(request.user)
|
||||
result = OpenfireManager.delete_user(authinfo.jabber_username)
|
||||
remove_all_syncgroups_for_service(request.user, "openfire")
|
||||
# If our username is blank means we failed
|
||||
if result:
|
||||
AuthServicesInfoManager.update_user_jabber_info("", "", request.user)
|
||||
@ -288,7 +284,7 @@ def activate_mumble(request):
|
||||
if result[0] is not "":
|
||||
AuthServicesInfoManager.update_user_mumble_info(result[0], result[1], request.user)
|
||||
logger.debug("Updated authserviceinfo for user %s with mumble credentials. Updating groups." % request.user)
|
||||
update_mumble_groups(request.user)
|
||||
update_mumble_groups.delay(request.user)
|
||||
logger.info("Succesfully activated mumble for user %s" % request.user)
|
||||
return HttpResponseRedirect("/services/")
|
||||
logger.error("Unsuccessful attempt to activate mumble for user %s" % request.user)
|
||||
@ -301,7 +297,6 @@ def deactivate_mumble(request):
|
||||
logger.debug("deactivate_mumble called by user %s" % request.user)
|
||||
authinfo = AuthServicesInfoManager.get_auth_service_info(request.user)
|
||||
result = MumbleManager.delete_user(authinfo.mumble_username)
|
||||
remove_all_syncgroups_for_service(request.user, "mumble")
|
||||
# if false we failed
|
||||
if result:
|
||||
AuthServicesInfoManager.update_user_mumble_info("", "", request.user)
|
||||
@ -344,7 +339,7 @@ def activate_teamspeak3(request):
|
||||
if result[0] is not "":
|
||||
AuthServicesInfoManager.update_user_teamspeak3_info(result[0], result[1], request.user)
|
||||
logger.debug("Updated authserviceinfo for user %s with TS3 credentials. Updating groups." % request.user)
|
||||
update_teamspeak3_groups(request.user)
|
||||
update_teamspeak3_groups.delay(request.user)
|
||||
logger.info("Succesfully activated TS3 for user %s" % request.user)
|
||||
return HttpResponseRedirect("/services/")
|
||||
logger.error("Unsuccessful attempt to activate TS3 for user %s" % request.user)
|
||||
@ -358,8 +353,6 @@ def deactivate_teamspeak3(request):
|
||||
authinfo = AuthServicesInfoManager.get_auth_service_info(request.user)
|
||||
result = Teamspeak3Manager.delete_user(authinfo.teamspeak3_uid)
|
||||
|
||||
remove_all_syncgroups_for_service(request.user, "teamspeak3")
|
||||
|
||||
# if false we failed
|
||||
if result:
|
||||
AuthServicesInfoManager.update_user_teamspeak3_info("", "", request.user)
|
||||
@ -378,8 +371,6 @@ def reset_teamspeak3_perm(request):
|
||||
logger.debug("Deleting TS3 user for user %s" % request.user)
|
||||
Teamspeak3Manager.delete_user(authinfo.teamspeak3_uid)
|
||||
|
||||
remove_all_syncgroups_for_service(request.user, "teamspeak3")
|
||||
|
||||
if check_if_user_has_permission(request.user, "blue_member"):
|
||||
logger.debug("Generating new permission key for blue user %s with main character %s" % (request.user, character))
|
||||
result = Teamspeak3Manager.generate_new_blue_permissionkey(authinfo.teamspeak3_uid, character.character_name,
|
||||
@ -393,7 +384,7 @@ def reset_teamspeak3_perm(request):
|
||||
if result != "":
|
||||
AuthServicesInfoManager.update_user_teamspeak3_info(result[0], result[1], request.user)
|
||||
logger.debug("Updated authserviceinfo for user %s with TS3 credentials. Updating groups." % request.user)
|
||||
update_teamspeak3_groups(request.user)
|
||||
update_teamspeak3_groups.delay(request.user)
|
||||
logger.info("Successfully reset TS3 permission key for user %s" % request.user)
|
||||
return HttpResponseRedirect("/services/")
|
||||
logger.error("Unsuccessful attempt to reset TS3 permission key for user %s" % request.user)
|
||||
@ -413,7 +404,6 @@ def deactivate_discord(request):
|
||||
authinfo = AuthServicesInfoManager.get_auth_service_info(request.user)
|
||||
result = DiscordManager.delete_user(authinfo.discord_uid)
|
||||
if result:
|
||||
remove_all_syncgroups_for_service(request.user, "discord")
|
||||
AuthServicesInfoManager.update_user_discord_info("", request.user)
|
||||
logger.info("Succesfully deactivated discord for user %s" % request.user)
|
||||
return HttpResponseRedirect("/services/")
|
||||
@ -453,7 +443,7 @@ def activate_discord(request):
|
||||
if user_id != "":
|
||||
AuthServicesInfoManager.update_user_discord_info(user_id, request.user)
|
||||
logger.debug("Updated discord id %s for user %s" % (user_id, request.user))
|
||||
update_discord_groups(request.user)
|
||||
update_discord_groups.delay(request.user)
|
||||
logger.debug("Updated discord groups for user %s." % request.user)
|
||||
success = True
|
||||
logger.info("Succesfully activated discord for user %s" % request.user)
|
||||
@ -592,4 +582,3 @@ def set_ipboard_password(request):
|
||||
logger.debug("Rendering form for user %s" % request.user)
|
||||
context = {'form': form, 'service': 'IPBoard', 'error': error}
|
||||
return render_to_response('registered/service_password.html', context, context_instance=RequestContext(request))
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user