mirror of https://github.com/apache/archiva.git
add call and bean mapping for ApplicationRoles data
git-svn-id: https://svn.apache.org/repos/asf/archiva/trunk@1230551 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
e267d43bb1
commit
9c6d1fb950
|
@ -257,5 +257,44 @@ $(function() {
|
|||
$("#role-edit-users-li").addClass("active");
|
||||
}
|
||||
|
||||
ApplicationRoles = function(name,description,globalRoles,roleTemplates,resources){
|
||||
//private String name;
|
||||
this.name = name;
|
||||
//private String description;
|
||||
this.description = description;
|
||||
//private Collection<String> globalRoles;
|
||||
this.globalRoles = globalRoles;
|
||||
//private Collection<RoleTemplate> roleTemplates;
|
||||
this.roleTemplates = roleTemplates;
|
||||
//private Collection<String> resources;
|
||||
this.resources = resources;
|
||||
}
|
||||
|
||||
mapApplicationRoles=function(data){
|
||||
var roleTemplates = data.roleTemplates ? $.isArray(data.roleTemplates) ? $.map(data.roleTemplates, function(item) {
|
||||
return mapRoleTemplate(item);
|
||||
}):new Array(mapRoleTemplate(data.roleTemplates)):null;
|
||||
|
||||
return new ApplicationRoles(data.name,data.description,mapStringArray(data.globalRoles),roleTemplates,mapStringArray(data.resources));
|
||||
}
|
||||
|
||||
RoleTemplate = function(id,namePrefix,delimiter,description,resource,roles){
|
||||
//private String id;
|
||||
this.id = id;
|
||||
//private String namePrefix;
|
||||
this.namePrefix = namePrefix;
|
||||
//private String delimiter = " - ";
|
||||
this.delimiter = delimiter;
|
||||
//private String description;
|
||||
this.description = description;
|
||||
//private String resource;
|
||||
this.resource = resource;
|
||||
//private List<String> roles;
|
||||
this.roles = roles;
|
||||
}
|
||||
|
||||
mapRoleTemplate = function(data){
|
||||
return new RoleTemplate(data.id,data.namePrefix,data.delimiter,data.description,mapStringArray(data.roles));
|
||||
}
|
||||
|
||||
});
|
|
@ -159,7 +159,6 @@ $(function() {
|
|||
async: false,
|
||||
dataType: 'json',
|
||||
success: function(data) {
|
||||
//$("#user-edit-roles-view").show();
|
||||
var mappedRoles = $.map(data.role, function(item) {
|
||||
return mapRole(item);
|
||||
});
|
||||
|
@ -168,6 +167,14 @@ $(function() {
|
|||
ko.applyBindings(viewModel,$("#user-edit-roles-view").get(0));
|
||||
$("#main-content #edit_user_details_pills_headers").pills();
|
||||
|
||||
$("#main-content #edit_user_details_pills_headers").bind('change', function (e) {
|
||||
//$.log( $(e.target).attr("href") ); // activated tab
|
||||
//e.relatedTarget // previous tab
|
||||
if ($(e.target).attr("href")=="#user-edit-roles-edit") {
|
||||
editUserRoles(user);
|
||||
}
|
||||
})
|
||||
|
||||
}
|
||||
}
|
||||
);
|
||||
|
@ -175,6 +182,21 @@ $(function() {
|
|||
}
|
||||
}
|
||||
|
||||
editUserRoles=function(user){
|
||||
$.log("editUserRoles:"+user.username());
|
||||
$("#user-edit-roles-edit").html(smallSpinnerImg());
|
||||
$.ajax("restServices/redbackServices/roleManagementService/getApplicationRoles/"+encodeURIComponent(user.username()), {
|
||||
type: "GET",
|
||||
async: false,
|
||||
dataType: 'json',
|
||||
success: function(data) {
|
||||
$("#user-edit-roles-edit").html("loaded");
|
||||
|
||||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
UserViewModel=function(user) {
|
||||
this.user=user;
|
||||
this.roles = ko.observableArray(new Array());
|
||||
|
|
Loading…
Reference in New Issue