Move existing themes under a default folder
This commit is contained in:
3495
default-themes/base/admin/resources/js/app.js
Executable file
3495
default-themes/base/admin/resources/js/app.js
Executable file
File diff suppressed because it is too large
Load Diff
549
default-themes/base/admin/resources/js/authz/authz-app.js
Normal file
549
default-themes/base/admin/resources/js/authz/authz-app.js
Normal file
@ -0,0 +1,549 @@
|
||||
/*
|
||||
* JBoss, Home of Professional Open Source.
|
||||
* Copyright 2016 Red Hat, Inc., and individual contributors
|
||||
* as indicated by the @author tags.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
module.requires.push('ui.ace');
|
||||
|
||||
module.config(['$routeProvider', function ($routeProvider) {
|
||||
$routeProvider
|
||||
.when('/realms/:realm/authz', {
|
||||
templateUrl: resourceUrl + '/partials/authz/resource-server-list.html',
|
||||
resolve: {
|
||||
realm: function (RealmLoader) {
|
||||
return RealmLoader();
|
||||
}
|
||||
},
|
||||
controller: 'ResourceServerCtrl'
|
||||
}).when('/realms/:realm/clients/:client/authz/resource-server/create', {
|
||||
templateUrl: resourceUrl + '/partials/authz/resource-server-detail.html',
|
||||
resolve: {
|
||||
realm: function (RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
client : function(ClientLoader) {
|
||||
return ClientLoader();
|
||||
},
|
||||
clients: function (ClientListLoader) {
|
||||
return ClientListLoader();
|
||||
}
|
||||
},
|
||||
controller: 'ResourceServerDetailCtrl'
|
||||
}).when('/realms/:realm/clients/:client/authz/resource-server', {
|
||||
templateUrl: resourceUrl + '/partials/authz/resource-server-detail.html',
|
||||
resolve: {
|
||||
realm: function (RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
client : function(ClientLoader) {
|
||||
return ClientLoader();
|
||||
},
|
||||
clients: function (ClientListLoader) {
|
||||
return ClientListLoader();
|
||||
},
|
||||
serverInfo: function (ServerInfoLoader) {
|
||||
return ServerInfoLoader();
|
||||
}
|
||||
},
|
||||
controller: 'ResourceServerDetailCtrl'
|
||||
}).when('/realms/:realm/clients/:client/authz/resource-server/export-settings', {
|
||||
templateUrl: resourceUrl + '/partials/authz/resource-server-export-settings.html',
|
||||
resolve: {
|
||||
realm: function (RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
client : function(ClientLoader) {
|
||||
return ClientLoader();
|
||||
},
|
||||
clients: function (ClientListLoader) {
|
||||
return ClientListLoader();
|
||||
},
|
||||
serverInfo: function (ServerInfoLoader) {
|
||||
return ServerInfoLoader();
|
||||
}
|
||||
},
|
||||
controller: 'ResourceServerDetailCtrl'
|
||||
}).when('/realms/:realm/clients/:client/authz/resource-server/evaluate', {
|
||||
templateUrl: resourceUrl + '/partials/authz/policy/resource-server-policy-evaluate.html',
|
||||
resolve: {
|
||||
realm: function (RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
client : function(ClientLoader) {
|
||||
return ClientLoader();
|
||||
},
|
||||
clients: function (ClientListLoader) {
|
||||
return ClientListLoader();
|
||||
},
|
||||
roles: function (RoleListLoader) {
|
||||
return new RoleListLoader();
|
||||
}
|
||||
},
|
||||
controller: 'PolicyEvaluateCtrl'
|
||||
}).when('/realms/:realm/clients/:client/authz/resource-server/evaluate/result', {
|
||||
templateUrl: resourceUrl + '/partials/authz/policy/resource-server-policy-evaluate-result.html',
|
||||
resolve: {
|
||||
realm: function (RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
client : function(ClientLoader) {
|
||||
return ClientLoader();
|
||||
},
|
||||
},
|
||||
controller: 'PolicyEvaluateCtrl'
|
||||
}).when('/realms/:realm/clients/:client/authz/resource-server/resource', {
|
||||
templateUrl: resourceUrl + '/partials/authz/resource-server-resource-list.html',
|
||||
resolve: {
|
||||
realm: function (RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
client : function(ClientLoader) {
|
||||
return ClientLoader();
|
||||
}
|
||||
},
|
||||
controller: 'ResourceServerResourceCtrl'
|
||||
}).when('/realms/:realm/clients/:client/authz/resource-server/resource/create', {
|
||||
templateUrl: resourceUrl + '/partials/authz/resource-server-resource-detail.html',
|
||||
resolve: {
|
||||
realm: function (RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
client : function(ClientLoader) {
|
||||
return ClientLoader();
|
||||
}
|
||||
},
|
||||
controller: 'ResourceServerResourceDetailCtrl'
|
||||
}).when('/realms/:realm/clients/:client/authz/resource-server/resource/:rsrid', {
|
||||
templateUrl: resourceUrl + '/partials/authz/resource-server-resource-detail.html',
|
||||
resolve: {
|
||||
realm: function (RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
client : function(ClientLoader) {
|
||||
return ClientLoader();
|
||||
}
|
||||
},
|
||||
controller: 'ResourceServerResourceDetailCtrl'
|
||||
}).when('/realms/:realm/clients/:client/authz/resource-server/scope', {
|
||||
templateUrl: resourceUrl + '/partials/authz/resource-server-scope-list.html',
|
||||
resolve: {
|
||||
realm: function (RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
client : function(ClientLoader) {
|
||||
return ClientLoader();
|
||||
}
|
||||
},
|
||||
controller: 'ResourceServerScopeCtrl'
|
||||
}).when('/realms/:realm/clients/:client/authz/resource-server/scope/create', {
|
||||
templateUrl: resourceUrl + '/partials/authz/resource-server-scope-detail.html',
|
||||
resolve: {
|
||||
realm: function (RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
client : function(ClientLoader) {
|
||||
return ClientLoader();
|
||||
}
|
||||
},
|
||||
controller: 'ResourceServerScopeDetailCtrl'
|
||||
}).when('/realms/:realm/clients/:client/authz/resource-server/scope/:id', {
|
||||
templateUrl: resourceUrl + '/partials/authz/resource-server-scope-detail.html',
|
||||
resolve: {
|
||||
realm: function (RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
client : function(ClientLoader) {
|
||||
return ClientLoader();
|
||||
}
|
||||
},
|
||||
controller: 'ResourceServerScopeDetailCtrl'
|
||||
}).when('/realms/:realm/clients/:client/authz/resource-server/permission', {
|
||||
templateUrl: resourceUrl + '/partials/authz/permission/resource-server-permission-list.html',
|
||||
resolve: {
|
||||
realm: function (RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
client : function(ClientLoader) {
|
||||
return ClientLoader();
|
||||
}
|
||||
},
|
||||
controller: 'ResourceServerPermissionCtrl'
|
||||
}).when('/realms/:realm/clients/:client/authz/resource-server/policy', {
|
||||
templateUrl: resourceUrl + '/partials/authz/policy/resource-server-policy-list.html',
|
||||
resolve: {
|
||||
realm: function (RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
client : function(ClientLoader) {
|
||||
return ClientLoader();
|
||||
}
|
||||
},
|
||||
controller: 'ResourceServerPolicyCtrl'
|
||||
}).when('/realms/:realm/clients/:client/authz/resource-server/permission/resource/create', {
|
||||
templateUrl: resourceUrl + '/partials/authz/permission/provider/resource-server-policy-resource-detail.html',
|
||||
resolve: {
|
||||
realm: function (RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
client : function(ClientLoader) {
|
||||
return ClientLoader();
|
||||
}
|
||||
},
|
||||
controller: 'ResourceServerPolicyResourceDetailCtrl'
|
||||
}).when('/realms/:realm/clients/:client/authz/resource-server/permission/resource/:id', {
|
||||
templateUrl: resourceUrl + '/partials/authz/permission/provider/resource-server-policy-resource-detail.html',
|
||||
resolve: {
|
||||
realm: function (RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
client : function(ClientLoader) {
|
||||
return ClientLoader();
|
||||
}
|
||||
},
|
||||
controller: 'ResourceServerPolicyResourceDetailCtrl'
|
||||
}).when('/realms/:realm/clients/:client/authz/resource-server/permission/scope/create', {
|
||||
templateUrl: resourceUrl + '/partials/authz/permission/provider/resource-server-policy-scope-detail.html',
|
||||
resolve: {
|
||||
realm: function (RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
client : function(ClientLoader) {
|
||||
return ClientLoader();
|
||||
}
|
||||
},
|
||||
controller: 'ResourceServerPolicyScopeDetailCtrl'
|
||||
}).when('/realms/:realm/clients/:client/authz/resource-server/permission/scope/:id', {
|
||||
templateUrl: resourceUrl + '/partials/authz/permission/provider/resource-server-policy-scope-detail.html',
|
||||
resolve: {
|
||||
realm: function (RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
client : function(ClientLoader) {
|
||||
return ClientLoader();
|
||||
}
|
||||
},
|
||||
controller: 'ResourceServerPolicyScopeDetailCtrl'
|
||||
}).when('/realms/:realm/clients/:client/authz/resource-server/policy/user/create', {
|
||||
templateUrl: resourceUrl + '/partials/authz/policy/provider/resource-server-policy-user-detail.html',
|
||||
resolve: {
|
||||
realm: function (RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
client : function(ClientLoader) {
|
||||
return ClientLoader();
|
||||
}
|
||||
},
|
||||
controller: 'ResourceServerPolicyUserDetailCtrl'
|
||||
}).when('/realms/:realm/clients/:client/authz/resource-server/policy/user/:id', {
|
||||
templateUrl: resourceUrl + '/partials/authz/policy/provider/resource-server-policy-user-detail.html',
|
||||
resolve: {
|
||||
realm: function (RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
client : function(ClientLoader) {
|
||||
return ClientLoader();
|
||||
}
|
||||
},
|
||||
controller: 'ResourceServerPolicyUserDetailCtrl'
|
||||
}).when('/realms/:realm/clients/:client/authz/resource-server/policy/client/create', {
|
||||
templateUrl: resourceUrl + '/partials/authz/policy/provider/resource-server-policy-client-detail.html',
|
||||
resolve: {
|
||||
realm: function (RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
client : function(ClientLoader) {
|
||||
return ClientLoader();
|
||||
}
|
||||
},
|
||||
controller: 'ResourceServerPolicyClientDetailCtrl'
|
||||
}).when('/realms/:realm/clients/:client/authz/resource-server/policy/client/:id', {
|
||||
templateUrl: resourceUrl + '/partials/authz/policy/provider/resource-server-policy-client-detail.html',
|
||||
resolve: {
|
||||
realm: function (RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
client : function(ClientLoader) {
|
||||
return ClientLoader();
|
||||
}
|
||||
},
|
||||
controller: 'ResourceServerPolicyClientDetailCtrl'
|
||||
}).when('/realms/:realm/clients/:client/authz/resource-server/policy/role/create', {
|
||||
templateUrl: resourceUrl + '/partials/authz/policy/provider/resource-server-policy-role-detail.html',
|
||||
resolve: {
|
||||
realm: function (RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
client : function(ClientLoader) {
|
||||
return ClientLoader();
|
||||
}
|
||||
},
|
||||
controller: 'ResourceServerPolicyRoleDetailCtrl'
|
||||
}).when('/realms/:realm/clients/:client/authz/resource-server/policy/role/:id', {
|
||||
templateUrl: resourceUrl + '/partials/authz/policy/provider/resource-server-policy-role-detail.html',
|
||||
resolve: {
|
||||
realm: function (RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
client : function(ClientLoader) {
|
||||
return ClientLoader();
|
||||
}
|
||||
},
|
||||
controller: 'ResourceServerPolicyRoleDetailCtrl'
|
||||
}).when('/realms/:realm/clients/:client/authz/resource-server/policy/group/create', {
|
||||
templateUrl: resourceUrl + '/partials/authz/policy/provider/resource-server-policy-group-detail.html',
|
||||
resolve: {
|
||||
realm: function (RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
client : function(ClientLoader) {
|
||||
return ClientLoader();
|
||||
}
|
||||
},
|
||||
controller: 'ResourceServerPolicyGroupDetailCtrl'
|
||||
}).when('/realms/:realm/clients/:client/authz/resource-server/policy/group/:id', {
|
||||
templateUrl: resourceUrl + '/partials/authz/policy/provider/resource-server-policy-group-detail.html',
|
||||
resolve: {
|
||||
realm: function (RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
client : function(ClientLoader) {
|
||||
return ClientLoader();
|
||||
}
|
||||
},
|
||||
controller: 'ResourceServerPolicyGroupDetailCtrl'
|
||||
}).when('/realms/:realm/clients/:client/authz/resource-server/policy/js/create', {
|
||||
templateUrl: resourceUrl + '/partials/authz/policy/provider/resource-server-policy-js-detail.html',
|
||||
resolve: {
|
||||
realm: function (RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
client : function(ClientLoader) {
|
||||
return ClientLoader();
|
||||
},
|
||||
serverInfo : function(ServerInfoLoader) {
|
||||
return ServerInfoLoader();
|
||||
}
|
||||
},
|
||||
controller: 'ResourceServerPolicyJSDetailCtrl'
|
||||
}).when('/realms/:realm/clients/:client/authz/resource-server/policy/js/:id', {
|
||||
templateUrl: resourceUrl + '/partials/authz/policy/provider/resource-server-policy-js-detail.html',
|
||||
resolve: {
|
||||
realm: function (RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
client : function(ClientLoader) {
|
||||
return ClientLoader();
|
||||
},
|
||||
serverInfo : function(ServerInfoLoader) {
|
||||
return ServerInfoLoader();
|
||||
}
|
||||
},
|
||||
controller: 'ResourceServerPolicyJSDetailCtrl'
|
||||
}).when('/realms/:realm/clients/:client/authz/resource-server/policy/time/create', {
|
||||
templateUrl: resourceUrl + '/partials/authz/policy/provider/resource-server-policy-time-detail.html',
|
||||
resolve: {
|
||||
realm: function (RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
client : function(ClientLoader) {
|
||||
return ClientLoader();
|
||||
}
|
||||
},
|
||||
controller: 'ResourceServerPolicyTimeDetailCtrl'
|
||||
}).when('/realms/:realm/clients/:client/authz/resource-server/policy/time/:id', {
|
||||
templateUrl: resourceUrl + '/partials/authz/policy/provider/resource-server-policy-time-detail.html',
|
||||
resolve: {
|
||||
realm: function (RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
client : function(ClientLoader) {
|
||||
return ClientLoader();
|
||||
}
|
||||
},
|
||||
controller: 'ResourceServerPolicyTimeDetailCtrl'
|
||||
}).when('/realms/:realm/clients/:client/authz/resource-server/policy/aggregate/create', {
|
||||
templateUrl: resourceUrl + '/partials/authz/policy/provider/resource-server-policy-aggregate-detail.html',
|
||||
resolve: {
|
||||
realm: function (RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
client : function(ClientLoader) {
|
||||
return ClientLoader();
|
||||
}
|
||||
},
|
||||
controller: 'ResourceServerPolicyAggregateDetailCtrl'
|
||||
}).when('/realms/:realm/clients/:client/authz/resource-server/policy/aggregate/:id', {
|
||||
templateUrl: resourceUrl + '/partials/authz/policy/provider/resource-server-policy-aggregate-detail.html',
|
||||
resolve: {
|
||||
realm: function (RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
client : function(ClientLoader) {
|
||||
return ClientLoader();
|
||||
}
|
||||
},
|
||||
controller: 'ResourceServerPolicyAggregateDetailCtrl'
|
||||
}).when('/realms/:realm/clients/:client/authz/resource-server/policy/client-scope/create', {
|
||||
templateUrl: resourceUrl + '/partials/authz/policy/provider/resource-server-policy-client-scope-detail.html',
|
||||
resolve: {
|
||||
realm: function (RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
client : function(ClientLoader) {
|
||||
return ClientLoader();
|
||||
}
|
||||
},
|
||||
controller: 'ResourceServerPolicyClientScopeDetailCtrl'
|
||||
}).when('/realms/:realm/clients/:client/authz/resource-server/policy/client-scope/:id', {
|
||||
templateUrl: resourceUrl + '/partials/authz/policy/provider/resource-server-policy-client-scope-detail.html',
|
||||
resolve: {
|
||||
realm: function (RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
client : function(ClientLoader) {
|
||||
return ClientLoader();
|
||||
}
|
||||
},
|
||||
controller: 'ResourceServerPolicyClientScopeDetailCtrl'
|
||||
}).when('/realms/:realm/roles/:role/permissions', {
|
||||
templateUrl : resourceUrl + '/partials/authz/mgmt/realm-role-permissions.html',
|
||||
resolve : {
|
||||
realm : function(RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
role : function(RoleLoader) {
|
||||
return RoleLoader();
|
||||
}
|
||||
},
|
||||
controller : 'RealmRolePermissionsCtrl'
|
||||
}).when('/realms/:realm/clients/:client/roles/:role/permissions', {
|
||||
templateUrl : resourceUrl + '/partials/authz/mgmt/client-role-permissions.html',
|
||||
resolve : {
|
||||
realm : function(RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
client : function(ClientLoader) {
|
||||
return ClientLoader();
|
||||
},
|
||||
role : function(RoleLoader) {
|
||||
return RoleLoader();
|
||||
}
|
||||
},
|
||||
controller : 'ClientRolePermissionsCtrl'
|
||||
}).when('/realms/:realm/users-permissions', {
|
||||
templateUrl : resourceUrl + '/partials/authz/mgmt/users-permissions.html',
|
||||
resolve : {
|
||||
realm : function(RealmLoader) {
|
||||
return RealmLoader();
|
||||
}
|
||||
},
|
||||
controller : 'UsersPermissionsCtrl'
|
||||
})
|
||||
.when('/realms/:realm/clients/:client/permissions', {
|
||||
templateUrl : resourceUrl + '/partials/authz/mgmt/client-permissions.html',
|
||||
resolve : {
|
||||
realm : function(RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
client : function(ClientLoader) {
|
||||
return ClientLoader();
|
||||
}
|
||||
},
|
||||
controller : 'ClientPermissionsCtrl'
|
||||
})
|
||||
.when('/realms/:realm/groups/:group/permissions', {
|
||||
templateUrl : resourceUrl + '/partials/authz/mgmt/group-permissions.html',
|
||||
resolve : {
|
||||
realm : function(RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
group : function(GroupLoader) {
|
||||
return GroupLoader();
|
||||
}
|
||||
},
|
||||
controller : 'GroupPermissionsCtrl'
|
||||
})
|
||||
.when('/realms/:realm/identity-provider-settings/provider/:provider_id/:alias/permissions', {
|
||||
templateUrl : function(params){ return resourceUrl + '/partials/authz/mgmt/broker-permissions.html'; },
|
||||
resolve : {
|
||||
realm : function(RealmLoader) {
|
||||
return RealmLoader();
|
||||
},
|
||||
identityProvider : function(IdentityProviderLoader) {
|
||||
return IdentityProviderLoader();
|
||||
}
|
||||
},
|
||||
controller : 'IdentityProviderPermissionCtrl'
|
||||
})
|
||||
;
|
||||
}]);
|
||||
|
||||
module.directive('kcTabsResourceServer', function () {
|
||||
return {
|
||||
scope: true,
|
||||
restrict: 'E',
|
||||
replace: true,
|
||||
templateUrl: resourceUrl + '/templates/authz/kc-tabs-resource-server.html'
|
||||
}
|
||||
});
|
||||
|
||||
module.filter('unique', function () {
|
||||
|
||||
return function (items, filterOn) {
|
||||
|
||||
if (filterOn === false) {
|
||||
return items;
|
||||
}
|
||||
|
||||
if ((filterOn || angular.isUndefined(filterOn)) && angular.isArray(items)) {
|
||||
var hashCheck = {}, newItems = [];
|
||||
|
||||
var extractValueToCompare = function (item) {
|
||||
if (angular.isObject(item) && angular.isString(filterOn)) {
|
||||
return item[filterOn];
|
||||
} else {
|
||||
return item;
|
||||
}
|
||||
};
|
||||
|
||||
angular.forEach(items, function (item) {
|
||||
var valueToCheck, isDuplicate = false;
|
||||
|
||||
for (var i = 0; i < newItems.length; i++) {
|
||||
if (angular.equals(extractValueToCompare(newItems[i]), extractValueToCompare(item))) {
|
||||
isDuplicate = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (!isDuplicate) {
|
||||
newItems.push(item);
|
||||
}
|
||||
|
||||
});
|
||||
items = newItems;
|
||||
}
|
||||
return items;
|
||||
};
|
||||
});
|
||||
|
||||
module.filter('toCamelCase', function () {
|
||||
return function (input) {
|
||||
input = input || '';
|
||||
return input.replace(/\w\S*/g, function (txt) {
|
||||
return txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase();
|
||||
});
|
||||
};
|
||||
})
|
3013
default-themes/base/admin/resources/js/authz/authz-controller.js
Normal file
3013
default-themes/base/admin/resources/js/authz/authz-controller.js
Normal file
File diff suppressed because it is too large
Load Diff
218
default-themes/base/admin/resources/js/authz/authz-services.js
Normal file
218
default-themes/base/admin/resources/js/authz/authz-services.js
Normal file
@ -0,0 +1,218 @@
|
||||
module.factory('ResourceServer', function($resource) {
|
||||
return $resource(authUrl + '/admin/realms/:realm/clients/:client/authz/resource-server', {
|
||||
realm : '@realm',
|
||||
client: '@client'
|
||||
}, {
|
||||
'update' : {method : 'PUT'},
|
||||
'import' : {url: authUrl + '/admin/realms/:realm/clients/:client/authz/resource-server/import', method : 'POST'},
|
||||
'settings' : {url: authUrl + '/admin/realms/:realm/clients/:client/authz/resource-server/settings', method : 'GET'}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('ResourceServerResource', function($resource) {
|
||||
return $resource(authUrl + '/admin/realms/:realm/clients/:client/authz/resource-server/resource/:rsrid', {
|
||||
realm : '@realm',
|
||||
client: '@client',
|
||||
rsrid : '@rsrid'
|
||||
}, {
|
||||
'update' : {method : 'PUT'},
|
||||
'search' : {url: authUrl + '/admin/realms/:realm/clients/:client/authz/resource-server/resource/search', method : 'GET'},
|
||||
'scopes' : {url: authUrl + '/admin/realms/:realm/clients/:client/authz/resource-server/resource/:rsrid/scopes', method : 'GET', isArray: true},
|
||||
'permissions' : {url: authUrl + '/admin/realms/:realm/clients/:client/authz/resource-server/resource/:rsrid/permissions', method : 'GET', isArray: true}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('ResourceServerScope', function($resource) {
|
||||
return $resource(authUrl + '/admin/realms/:realm/clients/:client/authz/resource-server/scope/:id', {
|
||||
realm : '@realm',
|
||||
client: '@client',
|
||||
id : '@id'
|
||||
}, {
|
||||
'update' : {method : 'PUT'},
|
||||
'search' : {url: authUrl + '/admin/realms/:realm/clients/:client/authz/resource-server/scope/search', method : 'GET'},
|
||||
'resources' : {url: authUrl + '/admin/realms/:realm/clients/:client/authz/resource-server/scope/:id/resources', method : 'GET', isArray: true},
|
||||
'permissions' : {url: authUrl + '/admin/realms/:realm/clients/:client/authz/resource-server/scope/:id/permissions', method : 'GET', isArray: true},
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('ResourceServerPolicy', function($resource) {
|
||||
return $resource(authUrl + '/admin/realms/:realm/clients/:client/authz/resource-server/policy/:type/:id', {
|
||||
realm : '@realm',
|
||||
client: '@client',
|
||||
id : '@id',
|
||||
type: '@type'
|
||||
}, {
|
||||
'update' : {method : 'PUT'},
|
||||
'search' : {url: authUrl + '/admin/realms/:realm/clients/:client/authz/resource-server/policy/search', method : 'GET'},
|
||||
'associatedPolicies' : {url: authUrl + '/admin/realms/:realm/clients/:client/authz/resource-server/policy/:id/associatedPolicies', method : 'GET', isArray: true},
|
||||
'dependentPolicies' : {url: authUrl + '/admin/realms/:realm/clients/:client/authz/resource-server/policy/:id/dependentPolicies', method : 'GET', isArray: true},
|
||||
'scopes' : {url: authUrl + '/admin/realms/:realm/clients/:client/authz/resource-server/policy/:id/scopes', method : 'GET', isArray: true},
|
||||
'resources' : {url: authUrl + '/admin/realms/:realm/clients/:client/authz/resource-server/policy/:id/resources', method : 'GET', isArray: true}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('ResourceServerPermission', function($resource) {
|
||||
return $resource(authUrl + '/admin/realms/:realm/clients/:client/authz/resource-server/permission/:type/:id', {
|
||||
realm : '@realm',
|
||||
client: '@client',
|
||||
type: '@type',
|
||||
id : '@id'
|
||||
}, {
|
||||
'update' : {method : 'PUT'},
|
||||
'search' : {url: authUrl + '/admin/realms/:realm/clients/:client/authz/resource-server/permission/search', method : 'GET'},
|
||||
'searchPolicies' : {url: authUrl + '/admin/realms/:realm/clients/:client/authz/resource-server/policy', method : 'GET', isArray: true},
|
||||
'associatedPolicies' : {url: authUrl + '/admin/realms/:realm/clients/:client/authz/resource-server/policy/:id/associatedPolicies', method : 'GET', isArray: true},
|
||||
'dependentPolicies' : {url: authUrl + '/admin/realms/:realm/clients/:client/authz/resource-server/policy/:id/dependentPolicies', method : 'GET', isArray: true},
|
||||
'scopes' : {url: authUrl + '/admin/realms/:realm/clients/:client/authz/resource-server/permission/:id/scopes', method : 'GET', isArray: true},
|
||||
'resources' : {url: authUrl + '/admin/realms/:realm/clients/:client/authz/resource-server/permission/:id/resources', method : 'GET', isArray: true}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('PolicyProvider', function($resource) {
|
||||
return $resource(authUrl + '/admin/realms/:realm/clients/:client/authz/resource-server/policy/providers', {
|
||||
realm : '@realm',
|
||||
client: '@client'
|
||||
});
|
||||
});
|
||||
|
||||
module.service('AuthzDialog', function($modal) {
|
||||
var dialog = {};
|
||||
|
||||
var openDialog = function(title, message, btns, template) {
|
||||
var controller = function($scope, $modalInstance, $sce, title, message, btns) {
|
||||
$scope.title = title;
|
||||
$scope.message = $sce.trustAsHtml(message);
|
||||
$scope.btns = btns;
|
||||
|
||||
$scope.ok = function () {
|
||||
$modalInstance.close();
|
||||
};
|
||||
$scope.cancel = function () {
|
||||
$modalInstance.dismiss('cancel');
|
||||
};
|
||||
};
|
||||
|
||||
return $modal.open({
|
||||
templateUrl: resourceUrl + template,
|
||||
controller: controller,
|
||||
resolve: {
|
||||
title: function() {
|
||||
return title;
|
||||
},
|
||||
message: function() {
|
||||
return message;
|
||||
},
|
||||
btns: function() {
|
||||
return btns;
|
||||
}
|
||||
}
|
||||
}).result;
|
||||
}
|
||||
|
||||
dialog.confirmDeleteWithMsg = function(name, type, msg, success) {
|
||||
var title = 'Delete ' + type;
|
||||
msg += 'Are you sure you want to permanently delete the ' + type + ' <strong>' + name + '</strong> ?';
|
||||
var btns = {
|
||||
ok: {
|
||||
label: 'Delete',
|
||||
cssClass: 'btn btn-danger'
|
||||
},
|
||||
cancel: {
|
||||
label: 'Cancel',
|
||||
cssClass: 'btn btn-default'
|
||||
}
|
||||
}
|
||||
|
||||
openDialog(title, msg, btns, '/templates/authz/kc-authz-modal.html').then(success);
|
||||
};
|
||||
|
||||
dialog.confirmDelete = function(name, type, success) {
|
||||
var title = 'Delete ' + type;
|
||||
var msg = 'Are you sure you want to permanently delete the ' + type + ' <strong>' + name + '</strong> ?';
|
||||
var btns = {
|
||||
ok: {
|
||||
label: 'Delete',
|
||||
cssClass: 'btn btn-danger'
|
||||
},
|
||||
cancel: {
|
||||
label: 'Cancel',
|
||||
cssClass: 'btn btn-default'
|
||||
}
|
||||
}
|
||||
|
||||
openDialog(title, msg, btns, '/templates/authz/kc-authz-modal.html').then(success);
|
||||
}
|
||||
|
||||
return dialog;
|
||||
});
|
||||
|
||||
module.factory('RoleManagementPermissions', function($resource) {
|
||||
return $resource(authUrl + '/admin/realms/:realm/roles-by-id/:role/management/permissions', {
|
||||
realm : '@realm',
|
||||
role : '@role'
|
||||
}, {
|
||||
update: {
|
||||
method: 'PUT'
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('UsersManagementPermissions', function($resource) {
|
||||
return $resource(authUrl + '/admin/realms/:realm/users-management-permissions', {
|
||||
realm : '@realm'
|
||||
}, {
|
||||
update: {
|
||||
method: 'PUT'
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('ClientManagementPermissions', function($resource) {
|
||||
return $resource(authUrl + '/admin/realms/:realm/clients/:client/management/permissions', {
|
||||
realm : '@realm',
|
||||
client : '@client'
|
||||
}, {
|
||||
update: {
|
||||
method: 'PUT'
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('IdentityProviderManagementPermissions', function($resource) {
|
||||
return $resource(authUrl + '/admin/realms/:realm/identity-provider/instances/:alias/management/permissions', {
|
||||
realm : '@realm',
|
||||
alias : '@alias'
|
||||
}, {
|
||||
update: {
|
||||
method: 'PUT'
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('GroupManagementPermissions', function($resource) {
|
||||
return $resource(authUrl + '/admin/realms/:realm/groups/:group/management/permissions', {
|
||||
realm : '@realm',
|
||||
group : '@group'
|
||||
}, {
|
||||
update: {
|
||||
method: 'PUT'
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('policyViewState', [function () {
|
||||
return {
|
||||
model: {
|
||||
state: {}
|
||||
}
|
||||
};
|
||||
}]);
|
||||
|
||||
module.factory('viewState', [function () {
|
||||
return {
|
||||
model: {
|
||||
state: {}
|
||||
}
|
||||
};
|
||||
}]);
|
||||
|
3693
default-themes/base/admin/resources/js/controllers/clients.js
Executable file
3693
default-themes/base/admin/resources/js/controllers/clients.js
Executable file
File diff suppressed because it is too large
Load Diff
625
default-themes/base/admin/resources/js/controllers/groups.js
Executable file
625
default-themes/base/admin/resources/js/controllers/groups.js
Executable file
@ -0,0 +1,625 @@
|
||||
module.controller('GroupListCtrl', function($scope, $route, $q, realm, Groups, GroupsCount, Group, GroupChildren, Notifications, $location, Dialog, ComponentUtils, $translate) {
|
||||
$scope.realm = realm;
|
||||
$scope.groupList = [
|
||||
{
|
||||
"id" : "realm",
|
||||
"name": $translate.instant('groups'),
|
||||
"subGroups" : []
|
||||
}
|
||||
];
|
||||
|
||||
$scope.searchCriteria = '';
|
||||
$scope.currentPage = 1;
|
||||
$scope.currentPageInput = $scope.currentPage;
|
||||
$scope.pageSize = 20;
|
||||
$scope.numberOfPages = 1;
|
||||
$scope.tree = [];
|
||||
|
||||
var refreshGroups = function (search) {
|
||||
console.log('refreshGroups');
|
||||
$scope.currentPageInput = $scope.currentPage;
|
||||
|
||||
var first = ($scope.currentPage * $scope.pageSize) - $scope.pageSize;
|
||||
console.log('first:' + first);
|
||||
var queryParams = {
|
||||
realm : realm.realm,
|
||||
first : first,
|
||||
max : $scope.pageSize
|
||||
};
|
||||
var countParams = {
|
||||
realm : realm.realm,
|
||||
top : 'true'
|
||||
};
|
||||
|
||||
if(angular.isDefined(search) && search !== '') {
|
||||
queryParams.search = search;
|
||||
countParams.search = search;
|
||||
}
|
||||
|
||||
var promiseGetGroups = $q.defer();
|
||||
Groups.query(queryParams, function(entry) {
|
||||
promiseGetGroups.resolve(entry);
|
||||
}, function() {
|
||||
promiseGetGroups.reject($translate.instant('group.fetch.fail', {params: queryParams}));
|
||||
});
|
||||
promiseGetGroups.promise.then(function(groups) {
|
||||
$scope.groupList = [
|
||||
{
|
||||
"id" : "realm",
|
||||
"name": $translate.instant('groups'),
|
||||
"subGroups": ComponentUtils.sortGroups('name', groups)
|
||||
}
|
||||
];
|
||||
if (angular.isDefined(search) && search !== '') {
|
||||
// Add highlight for concrete text match
|
||||
setTimeout(function () {
|
||||
document.querySelectorAll('span').forEach(function (element) {
|
||||
if (element.textContent.indexOf(search) != -1) {
|
||||
angular.element(element).addClass('highlight');
|
||||
}
|
||||
});
|
||||
}, 500);
|
||||
}
|
||||
}, function (failed) {
|
||||
Notifications.error(failed);
|
||||
});
|
||||
|
||||
var promiseCount = $q.defer();
|
||||
console.log('countParams: realm[' + countParams.realm);
|
||||
GroupsCount.query(countParams, function(entry) {
|
||||
promiseCount.resolve(entry);
|
||||
}, function() {
|
||||
promiseCount.reject($translate.instant('group.fetch.fail', {params: countParams}));
|
||||
});
|
||||
promiseCount.promise.then(function(entry) {
|
||||
if(angular.isDefined(entry.count) && entry.count > $scope.pageSize) {
|
||||
$scope.numberOfPages = Math.ceil(entry.count/$scope.pageSize);
|
||||
} else {
|
||||
$scope.numberOfPages = 1;
|
||||
}
|
||||
}, function (failed) {
|
||||
Notifications.error(failed);
|
||||
});
|
||||
};
|
||||
refreshGroups();
|
||||
|
||||
$scope.$watch('currentPage', function(newValue, oldValue) {
|
||||
if(parseInt(newValue, 10) !== oldValue) {
|
||||
refreshGroups($scope.searchCriteria);
|
||||
}
|
||||
});
|
||||
|
||||
$scope.clearSearch = function() {
|
||||
$scope.searchCriteria = '';
|
||||
if (parseInt($scope.currentPage, 10) === 1) {
|
||||
refreshGroups();
|
||||
} else {
|
||||
$scope.currentPage = 1;
|
||||
}
|
||||
};
|
||||
|
||||
$scope.searchGroup = function() {
|
||||
if (parseInt($scope.currentPage, 10) === 1) {
|
||||
refreshGroups($scope.searchCriteria);
|
||||
} else {
|
||||
$scope.currentPage = 1;
|
||||
}
|
||||
};
|
||||
|
||||
$scope.edit = function(selected) {
|
||||
if (selected.id === 'realm') return;
|
||||
$location.url("/realms/" + realm.realm + "/groups/" + selected.id);
|
||||
};
|
||||
|
||||
$scope.cut = function(selected) {
|
||||
$scope.cutNode = selected;
|
||||
};
|
||||
|
||||
$scope.isDisabled = function() {
|
||||
if (!$scope.tree.currentNode) return true;
|
||||
return $scope.tree.currentNode.id === 'realm';
|
||||
};
|
||||
|
||||
$scope.paste = function(selected) {
|
||||
if (selected === null) return;
|
||||
if ($scope.cutNode === null) return;
|
||||
if (selected.id === $scope.cutNode.id) return;
|
||||
if (selected.id === 'realm') {
|
||||
Groups.save({realm: realm.realm}, {id:$scope.cutNode.id}, function() {
|
||||
$route.reload();
|
||||
Notifications.success($translate.instant('group.move.success'));
|
||||
|
||||
});
|
||||
|
||||
} else {
|
||||
GroupChildren.save({realm: realm.realm, groupId: selected.id}, {id:$scope.cutNode.id}, function() {
|
||||
$route.reload();
|
||||
Notifications.success($translate.instant('group.move.success'));
|
||||
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
$scope.remove = function(selected) {
|
||||
if (selected === null) return;
|
||||
Dialog.confirmWithButtonText(
|
||||
$translate.instant('group.remove.confirm.title', {name: selected.name}),
|
||||
$translate.instant('group.remove.confirm.message', {name: selected.name}),
|
||||
$translate.instant('dialogs.delete.confirm'),
|
||||
function() {
|
||||
Group.remove({ realm: realm.realm, groupId : selected.id }, function() {
|
||||
$route.reload();
|
||||
Notifications.success($translate.instant('group.remove.success'));
|
||||
});
|
||||
}
|
||||
);
|
||||
};
|
||||
|
||||
$scope.createGroup = function(selected) {
|
||||
var parent = 'realm';
|
||||
if (selected) {
|
||||
parent = selected.id;
|
||||
}
|
||||
$location.url("/create/group/" + realm.realm + '/parent/' + parent);
|
||||
|
||||
};
|
||||
var isLeaf = function(node) {
|
||||
return node.id !== "realm" && (!node.subGroups || node.subGroups.length === 0);
|
||||
};
|
||||
|
||||
$scope.getGroupClass = function(node) {
|
||||
if (node.id === "realm") {
|
||||
return 'pficon pficon-users';
|
||||
}
|
||||
if (isLeaf(node)) {
|
||||
return 'normal';
|
||||
}
|
||||
if (node.subGroups.length && node.collapsed) return 'collapsed';
|
||||
if (node.subGroups.length && !node.collapsed) return 'expanded';
|
||||
return 'collapsed';
|
||||
|
||||
};
|
||||
|
||||
$scope.getSelectedClass = function(node) {
|
||||
if (node.selected) {
|
||||
return 'selected';
|
||||
} else if ($scope.cutNode && $scope.cutNode.id === node.id) {
|
||||
return 'cut';
|
||||
}
|
||||
return undefined;
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
module.controller('GroupCreateCtrl', function($scope, $route, realm, parentId, Groups, Group, GroupChildren, Notifications, $location, $translate) {
|
||||
$scope.realm = realm;
|
||||
$scope.group = {};
|
||||
$scope.save = function() {
|
||||
console.log('save!!!');
|
||||
if (parentId === 'realm') {
|
||||
console.log('realm');
|
||||
Groups.save({realm: realm.realm}, $scope.group, function(data, headers) {
|
||||
var l = headers().location;
|
||||
|
||||
|
||||
var id = l.substring(l.lastIndexOf("/") + 1);
|
||||
|
||||
$location.url("/realms/" + realm.realm + "/groups/" + id);
|
||||
Notifications.success($translate.instant('group.create.success'));
|
||||
})
|
||||
|
||||
} else {
|
||||
GroupChildren.save({realm: realm.realm, groupId: parentId}, $scope.group, function(data, headers) {
|
||||
var l = headers().location;
|
||||
|
||||
|
||||
var id = l.substring(l.lastIndexOf("/") + 1);
|
||||
|
||||
$location.url("/realms/" + realm.realm + "/groups/" + id);
|
||||
Notifications.success($translate.instant('group.create.success'));
|
||||
})
|
||||
|
||||
}
|
||||
|
||||
};
|
||||
$scope.cancel = function() {
|
||||
$location.url("/realms/" + realm.realm + "/groups");
|
||||
};
|
||||
});
|
||||
|
||||
module.controller('GroupTabCtrl', function(Dialog, $scope, Current, Group, Notifications, $location, $translate) {
|
||||
$scope.removeGroup = function() {
|
||||
Dialog.confirmWithButtonText(
|
||||
$translate.instant('group.remove.confirm.title', {name: $scope.group.name}),
|
||||
$translate.instant('group.remove.confirm.message', {name: $scope.group.name}),
|
||||
$translate.instant('dialogs.delete.confirm'),
|
||||
function() {
|
||||
Group.remove({
|
||||
realm : Current.realm.realm,
|
||||
groupId : $scope.group.id
|
||||
}, function() {
|
||||
$location.url("/realms/" + Current.realm.realm + "/groups");
|
||||
Notifications.success($translate.instant('group.remove.success'));
|
||||
});
|
||||
}
|
||||
);
|
||||
};
|
||||
});
|
||||
|
||||
module.controller('GroupDetailCtrl', function(Dialog, $scope, realm, group, Group, Notifications, $location, $translate) {
|
||||
$scope.realm = realm;
|
||||
|
||||
if (!group.attributes) {
|
||||
group.attributes = {}
|
||||
}
|
||||
convertAttributeValuesToString(group);
|
||||
|
||||
|
||||
$scope.group = angular.copy(group);
|
||||
|
||||
$scope.changed = false; // $scope.create;
|
||||
$scope.$watch('group', function() {
|
||||
if (!angular.equals($scope.group, group)) {
|
||||
$scope.changed = true;
|
||||
}
|
||||
}, true);
|
||||
|
||||
$scope.save = function() {
|
||||
convertAttributeValuesToLists();
|
||||
|
||||
Group.update({
|
||||
realm: realm.realm,
|
||||
groupId: $scope.group.id
|
||||
}, $scope.group, function () {
|
||||
$scope.changed = false;
|
||||
convertAttributeValuesToString($scope.group);
|
||||
group = angular.copy($scope.group);
|
||||
Notifications.success($translate.instant('group.edit.success'));
|
||||
});
|
||||
};
|
||||
|
||||
function convertAttributeValuesToLists() {
|
||||
var attrs = $scope.group.attributes;
|
||||
for (var attribute in attrs) {
|
||||
if (typeof attrs[attribute] === "string") {
|
||||
attrs[attribute] = attrs[attribute].split("##");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function convertAttributeValuesToString(group) {
|
||||
var attrs = group.attributes;
|
||||
for (var attribute in attrs) {
|
||||
if (typeof attrs[attribute] === "object") {
|
||||
attrs[attribute] = attrs[attribute].join("##");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$scope.reset = function() {
|
||||
$scope.group = angular.copy(group);
|
||||
$scope.changed = false;
|
||||
};
|
||||
|
||||
$scope.cancel = function() {
|
||||
$location.url("/realms/" + realm.realm + "/groups");
|
||||
};
|
||||
|
||||
$scope.addAttribute = function() {
|
||||
$scope.group.attributes[$scope.newAttribute.key] = $scope.newAttribute.value;
|
||||
delete $scope.newAttribute;
|
||||
}
|
||||
|
||||
$scope.removeAttribute = function(key) {
|
||||
delete $scope.group.attributes[key];
|
||||
}
|
||||
});
|
||||
|
||||
module.controller('GroupRoleMappingCtrl', function($scope, $http, $route, realm, group, clients, client, Client, Notifications, GroupRealmRoleMapping,
|
||||
GroupClientRoleMapping, GroupAvailableRealmRoleMapping, GroupAvailableClientRoleMapping,
|
||||
GroupCompositeRealmRoleMapping, GroupCompositeClientRoleMapping, $translate) {
|
||||
$scope.realm = realm;
|
||||
$scope.group = group;
|
||||
$scope.selectedRealmRoles = [];
|
||||
$scope.selectedRealmMappings = [];
|
||||
$scope.realmMappings = [];
|
||||
$scope.clients = clients;
|
||||
$scope.client = client;
|
||||
$scope.clientRoles = [];
|
||||
$scope.clientComposite = [];
|
||||
$scope.selectedClientRoles = [];
|
||||
$scope.selectedClientMappings = [];
|
||||
$scope.clientMappings = [];
|
||||
$scope.dummymodel = [];
|
||||
|
||||
$scope.realmMappings = GroupRealmRoleMapping.query({realm : realm.realm, groupId : group.id});
|
||||
$scope.realmRoles = GroupAvailableRealmRoleMapping.query({realm : realm.realm, groupId : group.id});
|
||||
$scope.realmComposite = GroupCompositeRealmRoleMapping.query({realm : realm.realm, groupId : group.id});
|
||||
|
||||
$scope.addRealmRole = function() {
|
||||
$scope.selectedRealmRolesToAdd = JSON.parse('[' + $scope.selectedRealmRoles + ']');
|
||||
$scope.selectedRealmRoles = [];
|
||||
$http.post(authUrl + '/admin/realms/' + realm.realm + '/groups/' + group.id + '/role-mappings/realm',
|
||||
$scope.selectedRealmRolesToAdd).then(function() {
|
||||
$scope.realmMappings = GroupRealmRoleMapping.query({realm : realm.realm, groupId : group.id});
|
||||
$scope.realmRoles = GroupAvailableRealmRoleMapping.query({realm : realm.realm, groupId : group.id});
|
||||
$scope.realmComposite = GroupCompositeRealmRoleMapping.query({realm : realm.realm, groupId : group.id});
|
||||
$scope.selectedRealmMappings = [];
|
||||
$scope.selectRealmRoles = [];
|
||||
if ($scope.selectedClient) {
|
||||
console.log('load available');
|
||||
$scope.clientComposite = GroupCompositeClientRoleMapping.query({realm : realm.realm, groupId : group.id, client : $scope.selectedClient.id});
|
||||
$scope.clientRoles = GroupAvailableClientRoleMapping.query({realm : realm.realm, groupId : group.id, client : $scope.selectedClient.id});
|
||||
$scope.clientMappings = GroupClientRoleMapping.query({realm : realm.realm, groupId : group.id, client : $scope.selectedClient.id});
|
||||
$scope.selectedClientRoles = [];
|
||||
$scope.selectedClientMappings = [];
|
||||
}
|
||||
$scope.selectedRealmRolesToAdd = [];
|
||||
Notifications.success($translate.instant('group.roles.add.success'));
|
||||
|
||||
});
|
||||
};
|
||||
|
||||
$scope.deleteRealmRole = function() {
|
||||
$scope.selectedRealmMappingsToRemove = JSON.parse('[' + $scope.selectedRealmMappings + ']');
|
||||
$http.delete(authUrl + '/admin/realms/' + realm.realm + '/groups/' + group.id + '/role-mappings/realm',
|
||||
{data : $scope.selectedRealmMappingsToRemove, headers : {"content-type" : "application/json"}}).then(function() {
|
||||
$scope.realmMappings = GroupRealmRoleMapping.query({realm : realm.realm, groupId : group.id});
|
||||
$scope.realmRoles = GroupAvailableRealmRoleMapping.query({realm : realm.realm, groupId : group.id});
|
||||
$scope.realmComposite = GroupCompositeRealmRoleMapping.query({realm : realm.realm, groupId : group.id});
|
||||
$scope.selectedRealmMappings = [];
|
||||
$scope.selectRealmRoles = [];
|
||||
if ($scope.selectedClient) {
|
||||
console.log('load available');
|
||||
$scope.clientComposite = GroupCompositeClientRoleMapping.query({realm : realm.realm, groupId : group.id, client : $scope.selectedClient.id});
|
||||
$scope.clientRoles = GroupAvailableClientRoleMapping.query({realm : realm.realm, groupId : group.id, client : $scope.selectedClient.id});
|
||||
$scope.clientMappings = GroupClientRoleMapping.query({realm : realm.realm, groupId : group.id, client : $scope.selectedClient.id});
|
||||
$scope.selectedClientRoles = [];
|
||||
$scope.selectedClientMappings = [];
|
||||
}
|
||||
$scope.selectedRealmMappingsToRemove = [];
|
||||
Notifications.success($translate.instant('group.roles.remove.success'));
|
||||
});
|
||||
};
|
||||
|
||||
$scope.addClientRole = function() {
|
||||
$scope.selectedClientRolesToAdd = JSON.parse('[' + $scope.selectedClientRoles + ']');
|
||||
$http.post(authUrl + '/admin/realms/' + realm.realm + '/groups/' + group.id + '/role-mappings/clients/' + $scope.selectedClient.id,
|
||||
$scope.selectedClientRolesToAdd).then(function() {
|
||||
$scope.clientMappings = GroupClientRoleMapping.query({realm : realm.realm, groupId : group.id, client : $scope.selectedClient.id});
|
||||
$scope.clientRoles = GroupAvailableClientRoleMapping.query({realm : realm.realm, groupId : group.id, client : $scope.selectedClient.id});
|
||||
$scope.clientComposite = GroupCompositeClientRoleMapping.query({realm : realm.realm, groupId : group.id, client : $scope.selectedClient.id});
|
||||
$scope.selectedClientRoles = [];
|
||||
$scope.selectedClientMappings = [];
|
||||
$scope.realmComposite = GroupCompositeRealmRoleMapping.query({realm : realm.realm, groupId : group.id});
|
||||
$scope.realmRoles = GroupAvailableRealmRoleMapping.query({realm : realm.realm, groupId : group.id});
|
||||
$scope.selectedClientRolesToAdd = [];
|
||||
Notifications.success($translate.instant('group.roles.add.success'));
|
||||
});
|
||||
};
|
||||
|
||||
$scope.deleteClientRole = function() {
|
||||
$scope.selectedClientMappingsToRemove = JSON.parse('[' + $scope.selectedClientMappings + ']');
|
||||
$http.delete(authUrl + '/admin/realms/' + realm.realm + '/groups/' + group.id + '/role-mappings/clients/' + $scope.selectedClient.id,
|
||||
{data : $scope.selectedClientMappingsToRemove, headers : {"content-type" : "application/json"}}).then(function() {
|
||||
$scope.clientMappings = GroupClientRoleMapping.query({realm : realm.realm, groupId : group.id, client : $scope.selectedClient.id});
|
||||
$scope.clientRoles = GroupAvailableClientRoleMapping.query({realm : realm.realm, groupId : group.id, client : $scope.selectedClient.id});
|
||||
$scope.clientComposite = GroupCompositeClientRoleMapping.query({realm : realm.realm, groupId : group.id, client : $scope.selectedClient.id});
|
||||
$scope.selectedClientRoles = [];
|
||||
$scope.selectedClientMappings = [];
|
||||
$scope.realmComposite = GroupCompositeRealmRoleMapping.query({realm : realm.realm, groupId : group.id});
|
||||
$scope.realmRoles = GroupAvailableRealmRoleMapping.query({realm : realm.realm, groupId : group.id});
|
||||
$scope.selectedClientMappingsToRemove = [];
|
||||
Notifications.success($translate.instant('group.roles.remove.success'));
|
||||
});
|
||||
};
|
||||
|
||||
|
||||
$scope.changeClient = function(client) {
|
||||
$scope.selectedClient = client;
|
||||
if (!client || !client.id) {
|
||||
$scope.selectedClient = null;
|
||||
$scope.clientRoles = null;
|
||||
$scope.clientMappings = null;
|
||||
$scope.clientComposite = null;
|
||||
return;
|
||||
}
|
||||
if ($scope.selectedClient) {
|
||||
$scope.clientComposite = GroupCompositeClientRoleMapping.query({realm : realm.realm, groupId : group.id, client : $scope.selectedClient.id});
|
||||
$scope.clientRoles = GroupAvailableClientRoleMapping.query({realm : realm.realm, groupId : group.id, client : $scope.selectedClient.id});
|
||||
$scope.clientMappings = GroupClientRoleMapping.query({realm : realm.realm, groupId : group.id, client : $scope.selectedClient.id});
|
||||
}
|
||||
$scope.selectedClientRoles = [];
|
||||
$scope.selectedClientMappings = [];
|
||||
};
|
||||
|
||||
clientSelectControl($scope, $route.current.params.realm, Client);
|
||||
|
||||
});
|
||||
|
||||
module.controller('GroupMembersCtrl', function($scope, realm, group, GroupMembership) {
|
||||
$scope.realm = realm;
|
||||
$scope.page = 0;
|
||||
$scope.group = group;
|
||||
|
||||
$scope.query = {
|
||||
realm: realm.realm,
|
||||
groupId: group.id,
|
||||
max : 5,
|
||||
first : 0
|
||||
};
|
||||
|
||||
|
||||
$scope.firstPage = function() {
|
||||
$scope.query.first = 0;
|
||||
$scope.searchQuery();
|
||||
};
|
||||
|
||||
$scope.previousPage = function() {
|
||||
$scope.query.first -= parseInt($scope.query.max);
|
||||
if ($scope.query.first < 0) {
|
||||
$scope.query.first = 0;
|
||||
}
|
||||
$scope.searchQuery();
|
||||
};
|
||||
|
||||
$scope.nextPage = function() {
|
||||
$scope.query.first += parseInt($scope.query.max);
|
||||
$scope.searchQuery();
|
||||
};
|
||||
|
||||
$scope.searchQuery = function() {
|
||||
console.log("query.search: " + $scope.query.search);
|
||||
$scope.searchLoaded = false;
|
||||
|
||||
$scope.users = GroupMembership.query($scope.query, function() {
|
||||
console.log('search loaded');
|
||||
$scope.searchLoaded = true;
|
||||
$scope.lastSearch = $scope.query.search;
|
||||
});
|
||||
};
|
||||
|
||||
$scope.searchQuery();
|
||||
|
||||
});
|
||||
|
||||
module.controller('DefaultGroupsCtrl', function($scope, $q, realm, Groups, GroupsCount, DefaultGroups, Notifications, $translate) {
|
||||
$scope.realm = realm;
|
||||
$scope.groupList = [];
|
||||
$scope.selectedGroup = null;
|
||||
$scope.tree = [];
|
||||
|
||||
$scope.searchCriteria = '';
|
||||
$scope.currentPage = 1;
|
||||
$scope.currentPageInput = $scope.currentPage;
|
||||
$scope.pageSize = 20;
|
||||
$scope.numberOfPages = 1;
|
||||
|
||||
var refreshDefaultGroups = function () {
|
||||
DefaultGroups.query({realm: realm.realm}, function(data) {
|
||||
$scope.defaultGroups = data;
|
||||
});
|
||||
}
|
||||
|
||||
var refreshAvailableGroups = function (search) {
|
||||
var first = ($scope.currentPage * $scope.pageSize) - $scope.pageSize;
|
||||
$scope.currentPageInput = $scope.currentPage;
|
||||
var queryParams = {
|
||||
realm : realm.realm,
|
||||
first : first,
|
||||
max : $scope.pageSize
|
||||
};
|
||||
var countParams = {
|
||||
realm : realm.realm,
|
||||
top : 'true'
|
||||
};
|
||||
|
||||
if(angular.isDefined(search) && search !== '') {
|
||||
queryParams.search = search;
|
||||
countParams.search = search;
|
||||
}
|
||||
|
||||
var promiseGetGroups = $q.defer();
|
||||
Groups.query(queryParams, function(entry) {
|
||||
promiseGetGroups.resolve(entry);
|
||||
}, function() {
|
||||
promiseGetGroups.reject($translate.instant('group.fetch.fail', {params: queryParams}));
|
||||
});
|
||||
promiseGetGroups.promise.then(function(groups) {
|
||||
$scope.groupList = groups;
|
||||
}, function (failed) {
|
||||
Notifications.success(failed);
|
||||
});
|
||||
|
||||
var promiseCount = $q.defer();
|
||||
GroupsCount.query(countParams, function(entry) {
|
||||
promiseCount.resolve(entry);
|
||||
}, function() {
|
||||
promiseCount.reject($translate.instant('group.fetch.fail', {params: countParams}));
|
||||
});
|
||||
promiseCount.promise.then(function(entry) {
|
||||
if(angular.isDefined(entry.count) && entry.count > $scope.pageSize) {
|
||||
$scope.numberOfPages = Math.ceil(entry.count/$scope.pageSize);
|
||||
}
|
||||
}, function (failed) {
|
||||
Notifications.success(failed);
|
||||
});
|
||||
};
|
||||
|
||||
refreshAvailableGroups();
|
||||
|
||||
$scope.$watch('currentPage', function(newValue, oldValue) {
|
||||
if(parseInt(newValue, 10) !== parseInt(oldValue, 10)) {
|
||||
refreshAvailableGroups($scope.searchCriteria);
|
||||
}
|
||||
});
|
||||
|
||||
$scope.clearSearch = function() {
|
||||
$scope.searchCriteria = '';
|
||||
if (parseInt($scope.currentPage, 10) === 1) {
|
||||
refreshAvailableGroups();
|
||||
} else {
|
||||
$scope.currentPage = 1;
|
||||
}
|
||||
};
|
||||
|
||||
$scope.searchGroup = function() {
|
||||
if (parseInt($scope.currentPage, 10) === 1) {
|
||||
refreshAvailableGroups($scope.searchCriteria);
|
||||
} else {
|
||||
$scope.currentPage = 1;
|
||||
}
|
||||
};
|
||||
|
||||
refreshDefaultGroups();
|
||||
|
||||
$scope.addDefaultGroup = function() {
|
||||
if (!$scope.tree.currentNode) {
|
||||
Notifications.error($translate.instant('group.default.add.error'));
|
||||
return;
|
||||
}
|
||||
|
||||
DefaultGroups.update({realm: realm.realm, groupId: $scope.tree.currentNode.id}, function() {
|
||||
refreshDefaultGroups();
|
||||
Notifications.success($translate.instant('group.default.add.success'));
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
$scope.removeDefaultGroup = function() {
|
||||
DefaultGroups.remove({realm: realm.realm, groupId: $scope.selectedGroup.id}, function() {
|
||||
refreshDefaultGroups();
|
||||
Notifications.success($translate.instant('group.default.remove.success'));
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
var isLeaf = function(node) {
|
||||
return node.id !== "realm" && (!node.subGroups || node.subGroups.length === 0);
|
||||
};
|
||||
|
||||
$scope.getGroupClass = function(node) {
|
||||
if (node.id === "realm") {
|
||||
return 'pficon pficon-users';
|
||||
}
|
||||
if (isLeaf(node)) {
|
||||
return 'normal';
|
||||
}
|
||||
if (node.subGroups.length && node.collapsed) return 'collapsed';
|
||||
if (node.subGroups.length && !node.collapsed) return 'expanded';
|
||||
return 'collapsed';
|
||||
|
||||
};
|
||||
|
||||
$scope.getSelectedClass = function(node) {
|
||||
if (node.selected) {
|
||||
return 'selected';
|
||||
} else if ($scope.cutNode && $scope.cutNode.id === node.id) {
|
||||
return 'cut';
|
||||
}
|
||||
return undefined;
|
||||
}
|
||||
|
||||
});
|
3229
default-themes/base/admin/resources/js/controllers/realm.js
Normal file
3229
default-themes/base/admin/resources/js/controllers/realm.js
Normal file
File diff suppressed because it is too large
Load Diff
48
default-themes/base/admin/resources/js/controllers/roles.js
Normal file
48
default-themes/base/admin/resources/js/controllers/roles.js
Normal file
@ -0,0 +1,48 @@
|
||||
module.controller('RoleMembersCtrl', function($scope, realm, role, RoleMembership, Dialog, Notifications, $location, RealmRoleRemover) {
|
||||
$scope.realm = realm;
|
||||
$scope.page = 0;
|
||||
$scope.role = role;
|
||||
|
||||
$scope.query = {
|
||||
realm: realm.realm,
|
||||
role: role.name,
|
||||
max : 5,
|
||||
first : 0
|
||||
}
|
||||
|
||||
$scope.remove = function() {
|
||||
RealmRoleRemover.remove($scope.role, realm, Dialog, $location, Notifications);
|
||||
};
|
||||
|
||||
$scope.firstPage = function() {
|
||||
$scope.query.first = 0;
|
||||
$scope.searchQuery();
|
||||
}
|
||||
|
||||
$scope.previousPage = function() {
|
||||
$scope.query.first -= parseInt($scope.query.max);
|
||||
if ($scope.query.first < 0) {
|
||||
$scope.query.first = 0;
|
||||
}
|
||||
$scope.searchQuery();
|
||||
}
|
||||
|
||||
$scope.nextPage = function() {
|
||||
$scope.query.first += parseInt($scope.query.max);
|
||||
$scope.searchQuery();
|
||||
}
|
||||
|
||||
$scope.searchQuery = function() {
|
||||
console.log("query.search: " + $scope.query.search);
|
||||
$scope.searchLoaded = false;
|
||||
|
||||
$scope.users = RoleMembership.query($scope.query, function() {
|
||||
console.log('search loaded');
|
||||
$scope.searchLoaded = true;
|
||||
$scope.lastSearch = $scope.query.search;
|
||||
});
|
||||
};
|
||||
|
||||
$scope.searchQuery();
|
||||
|
||||
});
|
2044
default-themes/base/admin/resources/js/controllers/users.js
Executable file
2044
default-themes/base/admin/resources/js/controllers/users.js
Executable file
File diff suppressed because it is too large
Load Diff
570
default-themes/base/admin/resources/js/loaders.js
Executable file
570
default-themes/base/admin/resources/js/loaders.js
Executable file
@ -0,0 +1,570 @@
|
||||
'use strict';
|
||||
|
||||
var module = angular.module('keycloak.loaders', [ 'keycloak.services', 'ngResource' ]);
|
||||
|
||||
module.factory('Loader', function($q) {
|
||||
var loader = {};
|
||||
loader.get = function(service, id) {
|
||||
return function() {
|
||||
var i = id && id();
|
||||
var delay = $q.defer();
|
||||
service.get(i, function(entry) {
|
||||
delay.resolve(entry);
|
||||
}, function() {
|
||||
delay.reject('Unable to fetch ' + i);
|
||||
});
|
||||
return delay.promise;
|
||||
};
|
||||
};
|
||||
loader.query = function(service, id) {
|
||||
return function() {
|
||||
var i = id && id();
|
||||
var delay = $q.defer();
|
||||
service.query(i, function(entry) {
|
||||
delay.resolve(entry);
|
||||
}, function() {
|
||||
delay.reject('Unable to fetch ' + i);
|
||||
});
|
||||
return delay.promise;
|
||||
};
|
||||
};
|
||||
return loader;
|
||||
});
|
||||
|
||||
module.factory('RealmListLoader', function(Loader, Realm, $q) {
|
||||
return Loader.get(Realm);
|
||||
});
|
||||
|
||||
module.factory('ServerInfoLoader', function(Loader, ServerInfo) {
|
||||
return function() {
|
||||
return ServerInfo.promise;
|
||||
};
|
||||
});
|
||||
|
||||
module.factory('RealmLoader', function(Loader, Realm, $route, $q) {
|
||||
return Loader.get(Realm, function() {
|
||||
return {
|
||||
id : $route.current.params.realm
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('RealmKeysLoader', function(Loader, RealmKeys, $route, $q) {
|
||||
return Loader.get(RealmKeys, function() {
|
||||
return {
|
||||
id : $route.current.params.realm
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('RealmSpecificLocalesLoader', function(Loader, RealmSpecificLocales, $route, $q) {
|
||||
return Loader.get(RealmSpecificLocales, function() {
|
||||
return {
|
||||
id : $route.current.params.realm
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('RealmSpecificlocalizationTextLoader', function(Loader, RealmSpecificLocalizationText, $route, $q) {
|
||||
return Loader.get(RealmSpecificLocalizationText, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm,
|
||||
locale : $route.current.params.locale,
|
||||
key: $route.current.params.key
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('RealmEventsConfigLoader', function(Loader, RealmEventsConfig, $route, $q) {
|
||||
return Loader.get(RealmEventsConfig, function() {
|
||||
return {
|
||||
id : $route.current.params.realm
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('UserListLoader', function(Loader, User, $route, $q) {
|
||||
return Loader.query(User, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('RequiredActionsListLoader', function(Loader, RequiredActions, $route, $q) {
|
||||
return Loader.query(RequiredActions, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('UnregisteredRequiredActionsListLoader', function(Loader, UnregisteredRequiredActions, $route, $q) {
|
||||
return Loader.query(UnregisteredRequiredActions, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('RealmSessionStatsLoader', function(Loader, RealmSessionStats, $route, $q) {
|
||||
return Loader.get(RealmSessionStats, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('RealmClientSessionStatsLoader', function(Loader, RealmClientSessionStats, $route, $q) {
|
||||
return Loader.query(RealmClientSessionStats, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('ClientProtocolMapperLoader', function(Loader, ClientProtocolMapper, $route, $q) {
|
||||
return Loader.get(ClientProtocolMapper, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm,
|
||||
client : $route.current.params.client,
|
||||
id: $route.current.params.id
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('ClientScopeProtocolMapperLoader', function(Loader, ClientScopeProtocolMapper, $route, $q) {
|
||||
return Loader.get(ClientScopeProtocolMapper, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm,
|
||||
clientScope : $route.current.params.clientScope,
|
||||
id: $route.current.params.id
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('UserLoader', function(Loader, User, $route, $q) {
|
||||
return Loader.get(User, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm,
|
||||
userId : $route.current.params.user
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('ComponentLoader', function(Loader, Components, $route, $q) {
|
||||
return Loader.get(Components, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm,
|
||||
componentId: $route.current.params.componentId
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('LDAPMapperLoader', function(Loader, Components, $route, $q) {
|
||||
return Loader.get(Components, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm,
|
||||
componentId: $route.current.params.mapperId
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('ComponentsLoader', function(Loader, Components, $route, $q) {
|
||||
var componentsLoader = {};
|
||||
|
||||
componentsLoader.loadComponents = function(parent, componentType) {
|
||||
return Loader.query(Components, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm,
|
||||
parent : parent,
|
||||
type: componentType
|
||||
}
|
||||
})();
|
||||
};
|
||||
|
||||
return componentsLoader;
|
||||
});
|
||||
|
||||
module.factory('SubComponentTypesLoader', function(Loader, SubComponentTypes, $route, $q) {
|
||||
var componentsLoader = {};
|
||||
|
||||
componentsLoader.loadComponents = function(parent, componentType) {
|
||||
return Loader.query(SubComponentTypes, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm,
|
||||
componentId : parent,
|
||||
type: componentType
|
||||
}
|
||||
})();
|
||||
};
|
||||
|
||||
return componentsLoader;
|
||||
});
|
||||
|
||||
module.factory('UserSessionStatsLoader', function(Loader, UserSessionStats, $route, $q) {
|
||||
return Loader.get(UserSessionStats, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm,
|
||||
user : $route.current.params.user
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('UserSessionsLoader', function(Loader, UserSessions, $route, $q) {
|
||||
return Loader.query(UserSessions, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm,
|
||||
user : $route.current.params.user
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('UserOfflineSessionsLoader', function(Loader, UserOfflineSessions, $route, $q) {
|
||||
return Loader.query(UserOfflineSessions, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm,
|
||||
user : $route.current.params.user,
|
||||
client : $route.current.params.client
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('UserFederatedIdentityLoader', function(Loader, UserFederatedIdentities, $route, $q) {
|
||||
return Loader.query(UserFederatedIdentities, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm,
|
||||
user : $route.current.params.user
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('UserConsentsLoader', function(Loader, UserConsents, $route, $q) {
|
||||
return Loader.query(UserConsents, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm,
|
||||
user : $route.current.params.user
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
|
||||
module.factory('RoleLoader', function(Loader, RoleById, $route, $q) {
|
||||
return Loader.get(RoleById, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm,
|
||||
role : $route.current.params.role
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('RoleListLoader', function(Loader, Role, $route, $q) {
|
||||
return Loader.query(Role, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('ClientRoleLoader', function(Loader, RoleById, $route, $q) {
|
||||
return Loader.get(RoleById, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm,
|
||||
client : $route.current.params.client,
|
||||
role : $route.current.params.role
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('ClientSessionStatsLoader', function(Loader, ClientSessionStats, $route, $q) {
|
||||
return Loader.get(ClientSessionStats, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm,
|
||||
client : $route.current.params.client
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('ClientSessionCountLoader', function(Loader, ClientSessionCount, $route, $q) {
|
||||
return Loader.get(ClientSessionCount, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm,
|
||||
client : $route.current.params.client
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('ClientOfflineSessionCountLoader', function(Loader, ClientOfflineSessionCount, $route, $q) {
|
||||
return Loader.get(ClientOfflineSessionCount, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm,
|
||||
client : $route.current.params.client
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('ClientDefaultClientScopesLoader', function(Loader, ClientDefaultClientScopes, $route, $q) {
|
||||
return Loader.query(ClientDefaultClientScopes, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm,
|
||||
client : $route.current.params.client
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('ClientOptionalClientScopesLoader', function(Loader, ClientOptionalClientScopes, $route, $q) {
|
||||
return Loader.query(ClientOptionalClientScopes, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm,
|
||||
client : $route.current.params.client
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('ClientLoader', function(Loader, Client, $route, $q) {
|
||||
return Loader.get(Client, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm,
|
||||
client : $route.current.params.client
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('ClientListLoader', function(Loader, Client, $route, $q) {
|
||||
return Loader.query(Client, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm,
|
||||
first: 0,
|
||||
max: 20
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('ClientScopeLoader', function(Loader, ClientScope, $route, $q) {
|
||||
return Loader.get(ClientScope, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm,
|
||||
clientScope : $route.current.params.clientScope
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('ClientScopeListLoader', function(Loader, ClientScope, $route, $q) {
|
||||
return Loader.query(ClientScope, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('RealmDefaultClientScopesLoader', function(Loader, RealmDefaultClientScopes, $route, $q) {
|
||||
return Loader.query(RealmDefaultClientScopes, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('RealmOptionalClientScopesLoader', function(Loader, RealmOptionalClientScopes, $route, $q) {
|
||||
return Loader.query(RealmOptionalClientScopes, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('ClientServiceAccountUserLoader', function(Loader, ClientServiceAccountUser, $route, $q) {
|
||||
return Loader.get(ClientServiceAccountUser, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm,
|
||||
client : $route.current.params.client
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
module.factory('RoleMappingLoader', function(Loader, RoleMapping, $route, $q) {
|
||||
var realm = $route.current.params.realm || $route.current.params.client;
|
||||
|
||||
return Loader.query(RoleMapping, function() {
|
||||
return {
|
||||
realm : realm,
|
||||
role : $route.current.params.role
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('IdentityProviderLoader', function(Loader, IdentityProvider, $route, $q) {
|
||||
return Loader.get(IdentityProvider, function () {
|
||||
return {
|
||||
realm: $route.current.params.realm,
|
||||
alias: $route.current.params.alias
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('IdentityProviderFactoryLoader', function(Loader, IdentityProviderFactory, $route, $q) {
|
||||
return Loader.get(IdentityProviderFactory, function () {
|
||||
return {
|
||||
realm: $route.current.params.realm,
|
||||
provider_id: $route.current.params.provider_id
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('IdentityProviderMapperTypesLoader', function(Loader, IdentityProviderMapperTypes, $route, $q) {
|
||||
return Loader.get(IdentityProviderMapperTypes, function () {
|
||||
return {
|
||||
realm: $route.current.params.realm,
|
||||
alias: $route.current.params.alias
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('IdentityProviderMappersLoader', function(Loader, IdentityProviderMappers, $route, $q) {
|
||||
return Loader.query(IdentityProviderMappers, function () {
|
||||
return {
|
||||
realm: $route.current.params.realm,
|
||||
alias: $route.current.params.alias
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('IdentityProviderMapperLoader', function(Loader, IdentityProviderMapper, $route, $q) {
|
||||
return Loader.get(IdentityProviderMapper, function () {
|
||||
return {
|
||||
realm: $route.current.params.realm,
|
||||
alias: $route.current.params.alias,
|
||||
mapperId: $route.current.params.mapperId
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('AuthenticationFlowsLoader', function(Loader, AuthenticationFlows, $route, $q) {
|
||||
return Loader.query(AuthenticationFlows, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm,
|
||||
flow: ''
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('AuthenticationFormProvidersLoader', function(Loader, AuthenticationFormProviders, $route, $q) {
|
||||
return Loader.query(AuthenticationFormProviders, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('AuthenticationFormActionProvidersLoader', function(Loader, AuthenticationFormActionProviders, $route, $q) {
|
||||
return Loader.query(AuthenticationFormActionProviders, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('AuthenticatorProvidersLoader', function(Loader, AuthenticatorProviders, $route, $q) {
|
||||
return Loader.query(AuthenticatorProviders, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('ClientAuthenticatorProvidersLoader', function(Loader, ClientAuthenticatorProviders, $route, $q) {
|
||||
return Loader.query(ClientAuthenticatorProviders, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('AuthenticationFlowLoader', function(Loader, AuthenticationFlows, $route, $q) {
|
||||
return Loader.get(AuthenticationFlows, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm,
|
||||
flow: $route.current.params.flow
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('AuthenticationConfigDescriptionLoader', function(Loader, AuthenticationConfigDescription, $route, $q) {
|
||||
return Loader.get(AuthenticationConfigDescription, function () {
|
||||
return {
|
||||
realm: $route.current.params.realm,
|
||||
provider: $route.current.params.provider
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('PerClientAuthenticationConfigDescriptionLoader', function(Loader, PerClientAuthenticationConfigDescription, $route, $q) {
|
||||
return Loader.get(PerClientAuthenticationConfigDescription, function () {
|
||||
return {
|
||||
realm: $route.current.params.realm
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('ExecutionIdLoader', function($route) {
|
||||
return function() { return $route.current.params.executionId; };
|
||||
});
|
||||
|
||||
module.factory('AuthenticationConfigLoader', function(Loader, AuthenticationConfig, $route, $q) {
|
||||
return Loader.get(AuthenticationConfig, function () {
|
||||
return {
|
||||
realm: $route.current.params.realm,
|
||||
config: $route.current.params.config
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('GroupListLoader', function(Loader, Groups, $route, $q) {
|
||||
return Loader.query(Groups, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('GroupCountLoader', function(Loader, GroupsCount, $route, $q) {
|
||||
return Loader.query(GroupsCount, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm,
|
||||
top : true
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('GroupLoader', function(Loader, Group, $route, $q) {
|
||||
return Loader.get(Group, function() {
|
||||
return {
|
||||
realm : $route.current.params.realm,
|
||||
groupId : $route.current.params.group
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('ClientInitialAccessLoader', function(Loader, ClientInitialAccess, $route) {
|
||||
return Loader.query(ClientInitialAccess, function() {
|
||||
return {
|
||||
realm: $route.current.params.realm
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
module.factory('ClientRegistrationPolicyProvidersLoader', function(Loader, ClientRegistrationPolicyProviders, $route) {
|
||||
return Loader.query(ClientRegistrationPolicyProviders, function() {
|
||||
return {
|
||||
realm: $route.current.params.realm
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
2225
default-themes/base/admin/resources/js/services.js
Executable file
2225
default-themes/base/admin/resources/js/services.js
Executable file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user