ILIAS  release_5-3 Revision v5.3.23-19-g915713cf615
class.ilPDSelectedItemsBlockGUI.php
Go to the documentation of this file.
1<?php
2
3/* Copyright (c) 1998-2011 ILIAS open source, Extended GPL, see docs/LICENSE */
4
5include_once("Services/Block/classes/class.ilBlockGUI.php");
6include_once './Services/PersonalDesktop/interfaces/interface.ilDesktopItemHandling.php';
7require_once('./Services/Repository/classes/class.ilObjectPlugin.php');
8
19{
23 protected $rbacsystem;
24
28 protected $settings;
29
33 protected $obj_definition;
34
36 public static $block_type = 'pditems';
37
39 protected $viewSettings;
40
42 protected $view;
43
45 protected $manage = false;
46
48 protected $content = '';
49
51 protected $lng;
52
54 protected $ctrl;
55
57 protected $user;
58
62 public function __construct()
63 {
64 global $DIC;
65 $this->rbacsystem = $DIC->rbac()->system();
66 $this->settings = $DIC->settings();
67 $this->obj_definition = $DIC["objDefinition"];
68 $this->access = $DIC->access();
69
70 parent::__construct();
71
72 $this->lng = $DIC->language();
73 $this->ctrl = $DIC->ctrl();
74 $this->user = $DIC->user();
75
76 $this->lng->loadLanguageModule('pd');
77 $this->lng->loadLanguageModule('cntr'); // #14158
78
79 $this->setEnableNumInfo(false);
80 $this->setLimit(99999);
81 $this->setAvailableDetailLevels(3, 1);
82 $this->allow_moving = false;
83
84 $this->initViewSettings();
85 }
86
90 protected function initViewSettings()
91 {
92 require_once 'Services/PersonalDesktop/ItemsBlock/classes/class.ilPDSelectedItemsBlockViewSettings.php';
93 $this->viewSettings = new ilPDSelectedItemsBlockViewSettings($this->user, (int) $_GET['view']);
94 $this->viewSettings->parse();
95
96 require_once 'Services/PersonalDesktop/ItemsBlock/classes/class.ilPDSelectedItemsBlockViewGUI.php';
97 $this->view = ilPDSelectedItemsBlockViewGUI::bySettings($this->viewSettings);
98
99 $_GET['view'] = $this->viewSettings->getCurrentView();
100 $this->ctrl->saveParameter($this, 'view');
101 }
102
106 public function getViewSettings()
107 {
108 return $this->viewSettings;
109 }
110
114 public function isManagedView()
115 {
116 return $this->manage;
117 }
118
122 public function fillDetailRow()
123 {
124 // $this->ctrl->setParameterByClass('ilpersonaldesktopgui', 'view', $this->viewSettings->getCurrentView());
125 parent::fillDetailRow();
126 // $this->ctrl->setParameterByClass('ilpersonaldesktopgui', 'view', '');
127 }
128
132 public function addToDeskObject()
133 {
134 include_once './Services/PersonalDesktop/classes/class.ilDesktopItemGUI.php';
136 ilUtil::sendSuccess($this->lng->txt("msg_obj_modified"), true);
137 $this->ctrl->setParameterByClass('ilpersonaldesktopgui', 'view', $this->viewSettings->getCurrentView());
138 $this->ctrl->redirectByClass('ilpersonaldesktopgui', 'show');
139 }
140
144 public function removeFromDeskObject()
145 {
146 include_once './Services/PersonalDesktop/classes/class.ilDesktopItemGUI.php';
148 ilUtil::sendSuccess($this->lng->txt("removed_from_desktop"), true);
149 $this->ctrl->setParameterByClass('ilpersonaldesktopgui', 'view', $this->viewSettings->getCurrentView());
150 $this->ctrl->redirectByClass('ilpersonaldesktopgui', 'show');
151 }
152
156 public static function getBlockType()
157 {
158 return self::$block_type;
159 }
160
164 public static function getScreenMode()
165 {
166 $cmd = $_GET['cmd'];
167 if ($cmd == 'post') {
168 $cmd = $_POST['cmd'];
169 $cmd = array_shift(array_keys($cmd));
170 }
171
172 switch ($cmd) {
173 case 'confirmRemove':
174 case 'manage':
175 return IL_SCREEN_FULL;
176
177 default:
178 return IL_SCREEN_SIDE;
179 }
180 }
181
185 public static function isRepositoryObject()
186 {
187 return false;
188 }
189
193 public function getHTML()
194 {
195 global $DIC;
196
197 $DIC->database()->useSlave(true);
198
199 // workaround to show details row
200 $this->setData(array('dummy'));
201
202 require_once 'Services/Object/classes/class.ilObjectListGUI.php';
203 ilObjectListGUI::prepareJSLinks(
204 '',
205 $this->ctrl->getLinkTargetByClass(array('ilcommonactiondispatchergui', 'ilnotegui'), '', '', true, false),
206 $this->ctrl->getLinkTargetByClass(array('ilcommonactiondispatchergui', 'iltagginggui'), '', '', true, false)
207 );
208
209 $DIC['ilHelp']->setDefaultScreenId(ilHelpGUI::ID_PART_SCREEN, $this->view->getScreenId());
210 $this->setTitle($this->view->getTitle());
211 $this->setContent($this->getViewBlockHtml());
212
213 if ($this->getContent() == '') {
214 $this->setEnableDetailRow(false);
215 }
216
217 // $this->ctrl->clearParametersByClass('ilpersonaldesktopgui');
218 $this->ctrl->clearParameters($this);
219
220 $DIC->database()->useSlave(false);
221
222 return parent::getHTML();
223 }
224
225 // Overwritten from ilBlockGUI as there seems to be no other possibility to
226 // not show Commands in the HEADER(!!!!) of a block in the VIEW_MY_STUDYPROGRAMME
227 // case... Sigh.
228 public function getFooterLinks()
229 {
230 if ($this->viewSettings->isStudyProgrammeViewActive()) {
231 return array();
232 }
233
234 return parent::getFooterLinks();
235 }
236
240 public function executeCommand()
241 {
242 $next_class = $this->ctrl->getNextClass();
243 $cmd = $this->ctrl->getCmd('getHTML');
244
245 switch ($next_class) {
246 case 'ilcommonactiondispatchergui':
247 include_once('Services/Object/classes/class.ilCommonActionDispatcherGUI.php');
249 $this->ctrl->forwardCommand($gui);
250 break;
251
252 default:
253 if (method_exists($this, $cmd)) {
254 return $this->$cmd();
255 } else {
256 return $this->{$cmd . 'Object'}();
257 }
258 }
259 }
260
264 protected function getContent()
265 {
266 return $this->content;
267 }
268
272 protected function setContent($a_content)
273 {
274 $this->content = $a_content;
275 }
276
280 public function fillDataSection()
281 {
282 if ($this->getContent() == '') {
283 $this->setDataSection($this->view->getIntroductionHtml());
284 } else {
285 $this->tpl->setVariable('BLOCK_ROW', $this->getContent());
286 }
287 }
288
289
293 public function fillFooter()
294 {
295 $this->setFooterLinks();
296 $this->fillFooterLinks();
297 $this->tpl->setVariable('FCOLSPAN', $this->getColSpan());
298 if ($this->tpl->blockExists('block_footer')) {
299 $this->tpl->setCurrentBlock('block_footer');
300 $this->tpl->parseCurrentBlock();
301 }
302 }
303
307 protected function setFooterLinks()
308 {
309 if ($this->getContent() == '') {
310 $this->setEnableNumInfo(false);
311 return '';
312 }
313
314 if ($this->manage) {
315 return '';
316 }
317
318 $this->addFooterLink(
319 $this->lng->txt("pd_sort_by_type"),
320 $this->ctrl->getLinkTarget($this, "orderPDItemsByType"),
321 $this->ctrl->getLinkTarget($this, "orderPDItemsByType", "", true),
322 "block_" . $this->getBlockType() . "_" . $this->block_id,
323 false,
324 false,
325 $this->viewSettings->isSortedByType()
326 );
327
328 $this->addFooterLink(
329 $this->lng->txt("pd_sort_by_location"),
330 $this->ctrl->getLinkTarget($this, "orderPDItemsByLocation"),
331 $this->ctrl->getLinkTarget($this, "orderPDItemsByLocation", "", true),
332 "block_" . $this->getBlockType() . "_" . $this->block_id,
333 false,
334 false,
335 $this->viewSettings->isSortedByLocation()
336 );
337
338 if ($this->viewSettings->isMembershipsViewActive()) {
339 $this->addFooterLink(
340 $this->lng->txt("pd_sort_by_start_date"),
341 $this->ctrl->getLinkTarget($this, "orderPDItemsByStartDate"),
342 $this->ctrl->getLinkTarget($this, "orderPDItemsByStartDate", "", true),
343 "block_" . $this->getBlockType() . "_" . $this->block_id,
344 false,
345 false,
346 $this->viewSettings->isSortedByStartDate()
347 );
348 }
349
350 $this->addFooterLink(
351 $this->viewSettings->isSelectedItemsViewActive() ?
352 $this->lng->txt("pd_remove_multiple") :
353 $this->lng->txt("pd_unsubscribe_multiple_memberships"),
354 $this->ctrl->getLinkTarget($this, "manage"),
355 null,
356 "block_" . $this->getBlockType() . "_" . $this->block_id
357 );
358 }
359
366 protected function renderGroupedItems(ilTemplate $tpl, array $grouped_items, $show_header = false)
367 {
370
371 if (0 == count($grouped_items)) {
372 return false;
373 }
374
375 $output = false;
376
377 require_once 'Services/Object/classes/class.ilObjectActivation.php';
378 require_once 'Services/PersonalDesktop/ItemsBlock/classes/class.ilPDSelectedItemsBlockListGUIFactory.php';
379 $list_factory = new ilPDSelectedItemsBlockListGUIFactory($this);
380
381 foreach ($grouped_items as $group) {
382 $item_html = array();
383
384 foreach ($group->getItems() as $item) {
385 try {
386 $item_list_gui = $list_factory->byType($item['type']);
388
389 // #15232
390 if ($this->manage) {
391 if ($this->view->mayRemoveItem((int) $item['ref_id'])) {
392 $item_list_gui->enableCheckbox(true);
393 } else {
394 $item_list_gui->enableCheckbox(false);
395 }
396 }
397
398 $html = $item_list_gui->getListItemHTML($item['ref_id'], $item['obj_id'], $item['title'], $item['description']);
399 if ($html != '') {
400 $item_html[] = array(
401 'html' => $html,
402 'item_ref_id' => $item['ref_id'],
403 'item_obj_id' => $item['obj_id'],
404 'parent_ref' => $item['parent_ref'],
405 'type' => $item['type'],
406 'item_icon_image_type' => $item_list_gui->getIconImageType()
407 );
408 }
409 } catch (ilException $e) {
410 continue;
411 }
412 }
413
414 if (0 == count($item_html)) {
415 continue;
416 }
417
418 if ($show_header) {
419 $this->addSectionHeader($tpl, $group);
420 $this->resetRowType() ;
421 }
422
423 foreach ($item_html as $item) {
424 $this->addStandardRow(
425 $tpl,
426 $item['html'],
427 $item['item_ref_id'],
428 $item['item_obj_id'],
429 $item['item_icon_image_type'],
430 'th_' . md5($group->getLabel())
431 );
432 $output = true;
433 }
434 }
435
436 return $output;
437 }
438
442 protected function getViewBlockHtml()
443 {
444 $tpl = $this->newBlockTemplate();
445
446 $this->renderGroupedItems(
447 $tpl,
448 $this->view->getItemGroups(),
449 ($this->getCurrentDetailLevel() >= $this->view->getMinimumDetailLevelForSection())
450 );
451
452 if ($this->manage && $this->view->supportsSelectAll()) {
453 // #11355 - see ContainerContentGUI::renderSelectAllBlock()
454 $tpl->setCurrentBlock('select_all_row');
455 $tpl->setVariable('CHECKBOXNAME', 'ilToolbarSelectAll');
456 $tpl->setVariable('SEL_ALL_PARENT', 'ilToolbar');
457 $tpl->setVariable('SEL_ALL_CB_NAME', 'id');
458 $tpl->setVariable('TXT_SELECT_ALL', $this->lng->txt('select_all'));
459 $tpl->parseCurrentBlock();
460 }
461
462 return $tpl->get();
463 }
464
465 protected function resetRowType()
466 {
467 $this->cur_row_type = "";
468 }
469
476 public function newBlockTemplate()
477 {
478 $tpl = new ilTemplate("tpl.pd_list_block.html", true, true, "Services/PersonalDesktop");
479 $this->cur_row_type = "";
480 return $tpl;
481 }
482
487 protected function addSectionHeader(ilTemplate $a_tpl, ilPDSelectedItemsBlockGroup $group)
488 {
489 if ($group->hasIcon()) {
490 $a_tpl->setCurrentBlock('container_header_row_image');
491 $a_tpl->setVariable('HEADER_IMG', $group->getIconPath());
492 $a_tpl->setVariable('HEADER_ALT', $group->getLabel());
493 } else {
494 $a_tpl->setCurrentBlock('container_header_row');
495 }
496
497 $a_tpl->setVariable('BLOCK_HEADER_CONTENT', $group->getLabel());
498 $a_tpl->setVariable('BLOCK_HEADER_ID', 'th_' . md5($group->getLabel()));
499 $a_tpl->parseCurrentBlock();
500
501 $a_tpl->touchBlock('container_row');
502
503 $this->resetRowType();
504 }
505
513 public function addStandardRow(
514 &$a_tpl,
515 $a_html,
516 $a_item_ref_id = "",
517 $a_item_obj_id = "",
518 $a_image_type = "",
519 $a_related_header = ""
520 ) {
522
523 $this->cur_row_type = ($this->cur_row_type == "row_type_1")
524 ? "row_type_2"
525 : "row_type_1";
526 $a_tpl->touchBlock($this->cur_row_type);
527
528 if ($a_image_type != "") {
529 if (!is_array($a_image_type) && !in_array($a_image_type, array("lm", "htlm", "sahs"))) {
530 $icon = ilUtil::getImagePath("icon_" . $a_image_type . ".svg");
531 $title = $this->lng->txt("obj_" . $a_image_type);
532 } else {
533 $icon = ilUtil::getImagePath("icon_lm.svg");
534 $title = $this->lng->txt("learning_resource");
535 }
536
537 // custom icon
538 if ($ilSetting->get("custom_icons") &&
539 in_array($a_image_type, array("cat","grp","crs"))) {
540 require_once("./Services/Container/classes/class.ilContainer.php");
541 if (($path = ilContainer::_lookupIconPath($a_item_obj_id, "small")) != "") {
542 $icon = $path;
543 }
544 }
545
546 $a_tpl->setCurrentBlock("block_row_image");
547 $a_tpl->setVariable("ROW_IMG", $icon);
548 $a_tpl->setVariable("ROW_ALT", $title);
549 $a_tpl->parseCurrentBlock();
550 } else {
551 $a_tpl->setVariable("ROW_NBSP", "&nbsp;");
552 }
553 $a_tpl->setCurrentBlock("container_standard_row");
554 $a_tpl->setVariable("BLOCK_ROW_CONTENT", $a_html);
555 $rel_headers = ($a_related_header != "")
556 ? "th_selected_items " . $a_related_header
557 : "th_selected_items";
558 $a_tpl->setVariable("BLOCK_ROW_HEADERS", $rel_headers);
559 $a_tpl->parseCurrentBlock();
560 $a_tpl->touchBlock("container_row");
561 }
562
566 protected function changeSortMode($sort_type)
567 {
568 $this->user->writePref('pd_order_items', $sort_type);
569 $this->initViewSettings();
570
571 if ($this->ctrl->isAsynch()) {
572 echo $this->getHTML();
573 exit;
574 }
575
576 $this->ctrl->setParameterByClass('ilpersonaldesktopgui', 'view', $this->viewSettings->getCurrentView());
577 $this->ctrl->redirectByClass('ilpersonaldesktopgui', 'show');
578 }
579
583 public function orderPDItemsByLocation()
584 {
585 $this->changeSortMode($this->viewSettings->getSortByLocationMode());
586 }
587
591 public function orderPDItemsByType()
592 {
593 $this->changeSortMode($this->viewSettings->getSortByTypeMode());
594 }
595
599 public function orderPDItemsByStartDate()
600 {
601 $this->changeSortMode($this->viewSettings->getSortByStartDateMode());
602 }
603
604 public function manageObject()
605 {
608
609 $this->manage = true;
610 $this->setAvailableDetailLevels(1, 1);
611
612 $top_tb = new ilToolbarGUI();
613 $top_tb->setFormAction($ilCtrl->getFormAction($this));
614 $top_tb->setLeadingImage(ilUtil::getImagePath("arrow_upright.svg"), $lng->txt("actions"));
615
616 $button = ilSubmitButton::getInstance();
617 if ($this->viewSettings->isSelectedItemsViewActive()) {
618 $button->setCaption("remove");
619 } else {
620 $button->setCaption("pd_unsubscribe_memberships");
621 }
622 $button->setCommand("confirmRemove");
623 $top_tb->addStickyItem($button);
624
625 $button2 = ilSubmitButton::getInstance();
626 $button2->setCaption("cancel");
627 $button2->setCommand("getHTML");
628 $top_tb->addStickyItem($button2);
629
630 $top_tb->setCloseFormTag(false);
631
632 $bot_tb = new ilToolbarGUI();
633 $bot_tb->setLeadingImage(ilUtil::getImagePath("arrow_downright.svg"), $lng->txt("actions"));
634 $bot_tb->addStickyItem($button);
635 $bot_tb->addStickyItem($button2);
636 $bot_tb->setOpenFormTag(false);
637 return $top_tb->getHTML() . $this->getHTML() . $bot_tb->getHTML();
638 }
639
640 public function confirmRemoveObject()
641 {
643
644 $ilCtrl->setParameter($this, 'view', $this->viewSettings->getCurrentView());
645 if (!sizeof($_POST["id"])) {
646 ilUtil::sendFailure($this->lng->txt("select_one"), true);
647 $ilCtrl->redirect($this, "manage");
648 }
649
650 if ($this->viewSettings->isSelectedItemsViewActive()) {
651 $question = $this->lng->txt("pd_info_delete_sure_remove");
652 $cmd = "confirmedRemove";
653 } else {
654 $question = $this->lng->txt("pd_info_delete_sure_unsubscribe");
655 $cmd = "confirmedUnsubscribe";
656 }
657
658 include_once("./Services/Utilities/classes/class.ilConfirmationGUI.php");
659 $cgui = new ilConfirmationGUI();
660 $cgui->setHeaderText($question);
661
662 $cgui->setFormAction($ilCtrl->getFormAction($this));
663 $cgui->setCancel($this->lng->txt("cancel"), "manage");
664 $cgui->setConfirm($this->lng->txt("confirm"), $cmd);
665
666 foreach ($_POST["id"] as $ref_id) {
667 $obj_id = ilObject::_lookupObjectId($ref_id);
669 $type = ilObject::_lookupType($obj_id);
670
671 $cgui->addItem(
672 "ref_id[]",
673 $ref_id,
674 $title,
675 ilObject::_getIcon($obj_id, "small", $type),
676 $this->lng->txt("icon") . " " . $this->lng->txt("obj_" . $type)
677 );
678 }
679
680 return $cgui->getHTML();
681 }
682
683 public function confirmedRemove()
684 {
687
688 if (!sizeof($_POST["ref_id"])) {
689 $ilCtrl->redirect($this, "manage");
690 }
691
692 foreach ($_POST["ref_id"] as $ref_id) {
693 $type = ilObject::_lookupType($ref_id, true);
694 ilObjUser::_dropDesktopItem($ilUser->getId(), $ref_id, $type);
695 }
696
697 // #12909
698 ilUtil::sendSuccess($this->lng->txt("pd_remove_multi_confirm"), true);
699 $ilCtrl->setParameterByClass('ilpersonaldesktopgui', 'view', $this->viewSettings->getCurrentView());
700 $ilCtrl->redirectByClass("ilpersonaldesktopgui", "show");
701 }
702
703 public function confirmedUnsubscribe()
704 {
706 $ilAccess = $this->access;
708
709 if (!sizeof($_POST["ref_id"])) {
710 $ilCtrl->redirect($this, "manage");
711 }
712
713 foreach ($_POST["ref_id"] as $ref_id) {
714 if ($ilAccess->checkAccess("leave", "", $ref_id)) {
715 switch (ilObject::_lookupType($ref_id, true)) {
716 case "crs":
717 // see ilObjCourseGUI:performUnsubscribeObject()
718 include_once "Modules/Course/classes/class.ilCourseParticipants.php";
719 $members = new ilCourseParticipants(ilObject::_lookupObjId($ref_id));
720 $members->delete($ilUser->getId());
721
722 $members->sendUnsubscribeNotificationToAdmins($ilUser->getId());
723 $members->sendNotification(
724 $members->NOTIFY_UNSUBSCRIBE,
725 $ilUser->getId()
726 );
727 break;
728
729 case "grp":
730 // see ilObjGroupGUI:performUnsubscribeObject()
731 include_once "Modules/Group/classes/class.ilGroupParticipants.php";
732 $members = new ilGroupParticipants(ilObject::_lookupObjId($ref_id));
733 $members->delete($ilUser->getId());
734
735 include_once './Modules/Group/classes/class.ilGroupMembershipMailNotification.php';
736 $members->sendNotification(
738 $ilUser->getId()
739 );
740 $members->sendNotification(
742 $ilUser->getId()
743 );
744 break;
745
746 default:
747 // do nothing
748 continue;
749 }
750
751 include_once './Modules/Forum/classes/class.ilForumNotification.php';
753 }
754 }
755
756
757 ilUtil::sendSuccess($this->lng->txt("settings_saved"), true);
758 $ilCtrl->setParameterByClass('ilpersonaldesktopgui', 'view', $this->viewSettings->getCurrentView());
759 $ilCtrl->redirectByClass("ilpersonaldesktopgui", "show");
760 }
761}
user()
Definition: user.php:4
$_GET["client_id"]
$_POST["username"]
An exception for terminatinating execution or to throw for unit testing.
setVariable($variable, $value='')
Sets a variable value.
Definition: IT.php:613
const IL_SCREEN_SIDE
const IL_SCREEN_FULL
This class represents a block method of a block.
setLimit($a_limit)
Set Limit.
setAvailableDetailLevels($a_max, $a_min=0)
Set Available Detail Levels.
setEnableDetailRow($a_enabledetailrow)
Set EnableDetailRow.
addFooterLink( $a_text, $a_href="", $a_onclick="", $a_block_id="", $a_top=false, $a_omit_separator=false, $a_checked=false)
Add a footer text/link.
setData($a_data)
Set Data.
fillFooterLinks($a_top=false, $a_numinfo="")
Fill footer links.
setDataSection($a_content)
Call this from overwritten fillDataSection(), if standard row based data is not used.
setTitle($a_title)
Set Title.
setEnableNumInfo($a_enablenuminfo)
Set Enable Item Number Info.
getColSpan()
Get Columns Span.
static getInstanceFromAjaxCall()
(Re-)Build instance from ajax call
Confirmation screen class.
static _lookupIconPath($a_id, $a_size="big")
lookup icon path
static addToDesktop()
Add desktop item @access public.
static removeFromDesktop()
Remove item from personal desktop @access public.
Base class for ILIAS Exception handling.
static checkForumsExistsDelete($ref_id, $user_id=0)
const ID_PART_SCREEN
static _dropDesktopItem($a_usr_id, $a_item_id, $a_type)
drop an item from user's personal desktop
static addListGUIActivationProperty(ilObjectListGUI $a_list_gui, array &$a_item)
Get timing details for list gui.
static _lookupObjId($a_id)
static _lookupTitle($a_id)
lookup object title
static _lookupObjectId($a_ref_id)
lookup object id
static _getIcon( $a_obj_id="", $a_size="big", $a_type="", $a_offline=false)
Get icon for repository item.
static _lookupType($a_id, $a_reference=false)
lookup object type
BlockGUI class for Selected Items on Personal Desktop.
addStandardRow(&$a_tpl, $a_html, $a_item_ref_id="", $a_item_obj_id="", $a_image_type="", $a_related_header="")
adds a standard row to a block template
removeFromDeskObject()
Remove from desktop @access public.
addSectionHeader(ilTemplate $a_tpl, ilPDSelectedItemsBlockGroup $group)
orderPDItemsByType()
Sort desktop items by Type.
__construct()
ilPDSelectedItemsBlockGUI constructor.
fillDataSection()
Standard implementation for row based data.Overwrite this and call setContent for other data.
orderPDItemsByLocation()
Sort desktop items by location.
getHTML()
Handle config status.Get HTML.
addToDeskObject()
Add desktop item @access public.
static getScreenMode()
Get Screen Mode for current command.
orderPDItemsByStartDate()
Sort desktop items by start date.
newBlockTemplate()
returns a new list block template
Class ilPDSelectedItemsBlockGroup.
static bySettings(ilPDSelectedItemsBlockViewSettings $viewSettings)
static getInstance()
Factory.
special template class to simplify handling of ITX/PEAR
touchBlock($block)
overwrites ITX::touchBlock.
parseCurrentBlock($part="DEFAULT")
Überladene Funktion, die auf den aktuelle Block vorher noch ein replace ausführt @access public.
setCurrentBlock($part="DEFAULT")
Überladene Funktion, die sich hier lokal noch den aktuellen Block merkt.
static sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
static getImagePath($img, $module_path="", $mode="output", $offline=false)
get image path (for images located in a template directory)
$html
Definition: example_001.php:87
if(!is_dir( $entity_dir)) exit("Fatal Error ([A-Za-z0-9]+)\s+" &#(? foreach( $entity_files as $file) $output
global $ilCtrl
Definition: ilias.php:18
Interface for gui classes (e.g ilLuceneSearchGUI) that offer add/remove to/from desktop.
global $ilSetting
Definition: privfeed.php:17
$type
global $DIC
Definition: saml.php:7
settings()
Definition: settings.php:2
$ilUser
Definition: imgupload.php:18
$a_content
Definition: workflow.php:93