From 682b173913e0b1de8f1aeac95bea654e55a1d00f Mon Sep 17 00:00:00 2001 From: srosse <stephane.rosse@frentix.com> Date: Tue, 24 Sep 2019 18:37:36 +0200 Subject: [PATCH] OO-4270: fix red screen / cannot generate certificate with custom attr. --- .../certificate/manager/CertificatePDFFormWorker.java | 6 +++--- .../certificate/manager/CertificatePdfServiceWorker.java | 6 +++--- .../certificate/manager/CertificatePhantomWorker.java | 6 +++--- .../propertyhandlers/GenericSelectionPropertyHandler.java | 4 +++- 4 files changed, 12 insertions(+), 10 deletions(-) diff --git a/src/main/java/org/olat/course/certificate/manager/CertificatePDFFormWorker.java b/src/main/java/org/olat/course/certificate/manager/CertificatePDFFormWorker.java index 12ccbf95d25..a93d252c411 100644 --- a/src/main/java/org/olat/course/certificate/manager/CertificatePDFFormWorker.java +++ b/src/main/java/org/olat/course/certificate/manager/CertificatePDFFormWorker.java @@ -148,15 +148,15 @@ public class CertificatePDFFormWorker { List<UserPropertyHandler> userPropertyHandlers = userManager.getAllUserPropertyHandlers(); for (UserPropertyHandler handler : userPropertyHandlers) { String propertyName = handler.getName(); - String value = handler.getUserProperty(user, null); + String value = handler.getUserProperty(user, locale); fillField(propertyName, value, acroForm); } String fullName = userManager.getUserDisplayName(identity); fillField("fullName", fullName, acroForm); - String firstName = user.getProperty(UserConstants.FIRSTNAME, null); - String lastName = user.getProperty(UserConstants.LASTNAME, null); + String firstName = user.getProperty(UserConstants.FIRSTNAME, locale); + String lastName = user.getProperty(UserConstants.LASTNAME, locale); StringBuilder firstNameLastName = new StringBuilder(); StringBuilder lastNameFirstName = new StringBuilder(); diff --git a/src/main/java/org/olat/course/certificate/manager/CertificatePdfServiceWorker.java b/src/main/java/org/olat/course/certificate/manager/CertificatePdfServiceWorker.java index 1a62c795d6d..6460ea10a4d 100644 --- a/src/main/java/org/olat/course/certificate/manager/CertificatePdfServiceWorker.java +++ b/src/main/java/org/olat/course/certificate/manager/CertificatePdfServiceWorker.java @@ -211,15 +211,15 @@ public class CertificatePdfServiceWorker { List<UserPropertyHandler> userPropertyHandlers = userManager.getAllUserPropertyHandlers(); for (UserPropertyHandler handler : userPropertyHandlers) { String propertyName = handler.getName(); - String value = handler.getUserProperty(user, null); + String value = handler.getUserProperty(user, locale); context.put(propertyName, value); } String fullName = userManager.getUserDisplayName(identity); context.put("fullName", fullName); - String firstName = user.getProperty(UserConstants.FIRSTNAME, null); - String lastName = user.getProperty(UserConstants.LASTNAME, null); + String firstName = user.getProperty(UserConstants.FIRSTNAME, locale); + String lastName = user.getProperty(UserConstants.LASTNAME, locale); StringBuilder firstNameLastName = new StringBuilder(); StringBuilder lastNameFirstName = new StringBuilder(); diff --git a/src/main/java/org/olat/course/certificate/manager/CertificatePhantomWorker.java b/src/main/java/org/olat/course/certificate/manager/CertificatePhantomWorker.java index 47de0e25fe8..a5b3c8a1dd8 100644 --- a/src/main/java/org/olat/course/certificate/manager/CertificatePhantomWorker.java +++ b/src/main/java/org/olat/course/certificate/manager/CertificatePhantomWorker.java @@ -164,15 +164,15 @@ public class CertificatePhantomWorker { List<UserPropertyHandler> userPropertyHandlers = userManager.getAllUserPropertyHandlers(); for (UserPropertyHandler handler : userPropertyHandlers) { String propertyName = handler.getName(); - String value = handler.getUserProperty(user, null); + String value = handler.getUserProperty(user, locale); context.put(propertyName, value); } String fullName = userManager.getUserDisplayName(identity); context.put("fullName", fullName); - String firstName = user.getProperty(UserConstants.FIRSTNAME, null); - String lastName = user.getProperty(UserConstants.LASTNAME, null); + String firstName = user.getProperty(UserConstants.FIRSTNAME, locale); + String lastName = user.getProperty(UserConstants.LASTNAME, locale); StringBuilder firstNameLastName = new StringBuilder(); StringBuilder lastNameFirstName = new StringBuilder(); diff --git a/src/main/java/org/olat/user/propertyhandlers/GenericSelectionPropertyHandler.java b/src/main/java/org/olat/user/propertyhandlers/GenericSelectionPropertyHandler.java index 73b2a4284ce..370d7767199 100644 --- a/src/main/java/org/olat/user/propertyhandlers/GenericSelectionPropertyHandler.java +++ b/src/main/java/org/olat/user/propertyhandlers/GenericSelectionPropertyHandler.java @@ -297,7 +297,9 @@ public class GenericSelectionPropertyHandler extends AbstractUserPropertyHandler Translator trans = Util.createPackageTranslator(this.getClass(), locale); if (isMultiSelect()) { for (String value : val.split(KEY_DELIMITER)) { - htmlValue.append(trans.translate(value)).append(" "); + if(StringHelper.containsNonWhitespace(value)) { + htmlValue.append(trans.translate(value)).append(" "); + } } } else if(val != null && locale != null) { htmlValue.append(trans.translate(val)); -- GitLab