mirror of
https://github.com/freedombox/FreedomBox.git
synced 2026-05-20 10:34:30 +00:00
Fix group management issues.
This commit is contained in:
parent
32bb08c269
commit
925fbe6cd2
@ -45,7 +45,7 @@ elif [ $? -eq 65 ]; then
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "$groupname" == "admin" ]; then
|
if [ "$groupname" = "admin" ]; then
|
||||||
# update sudo group if needed
|
# update sudo group if needed
|
||||||
results=$(ldapsearch -Y EXTERNAL -H ldapi:/// -b 'cn=sudo,ou=groups,dc=thisbox' -LLL "(memberUid=$username)")
|
results=$(ldapsearch -Y EXTERNAL -H ldapi:/// -b 'cn=sudo,ou=groups,dc=thisbox' -LLL "(memberUid=$username)")
|
||||||
|
|
||||||
|
|||||||
@ -109,6 +109,11 @@ class UserUpdateForm(forms.ModelForm):
|
|||||||
user = super(UserUpdateForm, self).save(commit)
|
user = super(UserUpdateForm, self).save(commit)
|
||||||
|
|
||||||
if commit:
|
if commit:
|
||||||
|
output = actions.superuser_run('get-ldap-user-groups',
|
||||||
|
[self.username])
|
||||||
|
old_groups = output.strip().split('\n')
|
||||||
|
old_groups = list(filter(None, old_groups)) # remove blank strings
|
||||||
|
|
||||||
if self.username != user.get_username():
|
if self.username != user.get_username():
|
||||||
try:
|
try:
|
||||||
actions.superuser_run('rename-ldap-user',
|
actions.superuser_run('rename-ldap-user',
|
||||||
@ -117,9 +122,6 @@ class UserUpdateForm(forms.ModelForm):
|
|||||||
messages.error(self.request,
|
messages.error(self.request,
|
||||||
_('Renaming LDAP user failed.'))
|
_('Renaming LDAP user failed.'))
|
||||||
|
|
||||||
output = actions.superuser_run('get-ldap-user-groups',
|
|
||||||
[user.get_username()])
|
|
||||||
old_groups = output.strip().split('\n')
|
|
||||||
new_groups = user.groups.values_list('name', flat=True)
|
new_groups = user.groups.values_list('name', flat=True)
|
||||||
for old_group in old_groups:
|
for old_group in old_groups:
|
||||||
if old_group not in new_groups:
|
if old_group not in new_groups:
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user