ILIAS  trunk Revision v11.0_alpha-1753-gb21ca8c4367
All Data Structures Namespaces Files Functions Variables Enumerations Enumerator Modules Pages
class.ilSessionObjectListGUIFactory.php
Go to the documentation of this file.
1 <?php
2 
19 declare(strict_types=1);
20 
21 declare(strict_types=1);
22 
31 {
32  private static array $item_list_gui = [];
33 
38  public static function factory(string $a_type): ?ilObjectListGUI
39  {
40  global $DIC;
41 
42  $objDefinition = $DIC['objDefinition'];
43 
44  if (isset(self::$item_list_gui[$a_type])) {
45  return self::$item_list_gui[$a_type];
46  }
47 
48  if (!$a_type) {
49  return null;
50  }
51 
52  try {
53  $item_list_gui = ilObjectListGUIFactory::_getListGUIByType($a_type);
54  } catch (ilObjectException $e) {
55  return null;
56  }
57  if (!$item_list_gui instanceof ilObjectListGUI) {
58  return null;
59  }
60  $item_list_gui->enableTimings(false);
61  $item_list_gui->enableDelete(false);
62  $item_list_gui->enableCut(false);
63  $item_list_gui->enableCopy(false);
64  $item_list_gui->enableSubscribe(true);
65  $item_list_gui->enableIcon(true);
66  $item_list_gui->enableLink(false);
67  $item_list_gui->enablePath(false);
68  $item_list_gui->enableLinkedPath(false);
69  $item_list_gui->enableSearchFragments(false);
70  $item_list_gui->enableCheckbox(false);
71  return self::$item_list_gui[$a_type] = $item_list_gui;
72  }
73 }
static factory(string $a_type)
Get list gui by type This method caches all the returned list guis.
List GUI factory for session materials in session objects
Base exception class for object service.
while($session_entry=$r->fetchRow(ilDBConstants::FETCHMODE_ASSOC)) return null
global $DIC
Definition: shib_login.php:22
static _getListGUIByType(string $type, int $context=ilObjectListGUI::CONTEXT_REPOSITORY)