Skip to content
Snippets Groups Projects
Commit c61a41e9 authored by William Enright's avatar William Enright
Browse files

Fixed AD setup mappings and user displays for AD

Change-Id: Ie45d9a061474ab9702abf86fcec8c71149c8def0
parent 904bb6c8
Branches
No related tags found
No related merge requests found
...@@ -53,13 +53,10 @@ public class UserProfileService { ...@@ -53,13 +53,10 @@ public class UserProfileService {
public UserProfile[] getUserProfile(String queryString, String field) { public UserProfile[] getUserProfile(String queryString, String field) {
Endpoint endpoint = ADConnector.getConnection(); Endpoint endpoint = ADConnector.getConnection();
UserProfile[] profiles = null; UserProfile[] profiles = null;
if (!queryString.startsWith("*")) {
queryString = queryString.concat("*");
}
try { try {
QueryRequest queryRequest = buildRequest(endpoint); QueryRequest queryRequest = buildRequest(endpoint);
Sentence sentence = null; Sentence sentence = null;
if (queryString.contains("*")) { if (queryString.equals("*")) {
sentence = new QueryAssembler().addPhrase(FieldType.OBJECT_CLASS, PhraseOperator.EQUAL, ObjectType.USER.toString()).closeSentence(); sentence = new QueryAssembler().addPhrase(FieldType.OBJECT_CLASS, PhraseOperator.EQUAL, ObjectType.USER.toString()).closeSentence();
} else { } else {
if (field.equals("LOGON_NAME")) { if (field.equals("LOGON_NAME")) {
...@@ -86,6 +83,7 @@ public class UserProfileService { ...@@ -86,6 +83,7 @@ public class UserProfileService {
for (int i = 0; i < profiles.length; i++) { for (int i = 0; i < profiles.length; i++) {
profiles[i] = profileFromResponse(results.get(i)); profiles[i] = profileFromResponse(results.get(i));
} }
profiles = removeNull(profiles);
return profiles; return profiles;
} catch (Exception e) { } catch (Exception e) {
log.error("Could not find entity with specified parameters."); log.error("Could not find entity with specified parameters.");
...@@ -95,6 +93,14 @@ public class UserProfileService { ...@@ -95,6 +93,14 @@ public class UserProfileService {
} }
} }
public UserProfile[] removeNull(UserProfile[] a) {
ArrayList<UserProfile> removedNull = new ArrayList<UserProfile>();
for (UserProfile p : a)
if (p != null)
removedNull.add(p);
return removedNull.toArray(new UserProfile[0]);
}
public static QueryRequest buildRequest(Endpoint endpoint) { public static QueryRequest buildRequest(Endpoint endpoint) {
QueryRequest queryRequest = new QueryRequest(); QueryRequest queryRequest = new QueryRequest();
queryRequest.setDirectoryType(DirectoryType.MS_ACTIVE_DIRECTORY); queryRequest.setDirectoryType(DirectoryType.MS_ACTIVE_DIRECTORY);
......
...@@ -62,7 +62,7 @@ function setLDAPParametersData(form) { ...@@ -62,7 +62,7 @@ function setLDAPParametersData(form) {
settings[field.name] = field.value; settings[field.name] = field.value;
}); });
settings['fieldMappings'] = {}; settings['fieldMappings'] = {};
settings['fieldMappings']['uid'] = "Username" settings['fieldMappings']['uid'] = "Username";
settings['fieldMappings']['givenName'] = "FirstName"; settings['fieldMappings']['givenName'] = "FirstName";
settings['fieldMappings']['sn'] = "LastName"; settings['fieldMappings']['sn'] = "LastName";
settings['fieldMappings']['jpegPhoto'] = "ProfilePicture"; settings['fieldMappings']['jpegPhoto'] = "ProfilePicture";
...@@ -72,13 +72,11 @@ function setLDAPParametersData(form) { ...@@ -72,13 +72,11 @@ function setLDAPParametersData(form) {
settings['fieldMappings']['facsimileTelephoneNumber'] = "FaxNumber"; settings['fieldMappings']['facsimileTelephoneNumber'] = "FaxNumber";
settings['fieldMappings']['extensionName'] = "PhoneNumberExtension"; settings['fieldMappings']['extensionName'] = "PhoneNumberExtension";
settings['fieldMappings']['o'] = "Organization"; settings['fieldMappings']['o'] = "Organization";
settings['fieldMappings']['uid'] = "Username";
authSource['type'] = 'LDAP'; authSource['type'] = 'LDAP';
authSource['ldapSettings'] = settings; authSource['ldapSettings'] = settings;
var data = authSource;
// post request // post request
postParameters(data); ajaxApiCall(api_path_post_install_auth,'POST',authSource,null, handleAuthInstall);
} }
function setADParametersData(form) { function setADParametersData(form) {
...@@ -94,31 +92,30 @@ function setADParametersData(form) { ...@@ -94,31 +92,30 @@ function setADParametersData(form) {
}); });
settings['fieldMappings'] = {}; settings['fieldMappings'] = {};
settings['fieldMappings']['sAMAccountName'] = "Username" settings['fieldMappings']['samaccountname'] = "Username";
settings['fieldMappings']['givenName'] = "FirstName"; settings['fieldMappings']['givenname'] = "FirstName";
settings['fieldMappings']['sn'] = "LastName"; settings['fieldMappings']['sn'] = "LastName";
settings['fieldMappings']['jpegPhoto'] = "ProfilePicture"; settings['fieldMappings']['thumbnailphoto'] = "ProfilePicture";
settings['fieldMappings']['mail'] = "Email"; settings['fieldMappings']['mail'] = "Email";
settings['fieldMappings']['telephoneNumber'] = "PhoneNumber"; settings['fieldMappings']['telephonenumber'] = "PhoneNumber";
settings['fieldMappings']['mobile'] = "MobileNumber"; settings['fieldMappings']['mobile'] = "MobileNumber";
settings['fieldMappings']['facsimileTelephoneNumber'] = "FaxNumber"; settings['fieldMappings']['facsimiletelephonenumber'] = "FaxNumber";
settings['fieldMappings']['extensionName'] = "PhoneNumberExtension"; settings['fieldMappings']['extensionname'] = "PhoneNumberExtension";
settings['fieldMappings']['o'] = "Organization"; settings['fieldMappings']['o'] = "Organization";
settings['fieldMappings']['uid'] = "Username";
authSource['type'] = 'AD'; authSource['type'] = 'AD';
authSource['activeDirectorySettings'] = settings; authSource['activeDirectorySettings'] = settings;
var data = authSource;
// post request // post request
postParameters(data); ajaxApiCall(api_path_post_install_auth,'POST',authSource,null, handleAuthInstall);
} }
// send post request function handleAuthInstall(data) {
function postParameters(data) { if (data.status == 500 || data.status == 405)
$('#badAuthModalCenter').modal('show');
else {
usePublicNS = $('#publicNS')[0].checked; usePublicNS = $('#publicNS')[0].checked;
var callback = set_installation_response("server-parameters.html" + "?usePublicNS=" + usePublicNS); window.location.replace("server-parameters.html" + "?usePublicNS=" + usePublicNS);
}
ajaxApiCall(api_path_post_install_auth,'POST',data,null,callback);
} }
// show tooltip // show tooltip
......
...@@ -136,6 +136,7 @@ function listAllUsers(data, statusCode, jqXHR) ...@@ -136,6 +136,7 @@ function listAllUsers(data, statusCode, jqXHR)
'<td class="mobile">Actions</td><td class="user-information-search"><button class="edit-user" title="Edit User" style="display: none;" user-id="' + encodeURIComponent(resultSet[i].username) + '"><i class="fa fa-edit"></i></button>' + '<td class="mobile">Actions</td><td class="user-information-search"><button class="edit-user" title="Edit User" style="display: none;" user-id="' + encodeURIComponent(resultSet[i].username) + '"><i class="fa fa-edit"></i></button>' +
'<button type="button" id="de-authorize-user" class="btn-danger de-authorize-user" title="Revoke User" user-id="' + encodeURIComponent(resultSet[i].username) + '"' + '><i class="fa fa-trash"></i></button>' + '<button type="button" id="de-authorize-user" class="btn-danger de-authorize-user" title="Revoke User" user-id="' + encodeURIComponent(resultSet[i].username) + '"' + '><i class="fa fa-trash"></i></button>' +
'</td><td class="spacer--table">spacer</td></tr>' '</td><td class="spacer--table">spacer</td></tr>'
} }
$('.empty-results').remove(); $('.empty-results').remove();
......
...@@ -187,7 +187,7 @@ function setUserInfoDataSource(data, statusCode, jqXHR) { ...@@ -187,7 +187,7 @@ function setUserInfoDataSource(data, statusCode, jqXHR) {
var disabled = ''; var disabled = '';
if (resultSet.length > 0) { if (resultSet.length > 0) {
// build table row for User item // build table row for User item
for (i = 0; i < resultSet.length; i++) { for (i = 0; i < 1; i++) {
// determine User status // determine User status
if (userStatus == "Revoked") { if (userStatus == "Revoked") {
......
...@@ -290,3 +290,19 @@ ...@@ -290,3 +290,19 @@
</div> </div>
</div> </div>
</div> </div>
<div id="badAuthModalCenter" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="badAuthModalLongTitle">
<div class="modal-dialog modal-dialog-centered" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="badAuthModalLongTitle">CA Error</h5>
</div>
<div class="ca-modal-body">
The supplied configuration is invalid or the connectivity tests has failed.
</div>
<div class="modal-footer">
<button data-dismiss="modal" class="btn btn-outline-primary btn-link" type="button">OK</button>
</div>
</div>
</div>
</div>
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment