4define (
"IL_LIST_AS_TRIGGER", 
"trigger");
 
    5define (
"IL_LIST_FULL", 
"full");
 
  135                $this->rbacsystem = $rbacsystem;
 
  136                $this->
ilias = $ilias;
 
  140                $this->path_enabled = 
false;
 
  152                include_once(
'Services/LDAP/classes/class.ilLDAPRoleGroupMapping.php');
 
  155                $lng->loadLanguageModule(
"obj");
 
  167                $this->container_obj = $container_obj;
 
  179                return $this->container_obj;
 
  191                $this->static_link_enabled = 
true;
 
  192                $this->delete_enabled = 
true;
 
  193                $this->cut_enabled = 
true;
 
  194                $this->subscribe_enabled = 
true;
 
  195                $this->link_enabled = 
false;
 
  196                $this->copy_enabled = 
false;
 
  197                $this->payment_enabled = 
false;
 
  198                $this->progress_enabled = 
false;
 
  199                $this->notice_properties_enabled = 
true;
 
  200                $this->info_screen_enabled = 
false;
 
  202                $this->gui_class_name = 
"";                     
 
  205                include_once(
'./Services/Object/classes/class.ilObjectAccess.php');
 
  218                $this->properties_enabled = $a_status;
 
  240                $this->preconditions_enabled = $a_status;
 
  258                $this->notice_properties_enabled = $a_status;
 
  280                $this->description_enabled = $a_status;
 
  314                $this->search_fragment_enabled = $a_status;
 
  326                $this->path_linked = $a_status;
 
  344                $this->enabled_relevance = $a_status;    
 
  354                $this->relevance = $a_rel; 
 
  374                $this->icons_enabled = $a_status;
 
  394                $this->checkboxes_enabled = $a_status;
 
  414                $this->expand_enabled = $a_status;
 
  429                $this->is_expanded = $a_status;
 
  444                $this->position_enabled = 
true;
 
  445                $this->position_field_index = $a_field_index;
 
  446                $this->position_value = $a_position_value;
 
  457                $this->delete_enabled = $a_status;
 
  469                return $this->delete_enabled;
 
  480                $this->cut_enabled = $a_status;
 
  491                return $this->cut_enabled;
 
  502                $this->copy_enabled = $a_status;
 
  524                $this->subscribe_enabled = $a_status;
 
  535                return $this->subscribe_enabled;
 
  545                $this->payment_enabled = $a_status;
 
  556                return $this->payment_enabled;
 
  566                $this->link_enabled = $a_status;
 
  577                return $this->link_enabled;
 
  589                $this->path_enabled = $a_path;
 
  590                $this->path_start_node = (int)$a_start_node;
 
  600                return $this->path_enabled;
 
  611                $this->commands_enabled = $a_status;
 
  612                $this->std_cmd_only = $a_std_only;
 
  632                $this->info_screen_enabled = $a_info_screen;
 
  642                $this->sub_item_html[] = $a_html;
 
  664                $this->progress_enabled = $a_status;
 
  688                $this->substitutions_enabled = $a_status;
 
  712                $this->item_detail_links_enabled = $a_status;
 
  735                $this->item_detail_links = $a_detail_links;
 
  736                $this->item_detail_links_intro = $a_intro_txt;
 
  748                if(!count($this->item_detail_links))
 
  752                if(strlen($this->item_detail_links_intro))
 
  754                        $this->tpl->setCurrentBlock(
'item_detail_intro');
 
  755                        $this->tpl->setVariable(
'ITEM_DETAIL_INTRO_TXT',$this->item_detail_links_intro);
 
  756                        $this->tpl->parseCurrentBlock();                        
 
  759                foreach($this->item_detail_links as 
$info)
 
  761                        $this->tpl->setCurrentBlock(
'item_detail_link');
 
  762                        $this->tpl->setVariable(
'ITEM_DETAIL_LINK_TARGET',
$info[
'target']);
 
  763                        $this->tpl->setVariable(
'ITEM_DETAIL_LINK_DESC',
$info[
'desc']);
 
  764                        $this->tpl->setVariable(
'ITEM_DETAIL_LINK_HREF',
$info[
'link']);
 
  765                        $this->tpl->setVariable(
'ITEM_DETAIL_LINK_NAME',
$info[
'name']);
 
  766                        $this->tpl->parseCurrentBlock();                        
 
  768                $this->tpl->setCurrentBlock(
'item_detail_links');
 
  769                $this->tpl->parseCurrentBlock();
 
  780                $this->title = $a_title;
 
  799                $this->description = $a_description;
 
  809                return $this->description;
 
  819                $this->search_fragment = $a_text; 
 
  838                $this->separate_commands = $a_val;
 
  871                $this->additional_information = $a_val;
 
  893                $this->details_level = $a_level;
 
  912                $this->repository_transfer_enabled = (bool)$a_value;
 
  922                $this->restrict_to_goto = (bool)$a_value;
 
  940                $cache_prefix = 
null;
 
  941                if($this->context == self::CONTEXT_WORKSPACE || $this->context == self::CONTEXT_WORKSPACE_SHARING)
 
  943                        $cache_prefix = 
"wsp";
 
  944                        if(!$this->ws_access)
 
  946                                include_once 
"Services/PersonalWorkspace/classes/class.ilWorkspaceAccessHandler.php";
 
  951                if (isset($this->access_cache[$a_permission][
"-".$a_cmd][$cache_prefix.$a_ref_id]))
 
  953                        return $this->access_cache[$a_permission][
"-".$a_cmd][$cache_prefix.$a_ref_id];
 
  956                if($this->context == self::CONTEXT_REPOSITORY || $this->context == self::CONTEXT_SHOP)
 
  958                        $access = $ilAccess->checkAccess($a_permission,$a_cmd,$a_ref_id,$a_type,$a_obj_id);
 
  959                        if ($ilAccess->getPreventCachingLastResult())
 
  961                                $this->prevent_access_caching = 
true;
 
  966                        $access = $this->ws_access->checkAccess($a_permission,$a_cmd,$a_ref_id,$a_type);
 
  969                $this->access_cache[$a_permission][
"-".$a_cmd][$cache_prefix.$a_ref_id] = $access;
 
  982        function initItem($a_ref_id, $a_obj_id, $a_title = 
"", $a_description = 
"", $a_context = self::CONTEXT_REPOSITORY)
 
  984                $this->offline_mode = 
false;
 
  985                include_once(
'Modules/ScormAicc/classes/class.ilObjSAHSLearningModuleAccess.php');
 
  986                if ($this->type == 
"sahs") {
 
  989                $this->access_cache = array();
 
  990                $this->ref_id = $a_ref_id;
 
  991                $this->obj_id = $a_obj_id;
 
  992                $this->context = $a_context;
 
  995                #$this->description = $a_description; 
  998                $this->adm_commands_included = 
false;
 
  999                $this->prevent_access_caching = 
false;
 
 1005                $this->condition_target = array(
 
 1006                        'ref_id' => $a_ref_id,
 
 1007                        'obj_id' => $a_obj_id,
 
 1008                        'target_type' => $a_target_type
 
 1014                $this->condition_target = array();
 
 1019                $this->title_link_disabled = $a_status;
 
 1025                $this->default_command_params = $a_params;
 
 1040                if($this->static_link_enabled and !$this->default_command_params)
 
 1042                        include_once(
'./Services/Link/classes/class.ilLink.php');
 
 1045                                $command[
'link'] = $link;
 
 1046                                $command[
'frame'] = 
'_top';
 
 1049                if($this->default_command_params)
 
 1052                        foreach($this->default_command_params as $name => $value)
 
 1059                        if(!stristr($command[
'link'], 
'?'))
 
 1061                                $command[
'link'] .= 
'?'.$params;
 
 1065                                $command[
'link'] .= 
'&'.$params;
 
 1085                if($this->context == self::CONTEXT_REPOSITORY || $this->context == self::CONTEXT_SHOP)
 
 1088                        require_once (
'Services/WebDAV/classes/class.ilDAVActivationChecker.php');
 
 1091                                require_once (
'Services/WebDAV/classes/class.ilDAVServer.php');
 
 1098                                return $davServer->getMountURI($this->ref_id).
 
 1099                                                        '" folder="'.$davServer->getFolderURI($this->ref_id);
 
 1103                        $this->ctrl->setParameterByClass(
"ilrepositorygui", 
"ref_id", $this->
getCommandId());
 
 1104                        $cmd_link = $this->ctrl->getLinkTargetByClass(
"ilrepositorygui", $a_cmd);
 
 1105                        $this->ctrl->setParameterByClass(
"ilrepositorygui", 
"ref_id", 
$_GET[
"ref_id"]);
 
 1116                        $this->ctrl->setParameterByClass($this->gui_class_name, 
"ref_id", 
"");
 
 1117                        $this->ctrl->setParameterByClass($this->gui_class_name, 
"wsp_id", $this->ref_id);
 
 1118                        return $this->ctrl->getLinkTargetByClass($this->gui_class_name, $a_cmd);
 
 1135                require_once (
'Services/WebDAV/classes/class.ilDAVActivationChecker.php');
 
 1141                if($a_cmd == 
'fileManagerLaunch')
 
 1176                global $objDefinition;
 
 1186                if($this->context == self::CONTEXT_REPOSITORY)
 
 1189                        require_once (
'Services/WebDAV/classes/class.ilDAVActivationChecker.php');
 
 1192                                require_once (
'Services/WebDAV/classes/class.ilDAVServer.php');
 
 1193                                global $ilias, 
$lng;
 
 1196                                require_once(
'Services/WebDAV/classes/class.ilDAVLocks.php');
 
 1198                                if ($ilias->account->getId() != ANONYMOUS_USER_ID)
 
 1200                                        $locks =& $davLocks->getLocksOnObjectObj($this->obj_id);
 
 1201                                        if (count($locks) > 0)
 
 1203                                                $lockUser = 
new ilObjUser($locks[0][
'ilias_owner']);
 
 1207                                                        "property" => 
$lng->txt(
"in_use_by"),
 
 1208                                                        "value" => $lockUser->getLogin(),
 
 1209                                                        "link" =>       
"./ilias.php?user=".$locks[0][
'ilias_owner'].
'&cmd=showUserProfile&cmdClass=ilpersonaldesktopgui&cmdNode=1&baseClass=ilPersonalDesktopGUI',
 
 1221                                if (preg_match(
'/^(\\.|\\.\\.)$/', $this->title))
 
 1223                                        $props[] = array(
"alert" => 
false, 
"property" => 
$lng->txt(
"filename_interoperability"),
 
 1224                                                "value" => 
$lng->txt(
"filename_special_filename"),
 
 1225                                                'propertyNameVisible' => 
false);
 
 1227                                else if (preg_match(
'/^\\./', $this->title))
 
 1229                                        $props[] = array(
"alert" => 
false, 
"property" => 
$lng->txt(
"filename_visibility"),
 
 1230                                                "value" => 
$lng->txt(
"filename_hidden_unix_file"),
 
 1231                                                'propertyNameVisible' => 
false);
 
 1233                                else if (preg_match(
'/~$/', $this->title))
 
 1235                                        $props[] = array(
"alert" => 
false, 
"property" => 
$lng->txt(
"filename_visibility"),
 
 1236                                                "value" => 
$lng->txt(
"filename_hidden_backup_file"),
 
 1237                                                'propertyNameVisible' => 
false);
 
 1239                                else if (preg_match(
'/[\\/]/', $this->title))
 
 1241                                        $props[] = array(
"alert" => 
false, 
"property" => 
$lng->txt(
"filename_interoperability"),
 
 1242                                                "value" => 
$lng->txt(
"filename_special_characters"),
 
 1243                                                'propertyNameVisible' => 
false);
 
 1245                                else if (preg_match(
'/[\\\\\\/:*?"<>|]/', $this->title))
 
 1247                                        $props[] = array(
"alert" => 
false, 
"property" => 
$lng->txt(
"filename_interoperability"),
 
 1248                                                "value" => 
$lng->txt(
"filename_windows_special_characters"),
 
 1249                                                'propertyNameVisible' => 
false);
 
 1251                                else if (preg_match(
'/\\.$/', $this->title))
 
 1253                                        $props[] = array(
"alert" => 
false, 
"property" => 
$lng->txt(
"filename_interoperability"),
 
 1254                                                "value" => 
$lng->txt(
"filename_windows_empty_extension"),
 
 1255                                                'propertyNameVisible' => 
false);
 
 1257                                else if (preg_match(
'/^(\\.|\\.\\.)$/', $this->title))
 
 1259                                        $props[] = array(
"alert" => 
false, 
"property" => 
$lng->txt(
"filename_interoperability"),
 
 1260                                                "value" => 
$lng->txt(
"filename_special_filename"),
 
 1261                                                'propertyNameVisible' => 
false);
 
 1263                                else if (preg_match(
'/#/', $this->title))
 
 1265                                        $props[] = array(
"alert" => 
false, 
"property" => 
$lng->txt(
"filename_interoperability"),
 
 1266                                                "value" => 
$lng->txt(
"filename_windows_webdav_issue"),
 
 1267                                                'propertyNameVisible' => 
false);
 
 1273                        require_once(
'Services/Tracking/classes/class.ilChangeEvent.php');
 
 1277                                if ($ilias->account->getId() != ANONYMOUS_USER_ID)
 
 1283                                        $isContainer = in_array($this->type, array(
'cat', 
'fold', 
'crs', 
'grp'));
 
 1291                                                                "value" => 
$lng->txt(
'state_changed_inside'),
 
 1292                                                                'propertyNameVisible' => 
false);
 
 1300                                        elseif($this->type == 
"file")
 
 1307                                                                "value" => 
$lng->txt(($state == 1) ? 
'state_unread' : 
'state_changed'),
 
 1308                                                                'propertyNameVisible' => 
false);
 
 1323                $a_alert = 
