From c79c120dae38042f0f5d5c31d9b7413b0a8a3e7e Mon Sep 17 00:00:00 2001 From: ulrich <not disclosed> Date: Tue, 27 Dec 2016 12:21:53 +0000 Subject: [PATCH] Neue Rolle speichern und zeigen --- web/ui/ui.js | 72 +++++++++++++++++++++++++++++++---- 1 files changed, 63 insertions(+), 9 deletions(-) diff --git a/web/ui/ui.js b/web/ui/ui.js index ce2d447..4a7daf9 100644 --- a/web/ui/ui.js +++ b/web/ui/ui.js @@ -5,6 +5,7 @@ $('#nutzerLoeschen').click(um_del_user); $('#nutzerNeu').click(um_new_user); $('#nutzerLoeschen').prop( "disabled", true ); + $('#nutzerRolleEntziehen').prop( "disabled", true ); $('#neueRolle').click(um_new_role); um_clear_user_form(); um_apicall_get_user_list(); @@ -32,7 +33,7 @@ //alert('delete user ' + users[0]); var userId = um_get_first_selected_user_id(); if(userId !== 'none') { - var antwort = confirm("Wollen Sie den Nutzer " + usersId + " loeschen?"); + var antwort = confirm("Wollen Sie den Nutzer " + userId + " loeschen?"); if (antwort === true) { var user = new User(userId, '-', '-', '-', '-'); um_apicall_del_user(self.serialisieren(user)); @@ -55,7 +56,8 @@ if (answer === null) { alert("Es wurde Cancel betaetigt."); } else if(answer !== "") { - alert("Rolle fuer Benutzer " + userId + " anlegen: " + answer); + //alert("Rolle fuer Benutzer " + userId + " anlegen: " + answer); + um_apicall_grant_role(userId, answer); } else { alert("OK betaetigt, aber Keine Rolle angegeben."); } @@ -66,13 +68,8 @@ function um_user_list_click() { $('#nutzerLoeschen').prop( "disabled", false ); - /* - var users = []; - $('#nutzerliste :selected').each(function(i, selected){ - users[i] = $(selected).text(); - }); - */ - //alert(users[0]); + var userId = um_get_first_selected_user_id(); + um_apicall_get_user_roles(userId); } @@ -114,6 +111,17 @@ userId = userIds[0]; } return userId; +} + +// {"List":[{"List":[{"String":"ROLE_NAME"},{"String":"testrolle1"}]}]} +function um_show_user_role_list(resp) { + $("#nutzerrollen").empty(); + var rollen = resp.List[0]; + for(var i = 1; i < rollen.List.length; i++) { + var rolle = rollen.List[i]; + $("#nutzerrollen").append('<option value=' + rolle.String + '>' + rolle.String + '</option>'); + } + $('#nutzerRolleEntziehen').prop( "disabled", true ); } /* ---- api calls ----- */ @@ -183,6 +191,52 @@ }); } +// public UserRole grantRole(String userId, String roleName) +function um_apicall_grant_role(userId, roleName) { + var m = 'grantRole'; + var u = '../svc/' + m; + $.ajax({ + url: u, + data: { + p1: userId, + p2: roleName + }, + type: "POST", + dataType : "html", + success: function( resp ) { + // Liste der Rollen des Benutzers neu anzeigen bzw. die neue Rolle dort hinzufuegen + um_apicall_get_user_roles(userId); + }, + error: function( xhr, status, errorThrown ) { + $('#fehler').html("Error: " + errorThrown + " Status: " + status); + }, + complete: function( xhr, status ) { + //alert( "The request is complete!" ); + } + }); +} + +//public List getUserRoleNames(String userId) +function um_apicall_get_user_roles(userId) { + var m = 'getUserRoleNames'; + var u = '../svc/' + m + '?p=' + userId; + $.ajax({ + url: u, + type: "GET", + dataType : "json", + success: function( resp ) { + // Antwort in Liste anzeigen + um_show_user_role_list(resp); + }, + error: function( xhr, status, errorThrown ) { + $('#fehler').html("Error: " + errorThrown + " Status: " + status); + }, + complete: function( xhr, status ) { + //alert( "The request is complete!" ); + } + }); +} + /* ----- Hilfsfunktionen ----- */ function serialisieren(obj) { -- Gitblit v1.9.3