19 declare(strict_types=1);
27 public static function dic(): Container
38 $dic =
new Container();
40 $dic[
'permissionhelper'] =
static function (
$dic) use ($prg, $DIC) {
44 $DIC[
'ilObjDataCache'],
46 (
int) $prg->getRefid()
50 $dic[
'ilStudyProgrammeUserTable'] =
function (
$dic) use ($DIC) {
54 $dic[
'repo.assignment'],
56 $dic[
'permissionhelper']
60 $dic[
'model.Settings.ilStudyProgrammeSettingsRepository'] =
function (
$dic) use ($DIC) {
65 $dic[
'repo.assignment'] =
function (
$dic) use ($DIC) {
69 $dic[
'model.Settings.ilStudyProgrammeSettingsRepository'],
70 $dic[
'ilStudyProgrammeDelayedEvents'],
80 $dic[
'Log'] =
static fn($dic) =>
83 $dic[
'mail'] =
static fn($dic) =>
88 $dic[
'ilAppEventHandler'] =
static fn($dic) =>
89 $DIC->offsetExists(
'ilAppEventHandler') ? $DIC[
'ilAppEventHandler'] : new \ilAppEventHandler();
91 $dic[
'prgEventHandler'] =
static fn($dic) =>
new PRGEventHandler($dic[
'mail']);
93 $dic[
'ilStudyProgrammeEvents'] =
static fn($dic) =>
96 $dic[
'ilAppEventHandler'],
97 $dic[
'prgEventHandler']
99 $dic[
'ilStudyProgrammeDelayedEvents'] =
static fn($dic) =>
102 $dic[
'ui.factory'] =
static fn($dic) => $DIC[
'ui.factory'];
103 $dic[
'ui.renderer'] =
static fn($dic) => $DIC[
'ui.renderer'];
105 $dic[
'ilStudyProgrammeMailMemberSearchGUI'] =
static fn($dic) =>
111 $DIC->http()->wrapper(),
113 $dic[
'permissionhelper'],
125 $dic[
'DataFactory'] =
static fn($dic) => new \ILIAS\Data\Factory();
134 $dic =
new Container();
136 $dic[
'mail'] =
static fn($dic) =>
142 $dic[
'ilAppEventHandler'] =
static fn($dic) =>
143 $DIC->offsetExists(
'ilAppEventHandler') ? $DIC[
'ilAppEventHandler'] : new \ilAppEventHandler();
145 $dic[
'prgEventHandler'] =
static fn($dic) =>
new PRGEventHandler($dic[
'mail']);
147 $dic[
'ilStudyProgrammeEvents'] =
static fn($dic) =>
150 $dic[
'ilAppEventHandler'],
151 $dic[
'prgEventHandler']
153 $dic[
'ilStudyProgrammeDelayedEvents'] =
static fn($dic) =>
156 $dic[
'repo.assignment'] =
static fn($dic) =>
160 $dic[
'model.Settings.ilStudyProgrammeSettingsRepository'],
161 $dic[
'ilStudyProgrammeDelayedEvents'],
166 $dic[
'model.Settings.ilStudyProgrammeSettingsRepository'] =
static fn($dic) =>
170 $dic[
'model.AutoMemberships.ilStudyProgrammeAutoMembershipsRepository'] =
static fn($dic) =>
173 (
int) $DIC[
'ilUser']->
getId()
175 $dic[
'model.AutoMemberships.ilStudyProgrammeMembershipSourceReaderFactory'] =
static fn($dic) =>
177 $dic[
'model.Type.ilStudyProgrammeTypeRepository'] =
static fn($dic) =>
180 $dic[
'model.Settings.ilStudyProgrammeSettingsRepository'],
183 $DIC[
'component.factory'],
186 $DIC[
'resource_storage'],
188 $dic[
'model.AutoCategories.ilStudyProgrammeAutoCategoriesRepository'] =
static fn($dic) =>
191 (
int) $DIC[
'ilUser']->
getId()
193 $dic[
'ilObjStudyProgrammeSettingsGUI'] =
static fn($dic) =>
198 $DIC->ui()->factory()->input(),
199 $DIC->ui()->renderer(),
200 $DIC->http()->request(),
203 $dic[
'model.Type.ilStudyProgrammeTypeRepository'],
204 $dic[
'ilStudyProgrammeCommonSettingsGUI'],
206 $DIC->http()->wrapper()->query(),
207 $DIC[
'learning_object_metadata']
209 $dic[
'PRGMessages'] =
static fn($dic) =>
215 $dic[
'ilObjStudyProgrammeMembersGUI'] =
static fn($dic) =>
223 $dic[
'repo.assignment'],
224 $dic[
'ilStudyProgrammeRepositorySearchGUI'],
225 $dic[
'ilObjStudyProgrammeIndividualPlanGUI'],
229 $DIC->http()->wrapper(),
233 $DIC->http()->request(),
235 $dic[
'ilObjStudyProgrammeAutoMembershipsGUI'] =
static fn($dic) =>
241 $DIC->ui()->factory(),
242 $DIC[
'ui.factory']->messageBox(),
243 $DIC[
'ui.factory']->button(),
244 $DIC->ui()->renderer(),
245 $DIC->http()->request(),
247 $DIC->http()->wrapper()->query(),
261 $dic[
'model.Type.ilStudyProgrammeTypeRepository'],
262 $DIC->ui()->factory(),
263 $DIC->ui()->renderer(),
265 $DIC->http()->request(),
267 $DIC->http()->wrapper()->query()
270 $dic[
'ilStudyProgrammeRepositorySearchGUI'] =
static fn($dic) =>
272 $dic[
'ilObjStudyProgrammeIndividualPlanGUI'] =
static fn($dic) =>
278 $dic[
'repo.assignment'],
280 $DIC->http()->wrapper(),
283 $dic[
'ilObjStudyProgrammeAutoCategoriesGUI'] =
static fn($dic) =>
289 $DIC->ui()->factory(),
290 $DIC[
'ui.factory']->messageBox(),
291 $DIC[
'ui.factory']->button(),
292 $DIC->ui()->renderer(),
293 $DIC->http()->request(),
295 $DIC->http()->wrapper()->query(),
298 $dic[
'DataFactory'] =
static fn($dic) =>
299 new \ILIAS\Data\Factory();
300 $dic[
'ilOrgUnitObjectTypePositionSetting'] =
static fn($dic) =>
303 $dic[
'ilStudyProgrammeChangeExpireDateGUI'] =
static fn($dic) =>
310 $DIC->ui()->factory()->input(),
311 $DIC->ui()->renderer(),
312 $DIC->http()->request(),
317 $dic[
'ilStudyProgrammeChangeDeadlineGUI'] =
static fn($dic) =>
324 $DIC->ui()->factory()->input(),
325 $DIC->ui()->renderer(),
326 $DIC->http()->request(),
332 $dic[
'permissionhelper'] =
static function (
$dic) use ($DIC) {
336 $DIC[
'ilObjDataCache'],
342 $dic[
'ilStudyProgrammeUserTable'] =
function (
$dic) use ($DIC) {
346 $dic[
'repo.assignment'],
348 $dic[
'permissionhelper']
352 $dic[
'ilStudyProgrammeCommonSettingsGUI'] =
static fn($dic) =>
359 $dic[
'Log'] =
static fn($dic) =>
362 $dic[
'current_user'] =
static fn($dic) =>
365 $dic[
'cron.riskyToFail'] =
static fn($dic) =>
367 $dic[
'model.Settings.ilStudyProgrammeSettingsRepository'],
368 $dic[
'ilStudyProgrammeEvents']
370 $dic[
'cron.notRestarted'] =
static fn($dic) =>
372 $dic[
'model.Settings.ilStudyProgrammeSettingsRepository'],
373 $dic[
'ilStudyProgrammeEvents']
375 $dic[
'cron.restart'] =
static fn($dic) =>
377 $dic[
'model.Settings.ilStudyProgrammeSettingsRepository'],
378 $dic[
'ilStudyProgrammeEvents']
380 $dic[
'ui.factory'] =
static fn($dic) => $DIC[
'ui.factory'];
382 $dic[
'pc.statusinfo'] =
static fn($dic) =>
388 new ilTemplate(
"tpl.statusinformation.html",
true,
true,
'components/ILIAS/StudyProgramme'),
389 $dic[
'repo.assignment'],
390 $dic[
'model.Settings.ilStudyProgrammeSettingsRepository'],
392 $dic[
'current_user']->
getId()
395 $dic[
'pc.actionnote'] =
static fn($dic) =>
401 new ilTemplate(
"tpl.action_note.html",
true,
true,
'components/ILIAS/StudyProgramme'),
402 $dic[
'repo.assignment'],
403 $dic[
'model.Settings.ilStudyProgrammeSettingsRepository'],
404 $dic[
'current_user']->
getId()
static getLogger(string $a_component_id)
Get component logger.
Util around ilPRGMessageCollection factors and output collections.
Class ilStudyProgrammeAutoCategoryDBRepository.
Class ilObjStudyProgrammeAutoCategoriesGUI.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
Builds PageContent "Status Information".
while($session_entry=$r->fetchRow(ilDBConstants::FETCHMODE_ASSOC)) return null
Provides adapters to read member-ids from a specific source.
Validates if an active certificate is stored in the database and can be downloaded by the user...
static specificDicFor(ilObjStudyProgramme $prg)
ilObjStudyProgrammeMembersGUI: ilStudyProgrammeRepositorySearchGUI ilObjStudyProgrammeMembersGUI: il...
Send mails to users (usually triggered by cron)
Both role and OrgU-based permissions are relevant in many places of the PRG.
ilStudyProgrammeUserTable provides a flattened list of progresses at a programme-node.
static _getInstanceByType(string $a_type)
Get Singleton Instance.
Custom repository search gui class for study programme to make it possible to get a handle on users s...
Assignments are relations of users to a PRG; They hold progress-information for (sub-)nodes of the PR...
Class ilObjStudyProgrammeAutoMembershipsGUI.
Builds PageContent "Note".
ilObjStudyProgrammeSettingsGUI: ilStudyProgrammeCommonSettingsGUI
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
Holds information about multi-actions, mainly in context of member-assignemnts and status changes...
Class ilStudyProgrammeAutoMembershipsDBRepository.