Remove roles on edit user if changed
parent
b0eba9d7bb
commit
a9ac4fe81d
|
@ -1158,6 +1158,8 @@ class Admin():
|
|||
return True
|
||||
|
||||
def update_keycloak_user(self,user_id,user,kdelete,kadd):
|
||||
# pprint(self.keycloak.get_user_realm_roles(user_id))
|
||||
self.keycloak.remove_user_realm_roles(user_id,'student')
|
||||
self.keycloak.assign_realm_roles(user_id,user['roles'][0])
|
||||
for group in kdelete:
|
||||
group_id = self.keycloak.get_group_by_path(gid2kpath(group))['id']
|
||||
|
@ -1166,7 +1168,7 @@ class Admin():
|
|||
group_id = self.keycloak.get_group_by_path(gid2kpath(group))['id']
|
||||
self.keycloak.group_user_add(user_id,group_id)
|
||||
self.keycloak.user_update(user_id,user['enabled'],user['email'],user['firstname'],user['lastname'])
|
||||
|
||||
self.resync_data()
|
||||
return True
|
||||
|
||||
def enable_users(self,data):
|
||||
|
|
|
@ -215,8 +215,9 @@ class KeycloakClient():
|
|||
# self.connect()
|
||||
# return self.keycloak_admin.assign_role(client_id=client_id, user_id=user_id, role_id=role_id, role_name="test")
|
||||
|
||||
def remove_user_roles(self,user_id,roles):
|
||||
def remove_user_realm_roles(self,user_id,roles):
|
||||
self.connect()
|
||||
roles = [r for r in self.get_user_realm_roles(user_id) if r['name'] in ['admin','manager','teacher','student']]
|
||||
return self.keycloak_admin.delete_realm_roles_of_user(user_id,roles)
|
||||
|
||||
def delete_user(self,userid):
|
||||
|
|
|
@ -239,6 +239,7 @@ $(document).ready(function() {
|
|||
"url": "/api/user/"+formdata['id'],
|
||||
data: JSON.stringify(formdata),
|
||||
complete: function(jqXHR, textStatus) {
|
||||
table.ajax.reload();
|
||||
switch (jqXHR.status) {
|
||||
case 200:
|
||||
$("#modalEditUser").modal('hide');
|
||||
|
@ -282,7 +283,6 @@ $(document).ready(function() {
|
|||
}
|
||||
});
|
||||
}
|
||||
table.ajax.reload();
|
||||
});
|
||||
//DataTable Main renderer
|
||||
var table = $('#users').DataTable({
|
||||
|
|
Loading…
Reference in New Issue