80 lines
1.8 KiB
JavaScript
80 lines
1.8 KiB
JavaScript
var module = angular.module('usersUI', []);
|
|
|
|
function usersCtrl($scope, $http) {
|
|
|
|
$scope.users = [];
|
|
|
|
$scope.listUsers = function() {
|
|
showSpinner();
|
|
$http.get('users.get')
|
|
.success(
|
|
function(data) {
|
|
$scope.users = data;
|
|
hideSpinner();
|
|
}
|
|
).error(
|
|
function() {
|
|
show_notification("error", "Error accessing user permission levels");
|
|
hideSpinner();
|
|
}
|
|
);
|
|
}
|
|
|
|
$scope.addUser = function(user) {
|
|
if (user) {
|
|
user = user.trim();
|
|
if (user) {
|
|
var lngt = $scope.users.length;
|
|
for(i=0; i < lngt; i++) {
|
|
if ($scope.users[i].id == user) {
|
|
show_notification("error", "User " + user + " is already present");
|
|
return;
|
|
}
|
|
}
|
|
$scope.users.push( {'id' : user, 'permissionLevels': [] });
|
|
show_notification("info", "Added user: " + user);
|
|
}
|
|
}
|
|
}
|
|
|
|
$scope.dropUser = function(i) {
|
|
user = $scope.users[i].id;
|
|
$scope.users.splice(i, 1);
|
|
show_notification("info", "User " + user + " deleted");
|
|
}
|
|
|
|
$scope.updateUser = function(i, level, b) {
|
|
user = $scope.users[i];
|
|
pos = user.permissionLevels.indexOf(level);
|
|
if (b) {
|
|
if (pos < 0) user.permissionLevels.push(level);
|
|
} else {
|
|
if (pos >= 0) user.permissionLevels.splice(pos, 1);
|
|
}
|
|
//show_notification("info", "User " + user.id + " updated");
|
|
}
|
|
|
|
$scope.saveUsers = function() {
|
|
showSpinner();
|
|
|
|
$http.defaults.headers.post["Content-Type"] = "application/json";
|
|
|
|
$http.post('saveusers.do', $scope.users )
|
|
.success(
|
|
function(data) {
|
|
show_notification("info", "Users saved correctly");
|
|
hideSpinner();
|
|
}
|
|
).error(
|
|
function() {
|
|
show_notification("error", "Error saving users");
|
|
hideSpinner();
|
|
}
|
|
);
|
|
}
|
|
|
|
initSpinner();
|
|
|
|
$scope.listUsers();
|
|
|
|
} |