ILIAS  trunk Revision v11.0_alpha-3011-gc6b235a2e85
class.ilAssQuestionSkillAssignmentImportFails.php
Go to the documentation of this file.
1<?php
2
26{
30 protected $settings;
31
35 protected $parentObjId;
36
41 public function __construct($parentObjId)
42 {
43 $this->parentObjId = $parentObjId;
44 }
45
50 {
51 if ($this->settings === null) {
52 $this->settings = new ilAssQuestionSkillAssignmentRegistry(new ilSetting('assimportfails'));
53 }
54
55 return $this->settings;
56 }
57
61 protected function getParentObjId(): int
62 {
63 return $this->parentObjId;
64 }
65
69 protected function buildSettingsKey(): string
70 {
71 return 'failed_imp_qsa_parentobj_' . $this->getParentObjId();
72 }
73
78 {
79 $value = $this->getSettings()->getStringifiedImports($this->buildSettingsKey(), null);
80
81 if ($value !== null) {
82 return unserialize($value);
83 }
84
85 return null;
86 }
87
92 {
93 $this->getSettings()->setStringifiedImports($this->buildSettingsKey(), serialize($assignmentList));
94 }
95
98 public function deleteRegisteredImportFails(): void
99 {
100 $this->getSettings()->deleteStringifiedImports($this->buildSettingsKey());
101 }
102
106 public function failedImportsRegistered(): bool
107 {
108 return $this->getFailedImports() !== null;
109 }
110
115 public function getFailedImportsMessage(ilLanguage $lng): string
116 {
117 $handledSkills = [];
118 $msg = $lng->txt('tst_failed_imp_qst_skl_assign');
119
120 $msg .= '<ul>';
121 foreach ($this->getFailedImports() as $assignmentImport) {
122 $sklBaseId = $assignmentImport->getImportSkillBaseId();
123 $sklTrefId = $assignmentImport->getImportSkillTrefId();
124
125 if (isset($handledSkills["$sklBaseId:$sklTrefId"])) {
126 continue;
127 }
128
129 $handledSkills["$sklBaseId:$sklTrefId"] = true;
130
131 $msg .= '<li>' . $assignmentImport->getImportSkillTitle() . '</li>';
132 }
133 $msg .= '</ul>';
134
135 return $msg;
136 }
137}
registerFailedImports(ilAssQuestionSkillAssignmentImportList $assignmentList)
__construct($parentObjId)
ilAssQuestionSkillAssignmentImportFails constructor.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
language handling
ILIAS Setting Class.
global $lng
Definition: privfeed.php:31