mirror of
https://github.com/nikdoof/test-auth.git
synced 2025-12-14 14:52:15 +00:00
Fix the SSO Jabber group handling to actually work, and reduce uneeded calls to the XMLRPC api
This commit is contained in:
@@ -108,13 +108,15 @@ class JabberService(BaseService):
|
||||
valid_groups = []
|
||||
|
||||
for group in groups:
|
||||
groupname = group.name.lower().replace(' ', '-')
|
||||
if not group.name in current_groups:
|
||||
groupname = group.name.lower().replace(' ', '-').replace('.', '')
|
||||
self.exec_xmlrpc('srg_create', group=groupname, host=server, name=group.name, description='', display='')
|
||||
self.exec_xmlrpc('srg_user_add', user=username, host=server, group=groupname, grouphost=server)
|
||||
valid_groups.append(groupname)
|
||||
if not groupname in current_groups: current_groups.append(groupname)
|
||||
if not groupname in valid_groups: valid_groups.append(groupname)
|
||||
|
||||
for group in (set(current_groups) - set(valid_groups)):
|
||||
self.exec_xmlrpc('srg_user_del', user=username, host=server, group=groupname, grouphost=server)
|
||||
self.exec_xmlrpc('srg_user_del', user=username, host=server, group=group, grouphost=server)
|
||||
|
||||
def send_message(self, jid, msg):
|
||||
# send_stanza_c2s user host resource stanza
|
||||
|
||||
@@ -89,7 +89,9 @@ def update_service_groups(user_id):
|
||||
for service in ServiceAccount.objects.filter(user=user_id, active=True).select_related('service__api'):
|
||||
api = service.service.api_class
|
||||
try:
|
||||
print "Updating %s" % service
|
||||
api.update_groups(service.service_uid, service.user.groups.all(), service.character)
|
||||
print "Done"
|
||||
except:
|
||||
print "Error updating %s %s" % (service.service, service.service_uid)
|
||||
pass
|
||||
|
||||
Reference in New Issue
Block a user