19 declare(strict_types=1);
44 if (null === $language) {
46 $language = $DIC->language();
47 $language->loadLanguageModule(
'certificate');
50 if (null === $defaultPlaceholderValues) {
54 if (null === $customUserFieldsPlaceholderValues) {
58 if (null === $objectHelper) {
63 if (null === $participantsHelper) {
68 if (null === $ilUtilHelper) {
73 if (null === $dateHelper) {
78 if (null === $lpStatusHelper) {
83 $this->customUserFieldsPlaceholderValuesObject = $customUserFieldsPlaceholderValues;
84 $this->defaultPlaceholderValuesObject = $defaultPlaceholderValues;
93 $possibleDate !==
false &&
94 $possibleDate !== null &&
113 $courseObject = $this->objectHelper->getInstanceByObjId($objId);
115 $placeholders = $this->defaultPlaceholderValuesObject->getPlaceholderValues($userId, $objId);
117 $customUserFieldsPlaceholders = $this->customUserFieldsPlaceholderValuesObject->getPlaceholderValues(
122 $placeholders = array_merge($placeholders, $customUserFieldsPlaceholders);
124 $completionDate = $this->participantsHelper->getDateTimeOfPassed($objId, $userId);
126 $completionDate = $this->lpStatusHelper->lookupStatusChanged($objId, $userId);
130 $placeholders[
'DATE_COMPLETED'] = $this->dateHelper->formatDate($completionDate);
131 $placeholders[
'DATETIME_COMPLETED'] = $this->dateHelper->formatDateTime($completionDate);
135 $course_translation = $courseObject->getObjectTranslation();
136 $title = $courseObject->getTitle();
138 $languages = $course_translation->getLanguages();
139 foreach ($languages as $trans) {
140 if ($trans->getLanguageCode() === $lng_code) {
141 $title = $trans->getTitle();
149 return $placeholders;
163 $placeholders = $this->defaultPlaceholderValuesObject->getPlaceholderValuesForPreview($userId, $objId);
165 $customUserFieldsPlaceholders = $this->customUserFieldsPlaceholderValuesObject->getPlaceholderValuesForPreview(
170 $placeholders = array_merge($placeholders, $customUserFieldsPlaceholders);
172 $object = $this->objectHelper->getInstanceByObjId($objId);
176 return $placeholders;
Collection of basic placeholder values that can be used.
static _lookupLanguage(int $a_usr_id)
readonly ilCertificateLPStatusHelper $lpStatusHelper
getPlaceholderValues(int $userId, int $objId)
This method MUST return an array that contains the actual data for the given user of the given object...
getPlaceholderValuesForPreview(int $userId, int $objId)
This method is different then the 'getPlaceholderValues' method, this method is used to create a plac...
readonly ilCertificateUtilHelper $ilUtilHelper
readonly ilCertificateParticipantsHelper $participantsHelper
__construct(?ilObjectCustomUserFieldsPlaceholderValues $customUserFieldsPlaceholderValues=null, ?ilDefaultPlaceholderValues $defaultPlaceholderValues=null, ?ilLanguage $language=null, ?ilCertificateObjectHelper $objectHelper=null, ?ilCertificateParticipantsHelper $participantsHelper=null, ?ilCertificateUtilHelper $ilUtilHelper=null, ?ilCertificateDateHelper $dateHelper=null, ?ilCertificateLPStatusHelper $lpStatusHelper=null)
Just a wrapper class to create Unit Test for other classes.
readonly ilCertificateDateHelper $dateHelper
readonly ilDefaultPlaceholderValues $defaultPlaceholderValuesObject
hasCompletionDate($possibleDate)
readonly ilCertificateObjectHelper $objectHelper
readonly ilObjectCustomUserFieldsPlaceholderValues $customUserFieldsPlaceholderValuesObject
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...