ILIAS  trunk Revision v12.0_alpha-377-g3641b37b9db
ilCertificatePdfAction Class Reference
+ Collaboration diagram for ilCertificatePdfAction:

Public Member Functions

 __construct (private readonly ilPdfGenerator $pdf_generator, ?ilCertificateUtilHelper $helper=null, private readonly string $error_txt='', ?ilErrorHandling $error_handler=null)
 
 withLogger (ilLogger $logger)
 
 createPDF (int $userId, int $objectId)
 
 downloadPdf (int $userId, int $objectId)
 

Private Attributes

readonly ilCertificateUtilHelper $helper
 
readonly ilErrorHandling $error_handler
 
ilLogger $logger = null
 

Detailed Description

Definition at line 21 of file class.ilCertificatePdfAction.php.

Constructor & Destructor Documentation

◆ __construct()

ilCertificatePdfAction::__construct ( private readonly ilPdfGenerator  $pdf_generator,
?ilCertificateUtilHelper  $helper = null,
private readonly string  $error_txt = '',
?ilErrorHandling  $error_handler = null 
)

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

32 {
33 global $DIC;
34
35 $this->helper = $helper ?? new ilCertificateUtilHelper();
36 $this->error_handler = $error_handler ?? $DIC['ilErr'];
37 }
readonly ilCertificateUtilHelper $helper
readonly ilErrorHandling $error_handler
Just a wrapper class to create Unit Test for other classes.
global $DIC
Definition: shib_login.php:26

References $DIC, $error_handler, and $helper.

Member Function Documentation

◆ createPDF()

ilCertificatePdfAction::createPDF ( int  $userId,
int  $objectId 
)

Definition at line 47 of file class.ilCertificatePdfAction.php.

47 : string
48 {
49 return $this->pdf_generator->generateCurrentActiveCertificate($userId, $objectId);
50 }

Referenced by downloadPdf().

+ Here is the caller graph for this function:

◆ downloadPdf()

ilCertificatePdfAction::downloadPdf ( int  $userId,
int  $objectId 
)

Definition at line 52 of file class.ilCertificatePdfAction.php.

52 : string
53 {
54 try {
55 $pdf_scalar = $this->createPDF($userId, $objectId);
56
57 $filename = $this->pdf_generator->generateFileName($userId, $objectId);
58
59 $this->helper->deliverData(
60 $pdf_scalar,
62 'application/pdf'
63 );
64 } catch (Throwable $e) {
65 $this->logger?->error(
66 'Error while generating or downloading certificate PDF for user {user_id} and object {object_id}: {error}',
67 [
68 'user_id' => $userId,
69 'object_id' => $objectId,
70 'error' => $e->getMessage(),
71 'exception' => $e
72 ]
73 );
74
75 $this->error_handler->raiseError($this->error_txt, $this->error_handler->MESSAGE);
76 return '';
77 }
78
79 return $pdf_scalar;
80 }
$filename
Definition: buildRTE.php:78
createPDF(int $userId, int $objectId)

References Vendor\Package\$e, $filename, createPDF(), and ILIAS\Repository\logger().

+ Here is the call graph for this function:

◆ withLogger()

ilCertificatePdfAction::withLogger ( ilLogger  $logger)

Definition at line 39 of file class.ilCertificatePdfAction.php.

39 : self
40 {
41 $clone = clone $this;
42 $clone->logger = $logger;
43
44 return $clone;
45 }

References $logger.

Field Documentation

◆ $error_handler

readonly ilErrorHandling ilCertificatePdfAction::$error_handler
private

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

Referenced by __construct().

◆ $helper

readonly ilCertificateUtilHelper ilCertificatePdfAction::$helper
private

Definition at line 23 of file class.ilCertificatePdfAction.php.

Referenced by __construct().

◆ $logger

ilLogger ilCertificatePdfAction::$logger = null
private

Definition at line 25 of file class.ilCertificatePdfAction.php.

Referenced by withLogger().


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