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.
 
 
 
 

87 lines
3.3 KiB

function createLdapUser(adminUid, adminPwd, newEntry) {
if (adminUid === "admin" && adminPwd === "password") {
return { "failed": false,
"newPasswd": "NuOvA-PaSsWwOrD" };
}
return { "failed": true,
"reason": "Invalid admin username or password." };
};
var lilikAddUserApp = angular.module('lilikAddUserApp', []);
lilikAddUserApp.controller('AddUserController', function AddUserController($scope, $http) {
// Initialize scope variable
$scope.showLoginForm = true;
$scope.showAddForm = false;
$scope.showConfirmForm = false;
$scope.startConfirm = false;
$scope.creationPending = false;
$scope.typingUser = function () {
$scope.newUid = $scope.newUid.toLowerCase().replace(' ', '-');
$scope.newCn = $scope.newUid.replace('-',' ').replace(/(^\w|\s\w)/g, m => m.toUpperCase());
};
// Try to login and download groups
$scope.getGroups = function () {
$scope.creationPending = true;
delete $scope.loginError;
$http.post('../user_backend/groups', { 'username': $scope.adminUid, 'password': $scope.adminPwd })
.then(function (response) {
result = response.data;
if (result.failed === false) {
$scope.showAddForm = true;
$scope.showLoginForm = false;
$scope.groups = result.groups;
} else {
$scope.loginError = result.reason;
}
});
$scope.creationPending = false;
};
// Ask for confirmation of user details
$scope.createNewUser = function () {
$scope.startConfirm = true;
};
// Try to create the user
$scope.confirmNewUser = function () {
newEntry = {
"cn": $scope.newCn,
"sn": $scope.newSn
};
$http.post('../user_backend/group/'+$scope.newGroup+'/create/'+$scope.newUid,
{
'username': $scope.adminUid,
'password': $scope.adminPwd,
'newEntry': newEntry
})
.then(function (response) {
result = response.data;
if (result.failed === false) {
$scope.newPasswd = result.newPasswd;
} else {
$scope.createError = result.reason;
}
});
};
// Clear old user scope variable and start creating another
$scope.anotherUser = function () {
delete $scope.newPasswd;
delete $scope.newGroup;
delete $scope.newUid;
delete $scope.newCn;
delete $scope.newSn;
$scope.startConfirm = false;
};
$scope.editUser = function () {
delete $scope.createError;
$scope.startConfirm = false;
};
});