diff --git a/admin/src/admin/lib/admin.py b/admin/src/admin/lib/admin.py index 601f42a..9eda8a2 100644 --- a/admin/src/admin/lib/admin.py +++ b/admin/src/admin/lib/admin.py @@ -173,18 +173,30 @@ class Admin(): return self.external['roles'] def upload_json(self,data): + groups=[] + for g in data['data']['groups']: + # for m in data['data']['d_members']: + + groups.append({'provider':data['provider'], + "id": g['id'], + "name": g['name'], + "description": g['description']}) + self.external['groups']=groups + + users=[] for u in data['data']['users']: users.append({'provider':data['provider'], 'id':u['id'], 'email': u['primaryEmail'], - 'firstname': u['name']['givenName'], - 'lastname': u['name']['givenName'], - 'username': u['customerId'], + 'first': u['name']['givenName'], + 'last': u['name']['familyName'], + 'username': u['primaryEmail'].split('@')[0], 'groups':[u['orgUnitPath']], 'roles':[]}) - self.external['users']=set(self.external['users']+users) - return self.external['users'] + self.external['users']=users + + return True # with open(os.path.join(app.root_path, "../custom/jsons/google_all_imported_espinalt.json"),"r") as crt: diff --git a/admin/src/admin/static/js/external.js b/admin/src/admin/static/js/external.js index 593eb82..362b898 100644 --- a/admin/src/admin/static/js/external.js +++ b/admin/src/admin/static/js/external.js @@ -24,18 +24,20 @@ $(document).ready(function() { data: JSON.stringify(formdata), success: function(data) { - console.log(data) + $("#modalImport").modal('hide'); + users_table.ajax.reload(); + groups_table.ajax.reload(); }, error: function(data) { - console.log(data) + alert('Something went wrong on our side...') } }); } }); //DataTable Main renderer - var table = $('#users').DataTable({ + var users_table = $('#users').DataTable({ "ajax": { "url": "/isard-sso-admin/external_users_list", "dataSrc": "" @@ -63,9 +65,37 @@ $(document).ready(function() { { "data": "groups", "width": "10px"}, { "data": "roles", "width": "10px"}, ], - "order": [[4, 'asc']], + "order": [[3, 'asc']], "columnDefs": [ ] - } ); + } ); + + var groups_table = $('#groups').DataTable({ + "ajax": { + "url": "/isard-sso-admin/external_groups_list", + "dataSrc": "" + }, + "language": { + "loadingRecords": 'Loading...', + "emptyTable": "
+ | Id | +Provider | +Name | +Description | +
---|