mirror of https://github.com/portainer/portainer
48 lines
1.2 KiB
JavaScript
48 lines
1.2 KiB
JavaScript
|
import {
|
||
|
RoleViewModel,
|
||
|
// EndpointRoleCreateRequest,
|
||
|
// EndpointRoleUpdateRequest
|
||
|
} from '../models/role';
|
||
|
|
||
|
angular.module('portainer.extensions.rbac')
|
||
|
.factory('RoleService', ['$q', 'Roles',
|
||
|
function RoleService($q, Roles) {
|
||
|
'use strict';
|
||
|
var service = {};
|
||
|
|
||
|
service.role = function(roleId) {
|
||
|
var deferred = $q.defer();
|
||
|
|
||
|
Roles.get({ id: roleId }).$promise
|
||
|
.then(function success(data) {
|
||
|
var role = new RoleViewModel(data);
|
||
|
deferred.resolve(role);
|
||
|
})
|
||
|
.catch(function error(err) {
|
||
|
deferred.reject({ msg: 'Unable to retrieve role', err: err });
|
||
|
});
|
||
|
|
||
|
return deferred.promise;
|
||
|
};
|
||
|
|
||
|
service.roles = function() {
|
||
|
return Roles.query({}).$promise;
|
||
|
};
|
||
|
|
||
|
// service.createRole = function(model, endpoints) {
|
||
|
// var payload = new EndpointRoleCreateRequest(model, endpoints);
|
||
|
// return EndpointRoles.create(payload).$promise;
|
||
|
// };
|
||
|
//
|
||
|
// service.updateRole = function(model, endpoints) {
|
||
|
// var payload = new EndpointRoleUpdateRequest(model, endpoints);
|
||
|
// return EndpointRoles.update(payload).$promise;
|
||
|
// };
|
||
|
|
||
|
service.deleteRole = function(roleId) {
|
||
|
return Roles.remove({ id: roleId }).$promise;
|
||
|
};
|
||
|
|
||
|
return service;
|
||
|
}]);
|