|
@@ -747,6 +747,7 @@ var HiveViewModel = function (initial) {
|
|
|
|
|
|
|
|
// Models
|
|
// Models
|
|
|
self.roles = ko.observableArray();
|
|
self.roles = ko.observableArray();
|
|
|
|
|
+ self.tempRoles = ko.observableArray();
|
|
|
self.originalRoles = ko.observableArray();
|
|
self.originalRoles = ko.observableArray();
|
|
|
self.roleFilter = ko.observable("");
|
|
self.roleFilter = ko.observable("");
|
|
|
self.filteredRoles = ko.computed(function () {
|
|
self.filteredRoles = ko.computed(function () {
|
|
@@ -1010,6 +1011,7 @@ var HiveViewModel = function (initial) {
|
|
|
if (data.status == 0) {
|
|
if (data.status == 0) {
|
|
|
$(document).trigger("info", data.message);
|
|
$(document).trigger("info", data.message);
|
|
|
self.assist.refreshTree();
|
|
self.assist.refreshTree();
|
|
|
|
|
+ self.clearTempRoles();
|
|
|
$(document).trigger("created.role");
|
|
$(document).trigger("created.role");
|
|
|
} else {
|
|
} else {
|
|
|
$(document).trigger("error", data.message);
|
|
$(document).trigger("error", data.message);
|
|
@@ -1020,6 +1022,23 @@ var HiveViewModel = function (initial) {
|
|
|
});
|
|
});
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ self.clearTempRoles = function () {
|
|
|
|
|
+ var _roles = [];
|
|
|
|
|
+ self.roles().forEach(function(role){
|
|
|
|
|
+ var _found = false;
|
|
|
|
|
+ self.tempRoles().forEach(function(tempRole){
|
|
|
|
|
+ if (role.name() == tempRole.name()){
|
|
|
|
|
+ _found = true;
|
|
|
|
|
+ }
|
|
|
|
|
+ });
|
|
|
|
|
+ if (! _found){
|
|
|
|
|
+ _roles.push(role);
|
|
|
|
|
+ }
|
|
|
|
|
+ });
|
|
|
|
|
+ self.roles(_roles);
|
|
|
|
|
+ self.tempRoles([]);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
self.list_sentry_privileges_by_authorizable = function (optionalPath, skipList) {
|
|
self.list_sentry_privileges_by_authorizable = function (optionalPath, skipList) {
|
|
|
var _path = self.assist.path();
|
|
var _path = self.assist.path();
|
|
|
if (optionalPath != null){
|
|
if (optionalPath != null){
|