ILIAS  release_8 Revision v8.24
ilPdfGenerator Class Reference
+ Collaboration diagram for ilPdfGenerator:

Public Member Functions

 __construct (ilUserCertificateRepository $userCertificateRepository, ilLogger $logger, ?ilCertificateRpcClientFactoryHelper $rpcHelper=null, ?ilCertificatePdfFileNameFactory $pdfFileNameFactory=null, ?ilLanguage $lng=null)
 
 generate (int $userCertificateId)
 
 generateCurrentActiveCertificate (int $userId, int $objId)
 
 generateFileName (int $userId, int $objId)
 

Private Member Functions

 createPDFScalar (ilUserCertificate $certificate)
 

Private Attributes

ilUserCertificateRepository $certificateRepository
 
ilLogger $logger
 
ilCertificateRpcClientFactoryHelper $rpcHelper
 
ilCertificatePdfFileNameFactory $pdfFilenameFactory
 

Detailed Description

Author
Niels Theen nthee.nosp@m.n@da.nosp@m.tabay.nosp@m..de

Definition at line 24 of file class.ilPdfGenerator.php.

Constructor & Destructor Documentation

◆ __construct()

ilPdfGenerator::__construct ( ilUserCertificateRepository  $userCertificateRepository,
ilLogger  $logger,
?ilCertificateRpcClientFactoryHelper  $rpcHelper = null,
?ilCertificatePdfFileNameFactory  $pdfFileNameFactory = null,
?ilLanguage  $lng = null 
)

Definition at line 31 of file class.ilPdfGenerator.php.

37 {
38 global $DIC;
39
40 $this->certificateRepository = $userCertificateRepository;
41 $this->logger = $logger;
42
43 if (null === $rpcHelper) {
45 }
46 $this->rpcHelper = $rpcHelper;
47
48 if (null === $lng) {
49 $lng = $DIC->language();
50 }
51
52 if (null === $pdfFileNameFactory) {
53 $pdfFileNameFactory = new ilCertificatePdfFileNameFactory($lng);
54 }
55 $this->pdfFilenameFactory = $pdfFileNameFactory;
56 }
ilCertificateRpcClientFactoryHelper $rpcHelper
global $DIC
Definition: feed.php:28
$lng

References $DIC, $lng, $logger, $rpcHelper, and ILIAS\Repository\logger().

+ Here is the call graph for this function:

Member Function Documentation

◆ createPDFScalar()

ilPdfGenerator::createPDFScalar ( ilUserCertificate  $certificate)
private

Definition at line 103 of file class.ilPdfGenerator.php.

103 : string
104 {
105 $certificateContent = $certificate->getCertificateContent();
106
107 $certificateContent = str_replace(
108 ['[BACKGROUND_IMAGE]', '[CLIENT_WEB_DIR]'],
109 ['[CLIENT_WEB_DIR]' . $certificate->getBackgroundImagePath(), 'file://' . CLIENT_WEB_DIR],
110 $certificateContent
111 );
112
113 $pdf_base64 = $this->rpcHelper->ilFO2PDF('RPCTransformationHandler', $certificateContent);
114
115 return $pdf_base64->scalar;
116 }
const CLIENT_WEB_DIR
Definition: constants.php:47

References CLIENT_WEB_DIR, ilUserCertificate\getBackgroundImagePath(), and ilUserCertificate\getCertificateContent().

Referenced by generate(), and generateCurrentActiveCertificate().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ generate()

ilPdfGenerator::generate ( int  $userCertificateId)
Parameters
int$userCertificateId
Returns
string
Exceptions
ilException

Definition at line 63 of file class.ilPdfGenerator.php.

63 : string
64 {
65 $certificate = $this->certificateRepository->fetchCertificate($userCertificateId);
66
67 return $this->createPDFScalar($certificate);
68 }
createPDFScalar(ilUserCertificate $certificate)

References createPDFScalar().

+ Here is the call graph for this function:

◆ generateCurrentActiveCertificate()

ilPdfGenerator::generateCurrentActiveCertificate ( int  $userId,
int  $objId 
)
Parameters
int$userId
int$objId
Returns
string
Exceptions
ilException

Definition at line 76 of file class.ilPdfGenerator.php.

76 : string
77 {
78 $certificate = $this->certificateRepository->fetchActiveCertificate($userId, $objId);
79
80 return $this->createPDFScalar($certificate);
81 }
$objId
Definition: xapitoken.php:57

References $objId, and createPDFScalar().

+ Here is the call graph for this function:

◆ generateFileName()

ilPdfGenerator::generateFileName ( int  $userId,
int  $objId 
)
Parameters
int$userId
int$objId
Returns
string
Exceptions
ilDatabaseException
ilException
ilObjectNotFoundException

Definition at line 91 of file class.ilPdfGenerator.php.

91 : string
92 {
93 $certificate = $this->certificateRepository->fetchActiveCertificateForPresentation($userId, $objId);
94
96 if (!$user instanceof ilObjUser) {
97 throw new ilException(sprintf('The usr_id "%s" does NOT reference a user', $userId));
98 }
99
100 return $this->pdfFilenameFactory->create($certificate);
101 }
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
User class.
static getInstanceByObjId(?int $obj_id, bool $stop_on_error=true)
get an instance of an Ilias object by object id

References $objId, and ilObjectFactory\getInstanceByObjId().

+ Here is the call graph for this function:

Field Documentation

◆ $certificateRepository

ilUserCertificateRepository ilPdfGenerator::$certificateRepository
private

Definition at line 26 of file class.ilPdfGenerator.php.

◆ $logger

ilLogger ilPdfGenerator::$logger
private

Definition at line 27 of file class.ilPdfGenerator.php.

Referenced by __construct().

◆ $pdfFilenameFactory

ilCertificatePdfFileNameFactory ilPdfGenerator::$pdfFilenameFactory
private

Definition at line 29 of file class.ilPdfGenerator.php.

◆ $rpcHelper

ilCertificateRpcClientFactoryHelper ilPdfGenerator::$rpcHelper
private

Definition at line 28 of file class.ilPdfGenerator.php.

Referenced by __construct().


The documentation for this class was generated from the following file: