/** * Created by robin on 11/1/15. */ (function () { 'use strict'; angular.module('luticateAuth') .factory('luticateAuthPermissions', ['luticateAuthPermissionsDataAccess', 'luticateAuthCache', '$q', function(luticateAuthPermissionsDataAccess, luticateAuthCache, $q) { var luticateAuthPermissions = { getAll: luticateAuthPermissionsDataAccess.getAll, get: luticateAuthPermissionsDataAccess.get, edit: luticateAuthPermissionsDataAccess.edit, add: luticateAuthPermissionsDataAccess.add, del: luticateAuthPermissionsDataAccess.del, getEffectiveUser: luticateAuthPermissionsDataAccess.getEffectiveUser, getAllEffectiveUser: luticateAuthPermissionsDataAccess.getAllEffectiveUser, getEffectiveMe: luticateAuthPermissionsDataAccess.getEffectiveMe, getAllEffectiveMe: luticateAuthPermissionsDataAccess.getAllEffectiveMe }; luticateAuthPermissions.loadPermissions = function(promise) { var defer = $q.defer(); luticateAuthPermissions.getAllEffectiveMe(promise) .then(function(permissions) { var perms = {}; for (var i = 0; i < permissions.Data.length; ++i) { var p = permissions.Data[i]; perms[p.Name] = p.Value; } luticateAuthCache.setEffectivePermissions(perms); defer.resolve(); }, defer.reject); return defer.promise; }; return luticateAuthPermissions; }]); })();