You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

users.js 3.7KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. /**
  2. * Created by robin on 11/1/15.
  3. */
  4. (function () {
  5. 'use strict';
  6. angular.module('luticateAuth')
  7. .factory('luticateAuthUsers', ['luticateRequest', '$q', 'luticateAuthCache', 'luticateAuthPermissions',
  8. function(luticateRequest, $q, luticateAuthCache, luticateAuthPermissions) {
  9. var luticateAuthUsers = {};
  10. luticateAuthUsers.login = function(data, promise)
  11. {
  12. var defer = $q.defer();
  13. luticateRequest.post("/api/luticate/users/login", data, null, promise)
  14. .then(function(user)
  15. {
  16. luticateAuthUsers.loadPermissions(user, promise)
  17. .then(function(permissions)
  18. {
  19. luticateAuthCache.setUser(user);
  20. defer.resolve(user);
  21. }, function(error)
  22. {
  23. luticateAuthCache.removeUser();
  24. defer.reject(error);
  25. });
  26. }, function(error)
  27. {
  28. luticateAuthCache.removeUser();
  29. defer.reject(error);
  30. });
  31. return defer.promise;
  32. };
  33. luticateAuthUsers.loadPermissions = function(promise)
  34. {
  35. var defer = $q.defer();
  36. luticateAuthPermissions.getAllEffectiveMe(promise)
  37. .then(function(permissions)
  38. {
  39. luticateAuthCache.setEffectivePermissions(permissions);
  40. defer.resolve(permissions);
  41. }, defer.reject);
  42. return defer.promise;
  43. };
  44. luticateAuthUsers.logout = function(promise)
  45. {
  46. var defer = $q.defer();
  47. luticateRequest.post("/api/luticate/users/logout", null, null, promise)
  48. .then(function(data)
  49. {
  50. luticateAuthCache.removeUser();
  51. defer.resolve(null);
  52. }, function(error)
  53. {
  54. luticateAuthCache.removeUser();
  55. defer.resolve(null);
  56. });
  57. return defer.promise;
  58. };
  59. luticateAuthUsers.getAll = function(data, promise)
  60. {
  61. return luticateRequest.get("/api/luticate/users", data, promise);
  62. };
  63. luticateAuthUsers.edit = function(data, promise)
  64. {
  65. return luticateRequest.post("/api/luticate/users/" + data.user_id + "/edit", data, null, promise);
  66. };
  67. luticateAuthUsers.add = function(data, promise)
  68. {
  69. return luticateRequest.post("/api/luticate/users/add", data, null, promise);
  70. };
  71. luticateAuthUsers.setPassword = function(data, promise)
  72. {
  73. return luticateRequest.post("/api/luticate/users/" + data.user_id + "/setPassword", data, null, promise);
  74. };
  75. luticateAuthUsers.del = function(data, promise)
  76. {
  77. return luticateRequest.post("/api/luticate/users/" + data.user_id + "/del", null, null, promise);
  78. };
  79. return luticateAuthUsers;
  80. }]);
  81. })();