ILIAS  trunk Revision v11.0_alpha-3011-gc6b235a2e85
class.ilCertificateScormPdfFilename.php
Go to the documentation of this file.
1<?php
2
19declare(strict_types=1);
20
22{
23 public function __construct(
24 private readonly ilCertificateFilename $origin,
25 private readonly ilLanguage $lng,
26 private readonly ilSetting $scormSetting
27 ) {
28 }
29
30 public function createFileName(ilUserCertificatePresentation $presentation): string
31 {
32 $fileName = $this->origin->createFileName($presentation);
33
34 if (null === $presentation->getUserCertificate()) {
35 $fileNameParts = implode('_', array_filter([
36 $this->lng->txt('certificate_var_user_lastname'),
37 $this->scormSetting->get('certificate_short_name_' . $presentation->getObjId(), ''),
38 ]));
39 } else {
40 $short_name = $this->scormSetting->get('certificate_short_name_' . $presentation->getObjId(), '');
41 $fileNameParts = implode('_', array_filter([
42 $presentation->getUserName(),
43 $short_name ?: $presentation->getObjectTitle(),
44 ]));
45 }
46
47 return implode('_', array_filter([
48 date('ymd'),
49 $fileNameParts,
50 $fileName
51 ]));
52 }
53}
createFileName(ilUserCertificatePresentation $presentation)
__construct(private readonly ilCertificateFilename $origin, private readonly ilLanguage $lng, private readonly ilSetting $scormSetting)
language handling
ILIAS Setting Class.
global $lng
Definition: privfeed.php:31