19 declare(strict_types=1);
66 if (
null === $language) {
68 $language = $DIC->language();
72 if (
null === $defaultPlaceholderValues) {
75 $this->defaultPlaceholderValuesObject = $defaultPlaceholderValues;
77 if (
null === $objectHelper) {
82 if (
null === $userObjectHelper) {
87 if (
null === $lpStatusHelper) {
92 if (
null === $utilHelper) {
110 $placeholders = $this->defaultPlaceholderValuesObject->getPlaceholderValuesForPreview($userId, $objId);
112 $placeholders[
'OBJECT_TITLE'] = $this->utilHelper->prepareFormOutput($this->
language->txt(
'lti_cert_ph_object_title'));
113 $placeholders[
'OBJECT_DESCRIPTION'] = $this->utilHelper->prepareFormOutput($this->
language->txt(
'lti_cert_ph_object_description'));
115 $placeholders[
'MASTERY_SCORE'] = $this->utilHelper->prepareFormOutput($this->
language->txt(
'lti_cert_ph_mastery_score'));
116 $placeholders[
'REACHED_SCORE'] = $this->utilHelper->prepareFormOutput($this->
language->txt(
'lti_cert_ph_reached_score'));
118 return $placeholders;
131 $placeholders = $this->defaultPlaceholderValuesObject->getPlaceholderValues($userId, $objId);
134 $object = $this->objectHelper->getInstanceByObjId($objId);
136 $placeholders[
'OBJECT_TITLE'] = $this->utilHelper->prepareFormOutput($object->getTitle());
137 $placeholders[
'OBJECT_DESCRIPTION'] = $this->utilHelper->prepareFormOutput($object->getDescription());
139 $placeholders[
'MASTERY_SCORE'] = $this->utilHelper->prepareFormOutput($this->
getMasteryScore($object));
140 $placeholders[
'REACHED_SCORE'] = $this->utilHelper->prepareFormOutput($this->
getReachedScore($object, $userId));
142 $completionDate = $this->lpStatusHelper->lookupStatusChanged($objId, $userId);
143 if ($completionDate !=
false &&
144 $completionDate !==
null &&
145 $completionDate !==
'' 148 $user = $this->objectHelper->getInstanceByObjId($userId);
149 $placeHolders[
'DATE_COMPLETED'] = $this->dateHelper->formatDate($completionDate, $user);
150 $placeHolders[
'DATETIME_COMPLETED'] = $this->dateHelper->formatDateTime($completionDate, $user);
153 return $placeholders;
165 $reachedScore = sprintf(
'%0.2f %%', 0);
166 if ($userResult !==
null) {
167 $reachedScore = sprintf(
'%0.2f %%', $userResult->getResult() * 100);
170 return $reachedScore;
ilCertificateLPStatusHelper $lpStatusHelper
ilCertificateObjectHelper $objectHelper
getReachedScore(ilObjLTIConsumer $object, int $userId)
getMasteryScore(ilObjLTIConsumer $object)
while($session_entry=$r->fetchRow(ilDBConstants::FETCHMODE_ASSOC)) return null
ilDefaultPlaceholderValues $defaultPlaceholderValuesObject
static getByKeys(int $a_obj_id, int $a_usr_id, ?bool $a_create=false)
Get a result by object and user key.
ilCertificateUtilHelper $utilHelper
getPlaceholderValuesForPreview(int $userId, int $objId)
Just a wrapper class to create Unit Test for other classes.
getPlaceholderValues(int $userId, int $objId)
This method MUST return an array that contains the actual data for the given user of the given object...
language()
description: > Example for rendring a language glyph.
__construct(?ilDefaultPlaceholderValues $defaultPlaceholderValues=null, ?ilLanguage $language=null, ?ilCertificateObjectHelper $objectHelper=null, ?ilCertificateUserObjectHelper $userObjectHelper=null, ?ilCertificateLPStatusHelper $lpStatusHelper=null, ?ilCertificateUtilHelper $utilHelper=null, ?ilCertificateDateHelper $dateHelper=null)