ILIAS  release_6 Revision v6.24-5-g0c8bfefb3b8
All Data Structures Namespaces Files Functions Variables Modules Pages
class.ilStudyProgrammeDIC.php
Go to the documentation of this file.
1 <?php
2 
3 declare(strict_types=1);
4 
6 
8 {
9  public static $dic;
10 
11  public static function dic() : Container
12  {
13  if (!self::$dic) {
14  self::$dic = self::buildDIC();
15  }
16  return self::$dic;
17  }
18 
19  protected static function buildDIC() : Container
20  {
21  global $DIC;
22  $dic = new Container();
23 
24  $dic['ilAppEventHandler'] = function ($dic) use ($DIC) {
25  return $DIC->offsetExists('ilAppEventHandler') ?
26  $DIC['ilAppEventHandler'] : new \ilAppEventHandler();
27  };
28  $dic['ilStudyProgrammeEvents'] = function ($dic) {
29  return new ilStudyProgrammeEvents(
30  $dic['ilAppEventHandler'],
31  $dic['model.Assignment.ilStudyProgrammeAssignmentRepository']
32  );
33  };
34  $dic['model.Settings.ilStudyProgrammeSettingsRepository'] = function ($dic) use ($DIC) {
36  $DIC['ilDB']
37  );
38  };
39  $dic['model.Progress.ilStudyProgrammeProgressRepository'] = function ($dic) use ($DIC) {
40  return new ilStudyProgrammeProgressDBRepository($DIC['ilDB']);
41  };
42  $dic['model.Assignment.ilStudyProgrammeAssignmentRepository'] = function ($dic) use ($DIC) {
43  return new ilStudyProgrammeAssignmentDBRepository($DIC['ilDB']);
44  };
45  $dic['model.AutoMemberships.ilStudyProgrammeAutoMembershipsRepository'] = function ($dic) use ($DIC) {
47  $DIC['ilDB'],
48  (int) $DIC['ilUser']->getId()
49  );
50  };
51  $dic['model.AutoMemberships.ilStudyProgrammeMembershipSourceReaderFactory'] = function ($dic) use ($DIC) {
53  };
54 
55  $dic['model.Type.ilStudyProgrammeTypeRepository'] = function ($dic) use ($DIC) {
57  $DIC['ilDB'],
58  $dic['model.Settings.ilStudyProgrammeSettingsRepository'],
59  $DIC->filesystem()->web(),
60  $DIC['ilUser'],
61  $DIC['ilPluginAdmin'],
62  $DIC['lng']
63  );
64  };
65  $dic['model.AutoCategories.ilStudyProgrammeAutoCategoriesRepository'] = function ($dic) use ($DIC) {
67  $DIC['ilDB'],
68  (int) $DIC['ilUser']->getId()
69  );
70  };
71  $dic['ilObjStudyProgrammeSettingsGUI'] = function ($dic) use ($DIC) {
73  $DIC['tpl'],
74  $DIC['ilCtrl'],
75  $DIC['lng'],
76  $DIC->ui()->factory()->input(),
77  $DIC->ui()->renderer(),
78  $DIC->http()->request(),
79  $DIC->refinery(),
80  $dic['DataFactory'],
81  $dic['model.Type.ilStudyProgrammeTypeRepository'],
82  $dic['ilStudyProgrammeCommonSettingsGUI'],
83  $DIC['ilTabs']
84  );
85  };
86  $dic['ilObjStudyProgrammeMembersGUI'] = function ($dic) use ($DIC) {
88  $DIC['tpl'],
89  $DIC['ilCtrl'],
90  $DIC['ilToolbar'],
91  $DIC['ilAccess'],
92  $DIC['lng'],
93  $DIC['ilUser'],
94  $DIC['ilTabs'],
95  $dic['ilStudyProgrammeUserProgressDB'],
96  $dic['ilStudyProgrammeUserAssignmentDB'],
97  $dic['ilStudyProgrammeRepositorySearchGUI'],
98  $dic['ilObjStudyProgrammeIndividualPlanGUI'],
99  $dic['ilStudyProgrammePositionBasedAccess']
100  );
101  };
102  $dic['ilObjStudyProgrammeAutoMembershipsGUI'] = function ($dic) use ($DIC) {
104  $DIC['tpl'],
105  $DIC['ilCtrl'],
106  $DIC['ilToolbar'],
107  $DIC['lng'],
108  $DIC->ui()->factory(),
109  $DIC['ui.factory']->messageBox(),
110  $DIC['ui.factory']->button(),
111  $DIC->ui()->renderer(),
112  $DIC->http()->request(),
113  $DIC['tree']
114  );
115  };
116  $dic['ilObjStudyProgrammeTreeGUI'] = function ($dic) use ($DIC) {
117  return new ilObjStudyProgrammeTreeGUI(
118  $DIC['tpl'],
119  $DIC['ilCtrl'],
120  $DIC['ilAccess'],
121  $DIC['ilToolbar'],
122  $DIC['lng'],
123  $DIC['ilLog'],
124  $DIC['ilias'],
125  $DIC['ilSetting']
126  );
127  };
128  $dic['ilStudyProgrammeTypeGUI'] = function ($dic) use ($DIC) {
129  return new ilStudyProgrammeTypeGUI(
130  $DIC['tpl'],
131  $DIC['ilCtrl'],
132  $DIC['ilAccess'],
133  $DIC['ilToolbar'],
134  $DIC['lng'],
135  $DIC['ilias'],
136  $DIC['ilTabs'],
137  $dic['model.Type.ilStudyProgrammeTypeRepository'],
138  $DIC->ui()->factory()->input(),
139  $DIC->ui()->renderer(),
140  $DIC->http()->request(),
141  $DIC->refinery()
142  );
143  };
144  $dic['ilStudyProgrammeRepositorySearchGUI'] = function ($dic) {
146  };
147  $dic['ilObjStudyProgrammeIndividualPlanGUI'] = function ($dic) use ($DIC) {
149  $DIC['tpl'],
150  $DIC['ilCtrl'],
151  $DIC['lng'],
152  $DIC['ilUser'],
153  $DIC['ilAccess'],
154  $dic['ilStudyProgrammeUserProgressDB'],
155  $dic['ilStudyProgrammeUserAssignmentDB']
156  );
157  };
158  $dic['ilObjStudyProgrammeAutoCategoriesGUI'] = function ($dic) use ($DIC) {
160  $DIC['tpl'],
161  $DIC['ilCtrl'],
162  $DIC['ilToolbar'],
163  $DIC['lng'],
164  $DIC->ui()->factory(),
165  $DIC['ui.factory']->messageBox(),
166  $DIC['ui.factory']->button(),
167  $DIC->ui()->renderer(),
168  $DIC->http()->request(),
169  $DIC['tree']
170  );
171  };
172  $dic['DataFactory'] = function ($dic) use ($DIC) {
173  return new \ILIAS\Data\Factory();
174  };
175  $dic['ilStudyProgrammeUserProgressDB'] = function ($dic) use ($DIC) {
176  $lng = $DIC['lng'];
177  if (strpos(get_class($lng), 'class@anonymous') === 0) {
178  $lng = new \ilSetupLanguage("en");
179  }
180 
182  $dic['model.Progress.ilStudyProgrammeProgressRepository'],
183  $dic['model.Assignment.ilStudyProgrammeAssignmentRepository'],
184  $lng,
185  $dic['ilStudyProgrammeEvents']
186  );
187  };
188  $dic['ilStudyProgrammeUserAssignmentDB'] = function ($dic) use ($DIC) {
189  $tree = $DIC->offsetExists('tree') ?
190  $DIC['tree'] : new ilTree(ROOT_FOLDER_ID);
191 
192  $logger = $DIC['ilLog'];
193  if (strpos(get_class($logger), 'class@anonymous') === 0) {
194  $logger = ilLoggerFactory::getLogger('setup');
195  }
196 
198  $dic['ilStudyProgrammeUserProgressDB'],
199  $dic['model.Assignment.ilStudyProgrammeAssignmentRepository'],
200  $tree,
201  $dic['ilStudyProgrammeEvents']
202  );
203  };
204  $dic['ilOrgUnitObjectTypePositionSetting'] = function ($dic) {
205  return new ilOrgUnitObjectTypePositionSetting('prg');
206  };
207  $dic['ilStudyProgrammePositionBasedAccess'] = function ($dic) {
209  };
210  $dic['ilStudyProgrammeMailMemberSearchGUI'] = function ($dic) use ($DIC) {
212  $DIC['ilCtrl'],
213  $DIC['tpl'],
214  $DIC['lng'],
215  $DIC['ilAccess']
216  );
217  };
218  $dic['ilStudyProgrammeChangeExpireDateGUI'] = function ($dic) use ($DIC) {
220  $DIC['ilCtrl'],
221  $DIC['tpl'],
222  $DIC['lng'],
223  $DIC['ilAccess'],
224  $DIC['ilUser'],
225  $DIC->ui()->factory()->input(),
226  $DIC->ui()->renderer(),
227  $DIC->http()->request(),
228  $DIC->refinery(),
229  $dic['DataFactory'],
230  $dic['ilStudyProgrammeUserProgressDB']
231  );
232  };
233  $dic['ilStudyProgrammeChangeDeadlineGUI'] = function ($dic) use ($DIC) {
235  $DIC['ilCtrl'],
236  $DIC['tpl'],
237  $DIC['lng'],
238  $DIC['ilAccess'],
239  $DIC['ilUser'],
240  $DIC->ui()->factory()->input(),
241  $DIC->ui()->renderer(),
242  $DIC->http()->request(),
243  $DIC->refinery(),
244  $dic['DataFactory'],
245  $dic['ilStudyProgrammeUserProgressDB']
246  );
247  };
248  $dic['ilStudyProgrammeDashboardViewGUI'] = function ($dic) use ($DIC) {
250  $DIC['lng'],
251  $DIC['ilUser'],
252  $DIC['ilAccess'],
253  $DIC['ilSetting'],
254  $DIC['ui.factory'],
255  $DIC['ui.renderer'],
256  $DIC['ilCtrl'],
257  $dic['Log']
258  );
259  };
260 
261  $dic['ilStudyProgrammeCommonSettingsGUI'] = function ($dic) use ($DIC) {
263  $DIC['ilCtrl'],
264  $DIC['tpl'],
265  $DIC['lng'],
266  $DIC->object()
267  );
268  };
269 
270  $dic['Log'] = function ($dic) {
271  return ilLoggerFactory::getLogger('prg');
272  };
273 
274  return $dic;
275  }
276 }
Class ilOrgUnitPositionAccess.
Storage implementation for ilStudyProgrammeUserProgress.
Provides adapters to read member-ids from a specific source.
$lng
ilObjStudyProgrammeMembersGUI: ilStudyProgrammeRepositorySearchGUI ilObjStudyProgrammeMembersGUI: il...
Custom repository search gui class for study programme to make it possible to get a handle on users s...
$DIC
Definition: xapitoken.php:46
$dic
Definition: result.php:13
static getLogger($a_component_id)
Get component logger.
ilObjStudyProgrammeSettingsGUI: ilStudyProgrammeCommonSettingsGUI
Object settings regarding position permissions.
Class ilObjStudyProgrammeTreeGUI Generates the manage view for ilTrainingProgramme-Repository objects...