Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.

users.controller.js 2.8KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. angular.module('luticate')
  2. .controller('UsersController', ['$scope', '$state', 'luticateAuthUsers', 'dialogs',
  3. function($scope, $state, luticateAuthUsers, dialogs) {
  4. $scope.page = 0;
  5. $scope.perPage = 15;
  6. $scope.users = [];
  7. $scope.pages = [];
  8. $scope.selectedUsers = [];
  9. var promiseUsers = {
  10. id: "promiseUsers",
  11. groups: ['userList']
  12. };
  13. $scope.loadPage = function(page)
  14. {
  15. luticateAuthUsers.getAll({page: page, perPage: $scope.perPage}, promiseUsers)
  16. .then(function(users)
  17. {
  18. $scope.page = page;
  19. $scope.users = users;
  20. $scope.pages = [];
  21. var start = Math.max(0, $scope.page - 5);
  22. var end = Math.min(start + 10, (users.Count / $scope.perPage) + (users.Count % $scope.perPage == 0 ? -1 : 0));
  23. for (var i = start; i < end; ++i) {
  24. $scope.pages.push(i);
  25. }
  26. }, function(error)
  27. {
  28. });
  29. };
  30. $scope.displayUser = function(user)
  31. {
  32. dialogs.create('views/modals/useredit.html', 'UserEditController', user)
  33. .result.then(function (data) {
  34. $scope.loadPage($scope.page);
  35. });
  36. };
  37. $scope.removeUsers = function()
  38. {
  39. console.log($scope.selectedUsers);
  40. };
  41. $scope.addUser = function()
  42. {
  43. dialogs.create('views/modals/useredit.html', 'UserEditController', null)
  44. .result.then(function (data) {
  45. $scope.loadPage($scope.page);
  46. });
  47. };
  48. $scope.toggleSelectedUser = function(id)
  49. {
  50. var idx = $scope.selectedUsers.indexOf(id);
  51. if (idx > -1) {
  52. $scope.selectedUsers.splice(idx, 1);
  53. }
  54. else {
  55. $scope.selectedUsers.push(id);
  56. }
  57. };
  58. $scope.toggleSelectAll = function()
  59. {
  60. if ($scope.selectedUsers.length == $scope.users.Data.length) {
  61. $scope.selectedUsers = [];
  62. }
  63. else {
  64. $scope.selectedUsers = [];
  65. for (var i = 0; i < $scope.users.Data.length; ++i) {
  66. $scope.selectedUsers.push($scope.users.Data[i].Id);
  67. }
  68. }
  69. };
  70. $scope.loadPage($scope.page);
  71. }]);