false, $a_newline = 
false)
 
 1325                $this->cust_prop[] = array(
"property" => $a_property, 
"value" => $a_value,
 
 1326                        "alert" => $a_alert, 
"newline" => $a_newline);
 
 1334                if (is_array($this->cust_prop))
 
 1336                        foreach($this->cust_prop as $prop)
 
 1353                        if($prop[
'alert'] == 
true)
 
 1366                $this->notice_prop = array();
 
 1367                if($infos = $this->ldap_mapping->getInfoStrings($this->obj_id,
true))
 
 1369                        foreach($infos as 
$info)
 
 1371                                $this->notice_prop[] = array(
'value' => 
$info);
 
 1374                return $this->notice_prop ? $this->notice_prop : array();
 
 1381                $this->cust_commands[] =
 
 1382                        array(
"link" => $a_link, 
"lang_var" => $a_lang_var,
 
 1383                        "frame" => $a_frame, 
"onclick" => $onclick);
 
 1392                $this->force_visible_only = $a_stat;
 
 1431                $ref_commands = array();
 
 1432                foreach($this->commands as $command)
 
 1434                        $permission = $command[
"permission"];
 
 1435                        $cmd = $command[
"cmd"];
 
 1436                        $lang_var = $command[
"lang_var"];
 
 1438                        $info_object = 
null;
 
 1440                        if (isset($command[
"txt"]))
 
 1442                                $txt = $command[
"txt"];
 
 1448                        if ($ilias->account->getId() == ANONYMOUS_USER_ID &&
 
 1449                                $command[
'enable_anonymous'] == 
'false')
 
 1457                        $ilBench->start(
"ilObjectListGUI", 
"4110_get_commands_check_access");
 
 1460                        $ilBench->stop(
"ilObjectListGUI", 
"4110_get_commands_check_access");
 
 1467                                $access_granted = 
true;
 
 1471                                $access_granted = 
