ILIAS  release_7 Revision v7.30-3-g800a261c036
All Data Structures Namespaces Files Functions Variables Modules Pages
ilLSLocalDI Class Reference
+ Inheritance diagram for ilLSLocalDI:
+ Collaboration diagram for ilLSLocalDI:

Public Member Functions

 init (ArrayAccess $dic, ilLSDI $lsdic, DataFactory $data_factory, ilObjLearningSequence $object)
 

Detailed Description

Member Function Documentation

◆ init()

ilLSLocalDI::init ( ArrayAccess  $dic,
ilLSDI  $lsdic,
DataFactory  $data_factory,
ilObjLearningSequence  $object 
)

Definition at line 11 of file class.ilLSLocalDI.php.

References $c, ilContainerSorting\_getInstance(), ilObjLearningSequenceLearnerGUI\CMD_VIEW, ilObject\getId(), ilObject\getRefId(), ilObject\getTitle(), and ilLSPlayer\LSO_CMD_GOTO.

16  {
17  $ref_id = (int) $object->getRefId();
18  $obj_id = (int) $object->getId();
19  $obj_title = $object->getTitle();
20 
21  $current_user = $dic['ilUser'];
22  $current_user_id = (int) $current_user->getId();
23 
24  $data_factory = new \ILIAS\Data\Factory();
25 
26  $this["obj.ref_id"] = $ref_id;
27  $this["obj.obj_id"] = $obj_id;
28  $this["obj.title"] = (string) $obj_title;
29 
30  $this["usr.id"] = $current_user_id;
31 
32  $this["obj.sorting"] = function ($c) : ilContainerSorting {
33  return ilContainerSorting::_getInstance($c["obj.obj_id"]);
34  };
35 
36  $this["db.lsitems"] = function ($c) use ($dic, $lsdic) : ilLSItemsDB {
37  $online_status = new LSItemOnlineStatus();
38  return new ilLSItemsDB(
39  $dic["tree"],
40  $c["obj.sorting"],
41  $lsdic["db.postconditions"],
42  $online_status
43  );
44  };
45 
46  $this["db.progress"] = function ($c) use ($dic) : ilLearnerProgressDB {
47  return new ilLearnerProgressDB(
48  $c["db.lsitems"],
49  $dic["ilAccess"],
50  $dic['ilObjDataCache']
51  );
52  };
53 
54  $this["learneritems"] = function ($c) use ($dic, $lsdic) : ilLSLearnerItemsQueries {
55  return new ilLSLearnerItemsQueries(
56  $c["db.progress"],
57  $lsdic["db.states"],
58  $c["obj.ref_id"],
59  $c["usr.id"]
60  );
61  };
62 
63  $this["gui.learner"] = function ($c) use ($dic, $lsdic, $object) : ilObjLearningSequenceLearnerGUI {
64  $first_access = $c["learneritems"]->getFirstAccess();
65 
67  $c["obj.ref_id"],
68  $first_access,
69  $c["usr.id"],
70  $dic["ilAccess"],
71  $dic["ilCtrl"],
72  $dic["lng"],
73  $dic["tpl"],
74  $dic["ilToolbar"],
75  $dic["ui.factory"],
76  $dic["ui.renderer"],
77  $c["roles"],
78  $lsdic["db.settings"]->getSettingsFor($c["obj.obj_id"]),
79  $c["player.curriculumbuilder"],
80  $c["player"]
81  );
82  };
83 
84  $this["gui.toc"] = function ($c) use ($dic) : ilLSTOCGUI {
85  return new ilLSTOCGUI(
86  $c["player.urlbuilder"],
87  $dic["ilCtrl"]
88  );
89  };
90 
91  $this["gui.loc"] = function ($c) use ($dic) : ilLSLocatorGUI {
92  return new ilLSLocatorGUI(
93  $c["player.urlbuilder"],
94  $dic["ui.factory"]
95  );
96  };
97 
98  $this["player.viewfactory"] = function ($c) use ($dic) : ilLSViewFactory {
99  return new ilLSViewFactory(
100  $dic['service.kiosk_mode'],
101  $dic["lng"],
102  $dic["ilAccess"]
103  );
104  };
105 
106  $this["player.urlbuilder"] = function ($c) use ($dic, $data_factory) : LSUrlBuilder {
107  $player_base_url = $dic['ilCtrl']->getLinkTargetByClass(
108  'ilObjLearningSequenceLearnerGUI',
110  '',
111  false,
112  false
113  );
114  $player_base_url = $data_factory->uri(ILIAS_HTTP_PATH . '/' . $player_base_url);
115 
116  return new LSUrlBuilder($player_base_url);
117  };
118 
119  $this["globalsetttings"] = function ($c) use ($dic) {
120  $db = new ilLSGlobalSettingsDB($dic['ilSetting']);
121  return $db->getSettings();
122  };
123 
124  $this["player.controlbuilder"] = function ($c) use ($dic) : LSControlBuilder {
125  return new LSControlBuilder(
126  $dic["ui.factory"],
127  $c["player.urlbuilder"],
128  $dic["lng"],
129  $c["globalsetttings"]
130  );
131  };
132 
133  $this["player.kioskrenderer"] = function ($c) use ($dic) : ilKioskPageRenderer {
134  $kiosk_template = new ilTemplate("tpl.kioskpage.html", true, true, 'Modules/LearningSequence');
135  $window_title = $dic['ilSetting']->get('short_inst_name');
136  if ($window_title === false) {
137  $window_title = 'ILIAS';
138  }
139 
140  return new ilKioskPageRenderer(
141  $dic["tpl"],
142  $dic["global_screen"]->layout()->meta(),
143  $dic["ui.factory"],
144  $dic["ui.renderer"],
145  $dic['lng'],
146  $kiosk_template,
147  $c["gui.toc"],
148  $c["gui.loc"],
149  $window_title
150  );
151  };
152 
153  $this["player.curriculumbuilder"] = function ($c) use ($dic) : ilLSCurriculumBuilder {
154  return new ilLSCurriculumBuilder(
155  $c["learneritems"],
156  $dic["ui.factory"],
157  $dic["lng"],
159  $c["player.urlbuilder"]
160  );
161  };
162 
163  $this["player"] = function ($c) use ($dic, $lsdic) : ilLSPlayer {
164  return new ilLSPlayer(
165  $c["obj.title"],
166  $c["learneritems"],
167  $c["player.controlbuilder"],
168  $c["player.urlbuilder"],
169  $c["player.curriculumbuilder"],
170  $c["player.viewfactory"],
171  $c["player.kioskrenderer"],
172  $dic["ui.factory"],
173  $lsdic["gs.current_context"]
174  );
175  };
176 
177  $this["participants"] = function ($c) use ($dic) : ilLearningSequenceParticipants {
179  $c["obj.obj_id"],
180  $dic["ilLoggerFactory"]->getRootLogger(),
181  $dic["ilAppEventHandler"],
182  $dic["ilSetting"]
183  );
184  };
185 
186  $this["roles"] = function ($c) use ($dic, $current_user) : ilLearningSequenceRoles {
187  return new ilLearningSequenceRoles(
188  $c["obj.ref_id"],
189  $c["obj.obj_id"],
190  $c["participants"],
191  $dic["ilCtrl"],
192  $dic["rbacadmin"],
193  $dic["rbacreview"],
194  $dic["ilDB"],
195  $current_user
196  );
197  };
198  }
$c
Definition: cli.php:37
Class ilLSItemsDB.
Definition: ilLSItemsDB.php:11
Repository for LSGlobalSettings over ILIAS global settings.
Class ilObjLearningSequenceLearnerGUI.
Class LSUrlBuilder.
getId()
get object id public
Class ilKioskPageRenderer.
getTitle()
get object title public
This combines calls to ProgressDB and StateDB to handle learner-items in the context of a specific LS...
Implementation of KioskMode Player.
Get LearningProgress and availability of items in sequence.
Class LSControlBuilder.
GUI for Locator element.
Tree-GUI for ToC.
getRefId()
get reference id public
static _getInstance($a_obj_id)
get instance by obj_id
Builds the overview (curriculum) of a LearningSequence.
+ Here is the call graph for this function:

The documentation for this class was generated from the following file: