12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- /**
- * Created by robin on 11/1/15.
- */
-
- (function () {
- 'use strict';
- angular.module('luticateAuth')
- .factory('luticateAuthUsers', ['luticateRequest', '$q', 'luticateAuthCache', 'luticateAuthPermissions',
- function(luticateRequest, $q, luticateAuthCache, luticateAuthPermissions) {
-
- var luticateAuthUsers = {};
-
- luticateAuthUsers.login = function(data, promise)
- {
- var defer = $q.defer();
- luticateRequest.post("/api/luticate/users/login", data, null, promise)
- .then(function(user)
- {
- luticateAuthCache.setUser(user);
- luticateAuthUsers.loadPermissions(promise)
- .then(function(permissions)
- {
- defer.resolve(user);
- }, function(error)
- {
- luticateAuthCache.removeUser();
- defer.reject(error);
- });
- }, function(error)
- {
- luticateAuthCache.removeUser();
- defer.reject(error);
- });
- return defer.promise;
- };
-
- luticateAuthUsers.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(permissions.Data);
- }, defer.reject);
- return defer.promise;
- };
-
- luticateAuthUsers.logout = function(promise)
- {
- var defer = $q.defer();
- luticateRequest.post("/api/luticate/users/logout", null, null, promise)
- .finally(function()
- {
- luticateAuthCache.removeUser();
- luticateAuthUsers.loadPermissions(promise)
- .finally(defer.resolve);
- });
- return defer.promise;
- };
-
- luticateAuthUsers.getAll = function(data, promise)
- {
- return luticateRequest.get("/api/luticate/users", data, promise);
- };
-
- luticateAuthUsers.edit = function(data, promise)
- {
- return luticateRequest.post("/api/luticate/users/" + data.user_id + "/edit", data, null, promise);
- };
-
- luticateAuthUsers.add = function(data, promise)
- {
- return luticateRequest.post("/api/luticate/users/add", data, null, promise);
- };
-
- luticateAuthUsers.setPassword = function(data, promise)
- {
- return luticateRequest.post("/api/luticate/users/" + data.user_id + "/setPassword", data, null, promise);
- };
-
- luticateAuthUsers.del = function(data, promise)
- {
- return luticateRequest.post("/api/luticate/users/" + data.user_id + "/del", null, null, promise);
- };
-
- return luticateAuthUsers;
- }]);
- })();
|