false;
 
 1472                                $info_object = $ilAccess->getInfo();
 
 1475                        if (!isset($command[
"default"]))
 
 1477                                $command[
"default"] = 
"";
 
 1479                        $ref_commands[] = array(
 
 1480                                "permission" => $permission,
 
 1482                                "link" => $cmd_link,
 
 1483                                "frame" => $cmd_frame,
 
 1484                                "lang_var" => $lang_var,
 
 1486                                "granted" => $access_granted,
 
 1487                                "access_info" => $info_object,
 
 1488                                "img" => $cmd_image,
 
 1489                                "default" => $command[
"default"]
 
 1493                return $ref_commands;
 
 1506                if ($this->type == 
"sahs" && $this->offline_mode) {
 
 1507                        return $this->type . 
"_offline";        
 
 1522                if($this->restrict_to_goto)
 
 1524                        $this->default_command = array(
"frame" => 
"",
 
 1529                                !$this->default_command || 
 
 1531                                $this->title_link_disabled
 
 1535                        $this->tpl->setCurrentBlock(
"item_title");
 
 1536                        $this->tpl->setVariable(
"TXT_TITLE", $this->
getTitle());
 
 1537                        $this->tpl->parseCurrentBlock();
 
 1541                        $this->default_command[
'link'] = $this->
modifyTitleLink($this->default_command[
'link']);
 
 1543                        $this->default_command[
"link"] = 
 
 1544                                $this->
modifySAHSlaunch($this->default_command[
"link"],$this->default_command[
"frame"]);
 
 1546                        if ($this->default_command[
"frame"] != 
"")
 
 1548                                        $this->tpl->setCurrentBlock(
"title_linked_frame");
 
 1549                                        $this->tpl->setVariable(
"TARGET_TITLE_LINKED", $this->default_command[
"frame"]);
 
 1550                                        $this->tpl->parseCurrentBlock();
 
 1554                        #var_dump("<pre>",$this->default_command['link'],"</pre>");
 
 1555                        $this->default_command[
"link"] = 
 
 1558                        #var_dump("<pre>",$this->default_command['link'],"</pre>");
 
 1562                        $this->tpl->setCurrentBlock(
"item_title_linked");
 
 1563                        $this->tpl->setVariable(
"TXT_TITLE_LINKED", $this->
getTitle());
 
 1564                        $this->tpl->setVariable(
"HREF_TITLE_LINKED", $this->default_command[
"link"]);
 
 1567                        include_once(
"./Services/Preview/classes/class.ilPreview.php");
 
 1570                                include_once(
"./Services/Preview/classes/class.ilPreviewGUI.php");
 
 1573                                $access_handler = 
null;
 
 1575                                switch ($this->context)
 
 1580                                                include_once(
"./Services/PersonalWorkspace/classes/class.ilWorkspaceAccessHandler.php");
 
 1587                                                $access_handler = $ilAccess;
 
 1593                                $preview_status_class = 
"";
 
 1594                                $preview_text_topic = 
"preview_show";
 
 1597                                        $preview_status_class = 
"ilPreviewStatusNone";
 
 1598                                        $preview_text_topic = 
"preview_none";
 
 1600                                $this->tpl->setCurrentBlock(
"item_title_linked");
 
 1601                                $this->tpl->setVariable(
"PREVIEW_STATUS_CLASS", $preview_status_class);
 
 1602                                $this->tpl->setVariable(
"SRC_PREVIEW_ICON", 
ilUtil::getImagePath(
"preview.png", 
"Services/Preview"));
 
 1603                                $this->tpl->setVariable(
"TXT_PREVIEW", $this->lng->txt($preview_text_topic));
 
 1604                                $this->tpl->setVariable(
"SCRIPT_PREVIEW_CLICK", 
$preview->getJSCall($this->getUniqueItemId(
true)));
 
 1605                                $this->tpl->parseCurrentBlock();
 
 1608                        $this->tpl->parseCurrentBlock();
 
 1611                if ($this->bold_title == 
true)
 
 1613                        $this->tpl->touchBlock(
'bold_title_start');
 
 1614                        $this->tpl->touchBlock(
'bold_title_end');
 
 1620                switch($this->context)
 
 1623                                include_once 
"Services/PersonalWorkspace/classes/class.ilWorkspaceAccessHandler.php";
 
 1640                $fields_shown = 
false;
 
 1641                foreach($this->substitutions->getParsedSubstitutions($this->ref_id,$this->obj_id) as 
$data)
 
 1645                                $data[
'name'] = 
'<strong>'.$data[
'name'].
'</strong>';
 
 1646                                $data[
'value'] = 
'<strong>'.$data[
'value'].
'</strong>';
 
 1648                        $this->tpl->touchBlock(
"std_prop");
 
 1649                        $this->tpl->setCurrentBlock(
'item_property');
 
 1650                        if(
$data[
'show_field'])
 
 1652                                $this->tpl->setVariable(
'TXT_PROP',
$data[
'name']);
 
 1654                        $this->tpl->setVariable(
'VAL_PROP',
$data[
'value']);
 
 1655                        $this->tpl->parseCurrentBlock();
 
 1657                        if(
$data[
'newline'])
 
 1659                                $this->tpl->touchBlock(
'newline_prop');
 
 1661                        $fields_shown = 
false;
 
 1666                        $this->tpl->touchBlock(
'newline_prop');
 
 1683                        if(!$this->substitutions->isDescriptionEnabled())
 
 1691                $d = strip_tags(
$d, 
"<b>");
 
 1692                $this->tpl->setCurrentBlock(
"item_description");
 
 1693                $this->tpl->setVariable(
"TXT_DESC", 
$d);
 
 1694                $this->tpl->parseCurrentBlock();
 
 1705                        $this->tpl->setCurrentBlock(
'search_fragment');
 
 1706                        $this->tpl->setVariable(
'TXT_SEARCH_FRAGMENT',$this->
getSearchFragment().
' ...');
 
 1707                        $this->tpl->parseCurrentBlock();
 
 1725                include_once 
"Services/UIComponent/ProgressBar/classes/class.ilProgressBar.php";
 
 1729                $this->tpl->setCurrentBlock(
'relevance');
 
 1730                $this->tpl->setVariable(
'REL_PBAR', $pbar->render());           
 
 1731                $this->tpl->parseCurrentBlock();                
 
 1741                $this->mode = $a_mode;
 
 1759                $this->condition_depth = $a_depth;
 
 1771                if ($a_mode == $this->mode)
 
 1793                if($this->context != self::CONTEXT_WORKSPACE && $this->context != self::CONTEXT_WORKSPACE_SHARING)
 
 1796                        include_once 
"Services/Tracking/classes/class.ilLPStatus.php";
 
 1800                                $props[] = array(
"alert" => 
false,
 
 1801                                        "property" => 
$lng->txt(
"learning_progress"),
 
 1808                        if ($this->
ilias->account->getId() == ANONYMOUS_USER_ID)
 
 1810                                if (!$ilAccess->checkAccess(
"read", 
"", $this->ref_id, $this->type, $this->obj_id))
 
 1812                                        $props[] = array(
"alert" => 
true,
 
 1813                                                "value" => 
$lng->txt(
"no_access_item_public"),
 
 1822                if($this->reference_ref_id)
 
 1825                        $note_obj_id = $this->reference_obj_id;
 
 1828                $redraw_js = 
"il.Object.redrawListItem(".$note_ref_id.
");";
 
 1833                        self::$cnt_tags[$note_obj_id] > 0 ||
 
 1834                        is_array(self::$tags[$note_obj_id])) &&
 
 1835                        (
$ilUser->getId() != ANONYMOUS_USER_ID))
 
 1837                        include_once(
"./Services/Notes/classes/class.ilNoteGUI.php");
 
 1838                        include_once(
"./Services/Tagging/classes/class.ilTaggingGUI.php");
 
 1844                                $props[] = array(
"alert" => 
false,
 
 1845                                        "property" => 
$lng->txt(
"notes_comments"),
 
 1846                                        "value" => 
"<a href='#' onclick=\"return ".
 
 1853                        if ($this->notes_enabled && self::$cnt_notes[$note_obj_id][
IL_NOTE_PRIVATE] > 0)
 
 1855                                $props[] = array(
"alert" => 
false,
 
 1856                                        "property" => 
$lng->txt(
"notes"),
 
 1857                                        "value" => 
"<a href='#' onclick=\"return ".
 
 1863                        if ($this->tags_enabled && 
 
 1864                                (self::$cnt_tags[$note_obj_id] > 0 ||
 
 1865                                is_array(self::$tags[$note_obj_id])))
 
 1868                                if ($tags_set->get(
"enable"))
 
 1873                                        if(is_array(self::$tags[$note_obj_id]))
 
 1875                                                $tags_tmp = array();
 
 1876                                                foreach(self::$tags[$note_obj_id] as $tag => $is_tag_owner)
 
 1880                                                                $tags_tmp[] = 
"<a class=\"ilTag ilTagRelHigh\" href='#' onclick=\"return ".
 
 1881                                                                        $tags_url.
"\">".$tag.
"</a>";
 
 1885                                                                $tags_tmp[] = 
"<span class=\"ilTag ilTagRelMiddle\">".$tag.
"</span>";
 
 1888                                                $tags_value = implode(
" ", $tags_tmp);
 
 1895                                                $tags_value = 
"<a href='#' onclick=\"return ".$tags_url.
"\">".
 
 1896                                                        self::$cnt_tags[$note_obj_id].
"</a>";
 
 1897                                                $prop_text = 
$lng->txt(
"tagging_tags");
 
 1899                                        $props[] = array(
"alert" => 
false,
 
 1900                                                        "property" => $prop_text,
 
 1901                                                        "value" => $tags_value,
 
 1909                if (is_array($props) && count($props) > 0)
 
 1911                        foreach($props as $prop)
 
 1916                                        $this->tpl->touchBlock(
"separator_prop");
 
 1920                                if ($prop[
"alert"] == 
true)
 
 1922                                        $this->tpl->touchBlock(
"alert_prop");
 
 1926                                        $this->tpl->touchBlock(
"std_prop");
 
 1928                                if ($prop[
"newline"] == 
true && $cnt > 1)
 
 1930                                        $this->tpl->touchBlock(
"newline_prop");
 
 1933                                if (isset($prop[
"property"]) && $prop[
'propertyNameVisible'] !== 
false && $prop[
"property"] != 
"")
 
 1936                                        $this->tpl->setCurrentBlock(
"prop_name");
 
 1937                                        $this->tpl->setVariable(
"TXT_PROP", $prop[
"property"]);
 
 1938                                        $this->tpl->parseCurrentBlock();
 
 1940                                $this->tpl->setCurrentBlock(
"item_property");
 
 1944                                        $this->tpl->setVariable(
"LINK_PROP", $prop[
'link']);
 
 1945                                        $this->tpl->setVariable(
"LINK_VAL_PROP", $prop[
"value"]);
 
 1949                                        $this->tpl->setVariable(
"VAL_PROP", $prop[
"value"]);
 
 1952                                $this->tpl->parseCurrentBlock();
 
 1956                        $this->tpl->setCurrentBlock(
"item_properties");
 
 1957                        $this->tpl->parseCurrentBlock();
 
 1964                foreach($this->notice_prop as $property)
 
 1966                        $this->tpl->setCurrentBlock(
'notice_item');
 
 1967                        $this->tpl->setVariable(
'NOTICE_ITEM_VALUE',$property[
'value']);
 
 1968                        $this->tpl->parseCurrentBlock();
 
 1970                $this->tpl->setCurrentBlock(
'notice_property');
 
 1971                $this->tpl->parseCurrentBlock();
 
 1982                global $ilAccess,$ilObjDataCache,
$ilUser;
 
 1984                if(IS_PAYMENT_ENABLED && $this->payment_enabled)
 
 1986                        include_once 
'./Services/Payment/classes/class.ilPaymentObject.php';
 
 1987                        include_once 
'./Services/Payment/classes/class.ilPaymentBookings.php';
 
 1989                        if(ilPaymentobject::_requiresPurchaseToAccess($this->ref_id))
 
 1995                                        $order_infos = array();
 
 1998                                        if(count($order_infos) > 0)
 
 2002                                                $pay_lang->loadLanguageModule(
'payment');
 
 2005                                                $a_property = $pay_lang->txt(
'object_purchased_date');
 
 2012                                                $a_property = $this->lng->txt(
'object_duration');
 
 2013                                                if($order_infos[
'duration'] == 0)
 
 2014                                                        $a_value = $pay_lang->txt(
'unlimited_duration');
 
 2016                                                        $a_value = $order_infos[
'duration'] .
' '.$this->lng->txt(
'months');
 
 2023                                                $has_extension_prices = 
true;
 
 2032                                        $this->ctpl = 
new ilTemplate(
"tpl.container_list_item_commands.html", 
true, 
true,
 
 2033                                                "Services/Container", 
"DEFAULT", 
false, 
true);
 
 2034                                        $this->ctpl->setCurrentBlock(
'payment');
 
 2036                                        $this->ctpl->setVariable(
'PAYMENT_ALT_IMG', $this->lng->txt(
'payment_system') . 
': ' . $this->lng->txt(
'payment_buyable'));
 
 2037                                        $this->ctpl->parseCurrentBlock();
 
 2047                $commands = $this->
getCommands($this->ref_id, $this->obj_id);
 
 2048                foreach($commands as $command)
 
 2050                        if($command[
'default'] === 
true)
 
 2058                                                        $command[
'link'] = 
'ilias.php?baseClass=ilSAHSPresentationGUI&ref_id='.$this->ref_id;
 
 2062                                                        $command[
'link'] = 
'ilias.php?baseClass=ilLMPresentationGUI&ref_id='.$this->ref_id;
 
 2066                                                        $command[
'link'] = 
'ilias.php?baseClass=ilShopController&cmdClass=ilshoppurchasegui&ref_id='.$this->ref_id;
 
 2072                                if(strpos($command[
'link'], 
'_'.
$type.
'_') !== 
false)
 
 2074                                        $demo_link = str_replace(
'_'.
$type.
'_', 
'_'.$type.
'purchasetypedemo_', $command[
'link']);
 
 2075                                        $buy_link = str_replace(
'_'.
$type.
'_', 
'_'.$type.
'purchasetypebuy_', $command[
'link']);
 
 2079                                        $demo_link = $command[
'link'].(strpos($command[
'link'], 
'?') === 
false ? 
'?' : 
'&').
'purchasetype=demo';
 
 2080                                        $buy_link = $command[
'link'].(strpos($command[
'link'], 
'?') === 
false ? 
'?' : 
'&').
'purchasetype=buy';
 
 2083                                $this->current_selection_list->addItem($this->lng->txt(
'payment_demo'), 
"", $demo_link, $a_img, $this->lng->txt(
'payment_demo'), $command[
'frame']);
 
 2084                                if($has_extension_prices == 
true)
 
 2086                                        $this->current_selection_list->addItem($this->lng->txt(
'buy_extension'), 
"", $buy_link, $a_img, $this->lng->txt(
'buy_extension'), $command[
'frame']);
 
 2089                                        $this->current_selection_list->addItem($this->lng->txt(
'buy'), 
"", $buy_link, $a_img, $this->lng->txt(
'buy'), $command[
'frame']);
 
 2097                global $ilAccess, 
$lng, $objDefinition,$tree;
 
 2100                $num_optional_required =
 
 2104                $visible_conditions = array();
 
 2105                $passed_optional = 0;
 
 2106                foreach($conditions as $condition)
 
 2108                        if($obligatory and !$condition[
'obligatory'])
 
 2112                        if(!$obligatory and $condition[
'obligatory'])
 
 2117                        if($tree->isDeleted($condition[
'trigger_ref_id']))
 
 2122                        include_once 
'Services/Container/classes/class.ilMemberViewSettings.php';
 
 2128                                $visible_conditions[] = $condition[
'id'];
 
 2131                        if(!$obligatory and 
$ok)
 
 2135                                if($passed_optional >= $num_optional_required)
 
 2142                foreach($conditions as $condition)
 
 2144                        if(!in_array($condition[
'id'], $visible_conditions))
 
 2149                        include_once 
'./Services/AccessControl/classes/class.ilConditionHandlerGUI.php';
 
 2153                        $class = $objDefinition->getClassName($condition[
"trigger_type"]);
 
 2154                        $location = $objDefinition->getLocation($condition[
"trigger_type"]);
 
 2159                        $missing_cond_exist = 
true;
 
 2161                        $full_class = 
"ilObj".$class.
"ListGUI";
 
 2162                        include_once(
$location.
"/class.".$full_class.
".php");
 
 2163                        $item_list_gui = 
new $full_class($this);
 
 2165                        $item_list_gui->enablePath(
false);
 
 2166                        $item_list_gui->enableIcon(
true);
 
 2167                        $item_list_gui->setConditionDepth($this->condition_depth + 1);
 
 2169                        $item_list_gui->addCustomProperty($this->lng->txt(
"precondition_required_itemlist"), $cond_txt, 
false, 
true);
 
 2171                        $item_list_gui->enableCommands($this->commands_enabled, $this->std_cmd_only);
 
 2172                        $item_list_gui->enableProperties($this->properties_enabled);                                    
 
 2174                        $trigger_html = $item_list_gui->getListItemHTML($condition[
'trigger_ref_id'],
 
 2177                        $this->tpl->setCurrentBlock(
"precondition");
 
 2178                        if ($trigger_html == 
"")
 
 2180                                $trigger_html = $this->lng->txt(
"precondition_not_accessible");
 
 2182                        $this->tpl->setVariable(
"TXT_CONDITION", trim($cond_txt));
 
 2183                        $this->tpl->setVariable(
"TRIGGER_ITEM", $trigger_html);
 
 2184                        $this->tpl->parseCurrentBlock();
 
 2187                if ($missing_cond_exist and $obligatory)
 
 2189                        $this->tpl->setCurrentBlock(
"preconditions");
 
 2190                        $this->tpl->setVariable(
"CONDITION_TOGGLE_ID", 
"_obl_".$toggle_id);
 
 2191                        $this->tpl->setVariable(
"TXT_PRECONDITIONS", 
$lng->txt(
"preconditions_obligatory_hint"));
 
 2192                        $this->tpl->parseCurrentBlock();
 
 2195                elseif($missing_cond_exist and !$obligatory)
 
 2197                        $this->tpl->setCurrentBlock(
"preconditions");
 
 2198                        $this->tpl->setVariable(
"CONDITION_TOGGLE_ID", 
"_opt_".$toggle_id);
 
 2199                        $this->tpl->setVariable(
"TXT_PRECONDITIONS", sprintf(
$lng->txt(
"preconditions_optional_hint"),$num_optional_required));
 
 2200                        $this->tpl->parseCurrentBlock();
 
 2203                return !$missing_cond_exist;
 
 2211                global $ilAccess, 
$lng, $objDefinition,$tree;
 
 2213                include_once(
"./Services/AccessControl/classes/class.ilConditionHandler.php");
 
 2215                $missing_cond_exist = 
false;
 
 2218                if ($this->condition_depth > 0)
 
 2231                if($this->condition_target)
 
 2234                                        $this->condition_target[
'ref_id'],
 
 2235                                        $this->condition_target[
'obj_id'],
 
 2236                                        $this->condition_target[
'target_type']
 
 2244                if(
sizeof($conditions))
 
 2246                        for($i = 0; $i < count($conditions); $i++)
 
 2255                        $all_done_obl = $this->
parseConditions(self::$js_unique_id,$conditions,
true);
 
 2256                        $all_done_opt = $this->
parseConditions(self::$js_unique_id,$conditions,
false);
 
 2258                        if(!$all_done_obl || !$all_done_opt)
 
 2260                                $this->tpl->setCurrentBlock(
"preconditions_toggle");
 
 2261                                $this->tpl->setVariable(
"PRECONDITION_TOGGLE_INTRO", $this->lng->txt(
"precondition_toggle"));
 
 2262                                $this->tpl->setVariable(
"PRECONDITION_TOGGLE_TRIGGER", $this->lng->txt(
"show"));
 
 2263                                $this->tpl->setVariable(
"PRECONDITION_TOGGLE_ID", self::$js_unique_id);
 
 2264                                $this->tpl->setVariable(
"TXT_PRECONDITION_SHOW", $this->lng->txt(
"show"));
 
 2265                                $this->tpl->setVariable(
"TXT_PRECONDITION_HIDE", $this->lng->txt(
"hide"));
 
 2266                                $this->tpl->parseCurrentBlock();
 
 2279        function insertCommand($a_href, $a_text, $a_frame = 
"", $a_img = 
"", $a_cmd = 
"", $a_onclick = 
"")
 
 2282                $chksum = md5($a_href.$a_text); 
 
 2283                if($a_href == 
"#" || 
 
 2284                        !in_array($chksum, $this->prevent_duplicate_commands))
 
 2288                                $this->prevent_duplicate_commands[] = $chksum;
 
 2291                        $prevent_background_click = 
false;
 
 2292                        if ($a_cmd ==
'mount_webfolder')
 
 2294                                $prevent_background_click = 
true;
 
 2296                        $this->current_selection_list->addItem($a_text, 
"", $a_href, $a_img, $a_text, $a_frame,
 
 2297                                "", $prevent_background_click, $a_onclick);
 
 2310                if ($this->std_cmd_only)
 
 2323                                $this->adm_commands_included = 
true;
 
 2331                        $this->ctrl->setParameter($this->container_obj, 
"ref_id",
 
 2332                                $this->container_obj->object->getRefId());
 
 2333                        $this->ctrl->setParameter($this->container_obj, 
"item_ref_id", $this->
getCommandId());
 
 2334                        $cmd_link = $this->ctrl->getLinkTarget($this->container_obj, 
"delete");
 
 2335                        $this->
insertCommand($cmd_link, $this->lng->txt(
"delete"), 
"",
 
 2337                        $this->adm_commands_included = 
true;
 
 2350                global $objDefinition;
 
 2352                if ($this->std_cmd_only)
 
 2359                        !$objDefinition->allowLink($this->type))
 
 2372                        $this->adm_commands_included = 
true;
 
 2379                $this->ctrl->setParameter($this->container_obj, 
"ref_id",
 
 2380                        $this->container_obj->object->getRefId());
 
 2381                $this->ctrl->setParameter($this->container_obj, 
"item_ref_id", $this->
getCommandId());
 
 2382                $cmd_link = $this->ctrl->getLinkTarget($this->container_obj, 
"link");
 
 2383                $this->
insertCommand($cmd_link, $this->lng->txt(
"link"), 
"",
 
 2385                $this->adm_commands_included = 
true;
 
 2399                if ($this->std_cmd_only)
 
 2412                                $this->adm_commands_included = 
true;
 
 2422                        $this->container_obj->object)
 
 2424                        $this->ctrl->setParameter($this->container_obj, 
"ref_id",
 
 2425                                $this->container_obj->object->getRefId());                                                                      
 
 2426                        $this->ctrl->setParameter($this->container_obj, 
"item_ref_id", $this->
getCommandId());
 
 2428                        if(!$a_to_repository)
 
 2430                                $cmd_link = $this->ctrl->getLinkTarget($this->container_obj, 
"cut");
 
 2431                                $this->
insertCommand($cmd_link, $this->lng->txt(
"move"), 
"",
 
 2436                                $cmd_link = $this->ctrl->getLinkTarget($this->container_obj, 
"cut_for_repository");
 
 2437                                $this->
insertCommand($cmd_link, $this->lng->txt(
"wsp_move_to_repository"), 
"",
 
 2441                        $this->adm_commands_included = 
true;
 
 2452                global $objDefinition;
 
 2454                if($this->std_cmd_only)
 
 2460                        $objDefinition->allowCopy($this->type))
 
 2462                        if($this->context != self::CONTEXT_WORKSPACE && $this->context != self::CONTEXT_WORKSPACE_SHARING)
 
 2464                                $this->ctrl->setParameterByClass(
'ilobjectcopygui',
'source_id',$this->
getCommandId());
 
 2465                                $cmd_copy = $this->ctrl->getLinkTargetByClass(
'ilobjectcopygui',
'initTargetSelection');
 
 2470                                $this->ctrl->setParameter($this->container_obj, 
"ref_id",
 
 2471                                        $this->container_obj->object->getRefId());                                                                      
 
 2472                                $this->ctrl->setParameter($this->container_obj, 
"item_ref_id", $this->
getCommandId());
 
 2474                                if(!$a_to_repository)
 
 2476                                        $cmd_copy = $this->ctrl->getLinkTarget($this->container_obj, 
'copy');
 
 2481                                        $cmd_copy = $this->ctrl->getLinkTarget($this->container_obj, 
'copy_to_repository');
 
 2482                                        $this->
insertCommand($cmd_copy, $this->lng->txt(
'wsp_copy_to_repository'));                     
 
 2486                        $this->adm_commands_included = 
true;                    
 
 2497                global $ilAccess, $objDefinition;
 
 2499                if ($this->std_cmd_only)
 
 2516                        $this->adm_commands_included = 
true;
 
 2533                if ($this->std_cmd_only)
 
 2538                if((
int)
$ilSetting->get(
'disable_my_offers'))
 
 2545                if ($ilUser->getId() != ANONYMOUS_USER_ID)
 
 2575                        if(is_object($this->container_obj) &&
 
 2577                                is_object($this->container_obj->object))
 
 2579                                $this->ctrl->setParameter($this->container_obj, 
"ref_id", $this->container_obj->object->getRefId());
 
 2582                        if (!
$ilUser->isDesktopItem($this->getCommandId(), 
$type))
 
 2586                        if ($this->
checkCommandAccess(
"read", 
"", $this->ref_id, $this->type, $this->obj_id))
 
 2590                                                $this->ctrl->setParameter($this->container_obj, 
"type", 
$type);
 
 2591                                                $this->ctrl->setParameter($this->container_obj, 
"item_ref_id", $this->
getCommandId());
 
 2592                                                $cmd_link = $this->ctrl->getLinkTarget($this->container_obj, 
"addToDesk");
 
 2593                                                $this->
insertCommand($cmd_link, $this->lng->txt(
"to_desktop"), 
"",
 
 2602                                        $this->ctrl->setParameter($this->container_obj, 
"type", 
$type);
 
 2603                                        $this->ctrl->setParameter($this->container_obj, 
"item_ref_id", $this->
getCommandId());
 
 2604                                        $cmd_link = $this->ctrl->getLinkTarget($this->container_obj, 
"removeFromDesk");
 
 2605                                        $this->
insertCommand($cmd_link, $this->lng->txt(
"unsubscribe"), 
"",
 
 2617                if ($this->std_cmd_only)
 
 2623                $this->
insertCommand($cmd_link, $this->lng->txt(
"info_short"), $cmd_frame,
 
 2637                if ($this->std_cmd_only ||
 
 2638                        (
$ilUser->getId() == ANONYMOUS_USER_ID))
 
 2642                $lng->loadLanguageModule(
"notes");
 
 2643                $lng->loadLanguageModule(
"tagging");
 
 2647                include_once(
"./Services/Notes/classes/class.ilNoteGUI.php");
 
 2651                if($this->reference_ref_id)
 
 2656                $js_updater = $a_header_actions
 
 2657                        ? 
"il.Object.redrawActionHeader();" 
 2658                        : 
"il.Object.redrawListItem(".$note_ref_id.
")";
 
 2663                        $this->
insertCommand(
"#", $this->lng->txt(
"notes_comments"), $cmd_frame,
 
 2667                if($this->notes_enabled)
 
 2669                        $this->
insertCommand(
"#", $this->lng->txt(
"notes"), $cmd_frame,
 
 2673                if ($this->tags_enabled)
 
 2675                        include_once(
"./Services/Tagging/classes/class.ilTaggingGUI.php");
 
 2677                        $this->
insertCommand(
"#", $this->lng->txt(
"tagging_set_tag"), $cmd_frame,
 
 2689                if ($this->std_cmd_only || !$this->container_obj->object)
 
 2695                $parent_type = $this->container_obj->object->getType();
 
 2700                        $this->ctrl->setParameterByClass(
'ilobjectactivationgui',
'cadh',
 
 2702                        $this->ctrl->setParameterByClass(
'ilobjectactivationgui',
'parent_id',
 
 2704                        $cmd_lnk = $this->ctrl->getLinkTargetByClass(array($this->gui_class_name, 
'ilcommonactiondispatchergui', 
'ilobjectactivationgui'),
 
 2707                        $this->
insertCommand($cmd_lnk, $this->lng->txt(
'obj_activation_list_gui'));                     
 
 2719                $a_asynch_url = 
"", $a_header_actions = 
false)
 
 2728                include_once(
"Services/UIComponent/AdvancedSelectionList/classes/class.ilAdvancedSelectionListGUI.php");
 
 2730                $this->current_selection_list->setAsynch($a_use_asynch && !$a_get_asynch_commands);
 
 2731                $this->current_selection_list->setAsynchUrl($a_asynch_url);
 
 2732                if ($a_header_actions)
 
 2734                        $this->current_selection_list->setListTitle(
"<span class='hidden-xs'>".
$lng->txt(
"actions").
"</span>");
 
 2738                        $this->current_selection_list->setListTitle(
"");
 
 2740                $this->current_selection_list->setId(
"act_".$this->
getUniqueItemId(
false));
 
 2741                $this->current_selection_list->setSelectionHeaderClass(
"small");
 
 2742                $this->current_selection_list->setItemLinkClass(
"xsmall");
 
 2743                $this->current_selection_list->setLinksMode(
"il_ContainerItemCommand2");
 
 2745                $this->current_selection_list->setUseImages(
false);
 
 2746                $this->current_selection_list->setAdditionalToggleElement($this->
getUniqueItemId(
true), 
"ilContainerListItemOuterHighlight");
 
 2748                include_once 
'Services/Payment/classes/class.ilPaymentObject.php';
 
 2750                $this->ctrl->setParameterByClass($this->gui_class_name, 
"ref_id", $this->ref_id);
 
 2753                $only_default = 
false;
 
 2754                if ($a_use_asynch && !$a_get_asynch_commands)
 
 2756                        $only_default = 
true;
 
 2759                $this->default_command = 
false;
 
 2760                $this->prevent_duplicate_commands = array();
 
 2763                $valid_header_commands = array(
"mount_webfolder");
 
 2765                $commands = $this->
getCommands($this->ref_id, $this->obj_id);           
 
 2766                foreach($commands as $command)
 
 2768                        if($a_header_actions && !in_array($command[
"cmd"], $valid_header_commands))
 
 2773                        if ($command[
"granted"] == 
true )
 
 2775                                if (!$command[
"default"] === 
true)
 
 2777                                        if (!$this->std_cmd_only && !$only_default)
 
 2783                                                $cmd_link = $command[
"link"];
 
 2784                                                $txt = ($command[
"lang_var"] == 
"")
 
 2786                                                        : $this->lng->txt($command[
"lang_var"]);
 
 2788                                                        $command[
"frame"], $command[
"img"], $command[
"cmd"]);
 
 2797                        elseif($command[
"default"] === 
true)
 
 2799                                $items =& $command[
"access_info"];
 
 2800                                foreach ($items as $item)
 
 2815                        if (is_array($this->cust_commands))
 
 2817                                foreach ($this->cust_commands as $command)
 
 2819                                        $this->
insertCommand($command[
"link"], $this->lng->txt($command[
"lang_var"]),
 
 2820                                                $command[
"frame"], 
"", $command[
"cmd"], $command[
"onclick"]);
 
 2833                                if($this->timings_enabled)
 
 2839                                if ($this->delete_enabled)
 
 2845                                if ($this->link_enabled)
 
 2851                                if ($this->cut_enabled)
 
 2857                                if ($this->copy_enabled)
 
 2863                                if ($this->repository_transfer_enabled)
 
 2870                                if ($this->subscribe_enabled)
 
 2876                                if ($this->multi_download_enabled && $a_header_actions)
 
 2882                                if($this->cut_enabled or $this->link_enabled)
 
 2888                                if(IS_PAYMENT_ENABLED)
 
 2901                if(!$a_header_actions)
 
 2903                        $this->ctrl->clearParametersByClass($this->gui_class_name);
 
 2910                if ($a_use_asynch && !$a_get_asynch_commands && !$a_header_actions)
 
 2912                        if (
$ilUser->getId() == ANONYMOUS_USER_ID && $this->type == 
"cat")
 
 2914                                include_once(
"./Services/Container/classes/class.ilContainer.php");
 
 2915                                include_once(
"./Services/Object/classes/class.ilObjectServiceSettingsGUI.php");
 
 2926                if ($a_use_asynch && $a_get_asynch_commands)
 
 2928                        return $this->current_selection_list->getHTML(
true);
 
 2931                return $this->current_selection_list->getHTML();                
 
 2949                $this->comments_enabled = (bool)$a_value;
 
 2950                $this->comments_settings_enabled = (bool)$a_enable_comments_settings;
 
 2968                $this->notes_enabled = (bool)$a_value;
 
 2979                if (!$tags_set->get(
"enable"))
 
 2983                $this->tags_enabled = (bool)$a_value;
 
 2994        function enableRating($a_value, $a_text = 
null, $a_categories = 
false, array $a_ctrl_path = 
null)
 
 2996                $this->rating_enabled = (bool)$a_value;
 
 2998                if($this->rating_enabled)
 
 3000                        $this->rating_categories_enabled = (bool)$a_categories;
 
 3001                        $this->rating_text = $a_text;
 
 3002                        $this->rating_ctrl_path = $a_ctrl_path;                                                                                                 
 
 3014                if (!$folder_set->get(
"enable_multi_download"))
 
 3018                $this->multi_download_enabled = (bool)$a_value;
 
 3023                global $ilAccess, $objDefinition;
 
 3025                if ($this->std_cmd_only)
 
 3037                        $cmd = 
$_GET[
"cmd"] == 
"enableMultiDownload" ? 
"render" : 
"enableMultiDownload";
 
 3039                        $this->
insertCommand($cmd_link, $this->lng->txt(
"download_multiple_objects"));
 
 3053                        if (in_array($this->type, array(
"file", 
"fold")) &&
 
 3054                                $ilAccess->checkAccess(
"read", 
"", $a_ref_id, $this->type))
 
 3077        static function prepareJsLinks($a_redraw_url, $a_notes_url, $a_tags_url, $a_tpl = 
null)
 
 3081                if (is_null($a_tpl))
 
 3088                        include_once(
"./Services/Notes/classes/class.ilNoteGUI.php");
 
 3094                        include_once(
"./Services/Tagging/classes/class.ilTaggingGUI.php");
 
 3100                        $a_tpl->addOnLoadCode(
"il.Object.setRedrawAHUrl('".
 
 3101                                                $a_redraw_url.
"');");   
 
 3113                $this->sub_obj_type = $a_type;
 
 3114                $this->sub_obj_id = (int)$a_id;
 
 3126        function addHeaderIcon($a_id, $a_img, $a_tooltip = 
null, $a_onclick = 
null, $a_status_text = 
null, $a_href = 
null)
 
 3128                $this->header_icons[$a_id] = array(
"img" => $a_img,
 
 3129                                "tooltip" => $a_tooltip,
 
 3130                                "onclick" => $a_onclick,
 
 3131                                "status_text" => $a_status_text,
 
 3142                $this->header_icons[$a_id] = $a_html;
 
 3147                $this->ajax_hash = $a_hash;
 
 3159                $htpl = 
new ilTemplate(
"tpl.header_action.html", 
true, 
true, 
"Services/Repository");    
 
 3161                $redraw_js = 
"il.Object.redrawActionHeader();";
 
 3164                if($this->tags_enabled)
 
 3166                        include_once(
"./Services/Tagging/classes/class.ilTagging.php");
 
 3169                        if (count(
$tags) > 0)
 
 3171                                include_once(
"./Services/Tagging/classes/class.ilTaggingGUI.php");
 
 3172                                $lng->loadLanguageModule(
"tagging");
 
 3175                                        $lng->txt(
"tagging_tags").
": ".count(
$tags),
 
 3185                        include_once(
"./Services/Notes/classes/class.ilNote.php");
 
 3186                        include_once(
"./Services/Notes/classes/class.ilNoteGUI.php");
 
 3201                                $lng->loadLanguageModule(
"notes");
 
 3205                                        $lng->txt(
"notes_public_comments").
": ".$cnt[$this->obj_id][
IL_NOTE_PUBLIC],
 
 3212                if($this->rating_enabled)
 
 3214                        include_once(
"./Services/Rating/classes/class.ilRatingGUI.php");
 
 3216                        $rating_gui->enableCategories($this->rating_categories_enabled);
 
 3218                        $rating_gui->setObject($this->obj_id, $this->type);                                                                             
 
 3219                        if($this->rating_text)
 
 3221                                $rating_gui->setYourRatingText($this->rating_text);
 
 3224                        $this->ctrl->setParameterByClass(
"ilRatingGUI", 
"cadh", $this->ajax_hash);      
 
 3225                        $this->ctrl->setParameterByClass(
"ilRatingGUI", 
"rnsb", 
true);  
 
 3226                        if($this->rating_ctrl_path)
 
 3228                                $rating_gui->setCtrlPath($this->rating_ctrl_path);              
 
 3229                                $ajax_url = $this->ctrl->getLinkTargetByClass($this->rating_ctrl_path, 
"saveRating", 
"", 
true, 
false);
 
 3234                                $ajax_url = $this->ctrl->getLinkTargetByClass(
"ilRatingGUI", 
"saveRating", 
"", 
true, 
false);
 
 3236                        $tpl->addOnLoadCode(
"il.Object.setRatingUrl('".$ajax_url.
"');");
 
 3239                                $rating_gui->getHtml(
true, 
 
 3240                                        $this->checkCommandAccess(
"read", 
"", $this->ref_id, $this->type), 
 
 3241                                        "il.Object.saveRating(%rating%);"));                                                            
 
 3244                if($this->header_icons)
 
 3246                        include_once(
"./Services/UIComponent/Tooltip/classes/class.ilTooltipGUI.php");
 
 3249                        foreach($this->header_icons as $id => $attr)
 
 3255                                        if($attr[
"onclick"])
 
 3257                                                $htpl->setCurrentBlock(
"onclick");
 
 3258                                                $htpl->setVariable(
"PROP_ONCLICK", $attr[
"onclick"]);
 
 3259                                                $htpl->parseCurrentBlock();
 
 3262                                        if($attr[
"status_text"])
 
 3264                                                $htpl->setCurrentBlock(
"status");
 
 3265                                                $htpl->setVariable(
"PROP_TXT", $attr[
"status_text"]);
 
 3266                                                $htpl->parseCurrentBlock();
 
 3271                                                $attr[
"href"] = 
"#";
 
 3274                                        $htpl->setCurrentBlock(
"prop");
 
 3275                                        $htpl->setVariable(
"PROP_ID", $id);
 
 3276                                        $htpl->setVariable(
"IMG", 
ilUtil::img($attr[
"img"]));                                                                           
 
 3277                                        $htpl->setVariable(
"PROP_HREF", $attr[
"href"]);                                                                                                 
 
 3278                                        $htpl->parseCurrentBlock();
 
 3280                                        if($attr[
"tooltip"])
 
 3293                                $htpl->setVariable(
"PROP_CHUNKS", 
 
 3294                                        implode(
"   ", $chunks).
"   ");
 
 3298                $htpl->setVariable(
"ACTION_DROP_DOWN",
 
 3301                return $htpl->get();
 
 3311                $script = substr(strrchr(
$_SERVER[
"PHP_SELF"],
"/"),1);
 
 3314                if ((strtolower(
$_GET[
"baseClass"]) != 
"ilrepositorygui") &&
 
 3315                        is_int(strpos($a_link,
"baseClass=ilRepositoryGUI")))
 
 3317                        if ($this->type != 
"frm")
 
 3329                if($this->default_command_params)
 
 3332                        foreach($this->default_command_params as $name => $value)
 
 3340                        if(!stristr($a_default_link, 
'?'))
 
 3342                                $a_default_link = ($a_default_link.
'?'.
$params);
 
 3346                                $a_default_link = ($a_default_link.
'&'.
$params);
 
 3349                return $a_default_link;
 
 3359                if (strstr($a_link, 
'ilSAHSPresentationGUI') && !$this->offline_mode)
 
 3361                        include_once 
'Modules/ScormAicc/classes/class.ilObjSAHSLearningModule.php';
 
 3363                        $om = $sahs_obj->getOpenMode();
 
 3364                        $width = $sahs_obj->getWidth();
 
 3365                        $height = $sahs_obj->getHeight();
 
 3366                        if ( ($om == 5 || $om == 1) && $width > 0 && $height > 0) $om++;
 
 3367                        if ($om != 0 && !$ilBrowser->isMobile())
 
 3369                                $this->default_command[
"frame"]=
"";
 
 3370                                $a_link = 
"javascript:void(0); onclick=startSAHS('".$a_link.
"','".$wtarget.
"',".$om.
",".$width.
",".$height.
");";
 
 3385                        include_once 
'Services/Tree/classes/class.ilPathGUI.php';
 
 3387                        $path_gui->enableTextOnly(!$this->path_linked);
 
 3388                        $path_gui->setUseImages(
false);
 
 3390                        $start_node = $this->path_start_node
 
 3391                                ? $this->path_start_node
 
 3394                        $this->tpl->setCurrentBlock(
"path_item");
 
 3395                        $this->tpl->setVariable(
'PATH_ITEM',$path_gui->getPath($start_node,$this->ref_id));
 
 3396                        $this->tpl->parseCurrentBlock();
 
 3398                        $this->tpl->setCurrentBlock(
"path");
 
 3399                        $this->tpl->setVariable(
"TXT_LOCATION", 
$lng->txt(
"locator"));
 
 3400                        $this->tpl->parseCurrentBlock();
 
 3422                global 
$lng, $objDefinition;
 
 3427                        $this->tpl->setCurrentBlock(
"check");
 
 3428                        $this->tpl->setVariable(
"VAL_ID", $this->
getCommandId());
 
 3429                        $this->tpl->parseCurrentBlock();
 
 3434                        $this->tpl->setCurrentBlock(
"check_download");
 
 3436                                $this->tpl->setVariable(
"VAL_ID", $this->
getCommandId());
 
 3438                                $this->tpl->setVariable(
"VAL_VISIBILITY", 
"visibility: hidden;\" disabled=\"disabled");
 
 3439                        $this->tpl->parseCurrentBlock();
 
 3444                        $this->tpl->setCurrentBlock(
'expand');
 
 3448                                $this->ctrl->setParameter($this->container_obj,
'expand',-1 * $this->obj_id);
 
 3449                                $this->tpl->setVariable(
'EXP_HREF',$this->ctrl->getLinkTarget($this->container_obj,
'',$this->getUniqueItemId(
true)));
 
 3450                                $this->ctrl->clearParameters($this->container_obj);
 
 3452                        $this->tpl->setVariable(
'EXP_ALT',$this->lng->txt(
'collapse'));
 
 3456                                $this->ctrl->setParameter($this->container_obj,
'expand',$this->obj_id);
 
 3457                                $this->tpl->setVariable(
'EXP_HREF',$this->ctrl->getLinkTarget($this->container_obj,
'',$this->getUniqueItemId(
true)));
 
 3458                                $this->ctrl->clearParameters($this->container_obj);
 
 3460                                $this->tpl->setVariable(
'EXP_ALT',$this->lng->txt(
'expand'));
 
 3463                        $this->tpl->parseCurrentBlock();
 
 3471                                $this->tpl->touchBlock(
"i_1");  
 
 3475                        if ($this->title_link_disabled || !$this->default_command || (!$this->
getCommandsStatus() && !$this->restrict_to_goto))
 
 3480                                $this->tpl->setCurrentBlock(
"icon_link_s");
 
 3482                                if ($this->default_command[
"frame"] != 
"")
 
 3484                                        $this->tpl->setVariable(
"ICON_TAR", 
"target='".$this->default_command[
"frame"].
"'");
 
 3487                                $this->tpl->setVariable(
"ICON_HREF",
 
 3488                                        $this->default_command[
"link"]);
 
 3489                                $this->tpl->parseCurrentBlock();
 
 3490                                $this->tpl->touchBlock(
"icon_link_e");
 
 3493                        $this->tpl->setCurrentBlock(
"icon");
 
 3494                        if (!$objDefinition->isPlugin($this->getIconImageType()))
 
 3496                                $this->tpl->setVariable(
"ALT_ICON", 
$lng->txt(
"icon").
" ".
$lng->txt(
"obj_".$this->getIconImageType()));
 
 3500                                include_once(
"Services/Component/classes/class.ilPlugin.php");
 
 3501                                $this->tpl->setVariable(
"ALT_ICON", 
$lng->txt(
"icon").
" ".
 
 3502                                        ilPlugin::lookupTxt(
"rep_robj", $this->getIconImageType(), 
"obj_".$this->getIconImageType()));
 
 3505                        $this->tpl->setVariable(
"SRC_ICON",
 
 3507                        $this->tpl->parseCurrentBlock();
 
 3511                $this->tpl->touchBlock(
"d_".$cnt);      
 
 3519                foreach ($this->sub_item_html as $sub_html)
 
 3521                        $this->tpl->setCurrentBlock(
"subitem");
 
 3522                        $this->tpl->setVariable(
"SUBITEM", $sub_html);
 
 3523                        $this->tpl->parseCurrentBlock();
 
 3532                if ($this->position_enabled)
 
 3534                        $this->tpl->setCurrentBlock(
"position");
 
 3535                        $this->tpl->setVariable(
"POS_ID", $this->position_field_index);
 
 3536                        $this->tpl->setVariable(
"POS_VAL", $this->position_value);
 
 3537                        $this->tpl->parseCurrentBlock();
 
 3547                return $this->adm_commands_included;
 
 3556                if($this->acache->getLastAccessStatus() == 
"miss" &&
 
 3557                        !$this->prevent_access_caching)
 
 3559                        $this->acache->storeEntry(
$ilUser->getId().
":".$this->ref_id,
 
 3560                                serialize($this->access_cache), $this->ref_id);
 
 3579                $a_use_asynch = 
false, $a_get_asynch_commands = 
false, $a_asynch_url = 
"", $a_context = self::CONTEXT_REPOSITORY)
 
 3585                $this->adm_commands_included = 
false;
 
 3591                $ilBench->start(
"ilObjectListGUI", 
"1000_getListHTML_init$type");
 
 3592                $this->
initItem($a_ref_id, $a_obj_id, $a_title, $a_description, $a_context);
 
 3593                $ilBench->stop(
"ilObjectListGUI", 
"1000_getListHTML_init$type");
 
 3596                include_once 
"Services/Object/classes/class.ilCommonActionDispatcherGUI.php";
 
 3597                if($a_context == self::CONTEXT_REPOSITORY)
 
 3607                if ($a_use_asynch && $a_get_asynch_commands)
 
 3612                if($this->rating_enabled)
 
 3619                                $rating->setObject($this->obj_id, $this->type);
 
 3628                                        $rating->getListGUIProperty($this->ref_id, $may_rate, $this->ajax_hash, $this->parent_ref_id),
 
 3636                include_once(
"Services/Object/classes/class.ilListItemAccessCache.php");
 
 3638                $cres = $this->acache->getEntry(
$ilUser->getId().
":".$a_ref_id);
 
 3639                if($this->acache->getLastAccessStatus() == 
"hit")
 
 3641                        $this->access_cache = unserialize($cres);
 
 3652                        $ilBench->stop(
"ilObjectListGUI", 
"2000_getListHTML_check_visible");
 
 3666                $this->tpl = 
new ilTemplate(static::$tpl_file_name, 
true, 
true,
 
 3667                        static::$tpl_component, 
"DEFAULT", 
false, 
true);
 
 3670                        ($this->payment_enabled && IS_PAYMENT_ENABLED))
 
 3674                                $this->tpl->setVariable(
"COMMAND_SELECTION_LIST",
 
 3675                                        $this->
insertCommands($a_use_asynch, $a_get_asynch_commands, $a_asynch_url));
 
 3704                $ilBench->start(
"ilObjectListGUI", 
"6000_insert_properties$type");
 
 3709                $ilBench->stop(
"ilObjectListGUI", 
"6000_insert_properties$type");
 
 3712                $ilBench->start(
"ilObjectListGUI", 
"6500_insert_notice_properties$type");
 
 3717                $ilBench->stop(
"ilObjectListGUI", 
"6500_insert_notice_properties$type");
 
 3720                $ilBench->start(
"ilObjectListGUI", 
"7000_insert_preconditions");
 
 3725                $ilBench->stop(
"ilObjectListGUI", 
"7000_insert_preconditions");
 
 3728                $ilBench->start(
"ilObjectListGUI", 
"8000_insert_path");
 
 3730                $ilBench->stop(
"ilObjectListGUI", 
"8000_insert_path");
 
 3732                $ilBench->start(
"ilObjectListGUI", 
"8500_item_detail_links");
 
 3737                $ilBench->stop(
"ilObjectListGUI", 
"8500_item_detail_links");
 
 3756                $this->tpl->setVariable(
"DIV_CLASS",
'ilContainerListItemOuter');
 
 3757                $this->tpl->setVariable(
"DIV_ID", 
'id = "'.$this->
getUniqueItemId(
true).
'"');
 
 3763                return $this->tpl->get();
 
 3772                $this->cust_prop = array();
 
 3773                $this->cust_commands = array();
 
 3774                $this->sub_item_html = array();
 
 3775                $this->position_enabled = 
false;
 
 3785                $this->parent_ref_id = $a_ref_id;
 
 3797                $id_ref = ($this->reference_ref_id > 0)
 
 3798                        ? $this->reference_ref_id
 
 3802                if($this->condition_depth)
 
 3804                        $id_ref .= 
"_pc".$this->condition_depth;
 
 3808                $id_ref .= 
"_pref_".$this->parent_ref_id;               
 
 3817                        return "lg_div_".$id_ref;
 
 3844                $this->bold_title = $a_bold_title;
 
 3868                if($a_context == self::CONTEXT_REPOSITORY)
 
 3870                        $active_notes = !
$ilSetting->get(
"disable_notes");
 
 3871                        $active_comments = !
$ilSetting->get(
"disable_comments");
 
 3873                        if($active_notes || $active_comments)
 
 3875                                include_once(
"./Services/Notes/classes/class.ilNote.php");
 
 3878                        if($active_comments)
 
 3885                        if(
$ilSetting->get(
'comments_tagging_in_lists'))
 
 3887                                if($active_notes || $active_comments)
 
 3891                                        $lng->loadLanguageModule(
"notes");
 
 3895                                if($tags_set->get(
"enable"))
 
 3897                                        $all_users = $tags_set->get(
"enable_all_users");
 
 3899                                        include_once(
"./Services/Tagging/classes/class.ilTagging.php");
 
 3900                                        if(!
$ilSetting->get(
'comments_tagging_in_lists_tags'))
 
 3906                                                $tag_user_id = 
null;
 
 3909                                                        $tag_user_id = 
$ilUser->getId();
 
 3914                                        $lng->loadLanguageModule(
"tagging");
 
 3918                        $lng->loadLanguageModule(
"rating");                     
 
 3921                self::$preload_done = 
true;
 
 3934        protected function isCommentsActivated($a_type, $a_ref_id, $a_obj_id, $a_header_actions, $a_check_write_access = 
true)
 
 3936                if($this->comments_enabled)
 
 3938                        if(!$this->comments_settings_enabled)
 
 3942                        if($a_check_write_access && $this->
checkCommandAccess(
'write',
'', $a_ref_id, $a_type))
 
 3948                        if(!$a_header_actions && self::$preload_done)
 
 3950                                if(self::$comments_activation[$a_obj_id][$a_type])
 
 3957                                include_once(
"./Services/Notes/classes/class.ilNote.php");
 
 3976                $this->timings_enabled = (bool)$a_status;
 
 3987                include_once(
"./Services/FileUpload/classes/class.ilFileUploadUtil.php");
 
 3996                include_once(
"./Services/FileUpload/classes/class.ilFileUploadGUI.php");
 
 4001                $this->tpl->setCurrentBlock(
"fileupload");
 
 4002                $this->tpl->setVariable(
"FILE_UPLOAD", $upload->getHTML());
 
 4003                $this->tpl->parseCurrentBlock();
 
User interface class for advanced drop-down selection lists.
static _lookupChangeState($obj_id, $usr_id)
Returns the change state of the object for the specified user.
static _isActive()
Returns true, if change event tracking is active.
static _lookupInsideChangeState($parent_obj_id, $usr_id)
Returns the changed state of objects which are children of the specified parent object.
static buildAjaxHash($a_node_type, $a_node_id, $a_obj_type, $a_obj_id, $a_sub_type=null, $a_sub_id=null)
Build ajax hash.
static translateOperator($a_obj_id, $a_operator)
Translate operator.
static getOptionalConditionsOfTarget($a_target_ref_id, $a_target_obj_id, $a_obj_type='')
Get optional conditions.
static calculateRequiredTriggers($a_target_ref_id, $a_target_obj_id, $a_target_obj_type='', $a_force_update=false)
calculate number of obligatory items
static _getConditionsOfTarget($a_target_ref_id, $a_target_obj_id, $a_target_type="")
get all conditions of target object
_checkCondition($a_id, $a_usr_id=0)
checks wether a single condition is fulfilled every trigger object type must implement a static metho...
_lookupContainerSetting($a_id, $a_keyword, $a_default_value=NULL)
Lookup a container setting.
static _isActive()
Static getter.
static getInstance()
Get singelton iunstance.
static formatDate(ilDateTime $date)
Format a date @access public.
@classDescription Date and time handling
static initFileUpload()
Initializes the file upload and loads the needed javascripts and styles.
static isUploadAllowed($a_ref_id, $a_type="")
Determines whether files can be uploaded to the object with the specified reference id.
static _getInstance()
Get singleton instance of this class.
static getListGUIStatus($a_obj_id)
static _getStaticLink($a_ref_id, $a_type='', $a_fallback_goto=true, $append="")
Get static link.
Caches (check) access information on list items.
static getInstance()
Get instance.
initJavascript($a_ajax_url, $a_type=IL_NOTE_PRIVATE)
Init javascript.
getListCommentsJSCall($a_hash, $a_update_code=null)
Get list comments js call.
getListNotesJSCall($a_hash, $a_update_code=null)
Get list notes js call.
static commentsActivated($a_rep_obj_id, $a_obj_id, $a_obj_type)
Are comments activated for object?
static _countNotesAndComments($a_rep_obj_id, $a_sub_obj_id=null)
Get all notes related to a specific object.
static _countNotesAndCommentsMultiple($a_rep_obj_ids, $a_no_sub_objs=false)
Get all notes related to multiple objcts.
static getRepObjActivation($a_rep_obj_ids)
Get activation for repository objects.
static _isFileHidden($a_file_name)
Returns true, if a file with the specified name, is usually hidden from the user.
static _lookupUserIsOfflineMode($a_obj_id)
Checks offlineMode and returns false if.
Class ilObjSCORMLearningModule.
_getCommands()
get commands
enableDescription($a_status)
En/disable description.
getAdditionalInformation()
Get additional information.
enabledRelevance()
enabled relevance
$search_fragments_enabled
getContainerObject()
get container object
setHeaderSubObject($a_type, $a_id)
Set sub object identifier.
getTitle()
getTitle overwritten in class.ilObjLinkResourceList.php
isTitleBold()
@access public
const DOWNLOAD_CHECKBOX_DISABLED
setBoldTitle($a_bold_title)
@access public @params boolean $a_bold_title set the item title bold
addHeaderIconHTML($a_id, $a_html)
insertProperties($a_item='')
insert properties
setSearchFragment($a_text)
set search fragment
setMode($a_mode)
set output mode
initItem($a_ref_id, $a_obj_id, $a_title="", $a_description="", $a_context=self::CONTEXT_REPOSITORY)
inititialize new item (is called by getItemHTML())
setConditionTarget($a_ref_id, $a_obj_id, $a_target_type)
getAlertProperties()
get all alert properties
enableLinkedPath($a_status)
Enable linked path.
storeAccessCache()
Store access cache.
modifyTitleLink($a_default_link)
adminCommandsIncluded()
returns whether any admin commands (link, delete, cut) are included in the output
insertTitle()
insert item title
$rating_categories_enabled
setDetailsLevel($a_level)
Details level Currently used in Search which shows only limited properties of forums Currently used f...
enableDownloadCheckbox($a_ref_id, $a_value)
$notice_properties_enabled
enableCommands($a_status, $a_std_only=false)
En/disable commands.
setDefaultCommandParameters(array $a_params)
getCommandLink($a_cmd)
Get command link url.
const CONTEXT_WORKSPACE_SHARING
enableRepositoryTransfer($a_value)
Enable copy/move to repository (from personal workspace)
getCommands()
get all current commands for a specific ref id (in the permission context of the current user)
insertRelevance()
insert relevance
insertSubstitutions()
Insert substitutions.
enableProperties($a_status)
En/disable properties.
getIconImageType()
Returns the icon image type.
setSeparateCommands($a_val)
Set separate commands.
insertFileUpload()
Inserts a file upload component.
static prepareJsLinks($a_redraw_url, $a_notes_url, $a_tags_url, $a_tpl=null)
Insert js/ajax links into template
insertPreconditions()
insert all missing preconditions
const CONTEXT_PERSONAL_DESKTOP
isCommentsActivated($a_type, $a_ref_id, $a_obj_id, $a_header_actions, $a_check_write_access=true)
Check comments status against comments settings and context.
enableRelevance($a_status)
enable relevance
const DOWNLOAD_CHECKBOX_NONE
parseConditions($toggle_id, $conditions, $obligatory=true)
addCustomCommand($a_link, $a_lang_var, $a_frame="", $onclick="")
add a custom command
isMode($a_mode)
check current output mode
insertPasteCommand()
Insert paste command.
enableLink($a_status)
En/disable link.
getSearchFragmentStatus()
Show hide search result fragments.
$item_detail_links_enabled
insertPayment()
insert payment information
enableSubstitutions($a_status)
Enable substitutions.
isSideBlock()
Returns whether current item is a block in a side column or not.
isVisibleOnlyForced()
Force unreadable.
getProperties($a_item='')
Get item properties.
enableCheckbox($a_status)
En/Dis-able checkboxes.
const DOWNLOAD_CHECKBOX_ENABLED
insertMultiDownloadCommand()
getCommandsHTML()
Get commands HTML (must be called after get list item html)
setConditionDepth($a_depth)
set depth for precondition output (stops at level 5)
getItemDetailLinkStatus()
get item detail link status
resetCustomData()
reset properties and commands
forceVisibleOnly($a_stat)
Force visible access only.
$repository_transfer_enabled
addSubItemHTML($a_html)
Add HTML for subitem (used for sessions)
getCommandFrame($a_cmd)
Get command target frame.
getNoticeProperties()
get notice properties
enableNotes($a_value)
Toogle notes action status.
addCustomProperty($a_property="", $a_value="", $a_alert=false, $a_newline=false)
add custom property
insertTimingsCommand()
insert edit timings command
insertInfoScreenCommand()
insert info screen command
enableNoticeProperties($a_status)
En/disable notices.
enablePayment($a_status)
En/disable payment.
getUniqueItemId($a_as_div=false)
Get unique item identifier (for js-actions)
getCommandImage($a_cmd)
Get command icon image.
setParentRefId($a_ref_id)
Set current parent ref id to enable unique js-ids (sessions, etc.)
enableIcon($a_status)
En/Dis-able icons.
getSearchFragment()
get search fragment
insertSearchFragment()
Insert highlighted search fragment.
getHeaderAction()
Get header action.
insertCutCommand($a_to_repository=false)
insert cut command
createDefaultCommand($command)
Get default command link Overwritten for e.g categories,courses => they return a goto link If search ...
enableSearchFragments($a_status)
En/disable description.
enableCopy($a_status)
En/disable copy.
enableTimings($a_status)
enable timings link
disableTitleLink($a_status)
addHeaderIcon($a_id, $a_img, $a_tooltip=null, $a_onclick=null, $a_status_text=null, $a_href=null)
insertItemDetailLinks()
insert item detail links
static preloadCommonProperties($a_obj_ids, $a_context)
Preload common properties.
getListItemHTML($a_ref_id, $a_obj_id, $a_title, $a_description, $a_use_asynch=false, $a_get_asynch_commands=false, $a_asynch_url="", $a_context=self::CONTEXT_REPOSITORY)
Get all item information (title, commands, description) in HTML.
enablePreconditions($a_status)
En/disable preconditions.
enableTags($a_value)
Toogle tags action status.
getDescription()
getDescription overwritten in class.ilObjLinkResourceList.php
setPositionInputField($a_field_index, $a_position_value)
Set position input field.
getSubstitutionStatus()
Get substitution status.
enableCut($a_status)
En/disable cut.
setRelevance($a_rel)
set relevance
enableMultiDownload($a_value)
Toggles whether multiple objects can be downloaded at once or not.
enableExpand($a_status)
En/Dis-able expand/collapse link.
insertProgressInfo()
insert progress info
insertDescription()
insert item description
setDescription($a_description)
enableProgressInfo($a_status)
enable progress info
insertPositionField()
Insert field for positioning.
insertSubscribeCommand()
insert subscribe command
$comments_settings_enabled
enableSubscribe($a_status)
En/disable subscribe.
appendRepositoryFrameParameter($a_link)
workaround: all links into the repository (from outside) must tell repository to setup the frameset
getCheckboxStatus()
Are checkboxes enabled?
getDownloadCheckboxState()
insertLinkCommand()
insert link command
isFileUploadAllowed()
Gets a value indicating whether file uploads to this object are allowed or not.
static $comments_activation
insertCommonSocialCommands($a_header_actions=false)
Insert common social commands (comments, notes, tagging)
setContainerObject($container_obj)
set the container object (e.g categorygui) Used for link, delete ... commands
enableRating($a_value, $a_text=null, $a_categories=false, array $a_ctrl_path=null)
Toogle rating action status.
checkCommandAccess($a_permission, $a_cmd, $a_ref_id, $a_type, $a_obj_id="")
enableItemDetailLinks($a_status)
enable item detail links E.g Direct links to chapters or pages
modifySAHSlaunch($a_link, $wtarget)
workaround: SAHS in new javavasript-created window or iframe
insertCopyCommand($a_to_repository=false)
Insert copy command.
getCustomProperties($a_prop)
get custom properties
insertSubItems()
Insert subitems.
enableComments($a_value, $a_enable_comments_settings=true)
Toogle comments action status.
getCommandId()
get command id Normally the ref id.
enableInfoScreen($a_info_screen)
En/disable path.
getProgressInfoStatus()
get progress info status
insertIconsAndCheckboxes()
Insert icons and checkboxes.
enablePath($a_path, $a_start_node=null)
En/disable path.
setAdditionalInformation($a_val)
Set additional information.
setItemDetailLinks($a_detail_links, $a_intro_txt='')
set items detail links
restrictToGoto($a_value)
Restrict all actions/links to goto.
$prevent_duplicate_commands
getDetailsLevel()
Get current details level.
getIconStatus()
Are icons enabled?
getSeparateCommands()
Get separate commands.
ilObjectListGUI()
constructor
insertDeleteCommand()
insert cut command
getExpandStatus()
Is expand/collapse enabled.
insertCommands($a_use_asynch=false, $a_get_asynch_commands=false, $a_asynch_url="", $a_header_actions=false)
insert all commands into html code
getRelevance()
get relevance
enableDelete($a_status)
En/disable delete.
insertCommand($a_href, $a_text, $a_frame="", $a_img="", $a_cmd="", $a_onclick="")
insert command button
getNoticePropertiesStatus()
insertPaymentCommand($has_extension_prices=false)
const INFO_TAB_VISIBILITY
static _lookupObjId($a_id)
static _lookupTitle($a_id)
lookup object title
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
Creates a path for a start and endnode.
static _hasAccess($a_pobject_id, $a_user_id=0, $a_transaction=0)
static _lookupOrder($a_pobject_id)
static _hasExtensions($a_ref_id)
static _lookupPobjectId($a_ref_id)
static lookupTxt($a_mod_prefix, $a_pl_id, $a_lang_var)
Lookup language text.
static hasPreview($a_obj_id, $a_type="")
Determines whether the object with the specified reference id has a preview.
static lookupRenderStatus($a_obj_id)
Gets the render status for the object with the specified id.
static getInstance()
Factory.
static hasRatingInListGUI($a_obj_id, $a_obj_type)
getListTagsJSCall($a_hash, $a_update_code=null)
Get tagging js call.
initJavascript($a_ajax_url)
Init javascript.
static getTagsForUserAndObject($a_obj_id, $a_obj_type, $a_sub_obj_id, $a_sub_obj_type, $a_user_id)
Get tags for a user and an object.
static _getListTagsForObjects(array $a_obj_ids, $a_user_id=null)
Get tags for given object ids.
static _countTags($a_obj_ids, $a_all_users=false)
Count all tags for repository objects.
special template class to simplify handling of ITX/PEAR
static appendUrlParameterString($a_url, $a_par, $xml_style=false)
append URL parameter string ("par1=value1&par2=value2...") to given URL string
static sortArray($array, $a_array_sortby, $a_array_sortorder=0, $a_numeric=false, $a_keep_keys=false)
sortArray
static img($a_src, $a_alt="", $a_width="", $a_height="", $a_border=0, $a_id="", $a_class="")
Build img tag.
static getImagePath($img, $module_path="", $mode="output", $offline=false)
get image path (for images located in a template directory)
Access handler for personal workspace.
static getGotoLink($a_node_id, $a_obj_id, $a_additional=null)
Interface for GUI classes (PDGUI, LuceneSearchGUI...) that have to handle administration commands (cu...
Interface for gui classes (e.g ilLuceneSearchGUI) that offer add/remove to/from desktop.
redirection script todo: (a better solution should control the processing via a xml file)
if($_REQUEST['ilias_path']) define('ILIAS_HTTP_PATH' $_REQUEST['ilias_path']
if((!isset($_SERVER['DOCUMENT_ROOT'])) OR(empty($_SERVER['DOCUMENT_ROOT']))) $_SERVER['DOCUMENT_ROOT']