From 7b5512aa181536ceb9a5ef5678888e32e297fe74 Mon Sep 17 00:00:00 2001
From: uhensler <urs.hensler@frentix.com>
Date: Wed, 24 Apr 2019 09:36:33 +0200
Subject: [PATCH] OO-4036: Use PDF service in certification preview

---
 .../certificate/manager/CertificatesManagerImpl.java | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/src/main/java/org/olat/course/certificate/manager/CertificatesManagerImpl.java b/src/main/java/org/olat/course/certificate/manager/CertificatesManagerImpl.java
index 95eea2e1564..b0b8bc5f036 100644
--- a/src/main/java/org/olat/course/certificate/manager/CertificatesManagerImpl.java
+++ b/src/main/java/org/olat/course/certificate/manager/CertificatesManagerImpl.java
@@ -723,10 +723,13 @@ public class CertificatesManagerImpl implements CertificatesManager, MessageList
 		
 		File certificateFile;
 		File dirFile = new File(WebappHelper.getTmpDir(), UUID.randomUUID().toString());
+		dirFile.mkdirs();
+		
 		StringBuilder sb = new StringBuilder();
 		sb.append(Settings.getServerContextPathURI()).append("/certificate/")
 		  .append(UUID.randomUUID()).append("/preview.pdf");
-		 String certUrl = sb.toString();
+		String certUrl = sb.toString();
+		
 		if(template == null) {
 			CertificatePDFFormWorker worker = new CertificatePDFFormWorker(identity, entry, 2.0f, true,
 					new Date(), new Date(), new Date(), certUrl, locale, userManager, this);
@@ -735,9 +738,14 @@ public class CertificatesManagerImpl implements CertificatesManager, MessageList
 			CertificatePDFFormWorker worker = new CertificatePDFFormWorker(identity, entry, 2.0f, true,
 					new Date(), new Date(), new Date(), certUrl, locale, userManager, this);
 			certificateFile = worker.fill(template, dirFile, "Certificate.pdf");
+		} else if (pdfModule.isEnabled()) {
+			CertificatePdfServiceWorker worker = new CertificatePdfServiceWorker(identity, entry, 2.0f, true,
+					new Date(), new Date(),new Date(), certUrl, locale,
+					userManager, this, pdfService);
+			certificateFile = worker.fill(template, dirFile, "Certificate.pdf");
 		} else {
 			CertificatePhantomWorker worker = new CertificatePhantomWorker(identity, entry, 2.0f, true,
-					new Date(), new Date(),new Date(),  certUrl, locale, userManager, this);
+					new Date(), new Date(),new Date(), certUrl, locale, userManager, this);
 			certificateFile = worker.fill(template, dirFile, "Certificate.pdf");
 		}
 		return certificateFile;
-- 
GitLab