ILIAS  release_8 Revision v8.24
class.ilMediaPoolTableGUI.php
Go to the documentation of this file.
1<?php
2
20
27{
28 public const IL_MEP_SELECT = "select";
29 public const IL_MEP_EDIT = "edit";
30 public const IL_MEP_SELECT_CONTENT = "selectc";
31 public const IL_MEP_SELECT_SINGLE = "selectsingle";
32 protected \ILIAS\DI\UIServices $ui;
33
34 protected string $mode = "";
35 protected array $filter = [];
36 protected int $current_folder = 0;
37 protected string $folder_par;
38 protected ilTree $tree;
40 protected bool $all_objects = false;
41 protected \ILIAS\MediaPool\StandardGUIRequest $request;
42 protected \ILIAS\MediaPool\Clipboard\ClipboardManager $clipboard_manager;
43
46 protected ilObjUser $user;
47 public string $insert_command = "create_mob";
51
52 public function __construct(
53 object $a_parent_obj,
54 string $a_parent_cmd,
55 ilObjMediaPool $a_media_pool,
56 string $a_folder_par = "obj_id",
57 string $a_mode = ilMediaPoolTableGUI::IL_MEP_EDIT,
58 bool $a_all_objects = false,
59 ?ilGlobalTemplateInterface $a_parent_tpl = null
60 ) {
61 global $DIC;
62
63 $this->ctrl = $DIC->ctrl();
64 $this->lng = $DIC->language();
65 $this->access = $DIC->access();
66 $this->rbacreview = $DIC->rbac()->review();
67 $this->user = $DIC->user();
68
69 $ilCtrl = $DIC->ctrl();
70 $ilAccess = $DIC->access();
71 $lng = $DIC->language();
72 $this->ui = $DIC->ui();
73
74 $this->clipboard_manager = $DIC->mediaPool()
75 ->internal()
76 ->domain()
77 ->clipboard();
78
79 $this->request = $DIC->mediaPool()
80 ->internal()
81 ->gui()
82 ->standardRequest();
83
84 if ($a_parent_tpl === null) {
85 $a_parent_tpl = $DIC->ui()->mainTemplate();
86 }
87 $this->parent_tpl = $a_parent_tpl;
88 if ($a_all_objects) {
89 $this->setId("mepall");
90 if (method_exists($a_parent_obj, "getObject") &&
91 is_object($a_parent_obj->getObject())) {
92 $this->setId("mepall" . $a_parent_obj->getObject()->getId());
93 }
94 } else {
95 $this->setId("mepfold");
96 if (method_exists($a_parent_obj, "getObject") &&
97 is_object($a_parent_obj->getObject())) {
98 $this->setId("mepfold" . $a_parent_obj->getObject()->getId());
99 }
100 }
101
102 parent::__construct($a_parent_obj, $a_parent_cmd);
103 $this->setMode($a_mode);
104 $this->all_objects = $a_all_objects;
105 $lng->loadLanguageModule("mep");
106
107 $this->media_pool = $a_media_pool;
108 $this->tree = ilObjMediaPool::_getPoolTree($this->media_pool->getId());
109 $this->folder_par = $a_folder_par;
110 $this->pool_repo = new MediaPoolRepository();
111
112 if ($this->all_objects) {
113 $this->setExternalSorting(true);
114 $this->initFilter();
115 }
116
117 $current_folder = $this->clipboard_manager->getFolder();
118
119 // folder determination
120 $requested_folder_id = $this->request->getFolderId($this->folder_par);
121 if ($requested_folder_id > 0) {
122 $this->current_folder = $requested_folder_id;
123 } elseif ($current_folder > 0 && $this->tree->isInTree($current_folder)) {
124 $this->current_folder = $current_folder;
125 } else {
126 $this->current_folder = $this->tree->getRootId();
127 }
128 $this->clipboard_manager->setFolder($this->current_folder);
129
130 // standard columns
131 $this->addColumn("", "", "1"); // checkbox
132 $this->addColumn($lng->txt("mep_thumbnail"), "", "100px");
133 $this->addColumn($lng->txt("mep_title_and_description"));
134 $this->setEnableHeader(true);
135 $this->setFormAction($ilCtrl->getFormAction($a_parent_obj));
136 $this->setRowTemplate("tpl.mep_list_row.html", "Modules/MediaPool");
137
138 if ($this->showAdvMetadata()) {
139 // adv metadata init (adds filter)
140 $this->adv_filter_record_gui = new ilAdvancedMDRecordGUI(
142 'mep',
143 $this->media_pool->getId(),
144 'mob'
145 );
146 $this->adv_filter_record_gui->setTableGUI($this);
147 $this->adv_filter_record_gui->parse();
148
149 // adv metadata columns
150 $adv_th_record_gui = new ilAdvancedMDRecordGUI(
152 'mep',
153 $this->media_pool->getId(),
154 'mob'
155 );
156 $adv_th_record_gui->setTableGUI($this);
157 $adv_th_record_gui->parse();
158 if ($a_mode === self::IL_MEP_SELECT) {
159 $this->setFilterCommand("insert_applyFilter");
160 $this->setResetCommand("insert_resetFilter");
161 }
162 }
163
164 // actions column
165 $this->addColumn($lng->txt("actions"));
166
167 // get items
168 $this->getItems();
169
170 // title
171 if ($a_mode !== self::IL_MEP_EDIT) {
172 if ($this->current_folder !== $this->tree->getRootId() && !$this->all_objects) {
173 $node = $this->tree->getNodeData($this->current_folder);
174 $this->setTitle(
175 $lng->txt("mep_choose_from_folder") . ": " . $node["title"],
176 "icon_fold.svg",
177 $node["title"]
178 );
179 } else {
180 $this->setTitle(
181 $lng->txt("mep_choose_from_mep") . ": " .
182 ilObject::_lookupTitle($this->media_pool->getId()),
183 "icon_mep.svg",
184 ilObject::_lookupTitle($this->media_pool->getId())
185 );
186 }
187 }
188
189 // action commands
190 if ($ilAccess->checkAccess("write", "", $this->media_pool->getRefId()) &&
191 $this->getMode() === self::IL_MEP_EDIT) {
192 $this->addMultiCommand("copyToClipboard", $lng->txt("cont_copy_to_clipboard"));
193 $this->addMultiCommand("move", $lng->txt("move"));
194 $this->addMultiCommand("confirmRemove", $lng->txt("remove"));
195 }
196
197 if ($this->getMode() === self::IL_MEP_SELECT_SINGLE) {
198 // ... even more coupling with ilpcmediaobjectgui
199 $this->addMultiCommand("selectObjectReference", $lng->txt("cont_select"));
200 }
201
202 if ($this->getMode() === self::IL_MEP_EDIT &&
203 $ilAccess->checkAccess("write", "", $this->media_pool->getRefId())) {
204 $this->setSelectAllCheckbox("id");
205 }
206 }
207
208 protected function showAdvMetadata(): bool
209 {
210 return ($this->all_objects);
211 }
212
214 {
216 }
217
218 public function setInsertCommand(string $a_val): void
219 {
220 $this->insert_command = $a_val;
221 }
222
223 public function getInsertCommand(): string
224 {
226 }
227
228 public function setTitleFilter(string $title): void
229 {
230 // activate filter
231 $tprop = new ilTablePropertiesStorageGUI();
232 $tprop->storeProperty(
233 $this->getId(),
234 $this->user->getId(),
235 'filter',
236 1
237 );
238
239 // reset filter and offset
240 $this->resetFilter();
241 $this->resetOffset();
242
243 // set title input and write it to session
245 $input = $this->getFilterItemByPostVar("title");
246 $input->setValue($title);
247 $input->writeToSession();
248 }
249
250 public function getHTML(): string
251 {
252 $html = parent::getHTML();
253 $html .= ilObjMediaPoolGUI::getPreviewModalHTML($this->media_pool->getRefId(), $this->parent_tpl);
254 return $html;
255 }
256
257 public function initFilter(): void
258 {
259 $mset = new ilSetting("mobs");
261
262 // title/description
263 $ti = new ilTextInputGUI($lng->txt("title"), "title");
264 $ti->setMaxLength(64);
265 $ti->setSize(20);
266 $this->addFilterItem($ti);
267 $ti->readFromSession();
268 $this->filter["title"] = $ti->getValue();
269
270 // keyword
271 $GLOBALS['lng']->loadLanguageModule('meta');
272 $ke = new ilTextInputGUI($lng->txt('meta_keyword'), 'keyword');
273 $ke->setMaxLength(64);
274 $ke->setSize(20);
275 $this->addFilterItem($ke);
276 $ke->readFromSession();
277 $this->filter['keyword'] = $ke->getValue();
278
279 // Caption
280 $ca = new ilTextInputGUI($lng->txt('cont_caption'), 'caption');
281 $ca->setMaxLength(64);
282 $ca->setSize(20);
283 $this->addFilterItem($ca);
284 $ca->readFromSession();
285 $this->filter['caption'] = $ca->getValue();
286
287 // format
288 $options = array(
289 "" => $lng->txt("mep_all"),
290 );
291 if ($mset->get("mep_activate_pages")) {
292 $options["mob"] = $lng->txt("mep_mob");
293 $options["pg"] = $lng->txt("mep_mpg");
294 }
295 $formats = $this->media_pool->getUsedFormats();
296 $options = array_merge($options, $formats);
297 $si = new ilSelectInputGUI($this->lng->txt("mep_format"), "format");
298 $si->setOptions($options);
299 $this->addFilterItem($si);
300 $si->readFromSession();
301 $this->filter["format"] = $si->getValue();
302 }
303
304 public function setMode(string $a_mode): void
305 {
306 $this->mode = $a_mode;
307 }
308
309 public function getMode(): string
310 {
311 return $this->mode;
312 }
313
314 public function getItems(): void
315 {
316 if (!$this->all_objects) {
317 $fobjs = $this->media_pool->getChilds($this->current_folder, "fold");
318 $f2objs = array();
319 foreach ($fobjs as $obj) {
320 $f2objs[$obj["title"] . ":" . $obj["child"]] = $obj;
321 }
322 ksort($f2objs);
323
324 // get current media objects / pages
325 if ($this->getMode() === self::IL_MEP_SELECT) {
326 $mobjs = $this->media_pool->getChilds($this->current_folder, "mob");
327 } elseif ($this->getMode() === self::IL_MEP_SELECT_CONTENT) {
328 $mobjs = $this->media_pool->getChilds($this->current_folder, "pg");
329 } else {
330 $mobjs = $this->media_pool->getChildsExceptFolders($this->current_folder);
331 }
332 $m2objs = array();
333 foreach ($mobjs as $obj) {
334 $m2objs[$obj["title"] . ":" . $obj["child"]] = $obj;
335 }
336 ksort($m2objs);
337
338 // merge everything together
339 $objs = array_merge($f2objs, $m2objs);
340 } else {
341 $objs = $this->pool_repo->getItems(
342 $this->media_pool->getId(),
343 $this->filter["title"],
344 $this->filter["format"],
345 $this->filter['keyword'],
346 $this->filter['caption']
347 );
348 }
349
350 // add advanced metadata
351 if ($this->showAdvMetadata()) {
352 $mobs = array_filter($objs, function ($m) {
353 return ($m["type"] === "mob");
354 });
355
357 $this->media_pool->getRefId(),
358 "mep",
359 "mob",
360 [0],
361 "mob",
362 $mobs,
363 "",
364 "foreign_id",
365 $this->adv_filter_record_gui->getFilterElements()
366 );
367
368 $snippets = array_filter($objs, function ($m) {
369 return ($m["type"] === "pg");
370 });
371
373 $this->media_pool->getRefId(),
374 "mep",
375 "mpg",
376 [$this->media_pool->getId()],
377 "mpg",
378 $snippets,
379 "mep_id",
380 "obj_id",
381 $this->adv_filter_record_gui->getFilterElements()
382 );
383
384 $objs = array_merge($mobs, $snippets);
385 }
386 $this->setData($objs);
387 }
388
389 protected function prepareOutput(): void
390 {
392
393 if ($this->getMode() === self::IL_MEP_SELECT ||
394 $this->getMode() === self::IL_MEP_SELECT_CONTENT) {
395 $this->addMultiCommand($this->getInsertCommand(), $lng->txt("insert"));
396 $this->addCommandButton("cancelCreate", $lng->txt("cancel"));
397 }
398 }
399
400 protected function fillRow(array $a_set): void
401 {
403 $ilCtrl = $this->ctrl;
404 $ilAccess = $this->access;
405 $actions = [];
406
407 $this->tpl->setCurrentBlock("link");
408
409 // adv metadata columns
410 if ($this->showAdvMetadata()) {
411 $adv_cell_record_gui = new ilAdvancedMDRecordGUI(
413 'mep',
414 $this->media_pool->getId(),
415 'mob'
416 );
417 $adv_cell_record_gui->setTableGUI($this);
418 $adv_cell_record_gui->setRowData($a_set);
419 $this->tpl->setVariable("ADV_CELLS", $adv_cell_record_gui->parse());
420 }
421
422
423 switch ($a_set["type"]) {
424 case "fold":
425 $this->tpl->setVariable("TXT_TITLE", htmlentities($a_set["title"]));
426 $ilCtrl->setParameter($this->parent_obj, $this->folder_par, $a_set["obj_id"]);
427 $ilCtrl->setParameter($this->parent_obj, "id", $a_set["obj_id"]);
428 $this->tpl->setVariable(
429 "LINK_VIEW",
430 $ilCtrl->getLinkTarget($this->parent_obj, $this->parent_cmd)
431 );
432 $this->tpl->parseCurrentBlock();
433
434 if ($ilAccess->checkAccess("write", "", $this->media_pool->getRefId()) &&
435 $this->getMode() === self::IL_MEP_EDIT) {
436 $actions[$lng->txt("edit")] = $ilCtrl->getLinkTarget($this->parent_obj, "editFolder");
437 $ilCtrl->setParameterByClass("ilobjmediapoolgui", "mepitem_id", $this->request->getItemId());
438 $actions[$lng->txt("move")] = $ilCtrl->getLinkTarget($this->parent_obj, "move");
439 $actions[$lng->txt("remove")] = $ilCtrl->getLinkTarget($this->parent_obj, "confirmRemove");
440 $ilCtrl->setParameter($this->parent_obj, $this->folder_par, $a_set["obj_id"]);
441 $ilCtrl->setParameter(
442 $this->parent_obj,
443 $this->folder_par,
444 $this->request->getFolderId($this->folder_par)
445 );
446 $this->tpl->parseCurrentBlock();
447 }
448
449 $this->tpl->setCurrentBlock("tbl_content");
450 $this->tpl->setVariable("IMG", ilUtil::img(ilUtil::getImagePath("icon_" . $a_set["type"] . ".svg")));
451 $ilCtrl->setParameter($this->parent_obj, $this->folder_par, $this->current_folder);
452 break;
453
454 case "pg":
455 if ($this->getMode() === self::IL_MEP_SELECT ||
456 $this->getMode() === self::IL_MEP_SELECT_SINGLE) {
457 $this->tpl->setVariable("TXT_NO_LINK_TITLE", htmlentities($a_set["title"]));
458 } else {
459 $this->tpl->setVariable("ONCLICK", "il.MediaPool.preview('" . $a_set["child"] . "'); return false;");
460 $this->tpl->setVariable("TXT_TITLE", htmlentities($a_set["title"]));
461 $ilCtrl->setParameterByClass("ilobjmediapoolgui", "mepitem_id", $a_set["child"]);
462 }
463
464 if ($this->getMode() === self::IL_MEP_EDIT &&
465 $ilAccess->checkAccess("write", "", $this->media_pool->getRefId())) {
466 $ilCtrl->setParameterByClass("ilmediapoolpagegui", "mepitem_id", $a_set["child"]);
467 $ilCtrl->setParameterByClass("ilobjmediapoolgui", "id", $a_set["child"]);
468
469 $actions[$lng->txt("edit")] = $ilCtrl->getLinkTargetByClass("ilmediapoolpagegui", "edit");
470
471 $mdgui = new ilObjectMetaDataGUI(
472 $this->media_pool,
473 "mpg",
474 $a_set["child"]
475 );
476 $mdtab = $mdgui->getTab("ilmediapoolpagegui");
477 if ($mdtab) {
478 $actions[$lng->txt("meta_data")] = $mdtab;
479 }
480
481 $actions[$lng->txt("cont_usage")] = $ilCtrl->getLinkTargetByClass("ilmediapoolpagegui", "showMediaPoolPageUsages");
482 $actions[$lng->txt("settings")] = $ilCtrl->getLinkTargetByClass("ilmediapoolpagegui", "editMediaPoolPage");
483 $ilCtrl->setParameterByClass("ilobjmediapoolgui", "mepitem_id", $this->request->getItemId());
484 $actions[$lng->txt("move")] = $ilCtrl->getLinkTarget($this->parent_obj, "move");
485 $actions[$lng->txt("remove")] = $ilCtrl->getLinkTarget($this->parent_obj, "confirmRemove");
486 }
487
488 $this->tpl->setCurrentBlock("tbl_content");
489 $this->tpl->setVariable("IMG", ilUtil::img(ilUtil::getImagePath("icon_pg.svg")));
490 $ilCtrl->setParameter($this->parent_obj, $this->folder_par, $this->current_folder);
491 break;
492
493 case "mob":
494 $this->tpl->setVariable("ONCLICK", "il.MediaPool.preview('" . $a_set["child"] . "'); return false;");
495 $this->tpl->setVariable("TXT_TITLE", htmlentities($a_set["title"]));
496 $ilCtrl->setParameterByClass("ilobjmediaobjectgui", "mepitem_id", $a_set["child"]);
497 $ilCtrl->setParameter($this->parent_obj, "mob_id", $a_set["foreign_id"]);
498 $ilCtrl->setParameter($this->parent_obj, "id", $a_set["child"]);
499
500 // edit link
501 if ($ilAccess->checkAccess("write", "", $this->media_pool->getRefId()) &&
502 $this->getMode() === self::IL_MEP_EDIT) {
503 $actions[$lng->txt("edit")] = $ilCtrl->getLinkTargetByClass("ilobjmediaobjectgui", "edit");
504 $ilCtrl->setParameterByClass("ilobjmediapoolgui", "mepitem_id", $this->request->getItemId());
505 $actions[$lng->txt("cont_copy_to_clipboard")] = $ilCtrl->getLinkTargetByClass("ilobjmediapoolgui", "copyToClipboard");
506 $actions[$lng->txt("move")] = $ilCtrl->getLinkTargetByClass("ilobjmediapoolgui", "move");
507 $actions[$lng->txt("remove")] = $ilCtrl->getLinkTarget($this->parent_obj, "confirmRemove");
508 }
509
510 $this->tpl->setCurrentBlock("link");
511 $this->tpl->setCurrentBlock("tbl_content");
512
513 // output thumbnail (or mob icon)
514 if (ilObject::_lookupType($a_set["foreign_id"]) === "mob") {
515 $mob = new ilObjMediaObject($a_set["foreign_id"]);
516 $med = $mob->getMediaItem("Standard");
517 $target = "";
518
519 // thumbnail picture
520 if ($med) {
521 $target = $med->getThumbnailTarget();
522 }
523
524 // video preview
525 if ($target === "") {
526 $target = $mob->getVideoPreviewPic();
527 }
528
529 if ($target !== "") {
530 $this->tpl->setVariable("IMG", ilUtil::img(ilWACSignedPath::signFile($target)));
531 } else {
532 $this->tpl->setVariable(
533 "IMG",
534 ilUtil::img(ilUtil::getImagePath("icon_" . $a_set["type"] . ".svg"))
535 );
536 }
537 if ($med && ilUtil::deducibleSize($med->getFormat()) &&
538 $med->getLocationType() === "Reference") {
539 $size = getimagesize($med->getLocation());
540 if ($size[0] > 0 && $size[1] > 0) {
541 $wr = $size[0] / 80;
542 $hr = $size[1] / 80;
543 $r = max($wr, $hr);
544 $w = (int) ($size[0] / $r);
545 $h = (int) ($size[1] / $r);
546 $this->tpl->setVariable(
547 "IMG",
548 ilUtil::img($med->getLocation(), "", $w, $h)
549 );
550 }
551 }
552
553 // output media info
554 $this->tpl->setVariable(
555 "MEDIA_INFO",
557 );
558 $ilCtrl->setParameter($this->parent_obj, $this->folder_par, $this->current_folder);
559 }
560 break;
561 }
562
563 if ($ilAccess->checkAccess("write", "", $this->media_pool->getRefId())) {
564 if ((
565 $this->getMode() === self::IL_MEP_EDIT ||
566 ($this->getMode() === self::IL_MEP_SELECT && $a_set["type"] === "mob") ||
567 ($this->getMode() === self::IL_MEP_SELECT_CONTENT && $a_set["type"] === "pg")
568 )) {
569 $this->tpl->setCurrentBlock("chbox");
570 $this->tpl->setVariable("CHECKBOX_ID", $a_set["child"]);
571 $this->tpl->parseCurrentBlock();
572 $this->tpl->setCurrentBlock("tbl_content");
573 } elseif ($this->getMode() === self::IL_MEP_SELECT_SINGLE && $a_set["type"] === "mob") {
574 $this->tpl->setCurrentBlock("radio");
575 $this->tpl->setVariable("RADIO_ID", $a_set["child"]);
576 $this->tpl->parseCurrentBlock();
577 $this->tpl->setCurrentBlock("tbl_content");
578 }
579 }
580
581 if (count($actions) > 0) {
582 $items = [];
583 foreach ($actions as $txt => $act) {
584 $items[] = $this->ui->factory()->link()->standard($txt, $act);
585 }
586 $dd = $this->ui->factory()->dropdown()->standard($items);
587 $this->tpl->setVariable("DROPDOWN", $this->ui->renderer()->render($dd));
588 }
589 }
590
591 public function render(): string
592 {
593 $ilCtrl = $this->ctrl;
594
595 $mtpl = new ilTemplate("tpl.media_sel_table.html", true, true, "Modules/MediaPool");
596
597 $pre = "";
598 if ($this->current_folder !== $this->tree->getRootId() && !$this->all_objects) {
599 $path = $this->tree->getPathFull($this->current_folder);
600
601 $loc = new ilLocatorGUI();
602 foreach ($path as $p) {
603 $ilCtrl->setParameter($this->parent_obj, $this->folder_par, $p["child"]);
604 $title = htmlentities($p["title"]);
605 if ($this->tree->getRootId() == $p["child"]) {
606 $title = ilObject::_lookupTitle($this->media_pool->getId());
607 }
608 $loc->addItem(
609 $title,
610 $ilCtrl->getLinkTarget($this->parent_obj, $this->parent_cmd)
611 );
612 }
613 $ilCtrl->setParameter(
614 $this->parent_obj,
615 $this->folder_par,
616 $this->current_folder
617 );
618
619 $mtpl->setCurrentBlock("loc");
620 $mtpl->setVariable("LOC", $loc->getHTML());
621 $mtpl->parseCurrentBlock();
622 }
623
624 $mtpl->setVariable("TABLE", parent::render());
625
626 return $mtpl->get();
627 }
628}
if(!defined('PATH_SEPARATOR')) $GLOBALS['_PEAR_default_error_mode']
Definition: PEAR.php:64
static queryForRecords(int $adv_rec_obj_ref_id, string $adv_rec_obj_type, string $adv_rec_obj_subtype, array $a_obj_id, string $a_subtype, array $a_records, string $a_obj_id_key, string $a_obj_subid_key, array $a_amet_filter=null)
loadLanguageModule(string $a_module)
Load language module.
txt(string $a_topic, string $a_default_lang_fallback_mod="")
gets the text for a given topic if the topic is not in the list, the topic itself with "-" will be re...
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
TableGUI class for recent changes in wiki.
fillRow(array $a_set)
Standard Version of Fill Row.
__construct(object $a_parent_obj, string $a_parent_cmd, ilObjMediaPool $a_media_pool, string $a_folder_par="obj_id", string $a_mode=ilMediaPoolTableGUI::IL_MEP_EDIT, bool $a_all_objects=false, ?ilGlobalTemplateInterface $a_parent_tpl=null)
ILIAS MediaPool Clipboard ClipboardManager $clipboard_manager
ilGlobalTemplateInterface $parent_tpl
prepareOutput()
Anything that must be done before HTML is generated.
ILIAS MediaPool StandardGUIRequest $request
MediaPoolRepository $pool_repo
ilAdvancedMDRecordGUI $adv_filter_record_gui
static _getMediaInfoHTML(ilObjMediaObject $a_mob)
get media info as html
static getPreviewModalHTML(int $a_mpool_ref_id, ilGlobalTemplateInterface $a_tpl)
Get preview modal html.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
static _getPoolTree(int $a_obj_id)
User class.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
static _lookupType(int $id, bool $reference=false)
static _lookupTitle(int $obj_id)
class ilRbacReview Contains Review functions of core Rbac.
This class represents a selection list property in a property form.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
setFilterCommand(string $a_val, string $a_caption="")
getFilterItemByPostVar(string $a_post_var)
setTitle(string $a_title, string $a_icon="", string $a_icon_alt="")
addCommandButton(string $a_cmd, string $a_text, string $a_onclick='', string $a_id="", string $a_class="")
addFilterItem(ilTableFilterItem $a_input_item, bool $a_optional=false)
addMultiCommand(string $a_cmd, string $a_text)
setFormAction(string $a_form_action, bool $a_multipart=false)
resetOffset(bool $a_in_determination=false)
addColumn(string $a_text, string $a_sort_field="", string $a_width="", bool $a_is_checkbox_action_column=false, string $a_class="", string $a_tooltip="", bool $a_tooltip_with_html=false)
setEnableHeader(bool $a_enableheader)
setSelectAllCheckbox(string $a_select_all_checkbox, bool $a_select_all_on_top=false)
setExternalSorting(bool $a_val)
setRowTemplate(string $a_template, string $a_template_dir="")
Set row template.
setId(string $a_val)
setResetCommand(string $a_val, string $a_caption="")
setData(array $a_data)
Set table data.
ilLanguage $lng
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
special template class to simplify handling of ITX/PEAR
This class represents a text property in a property form.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
static getImagePath(string $img, string $module_path="", string $mode="output", bool $offline=false)
get image path (for images located in a template directory)
static deducibleSize(string $a_mime)
checks if mime type is provided by getimagesize()
static img(string $a_src, ?string $a_alt=null, $a_width="", $a_height="", $a_border=0, $a_id="", $a_class="")
Build img tag.
static signFile(string $path_to_file)
$formats
Definition: date.php:77
$txt
Definition: error.php:13
global $DIC
Definition: feed.php:28
$mobs
Definition: imgupload.php:70
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
$path
Definition: ltiservices.php:32
__construct(Container $dic, ilPlugin $plugin)
@inheritDoc