diff --git a/seafile-ldap.py b/seafile-ldap.py index 06f331e..465b206 100644 --- a/seafile-ldap.py +++ b/seafile-ldap.py @@ -249,7 +249,6 @@ for group in ldap.entries: ldapGroups.append(group) finally: continue -seafileGroups = request('admin/groups/', seafileURL, seafileToken)['response']['groups'] for ldapGroup in ldapGroups: # loop through the results and make sure we match on the group name searchSeafileGroup = request('admin/search-group/?query={0}'.format(ldapGroup.name), seafileURL, seafileToken)['response']['group_list'] @@ -282,6 +281,14 @@ for ldapGroup in ldapGroups: elif len(addMembertoSeafileGroup['success']) == 1: # user was added to group logger.info("User {0} was added to Seafile Group {1}".format(ldap.entries[0]['mail'], seafileGroup['name'])) + +seafileGroups = request('admin/groups/', seafileURL, seafileToken)['response']['groups'] +# loop through seafile groups and remove those groups no longer in AD or empty +# also check seafile group membership against ldap group +for seafileGroup in seafileGroups: + seafileGroupMembers = request('admin/groups/{0}/members/'.format(seafileGroup['id']), seafileURL, seafileToken)['response']['members'] + for seafileGroupMember in seafileGroupMembers: + #seafileGroupMembers = request('admin/groups/{0}/members/'.format(seafileGroup['id']), seafileURL, seafileToken)['response']['members']