19 declare(strict_types=1);
45 if (null === $language) {
47 $language = $DIC->language();
48 $language->loadLanguageModule(
'certificate');
50 $language->loadLanguageModule(
'exercise');
51 $language->loadLanguageModule(
'exc');
55 if (null === $defaultPlaceholderValues) {
58 $this->defaultPlaceholderValuesObject = $defaultPlaceholderValues;
60 if (null === $objectHelper) {
65 if (null === $lpMarksHelper) {
70 if (null === $exerciseMembersHelper) {
75 if (null === $lpStatusHelper) {
80 if (null === $utilHelper) {
85 if (null === $dateHelper) {
104 $exerciseObject = $this->objectHelper->getInstanceByObjId($objId);
106 $mark = $this->lpMarksHelper->lookUpMark($userId, $objId);
107 $status = $this->exerciseMembersHelper->lookUpStatus($objId, $userId);
109 $completionDate = $this->lpStatusHelper->lookupStatusChanged($objId, $userId);
111 $placeHolders = $this->defaultPlaceholderValuesObject->getPlaceholderValues($userId, $objId);
113 if ($status !== null) {
114 $placeHolders[
'RESULT_PASSED'] = $this->utilHelper->prepareFormOutput($this->
language->txt(
'exc_' . $status));
117 $placeHolders[
'RESULT_MARK'] = $this->utilHelper->prepareFormOutput($mark);
118 $placeHolders[
'EXERCISE_TITLE'] = $this->utilHelper->prepareFormOutput($exerciseObject->getTitle());
119 $placeHolders[
'DATE_COMPLETED'] =
'';
120 $placeHolders[
'DATETIME_COMPLETED'] =
'';
122 if ($completionDate !==
'') {
123 $placeHolders[
'DATE_COMPLETED'] = $this->dateHelper->formatDate($completionDate);
124 $placeHolders[
'DATETIME_COMPLETED'] = $this->dateHelper->formatDateTime($completionDate);
127 return $placeHolders;
137 $placeholders = $this->defaultPlaceholderValuesObject->getPlaceholderValuesForPreview($userId, $objId);
139 $object = $this->objectHelper->getInstanceByObjId($objId);
141 $placeholders[
'RESULT_PASSED'] = $this->utilHelper->prepareFormOutput($this->
language->txt(
'certificate_var_result_passed'));
142 $placeholders[
'RESULT_MARK'] = $this->utilHelper->prepareFormOutput($this->
language->txt(
'certificate_var_result_mark_short'));
143 $placeholders[
'EXERCISE_TITLE'] = $this->utilHelper->prepareFormOutput($object->getTitle());
145 return $placeholders;
readonly ilCertificateLPMarksHelper $lpMarksHelper
readonly ilDefaultPlaceholderValues $defaultPlaceholderValuesObject
readonly ilCertificateDateHelper $dateHelper
Collection of basic placeholder values that can be used.
__construct(?ilDefaultPlaceholderValues $defaultPlaceholderValues=null, ?ilLanguage $language=null, ?ilCertificateObjectHelper $objectHelper=null, ?ilCertificateLPMarksHelper $lpMarksHelper=null, ?ilCertificateExerciseMembersHelper $exerciseMembersHelper=null, ?ilCertificateLPStatusHelper $lpStatusHelper=null, ?ilCertificateUtilHelper $utilHelper=null, ?ilCertificateDateHelper $dateHelper=null)
getPlaceholderValues(int $userId, int $objId)
This method MUST return an array that contains the actual data for the given user of the given object...
readonly ilCertificateObjectHelper $objectHelper
readonly ilCertificateUtilHelper $utilHelper
readonly ilCertificateLPStatusHelper $lpStatusHelper
getPlaceholderValuesForPreview(int $userId, int $objId)
This method is different then the 'getPlaceholderValues' method, this method is used to create a plac...
Just a wrapper class to create Unit Test for other classes.
readonly ilLanguage $language
readonly ilCertificateExerciseMembersHelper $exerciseMembersHelper