Skip to content
Snippets Groups Projects
Verified Commit 457bb42c authored by nd's avatar nd
Browse files

recalculate group membership for all members of a deleted role

parent f9fb9075
No related branches found
No related tags found
No related merge requests found
...@@ -72,6 +72,12 @@ def update(roleid=False): ...@@ -72,6 +72,12 @@ def update(roleid=False):
def delete(roleid): def delete(roleid):
session = db.session session = db.session
role = Role.query.filter_by(id=roleid).one() role = Role.query.filter_by(id=roleid).one()
members = role.member_ldap()
session.delete(role) session.delete(role)
session.commit() session.commit()
for user in members:
recalculate_user_groups(user)
if not user.to_ldap():
flash('updating group membership for user {} failed'.format(user.loginname))
session.commit()
return redirect(url_for('role.index')) return redirect(url_for('role.index'))
...@@ -111,8 +111,7 @@ def delete(uid): ...@@ -111,8 +111,7 @@ def delete(uid):
user = User.from_ldap(conn.entries[0]) user = User.from_ldap(conn.entries[0])
session = db.session session = db.session
roles = Role.query.all() for role in Role.get_for_user(user).all():
for role in roles:
if user.dn in role.member_dns(): if user.dn in role.member_dns():
role.del_member(user) role.del_member(user)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment