19 declare(strict_types=1);
59 $this->main_tpl = $DIC->ui()->mainTemplate();
67 $DIC->language()->loadLanguageModule(
'lti');
69 $DIC->tabs()->addSubTab(
70 self::SUBTAB_ID_OBJECT_SETTINGS,
71 $DIC->language()->txt(self::SUBTAB_ID_OBJECT_SETTINGS),
72 $DIC->ctrl()->getLinkTarget($this)
76 $DIC->tabs()->addSubTab(
77 self::SUBTAB_ID_PROVIDER_SETTINGS,
78 $DIC->language()->txt(self::SUBTAB_ID_PROVIDER_SETTINGS),
79 $DIC->ctrl()->getLinkTargetByClass(ilLTIConsumeProviderSettingsGUI::class)
85 if ($validator->validate()) {
86 $DIC->tabs()->addSubTab(
87 self::SUBTAB_ID_CERTIFICATE,
88 $DIC->language()->txt(self::SUBTAB_ID_CERTIFICATE),
89 $DIC->ctrl()->getLinkTargetByClass(ilCertificateGUI::class,
'certificateEditor')
98 if ($this->
object->getProvider()->isGlobal()) {
102 if ($this->
object->getProvider()->getCreator() != $DIC->user()->getId()) {
115 if ($provider->
getCreator() != $DIC->user()->getId()) {
133 $nc = $DIC->ctrl()->getNextClass();
136 case strtolower(ilCertificateGUI::class):
140 if (!$validator->validate()) {
144 $DIC->tabs()->activateSubTab(self::SUBTAB_ID_CERTIFICATE);
147 $gui = $guiFactory->create($this->
object);
149 $DIC->ctrl()->forwardCommand($gui);
153 case strtolower(ilLTIConsumeProviderSettingsGUI::class):
155 $DIC->tabs()->activateSubTab(self::SUBTAB_ID_PROVIDER_SETTINGS);
158 $DIC->ctrl()->forwardCommand($gui);
162 $DIC->tabs()->activateSubTab(self::SUBTAB_ID_OBJECT_SETTINGS);
163 $command = $DIC->ctrl()->getCmd(self::CMD_SHOW_SETTINGS) .
'Cmd';
172 if ($form ===
null) {
176 $DIC->ui()->mainTemplate()->setContent($form->getHTML());
185 if ($form->checkInput()) {
186 $oldMasteryScore = $this->
object->getMasteryScore();
188 $form->initObject($this->
object);
189 $this->
object->update();
191 if ($oldMasteryScore !== $this->
object->getMasteryScore()) {
195 $this->main_tpl->setOnScreenMessage(
'success', $DIC->language()->txt(
'msg_obj_modified'),
true);
196 $DIC->ctrl()->redirect($this, self::CMD_SHOW_SETTINGS);
208 $DIC->ctrl()->getFormAction($this),
209 self::CMD_SAVE_SETTINGS,
210 self::CMD_SHOW_SETTINGS
222 if (!$validator->isCertificateDownloadable($DIC->user()->getId(), $this->
object->getId())) {
223 $this->main_tpl->setOnScreenMessage(
'failure', $DIC->language()->txt(
"permission_denied"),
true);
229 $certLogger = $DIC->logger()->cert();
235 $DIC->language()->txt(
'error_creating_certificate_pdf')
238 $pdfAction->
downloadPdf($DIC->user()->getId(), $this->
object->getId());
static get(string $a_var)
const SUBTAB_ID_OBJECT_SETTINGS
__construct(ilObjLTIConsumer $object, ilLTIConsumerAccess $access)
ilLTIConsumerAccess constructor.
executeCommand()
Execute Command.
ilGlobalTemplateInterface $main_tpl
while($session_entry=$r->fetchRow(ilDBConstants::FETCHMODE_ASSOC)) return null
static isUserDynamicRegistrationTransaction(ilLTIConsumeProvider $provider)
Validates if an active certificate is stored in the database and can be downloaded by the user...
static _refreshStatus(int $a_obj_id, ?array $a_users=null)
const CMD_DELIVER_CERTIFICATE
needsProviderSettingsSubTab()
showSettingsCmd(?ilLTIConsumerSettingsFormGUI $form=null)
const SUBTAB_ID_CERTIFICATE
const SUBTAB_ID_PROVIDER_SETTINGS
ilLTIConsumerAccess $access
downloadPdf(int $userId, int $objectId)