103        $this->tpl = 
$DIC[
"tpl"];
 
  104        $this->ctrl = 
$DIC->ctrl();
 
  105        $this->
user = $DIC->user();
 
  106        $this->lng = 
$DIC->language();
 
  107        $this->access = 
$DIC->access();
 
  108        $this->plugin_admin = 
$DIC[
"ilPluginAdmin"];
 
  109        $this->db = 
$DIC->database();
 
  110        $this->rbacsystem = 
$DIC->rbac()->system();
 
  112        $this->obj_definition = 
$DIC[
"objDefinition"];
 
  115        $this->container_gui = $container_gui_obj;
 
  116        $this->container_obj = $this->container_gui->object;
 
  118        $tpl->addJavaScript(
"./Services/Container/js/Container.js");
 
  123            !$this->container_gui->isActiveAdministrationPanel() &&
 
  124            !$this->container_gui->isActiveOrdering())
 
  125            ? self::VIEW_MODE_TILE
 
  126            : self::VIEW_MODE_LIST;
 
  184        if (
$ilCtrl->getNextClass() == 
"ilcolumngui" &&
 
  190        require_once(
'Services/Tracking/classes/class.ilChangeEvent.php');
 
  207        if (
$ilCtrl->getNextClass() != 
"ilcolumngui" ||
 
  224        $ilCtrl->saveParameterByClass(
"ilcolumngui", 
"col_return");
 
  229        include_once(
"Services/Block/classes/class.ilColumnGUI.php");
 
  238        if (
$ilCtrl->getNextClass() == 
"ilcolumngui" &&
 
  247                include_once(
"./Services/UIComponent/classes/class.ilUIHookProcessor.php");
 
  249                    "Services/Container",
 
  251                    array(
"container_content_gui" => $this)
 
  253                if (!$uip->replaced()) {
 
  272        $ilCtrl->saveParameterByClass(
"ilcolumngui", 
"col_return");
 
  274        $tpl->addOnLoadCode(
"il.Object.setRedrawListItemUrl('" .
 
  275            $ilCtrl->getLinkTarget($this->container_gui, 
"redrawListItem", 
"", 
true) . 
"');");
 
  277        $tpl->addOnLoadCode(
"il.Object.setRatingUrl('" .
 
  279                array(get_class($this->container_gui), 
"ilcommonactiondispatchergui", 
"ilratinggui"),
 
  286        switch (
$ilCtrl->getNextClass()) {
 
  288                $this->container_gui->setSideColumnReturn();
 
  293                $ilDB->useSlave(
true);
 
  295                $ilDB->useSlave(
false);
 
  313        include_once(
'./Services/Container/classes/class.ilContainerSorting.php');
 
  316        include_once 
"Services/Container/classes/class.ilContainerRenderer.php";
 
  320            $this->
getContainerGUI()->isActiveOrdering() && (get_class($this) != 
"ilContainerObjectiveGUI") 
 
  322            $sorting->getBlockPositions(),
 
  323            $this->container_gui,
 
  336        include_once(
"Services/Block/classes/class.ilColumnGUI.php");
 
  372        $this->adminCommands = 
false;
 
  384        if (!$this->adminCommands) {
 
  386                if (
$rbacsystem->checkAccess(
"delete", $a_ref_id)) {
 
  387                    $this->adminCommands = 
true;
 
  390                $this->adminCommands = $a_admin_com_included_in_list;
 
  398    protected function getItemGUI($item_data, $a_show_path = 
false)
 
  400        include_once 
'Services/Object/classes/class.ilObjectListGUIFactory.php';
 
  403        if (!is_object($this->list_gui[$item_data[
"type"]])) {
 
  406            $this->list_gui[$item_data[
"type"]] = &$item_list_gui;
 
  408            $item_list_gui = &$this->list_gui[$item_data[
"type"]];
 
  412        $item_list_gui->setParentRefId($item_data[
"parent"]);
 
  414        $item_list_gui->setDefaultCommandParameters(array());
 
  415        $item_list_gui->disableTitleLink(
false);
 
  416        $item_list_gui->resetConditionTarget();
 
  426        $item_list_gui->enableComments(
true);
 
  427        $item_list_gui->enableNotes(
true);
 
  428        $item_list_gui->enableTags(
true);
 
  429        $item_list_gui->enableRating(
true);
 
  432        $item_list_gui->forceVisibleOnly(
false);
 
  435        $this->
getContainerGUI()->modifyItemGUI($item_list_gui, $item_data, $a_show_path);
 
  437        return $item_list_gui;
 
  448        foreach ($type_grps as 
$type => $v) {
 
  450            if (is_int(strpos($a_container_page_html, 
"[list-" . 
$type . 
"]"))) {
 
  456        while (preg_match(
'~\[(item-group-([0-9]*))\]~i', $a_container_page_html, $found)) {
 
  459            $a_container_page_html = preg_replace(
'~\[' . $found[1] . 
'\]~i', 
$html, $a_container_page_html);
 
  470        $this->embedded_block[$block_type][] = $block_parameter;
 
  478        return $this->embedded_block;
 
  489        if (is_array($this->embedded_block[
"itgr"])) {
 
  490            $item_groups = array();
 
  491            if (is_array($this->items[
"itgr"])) {
 
  492                foreach ($this->items[
"itgr"] as $ig) {
 
  493                    $item_groups[$ig[
"ref_id"]] = $ig;
 
  497            foreach ($this->embedded_block[
"itgr"] as $ref_id) {
 
  498                if (isset($item_groups[$ref_id])) {
 
  505        if (is_array($this->embedded_block[
"type"])) {
 
  506            foreach ($this->embedded_block[
"type"] as $k => 
$type) {
 
  507                if (is_array($this->items[
$type]) &&
 
  508                    $this->renderer->addTypeBlock(
$type)) {
 
  510                    if (
$type == 
'sess') {
 
  511                        $this->items[
'sess'] = 
ilUtil::sortArray($this->items[
'sess'], 
'start', 
'ASC', 
true, 
true);
 
  516                    foreach ($this->items[
$type] as $k => $item_data) {
 
  517                        if (!$this->renderer->hasItem($item_data[
"child"])) {
 
  520                                $this->renderer->addItemToBlock(
$type, $item_data[
"type"], $item_data[
"child"], 
$html);
 
  537    public function renderItem($a_item_data, $a_position = 0, $a_force_icon = 
false, $a_pos_prefix = 
"")
 
  544        if (!$ilAccess->checkAccess(
'visible', 
'', $a_item_data[
'ref_id'], $a_item_data[
'type'], $a_item_data[
'obj_id'], $a_item_data[
'tree'])) {
 
  548        if ($this->
getViewMode() == self::VIEW_MODE_TILE) {
 
  549            return $this->
renderCard($a_item_data, $a_position, $a_force_icon, $a_pos_prefix);
 
  552        $item_list_gui = $this->
getItemGUI($a_item_data);
 
  553        if (
$ilSetting->get(
"icon_position_in_lists") == 
"item_rows" ||
 
  554            $a_item_data[
"type"] == 
"sess" || $a_force_icon) {
 
  555            $item_list_gui->enableIcon(
true);
 
  559            $item_list_gui->enableCheckbox(
true);
 
  562            $item_list_gui->enableDownloadCheckbox($a_item_data[
"ref_id"], 
true);
 
  565        if ($this->
getContainerGUI()->isActiveItemOrdering() && ($a_item_data[
'type'] != 
'sess' || get_class($this) != 
'ilContainerSessionsContentGUI')) {
 
  566            $item_list_gui->setPositionInputField(
 
  567                $a_pos_prefix . 
"[" . $a_item_data[
"ref_id"] . 
"]",
 
  568                sprintf(
'%d', (
int) $a_position * 10)
 
  572        if ($a_item_data[
'type'] == 
'sess' and get_class($this) != 
'ilContainerObjectiveGUI') {
 
  576                    $item_list_gui->enableExpand(
true);
 
  577                    $item_list_gui->setExpanded(
false);
 
  578                    $item_list_gui->enableDescription(
false);
 
  579                    $item_list_gui->enableProperties(
true);
 
  584                    $item_list_gui->enableExpand(
true);
 
  585                    $item_list_gui->setExpanded(
true);
 
  586                    $item_list_gui->enableDescription(
true);
 
  587                    $item_list_gui->enableProperties(
true);
 
  592                    $item_list_gui->enableExpand(
true);
 
  593                    $item_list_gui->enableDescription(
true);
 
  594                    $item_list_gui->enableProperties(
true);
 
  599        if (method_exists($this, 
"addItemDetails")) {
 
  600            $this->addItemDetails($item_list_gui, $a_item_data);
 
  604        if ($a_item_data[
'type'] == 
'sess' and (
 
  605                                            $this->
getDetailsLevel($a_item_data[
'obj_id']) != self::DETAILS_TITLE or
 
  612            include_once(
'./Services/Container/classes/class.ilContainerSorting.php');
 
  613            include_once(
'./Services/Object/classes/class.ilObjectActivation.php');
 
  618            $item_readable = $ilAccess->checkAccess(
'read', 
'', $a_item_data[
'ref_id']);
 
  620            foreach ($items as $item) {
 
  623                if (!$ilAccess->checkAccess(
'visible', 
'', $item[
'ref_id'])) {
 
  628                $item_list_gui2->enableIcon(
true);
 
  629                $item_list_gui2->enableItemDetailLinks(
false);
 
  632                $item_list_gui2->setParentRefId($a_item_data[
'ref_id']);
 
  635                if (!$item_readable and !$ilAccess->checkAccess(
'write', 
'', $item[
'ref_id'])) {
 
  636                    $item_list_gui2->forceVisibleOnly(
true);
 
  640                    $item_list_gui2->enableCheckbox(
true);
 
  643                    $item_list_gui2->enableDownloadCheckbox($item[
'ref_id'], 
true);
 
  647                    $item_list_gui2->setPositionInputField(
 
  648                        "[sess][" . $a_item_data[
'obj_id'] . 
"][" . $item[
"ref_id"] . 
"]",
 
  649                        sprintf(
'%d', (
int) $pos * 10)
 
  657                $sub_item_html = $item_list_gui2->getListItemHTML(
 
  665                if (strlen($sub_item_html)) {
 
  666                    $item_list_gui->addSubItemHTML($sub_item_html);
 
  674            $ilCtrl->setParameter($this->container_gui, 
"cmdrefid", $a_item_data[
'ref_id']);
 
  675            $asynch_url = 
$ilCtrl->getLinkTarget(
 
  676                $this->container_gui,
 
  682            $ilCtrl->setParameter($this->container_gui, 
"cmdrefid", 
"");
 
  686            if ($a_item_data[
'type'] == 
'fold' && $fold_set->get(
"bgtask_download") && $fold_set->get(
"enable_download_folder")) {
 
  687                include_once 
"Services/BackgroundTask/classes/class.ilFolderDownloadBackgroundTaskHandler.php";
 
  692        include_once 
"Services/Object/classes/class.ilObjectActivation.php";
 
  695        $html = $item_list_gui->getListItemHTML(
 
  696            $a_item_data[
'ref_id'],
 
  697            $a_item_data[
'obj_id'],
 
  698            $a_item_data[
'title'],
 
  699            $a_item_data[
'description'],
 
  705            $a_item_data[
"ref_id"],
 
  706            $item_list_gui->adminCommandsIncluded()
 
  721    public function renderCard($a_item_data, $a_position = 0, $a_force_icon = 
false, $a_pos_prefix = 
"")
 
  724        $f = 
$DIC->ui()->factory();
 
  725        $r = 
$DIC->ui()->renderer();
 
  729        $item_list_gui = $this->
getItemGUI($a_item_data);
 
  732            $a_item_data[
'ref_id'],
 
  733            $a_item_data[
'type'],
 
  734            $a_item_data[
'obj_id']
 
  736        $item_list_gui->initItem(
 
  737            $a_item_data[
'ref_id'],
 
  738            $a_item_data[
'obj_id'],
 
  739            $a_item_data[
'title'],
 
  740            $a_item_data[
'description']
 
  744        $item_list_gui->insertCommands();
 
  746        foreach ($item_list_gui->current_selection_list->getItems() as $item) {
 
  747            if (!isset($item[
"onclick"]) || $item[
"onclick"] == 
"") {
 
  749                    $f->button()->shy($item[
"title"], $item[
"link"]);
 
  752                    $f->button()->shy($item[
"title"], 
"")->withAdditionalOnLoadCode(
function (
$id) use ($item) {
 
  754                            "$('#$id').click(function(e) { " . $item[
"onclick"] . 
"});";
 
  757            $actions[] = $button;
 
  761        $def_command = $item_list_gui->getDefaultCommand();
 
  762        $dropdown = 
$f->dropdown()->standard($actions);
 
  764        $img = 
$DIC->object()->commonSettings()->tileImage()->getByObjId($a_item_data[
'obj_id']);
 
  766        if (
$img->exists()) {
 
  770            if (!is_file(
$path)) {
 
  776        $title = $a_item_data[
"title"];
 
  780            $item_list_gui->modifySAHSlaunch($def_command[
"link"], $def_command[
"frame"]);
 
  785        if ($def_command[
"frame"] == 
"_top") {
 
  786            $def_command[
"frame"] = 
"";
 
  789        $image = 
$f->image()->responsive(
$path, 
"");
 
  790        if ($def_command[
"link"] != 
"") {       
 
  791            if ($def_command[
"frame"] != 
"" && ($modified_link == $def_command[
"link"])) {
 
  792                $image = $image->withAdditionalOnLoadCode(
function (
$id) use ($def_command) {
 
  794                        "$('#$id').click(function(e) { window.open('" . str_replace(
"&", 
"&", $def_command[
"link"]) . 
"', '" . $def_command[
"frame"] . 
"');});";
 
  798                    $f->button()->shy(
$title, 
"")->withAdditionalOnLoadCode(
function (
$id) use ($def_command) {
 
  800                            "$('#$id').click(function(e) { window.open('" . str_replace(
"&", 
"&", $def_command[
"link"]) . 
"', '" . $def_command[
"frame"] . 
"');});";
 
  804                $image = $image->withAction($modified_link);
 
  809        if ($a_item_data[
"description"] != 
"") {
 
  810            $sections[] = 
$f->legacy(
"<div class='il_info il-multi-line-cap-3'>" . $a_item_data[
"description"] . 
"</div>");
 
  813        if ($a_item_data[
"type"] == 
"sess") {
 
  822        $icon = 
$f->icon()->standard($a_item_data[
"type"], $this->lng->txt(
"obj_" . $a_item_data[
"type"]))
 
  823            ->withIsOutlined(
true);
 
  826        $card_title_action = 
"";
 
  827        if ($def_command[
"link"] != 
"" && ($def_command[
"frame"] == 
"" || $modified_link != $def_command[
"link"])) {    
 
  828            $card_title_action = $modified_link;
 
  829        } 
else if ($def_command[
'link'] == 
"" &&
 
  830            $item_list_gui->getInfoScreenStatus() &&
 
  835                $a_item_data[
"ref_id"]
 
  838            if ($image->getAction() == 
"") {
 
  839                $image = $image->withAction($card_title_action);
 
  844        $card = 
$f->card()->repositoryObject(
 
  845            $title . 
"<span data-list-item-id='" . $item_list_gui->getUniqueItemId(
true) . 
"'></span>",
 
  853        if ($card_title_action != 
"") {
 
  854            $card = $card->withTitleAction($card_title_action);
 
  859        foreach ($item_list_gui->determineProperties() as $p) {
 
  860            if ($p[
"alert"] && $p[
"property"] != $this->lng->txt(
"learning_progress")) {
 
  861                $l[(string) $p[
"property"]] = (
string) $p[
"value"];
 
  866            $prop_list = 
$f->listing()->descriptive(
$l);
 
  867            $sections[] = $prop_list;
 
  869        if (count($sections) > 0) {
 
  870            $card = $card->withSections($sections);
 
  873        include_once 
"Services/Tracking/classes/class.ilLPStatus.php";
 
  881            $progressmeter = 
$f->chart()->progressMeter()->mini(100, $percentage);
 
  882            $card = $card->withProgress($progressmeter);
 
  899            if (is_int(strpos($a_output_html, 
"[list-" . 
$type . 
"]"))) {
 
  900                $a_output_html = preg_replace(
 
  901                    '~\[list-' . 
$type . 
'\]~i',
 
  902                    $this->renderer->renderSingleTypeBlock(
$type),
 
  909        while (preg_match(
'~\[(item-group-([0-9]*))\]~i', $a_output_html, $found)) {
 
  910            $itgr_ref_id = (int) $found[2];
 
  912            $a_output_html = preg_replace(
 
  913                '~\[' . $found[1] . 
'\]~i',
 
  914                $this->renderer->renderSingleCustomBlock($itgr_ref_id),
 
  919        return $a_output_html;
 
  937        $ref_ids = array_map(
function (
$i) {
 
  938            $parts = explode(
"_", 
$i);
 
  943        if (is_array($this->items[
$type]) &&
 
  944            $this->renderer->addTypeBlock(
$type)) {
 
  948            foreach ($this->items[
$type] as $item_data) {
 
  949                $item_ref_id = $item_data[
"child"];
 
  951                if (in_array($item_ref_id, $ref_ids)) {
 
  955                if ($this->block_limit > 0 && $position == $this->block_limit + 1) {
 
  956                    if ($position == $this->block_limit + 1) {
 
  958                        $this->renderer->addShowMoreButton(
$type);
 
  963                if (!$this->renderer->hasItem($item_ref_id)) {
 
  966                        $this->renderer->addItemToBlock(
$type, $item_data[
"type"], $item_ref_id, 
$html);
 
  972        return $this->renderer->renderSingleTypeBlock(
$type);
 
  984        if (empty($this->type_grps)) {
 
  986                $objDefinition->getGroupedRepositoryObjectTypes($this->
getContainerObject()->getType());
 
  988        return $this->type_grps;
 
 1000        $lng->loadLanguageModule(
"rep");
 
 1002        $tpl = 
new ilTemplate(
"tpl.rep_intro.html", 
true, 
true, 
"Services/Repository");
 
 1003        $tpl->setVariable(
"IMG_REP_LARGE", ilObject::_getIcon(
"", 
"big", 
"root"));
 
 1004        $tpl->setVariable(
"TXT_WELCOME", 
$lng->txt(
"rep_intro"));
 
 1005        $tpl->setVariable(
"TXT_INTRO_1", 
$lng->txt(
"rep_intro1"));
 
 1006        $tpl->setVariable(
"TXT_INTRO_2", 
$lng->txt(
"rep_intro2"));
 
 1007        $tpl->setVariable(
"TXT_INTRO_3", sprintf(
$lng->txt(
"rep_intro3"), 
$lng->txt(
"add")));
 
 1008        $tpl->setVariable(
"TXT_INTRO_4", sprintf(
$lng->txt(
"rep_intro4"), 
$lng->txt(
"cat_add")));
 
 1009        $tpl->setVariable(
"TXT_INTRO_5", 
$lng->txt(
"rep_intro5"));
 
 1010        $tpl->setVariable(
"TXT_INTRO_6", 
$lng->txt(
"rep_intro6"));
 
 1023        if (is_array($this->items[
"itgr"])) {
 
 1024            foreach ($this->items[
"itgr"] as $itgr) {
 
 1025                if (!$this->renderer->hasCustomBlock($itgr[
"child"])) {
 
 1028                    $this->renderer->setBlockPosition($itgr[
"ref_id"], ++$a_pos);
 
 1047        $perm_ok = ($ilAccess->checkAccess(
"visible", 
"", $a_itgr[
'ref_id']) &&
 
 1048             $ilAccess->checkAccess(
"read", 
"", $a_itgr[
'ref_id']));
 
 1050        include_once(
'./Services/Container/classes/class.ilContainerSorting.php');
 
 1051        include_once(
'./Services/Object/classes/class.ilObjectActivation.php');
 
 1057            foreach ($items as $item) {
 
 1058                $this->renderer->hideItem($item[
"child"]);
 
 1064        $item_list_gui->enableNotes(
false);
 
 1065        $item_list_gui->enableTags(
false);
 
 1066        $item_list_gui->enableComments(
false);
 
 1067        $item_list_gui->enableTimings(
false);
 
 1068        $item_list_gui->getListItemHTML(
 
 1072            $a_itgr[
"description"]
 
 1074        $commands_html = $item_list_gui->getCommandsHTML();
 
 1077        include_once(
"./Modules/ItemGroup/classes/class.ilObjItemGroup.php");
 
 1078        include_once(
"./Modules/ItemGroup/classes/class.ilItemGroupBehaviour.php");
 
 1080        include_once(
"./Services/Container/classes/class.ilContainerBlockPropertiesStorage.php");
 
 1083            $beh = ($stored_val == 
"1")
 
 1089            "behaviour" => $beh,
 
 1090            "store-url" => 
"./ilias.php?baseClass=ilcontainerblockpropertiesstorage&cmd=store" .
 
 1091                "&cont_block_id=itgr_" . $a_itgr[
'ref_id']
 
 1095            $this->renderer->addCustomBlock($a_itgr[
"ref_id"], 
"", $commands_html, 
$data);
 
 1097            $this->renderer->addCustomBlock($a_itgr[
"ref_id"], $a_itgr[
"title"], $commands_html, 
$data);
 
 1105        )->sortSubItems(
'itgr', $a_itgr[
'obj_id'], $items);
 
 1111        foreach ($items as $item) {
 
 1113            $html2 = $this->
renderItem($item, $position++, 
false, 
"[itgr][" . $a_itgr[
'obj_id'] . 
"]");
 
 1116                $this->renderer->addItemToBlock($a_itgr[
"ref_id"], $item[
"type"], $item[
"child"], 
$html2, 
true);
 
An exception for terminatinating execution or to throw for unit testing.
static _recordReadEvent( $a_type, $a_ref_id, $obj_id, $usr_id, $isCatchupWriteEvents=true, $a_ext_rc=false, $a_ext_time=false)
Records a read event and catches up with write events.
Column user interface class.
static getScreenMode()
Get Screen Mode for current command.
static getCmdSide()
Get Column Side of Current Command.
static buildAjaxHash( $a_node_type, $a_node_id, $a_obj_type, $a_obj_id, $a_sub_type=null, $a_sub_id=null, $a_news_id=0)
Build ajax hash.
static getProperty($a_block_id, $a_user_id, $a_property)
Get property in session or db.
Parent class of all container content GUIs.
initRenderer()
Init container renderer.
getEmbeddedBlocks()
Get page embedded blocks.
getContainerObject()
Get container object.
getSingleTypeBlockAsynch($type)
Render single block.
getContainerGUI()
Get container GUI object.
getCenterColumnHTML()
Get HTML for center column.
renderItem($a_item_data, $a_position=0, $a_force_icon=false, $a_pos_prefix="")
Render an item.
setOutput()
Sets view output into column layout.
__forwardToColumnGUI()
Get columngui output.
getRightColumnHTML()
Get HTML for right column.
getGroupedObjTypes()
Get grouped repository object types.
addEmbeddedBlock($block_type, $block_parameter)
Add embedded block.
insertPageEmbeddedBlocks($a_output_html)
Insert blocks into container page.
getViewMode()
Get view mode.
getMainContent()
Get content HTML for main column, this one must be overwritten in derived classes.
getDetailsLevel($a_item_id)
get details level
getItemGroupsHTML($a_pos=0)
Get item groups HTML.
renderPageEmbeddedBlocks()
Render Page Embedded Blocks.
renderItemGroup($a_itgr)
Render item group.
getItemGUI($item_data, $a_show_path=false)
Get ListGUI object for item.
__construct(&$container_gui_obj)
Constructor.
getIntroduction()
Get introduction.
renderCard($a_item_data, $a_position=0, $a_force_icon=false, $a_pos_prefix="")
Render card.
determineAdminCommands($a_ref_id, $a_admin_com_included_in_list=false)
determin admin commands
determinePageEmbeddedBlocks($a_container_page_html)
Determine all blocks that are embedded in the container page.
clearAdminCommandsDetermination()
cleaer administration commands determination
const DETAILS_DEACTIVATED
Class ilContainerRenderer.
static _getInstance($a_obj_id)
get instance by obj_id
static _lookupContainerSetting($a_id, $a_keyword, $a_default_value=null)
Lookup a container setting.
static getCompleteDescriptions(array $objects)
overwrites description fields to long or short description in an assoc array keys needed (obj_id and ...
static initObjectListAction()
init js for background download
const LP_STATUS_COMPLETED_NUM
static _lookupPercentage($a_obj_id, $a_user_id)
Lookup percentage.
static getListGUIStatus($a_obj_id, $a_image_only=true)
static _getLink($a_ref_id, $a_type='', $a_params=array(), $append="")
static getLogger($a_component_id)
Get component logger.
static lookupBehaviour($a_id)
Lookup behaviour.
static lookupHideTitle($a_id)
Lookup hide title.
static addListGUIActivationProperty(ilObjectListGUI $a_list_gui, array &$a_item)
Get timing details for list gui.
static getItemsByEvent($a_event_id)
Get session material / event items.
static getItemsByItemGroup($a_item_group_ref_id)
Get materials of item group.
static _getListGUIByType($a_type, $a_context=ilObjectListGUI::CONTEXT_REPOSITORY)
static _lookupObjId($a_id)
static _lookupType($a_id, $a_reference=false)
lookup object type
static _lookupAppointment($a_obj_id)
lookup appointment
static _appointmentToString($start, $end, $fulltime)
special template class to simplify handling of ITX/PEAR
UI interface hook processor.
static sortArray( $array, $a_array_sortby, $a_array_sortorder=0, $a_numeric=false, $a_keep_keys=false)
sortArray
static getImagePath($img, $module_path="", $mode="output", $offline=false)
get image path (for images located in a template directory)
if(!array_key_exists('StateId', $_REQUEST)) $id