Skip to content

Commit

Permalink
Merge remote-tracking branch 'refs/remotes/origin/master'
Browse files Browse the repository at this point in the history
  • Loading branch information
skublik committed Mar 27, 2020
2 parents a1ce5c6 + 7cc8c6f commit 05d17e3
Showing 1 changed file with 27 additions and 3 deletions.
Expand Up @@ -13,13 +13,17 @@
import com.evolveum.midpoint.prism.Containerable;
import com.evolveum.midpoint.prism.Item;
import com.evolveum.midpoint.prism.PrismContainer;
import com.evolveum.midpoint.prism.PrismObject;
import com.evolveum.midpoint.schema.constants.ObjectTypes;
import com.evolveum.midpoint.task.api.Task;
import com.evolveum.midpoint.util.QNameUtil;
import com.evolveum.midpoint.util.logging.Trace;
import com.evolveum.midpoint.util.logging.TraceManager;
import com.evolveum.midpoint.web.page.admin.certification.dto.CertCaseOrWorkItemDto;
import com.evolveum.midpoint.web.util.ObjectTypeGuiDescriptor;
import com.evolveum.midpoint.xml.ns._public.common.common_3.AccessCertificationAssignmentCaseType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.AccessCertificationCaseType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.AssignmentType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.*;

import com.evolveum.prism.xml.ns._public.types_3.PolyStringType;

import org.apache.commons.lang3.StringUtils;
import org.apache.wicket.model.IModel;
Expand All @@ -33,6 +37,8 @@
* @author mederly
*/
public class DirectAssignmentCertGuiHandler implements CertGuiHandler {
private static final Trace LOGGER = TraceManager.getTrace(DirectAssignmentCertGuiHandler.class);

@Override
public String getCaseInfoButtonTitle(IModel<? extends CertCaseOrWorkItemDto> rowModel, PageBase page) {

Expand All @@ -57,6 +63,24 @@ public String getCaseInfoButtonTitle(IModel<? extends CertCaseOrWorkItemDto> row
String objectType = getLocalizedTypeName(acase.getObjectRef().getType(), page);
String objectName = dto.getObjectName();

// If object is UserType, display user's fullName in addition to the name
if (QNameUtil.match(acase.getObjectRef().getType(), UserType.COMPLEX_TYPE)) {
try {
PrismObject<UserType> object = page.getModelService().getObject(UserType.class, acase.getObjectRef().getOid(), null, page.getPageTask(), page.getPageTask().getResult());

if (object != null) {
UserType userObj = object.asObjectable();
PolyStringType fullName = userObj.getFullName();
if (fullName != null && !StringUtils.isEmpty(fullName.getOrig())) {
objectName = fullName.getOrig() + " (" + objectName + ")";
}
}
} catch (Exception e) {
//probably autz exception, mute it and return object name
LOGGER.debug("Error retrieving full object in getCaseInfoButtonTitle: {}", e.getMessage());
}
}

infoList.add(page.createStringResource("PageCert.message.assignment",
assignmentOrInducement,
emptyToDash(targetType), emptyToDash(targetName),
Expand Down

0 comments on commit 05d17e3

Please sign in to comment.