Handle removing all roles

merge-requests/28/head
Bob Mottram 2022-09-02 19:44:29 +01:00
parent ea378934f1
commit af89fcc335
1 changed files with 8 additions and 2 deletions

View File

@ -302,12 +302,18 @@ def set_roles_from_list(base_dir: str, domain: str, admin_nickname: str,
"""Sets the roles from a list returned from the edit profile screen under
role assignments
"""
if not fields.get(list_name):
return
# check for admin user
if not path.startswith('/users/' + admin_nickname + '/'):
return
roles_filename = base_dir + '/accounts/' + list_filename
if not fields.get(list_name):
if os.path.isfile(roles_filename):
_clear_role_status(base_dir, role_name)
try:
os.remove(roles_filename)
except OSError:
print('EX: failed to remove roles file ' + roles_filename)
return
_clear_role_status(base_dir, role_name)
if ',' in fields[list_name]:
# if the list was given as comma separated