19 declare(strict_types=1);
39 if (null === $rpcHelper) {
44 if (null === $mathJaxHelper) {
50 $lng = $DIC->language();
53 if (null === $pdfFileNameFactory) {
56 $this->pdfFilenameFactory = $pdfFileNameFactory;
62 public function generate(
int $userCertificateId): string
64 $certificate = $this->certificateRepository->fetchCertificate($userCertificateId);
74 $certificate = $this->certificateRepository->fetchActiveCertificate($userId, $objId);
86 $certificate = $this->certificateRepository->fetchActiveCertificateForPresentation($userId, $objId);
90 throw new ilException(sprintf(
'The usr_id "%s" does NOT reference a user', $userId));
93 return $this->pdfFilenameFactory->create($certificate);
100 $certificateContent = str_replace(
101 [
'[BACKGROUND_IMAGE]',
'[CLIENT_WEB_DIR]'],
106 $certificateContent = $this->mathJaxHelper->fillXlsFoContent($certificateContent);
108 $pdf_base64 = $this->rpcHelper->ilFO2PDF(
'RPCTransformationHandler', $certificateContent);
110 return $pdf_base64->scalar;
readonly ilCertificateMathJaxHelper $mathJaxHelper
generateFileName(int $userId, int $objId)
generateCurrentActiveCertificate(int $userId, int $objId)
__construct(private readonly ilUserCertificateRepository $certificateRepository, ?ilCertificateRpcClientFactoryHelper $rpcHelper=null, ?ilCertificatePdfFileNameFactory $pdfFileNameFactory=null, ?ilLanguage $lng=null, ?ilCertificateMathJaxHelper $mathJaxHelper=null)
readonly ilCertificateRpcClientFactoryHelper $rpcHelper
static getInstanceByObjId(?int $obj_id, bool $stop_on_error=true)
get an instance of an Ilias object by object id
readonly ilCertificatePdfFileNameFactory $pdfFilenameFactory
generate(int $userCertificateId)
createPDFScalar(ilUserCertificate $certificate)