4define(
"IL_FM_POSITIVE", 1);
 
    5define(
"IL_FM_NEGATIVE", 2);
 
  170                global 
$ilias, $objDefinition;
 
  172                if (!isset($a_target) or !is_string($a_target))
 
  174                        $this->
ilias->raiseError(get_class($this).
"::Constructor(): No target given!",$this->
ilias->error_obj->WARNING);
 
  178                $devtypes = $objDefinition->getDevModeAll();
 
  180                if (count($devtypes > 0))
 
  185                        foreach ($devtypes as $type)
 
  192                $this->output = array();
 
  193                $this->expanded = array();
 
  194                $this->target = $a_target;
 
  195                $this->target_get = 
'ref_id';
 
  196                $this->frame_target = 
"content";
 
  197                $this->order_column = 
"title";
 
  198                $this->tree = 
new ilTree(ROOT_FOLDER_ID);
 
  199                $this->tree->initLangCode();
 
  200                $this->expand_target = 
$_SERVER[
"PATH_INFO"];
 
  201                $this->rbac_check = 
true;
 
  202                $this->output_icons = 
true;
 
  203                $this->expand_variable = 
"expand";
 
  205                $this->post_sort=
true;
 
  207                $this->highlighted = 
"";
 
  208                $this->show_minus = 
true;
 
  210                $this->asnch_expanding = 
false;
 
  240                $this->asnch_expanding = $a_val;
 
  250                return $this->asnch_expanding;
 
  262                $this->counter = $a_number;
 
  272                $this->title = $a_val;
 
  282                $this->textwidth = $a_length;
 
  291                return $this->textwidth;
 
  313                #$this->tree = new ilTree(ROOT_FOLDER_ID,$a_root_id); 
  314                $this->root_id = $a_root_id;
 
  326                return $this->root_id == 
null ?
 
  327                        $this->tree->getRootId() :
 
  338                $this->order_column = $a_column;
 
  348                if ($a_direction == 
"desc")
 
  350                        $this->order_direction = $a_direction;
 
  354                        $this->order_direction = 
"asc";
 
  365                if (!isset($a_target_get) or !is_string($a_target_get))
 
  367                        $this->
ilias->raiseError(get_class($this).
"::setTargetGet(): No target given!",$this->
ilias->error_obj->WARNING);
 
  370                $this->target_get = $a_target_get;
 
  380                if (!isset($a_params_get) or !is_array($a_params_get))
 
  382                        $this->
ilias->raiseError(get_class($this).
"::setTargetGet(): No target given!",$this->
ilias->error_obj->WARNING);
 
  385                foreach ($a_params_get as $key => $val)
 
  387                        $str .= 
"&".$key.
"=".$val;
 
  390                $this->params_get = $str;
 
  402                $this->expand_target = $a_exp_target;
 
  412                $this->up_frame = $a_up_frame;
 
  413                $this->up_script = $a_up_script;
 
  414                $this->up_params = $a_params;
 
  423                $this->highlighted = $a_id;
 
  433                $this->rbac_check = $a_check;
 
  443                $this->expand_variable = $a_var_name;
 
  453                $this->output_icons = $a_icons;
 
  467                        $this->is_clickable[
$a_type] = 
"";
 
  471                        $this->is_clickable[
$a_type] = 
"n";
 
  479                if (!$this->rbac_check)
 
  484                $ilBench->start(
"Explorer", 
"setOutput_isVisible");
 
  485                $visible = $rbacsystem->checkAccess(
'visible',$a_ref_id);
 
  486                $ilBench->stop(
"Explorer", 
"setOutput_isVisible");
 
  498                $this->tree_lead = $a_val;
 
  508                return $this->tree_lead;
 
  524                if ($this->is_clickable[
$a_type] == 
"n")
 
  540                $this->post_sort = $a_sort;
 
  550                $this->filter_mode = $a_mode;
 
  571                $this->use_standard_frame = $a_val;
 
  592                return $this->tree->getChilds($a_parent_id, $this->order_column);
 
  604        function setOutput($a_parent_id, $a_depth = 1,$a_obj_id = 0, $a_highlighted_subtree = 
false)
 
  606                global $rbacadmin, $rbacsystem, 
$ilBench;
 
  608#echo 'ParentId: '.$a_parent_id.' depth: '.$a_depth.' obj_id: '.$a_obj_id; 
  610                if (!isset($a_parent_id))
 
  612                        $this->
ilias->raiseError(get_class($this).
"::setOutput(): No node_id given!",$this->
ilias->error_obj->WARNING);
 
  615                if ($this->
showChilds($a_parent_id,$a_obj_id))
 
  627                if ($this->
forceExpanded($a_parent_id) && !in_array($a_parent_id, $this->expanded))
 
  629                        $this->expanded[] = $a_parent_id;
 
  632                if (count($objects) > 0)
 
  635                        $tab = ++$a_depth - 2;
 
  636                        if ($this->post_sort)
 
  638                                $objects = $this->
sortNodes($objects,$a_obj_id);
 
  641                        foreach ($objects as $key => $object)
 
  650                                if ($this->filtered == 
false or $this->
checkFilter($object[
"type"]) == 
false)
 
  652                                        if ($this->
isVisible($object[
'child'],$object[
'type']))
 
  654                                                $ilBench->start(
"Explorer", 
"setOutput_setFormatOptions");
 
  655                                                #echo 'CHILD getIndex() '.$object['child'].' parent: '.$this->getRoot(); 
  656                                                if ($object[
"child"] != $this->
getRoot())
 
  658                                                        $parent_index = $this->
getIndex($object);
 
  660                                                $this->format_options[
"$this->counter"][
"parent"]               = $object[
"parent"];
 
  661                                                $this->format_options[
"$this->counter"][
"child"]                = $object[
"child"];
 
  662                                                $this->format_options[
"$this->counter"][
"title"]                = $object[
"title"];
 
  663                                                $this->format_options[
"$this->counter"][
"type"]         = $object[
"type"];
 
  664                                                $this->format_options[
"$this->counter"][
"obj_id"]               = $object[
"obj_id"];
 
  665                                                $this->format_options[
"$this->counter"][
"desc"]                 = 
"obj_".$object[
"type"];
 
  666                                                $this->format_options[
"$this->counter"][
"depth"]                = 
$tab;
 
  667                                                $this->format_options[
"$this->counter"][
"container"]    = 
false;
 
  668                                                $this->format_options[
"$this->counter"][
"visible"]      = 
true;
 
  669                                                $this->format_options[
"$this->counter"][
"highlighted_subtree"] = $a_highlighted_subtree;
 
  672                                                for ($i = 0; $i < 
$tab; ++$i)
 
  674                                                         $this->format_options[
"$this->counter"][
"tab"][] = 
'blank';
 
  678                                                if ($parent_index == 0)
 
  680                                                        if (!$this->expand_all and !in_array($object[
"parent"], $this->expanded))
 
  682                                                                $this->expanded[] = $object[
"parent"];
 
  687                                                if ($object[
"child"] != $this->
getRoot() and ((!$this->expand_all and !in_array($object[
"parent"],$this->expanded))
 
  688                                                   or !$this->format_options[
"$parent_index"][
"visible"]))
 
  695                                                                if ($this->format_options[
"$this->counter"][
"visible"])
 
  700                                                                $this->format_options[
"$this->counter"][
"visible"] = 
false;
 
  705                                                if ($object[
"child"] != $this->
getRoot())
 
  707                                                        $this->format_options[
"$parent_index"][
"container"] = 
true;
 
  709                                                        if ($this->expand_all or in_array($object[
"parent"],$this->expanded))
 
  714                                                                        $this->format_options[
"$parent_index"][
"tab"][(
$tab-2)] = 
'forceexp';
 
  718                                                                        $this->format_options[
"$parent_index"][
"tab"][(
$tab-2)] = 
'minus';
 
  723                                                                $this->format_options[
"$parent_index"][
"tab"][(
$tab-2)] = 
'plus';
 
  729                                                $ilBench->stop(
"Explorer", 
"setOutput_setFormatOptions");
 
  732                                                if ($this->expand_all or in_array($object[
"parent"],$this->expanded) or ($object[
"parent"] == 0)
 
  735                                                        $highlighted_subtree = ($a_highlighted_subtree ||
 
  736                                                                ($object[
"child"] == $this->highlighted))
 
  741                                                        $this->
setOutput($object[
"child"],$a_depth,$object[
'obj_id'], $highlighted_subtree);
 
  780                $this->tree->getMaximumDepth();
 
  794                $ilBench->start(
"Explorer", 
"getOutput");
 
  796                $this->format_options[0][
"tab"] = array();
 
  800                for ($i=0;$i<$depth;++$i)
 
  805                include_once(
"./Services/YUI/classes/class.ilYuiUtil.php");
 
  807                $tpl->addJavaScript(
"./Services/UIComponent/Explorer/js/ilExplorer.js");
 
  813                $tpl_tree = 
new ilTemplate(
"tpl.tree.html", 
true, 
true, 
"Services/UIComponent/Explorer");
 
  816                if ((
$_GET[
"ict"] || 
$_POST[
"collapseAll"] != 
"" || 
$_POST[
"expandAll"] != 
"") && $this->up_frame != 
"")
 
  818                        $tpl_tree->setCurrentBlock(
"updater");
 
  819                        $tpl_tree->setVariable(
"UPDATE_FRAME", $this->up_frame);
 
  820                        $tpl_tree->setVariable(
"UPDATE_SCRIPT", $this->up_script);
 
  821                        if (is_array($this->up_params))
 
  824                                foreach ($this->up_params as $p)
 
  826                                        $up_str.=  $lim.
"'".$p.
"'";
 
  829                                $tpl_tree->setVariable(
"UPDATE_PARAMS", $up_str);
 
  831                        $tpl_tree->parseCurrentBlock();
 
  835                foreach ($this->format_options as $key => 
$options)
 
  851                        if (
$options[
"visible"] and $key != 0)
 
  864                $ilBench->stop(
"Explorer", 
"getOutput");
 
  866                $tpl_tree->setVariable(
"TREE_LEAD", 
"");
 
  867                if ($this->tree_lead != 
"")
 
  869                        $tpl_tree->setCurrentBlock(
"tree_lead");
 
  870                        $tpl_tree->setVariable(
"TREE_LEAD", $this->tree_lead);
 
  871                        $tpl_tree->parseCurrentBlock();
 
  873                if ($this->
getId() != 
"")
 
  875                        $tpl_tree->setVariable(
"TREE_ID", 
'id="'.$this->
getId().
'_tree"');
 
  878                $html = $tpl_tree->get();
 
  882                        $mtpl = 
new ilTemplate(
"tpl.main.html", 
true, 
true);
 
  884                        $mtpl->setVariable(
"BODY_CLASS", 
"il_Explorer");
 
  885                        $mtpl->addBlockFile(
"CONTENT", 
"content", 
"tpl.explorer.html");
 
  888                                $mtpl->setVariable(
"TXT_EXPLORER_HEADER", $this->
getTitle());
 
  890                        if ($this->
getId() != 
"")
 
  892                                $mtpl->setVariable(
"ID", 
'id="'.$this->
getId().
'"');
 
  895                        $mtpl->setCurrentBlock(
"content");
 
  896                        $mtpl->setVariable(
"EXPLORER", 
$html);
 
  897                        $mtpl->setVariable(
"EXP_REFRESH", 
$lng->txt(
"refresh"));
 
  898                        $mtpl->parseCurrentBlock();
 
  899                        $html = $mtpl->get();
 
  912                if ($a_item_depth < $a_cur_depth)
 
  915                        for ($i = 0; $i < ($a_cur_depth - $a_item_depth); $i++)
 
  917                                $a_tpl_tree->touchBlock(
"end_list_item");
 
  918                                $a_tpl_tree->touchBlock(
"element");
 
  920                                $a_tpl_tree->touchBlock(
"end_list");
 
  921                                $a_tpl_tree->touchBlock(
"element");
 
  924                else if ($a_item_depth == $a_cur_depth)
 
  927                        $a_tpl_tree->touchBlock(
"end_list_item");
 
  928                        $a_tpl_tree->touchBlock(
"element");
 
  938                if ($a_item_depth > $a_cur_depth)
 
  941                        if ($a_item_depth > 1)
 
  943                                $a_tpl_tree->touchBlock(
"start_list");
 
  947                                $a_tpl_tree->touchBlock(
"start_list_no_indent");
 
  949                        $a_tpl_tree->touchBlock(
"element");
 
  951                        $a_tpl_tree->touchBlock(
"start_list_item");
 
  952                        $a_tpl_tree->touchBlock(
"element");
 
  957                        $a_tpl_tree->touchBlock(
"start_list_item");
 
  958                        $a_tpl_tree->touchBlock(
"element");
 
  985                if (!isset($a_node_id) or !is_array($a_option))
 
  987                        $this->
ilias->raiseError(get_class($this).
"::formatObject(): Missing parameter or wrong datatype! ".
 
  988                                                                        "node_id: ".$a_node_id.
" options:".var_dump($a_option),$this->
ilias->error_obj->WARNING);
 
  992                foreach ((array) $a_option[
"tab"] as $picture)
 
  994                        if ($picture == 
'plus')
 
  996                                $tpl->setCurrentBlock(
"expander");
 
  997                                $tpl->setVariable(
"EXP_DESC", 
$lng->txt(
"collapsed"));
 
  998                                $tpl->setVariable(
"LINK_NAME", $a_node_id);
 
 1001                                        $target = $this->
createTarget(
'+',$a_node_id, $a_option[
"highlighted_subtree"]);
 
 1002                                        $tpl->setVariable(
"LINK_TARGET_EXPANDER", 
$target);
 
 1007                                        $tpl->setVariable(
"ONCLICK_TARGET_EXPANDER", 
" onclick=\"return il.Explorer.refresh('tree_div', '".
$target.
"');\"");
 
 1008                                        $tpl->setVariable(
"LINK_TARGET_EXPANDER", 
"#");
 
 1010                                $tpl->setVariable(
"IMGPATH", $this->
getImage(
"browser/plus.png"));
 
 1011                                $tpl->parseCurrentBlock();
 
 1015                        if ($picture == 
'forceexp')
 
 1017                                $tpl->setCurrentBlock(
"expander");
 
 1018                                $tpl->setVariable(
"EXP_DESC", 
$lng->txt(
"expanded"));
 
 1020                                $tpl->setVariable(
"LINK_NAME", $a_node_id);
 
 1021                                $tpl->setVariable(
"LINK_TARGET_EXPANDER", 
$target);
 
 1022                                $tpl->setVariable(
"IMGPATH", $this->
getImage(
"browser/forceexp.png"));
 
 1023                                $tpl->parseCurrentBlock();
 
 1027                        if ($picture == 
'minus' && $this->show_minus)
 
 1029                                $tpl->setCurrentBlock(
"expander");
 
 1030                                $tpl->setVariable(
"EXP_DESC", 
$lng->txt(
"expanded"));
 
 1031                                $tpl->setVariable(
"LINK_NAME", $a_node_id);
 
 1034                                        $target = $this->
createTarget(
'-',$a_node_id, $a_option[
"highlighted_subtree"]);
 
 1035                                        $tpl->setVariable(
"LINK_TARGET_EXPANDER", 
$target);
 
 1040                                        $tpl->setVariable(
"ONCLICK_TARGET_EXPANDER", 
" onclick=\"return il.Explorer.refresh('tree_div', '".
$target.
"');\"");
 
 1041                                        $tpl->setVariable(
"LINK_TARGET_EXPANDER", 
"#");
 
 1043                                $tpl->setVariable(
"IMGPATH", $this->
getImage(
"browser/minus.png"));
 
 1044                                $tpl->parseCurrentBlock();
 
 1052                        $tpl->setCurrentBlock(
"blank");
 
 1053                        $tpl->setVariable(
"BLANK_PATH", $this->
getImage(
"browser/blank.png"));
 
 1054                        $tpl->parseCurrentBlock();
 
 1057                if ($this->output_icons)
 
 1059                        $tpl->setCurrentBlock(
"icon");
 
 1060                        $tpl->setVariable(
"ICON_IMAGE" , $this->
getImage(
"icon_".$a_option[
"type"].
".svg", $a_option[
"type"], $a_obj_id));
 
 1062                        $tpl->setVariable(
"TARGET_ID" , 
"iconid_".$a_node_id);
 
 1063                        $this->iconList[] = 
"iconid_".$a_node_id;
 
 1064                        $tpl->setVariable(
"TXT_ALT_IMG",
 
 1065                                $this->
getImageAlt($lng->txt(
"icon").
" ".
$lng->txt($a_option[
"desc"]), $a_option[
"type"], $a_obj_id));
 
 1066                        $tpl->parseCurrentBlock();
 
 1069                if(strlen($sel = $this->
buildSelect($a_node_id,$a_option[
'type'])))
 
 1071                        $tpl->setCurrentBlock(
'select');
 
 1072                        $tpl->setVariable(
'OBJ_SEL',$sel);
 
 1073                        $tpl->parseCurrentBlock();
 
 1076                if ($this->
isClickable($a_option[
"type"], $a_node_id,$a_obj_id))        
 
 1078                        $tpl->setCurrentBlock(
"link");
 
 1086                        if ($style_class != 
"")
 
 1088                                $tpl->setVariable(
"A_CLASS", 
' class="'.$style_class.
'" ' );
 
 1091                        if (($onclick = $this->
buildOnClick($a_node_id, $a_option[
"type"], $a_option[
"title"])) != 
"")
 
 1093                                $tpl->setVariable(
"ONCLICK", 
"onClick=\"$onclick\"");
 
 1098                                $this->
buildTitle($a_option[
"title"], $a_node_id, $a_option[
"type"]),
 
 1099                                $this->textwidth, 
true));
 
 1101                                $this->
buildDescription($a_option[
"description"], $a_node_id, $a_option[
"type"]), $this->textwidth, 
true));
 
 1102                        $frame_target = $this->
buildFrameTarget($a_option[
"type"], $a_node_id, $a_option[
"obj_id"]);
 
 1103                        if ($frame_target != 
"")
 
 1105                                $tpl->setVariable(
"TARGET", 
" target=\"".$frame_target.
"\"");
 
 1107                        $tpl->parseCurrentBlock();
 
 1111                        $tpl->setCurrentBlock(
"text");
 
 1113                                $this->
buildTitle($a_option[
"title"], $a_node_id, $a_option[
"type"]), $this->textwidth, 
true));
 
 1115                                $this->
buildDescription($a_option[
"desc"], $a_node_id, $a_option[
"type"]), $this->textwidth, 
true));                    
 
 1116                        $tpl->parseCurrentBlock();
 
 1119                $tpl->setCurrentBlock(
"list_item");
 
 1120                $tpl->parseCurrentBlock();
 
 1121                $tpl->touchBlock(
"element");
 
 1137                return $a_default_text;
 
 1145                if ($a_id == $this->highlighted)
 
 1147                        return "il_HighlightedNode";
 
 1157                $target = (strpos($this->target, 
"?") === 
false)
 
 1159                        : $this->target.
"&";
 
 1160                return $target.$this->target_get.
"=".$a_node_id.$this->params_get;
 
 1201                return $this->frame_target;
 
 1214                if (!isset(
$a_type) or !is_string(
$a_type) or !isset($a_node_id))
 
 1216                        $this->
ilias->raiseError(get_class($this).
"::createTarget(): Missing parameter or wrong datatype! ".
 
 1217                                                                        "type: ".
$a_type.
" node_id:".$a_node_id,$this->ilias->error_obj->WARNING);
 
 1223                $a_node_id = 
$a_type == 
'+' ? $a_node_id : -(int) $a_node_id;
 
 1225                $sep = (is_int(strpos($this->expand_target, 
"?")))
 
 1230                $ict_str = ($a_highlighted_subtree || $this->highlighted == 
"")
 
 1235                        $ict_str.= 
"&cmdMode=asynch";
 
 1239                        return $this->expand_target.$sep.$this->expand_variable.
"=".$a_node_id.$this->params_get.$ict_str.
"#".abs($a_node_id);
 
 1243                        return $this->expand_target.$sep.$this->expand_variable.
"=".$a_node_id.$this->params_get.$ict_str;
 
 1255                $this->frame_target = $a_target;
 
 1265                for ($i = 0; $i < count($this->format_options); ++$i)
 
 1267                        if ($this->format_options[$i][
"depth"] == $a_depth+1
 
 1268                           and !$this->format_options[$i][
"container"]
 
 1269                                and $this->format_options[$i][
"depth"] != 1)
 
 1271                                $this->format_options[$i][
"tab"][
"$a_depth"] = 
"quer";
 
 1274                        if ($this->format_options[$i][
"depth"] == $a_depth+2)
 
 1276                                if ($this->
is_in_array($i+1,$this->format_options[$i][
"depth"]))
 
 1278                                        $this->format_options[$i][
"tab"][
"$a_depth"] = 
"winkel";
 
 1282                                        $this->format_options[$i][
"tab"][
"$a_depth"] = 
"ecke";
 
 1286                        if ($this->format_options[$i][
"depth"] > $a_depth+2)
 
 1290                                        $this->format_options[$i][
"tab"][
"$a_depth"] = 
"hoch";
 
 1305                for ($i=$a_start;$i<count($this->format_options);++$i)
 
 1307                        if ($this->format_options[$i][
"depth"] < $a_depth)
 
 1312                        if ($this->format_options[$i][
"depth"] == $a_depth)
 
 1328                if(!is_array($this->format_options))
 
 1333                foreach ($this->format_options as $key => $value)
 
 1335                        if (($value[
"child"] == $a_data[
"parent"]))
 
 1343                #$this->ilias->raiseError(get_class($this)."::getIndex(): Error in tree. No index found!",$this->ilias->error_obj->FATAL);
 
 1356                if (is_array($this->filter))
 
 1359                    foreach ($this->filter as $item)
 
 1361                                if ($item == $a_item)
 
 1371                        $this->filter = array();
 
 1373                if ($is_present == 0)
 
 1375                        $this->filter[] = $a_item;
 
 1390                if (is_array($this->filter))
 
 1395                        foreach ($this->filter as $item)
 
 1397                                if ($item != $a_item)
 
 1407                        $this->filter = $tmp;
 
 1433                if(!is_array(
$_SESSION[$this->expand_variable]))
 
 1438                if ($a_node_id > 0 && !in_array($a_node_id,
$_SESSION[$this->expand_variable]))
 
 1440                        array_push(
$_SESSION[$this->expand_variable],$a_node_id);
 
 1445                        $key = array_keys(
$_SESSION[$this->expand_variable],-(
int) $a_node_id);
 
 1446                        unset(
$_SESSION[$this->expand_variable][$key[0]]);
 
 1459                $this->expand_all = (bool) $a_mode;
 
 1460                $this->show_minus = $a_show_minus;
 
 1471                $this->filtered = $a_bool;
 
 1483                if (is_array($this->filter))
 
 1485                        if (in_array($a_item, $this->filter))
 
 1517                foreach ($a_nodes as $key => $node)
 
 1519                        if ($node[
"type"] == 
"adm")
 
 1528                isset($match) ? array_splice($a_nodes,$match,1) : 
"";
 
 1530                $a_nodes = 
ilUtil::sortArray($a_nodes,$this->order_column,$this->order_direction);
 
 1533                isset ($match) ? array_push($a_nodes,$adm_node) : 
"";
 
An exception for terminatinating execution or to throw for unit testing.
Class ilExplorer class for explorer view in admin frame.
setTargetGet($a_target_get)
set the varname in Get-string @access public
getNodeStyleClass($a_id, $a_type)
get style class for node
highlightNode($a_id)
set highlighted node
handleListEndTags(&$a_tpl_tree, $a_cur_depth, $a_item_depth)
handle list end tags ( and )
getFilterMode()
get filter mode
setAsynchExpanding($a_val)
Set asynch expanding.
__construct($a_target)
Constructor @access public.
handleListStartTags(&$a_tpl_tree, $a_cur_depth, $a_item_depth)
handle list start tags (
showChilds($a_parent_id)
determines wether the childs of an object should be shown or not note: this standard implementation a...
setExpand($a_node_id)
set the expand option this value is stored in a SESSION variable to save it different view (lo view,...
getUseStandardFrame()
Get use standard explorer frame.
setSessionExpandVariable($a_var_name="expand")
set name of expand session variable
addFilter($a_item)
adds item to the filter @access public
setRoot($a_root_id)
Set root node.
buildOnClick($a_node_id, $a_type, $a_title)
get onclick event handling (may be overwritten by derived classes)
initItemCounter($a_number)
Init item counter.
sortNodes($a_nodes, $a_parent_obj_id)
sort nodes and put adm object to the end of sorted array @access private
buildSelect($a_node_id, $a_type)
standard implementation for adding an option select box between image and title
is_in_array($a_start, $a_depth)
DESCRIPTION MISSING @access private.
checkFilter($a_item)
check if item is in filter @access private
setPostSort($a_sort)
process post sorting
setOutput($a_parent_id, $a_depth=1, $a_obj_id=0, $a_highlighted_subtree=false)
Creates output for explorer view in admin menue recursive method @access public.
setParamsGet($a_params_get)
set additional params to be passed in Get-string @access public
setExpandTarget($a_exp_target)
target script for expand icons
setTitleLength($a_length)
Set max title length.
outputIcons($a_icons)
output icons
setOrderDirection($a_direction)
set the order direction @access public
setTitle($a_val)
Set title.
setClickable($a_type, $a_clickable)
(de-)activates links for a certain object type
setFilterMode($a_mode=IL_FM_NEGATIVE)
set filter mode
getTreeLead()
Get tree leading content.
getOutput()
Creates output recursive method @access public.
getIndex($a_data)
get index of format_options array from specific ref_id,parent_id @access private
getImageAlt($a_default_text, $a_type="", $a_obj_id="")
get image alt text
setFrameTarget($a_target)
set target frame or not frame?
createLines($a_depth)
Creates lines for explorer view @access private.
modifyChilds($a_parent_id, $a_objects)
setFrameUpdater($a_up_frame, $a_up_script, $a_params="")
Set Explorer Updater.
forceExpandAll($a_mode, $a_show_minus=true)
force expandAll.
formatObject($tpl, $a_node_id, $a_option, $a_obj_id=0)
Creates output recursive method @access private.
checkPermissions($a_check)
check permissions via rbac
getImage($a_name, $a_type="", $a_obj_id="")
get image path (may be overwritten by derived classes)
setUseStandardFrame($a_val)
Set use standard frame.
getChildsOfNode($a_parent_id)
Get childs of node.
formatHeader($tpl, $a_obj_id, $a_option)
Creates output for header (is empty here but can be overwritten in derived classes)
delFilter($a_item)
removes item from the filter @access public
setTreeLead($a_val)
Set tree leading content.
buildFrameTarget($a_type, $a_child=0, $a_obj_id=0)
get frame target (may be overwritten by derived classes)
getAsynchExpanding()
Get asynch expanding.
getTitleLength()
Get max title length.
setFiltered($a_bool)
active/deactivate the filter @access public
createTarget($a_type, $a_node_id, $a_highlighted_subtree=false, $a_append_anch=true)
Creates Get Parameter @access private.
isVisible($a_ref_id, $a_type)
forceExpanded($a_obj_id)
force expansion of node
isClickable($a_type, $a_ref_id=0)
check if links for certain object type are activated
setOrderColumn($a_column)
set the order column @access public
buildTitle($a_title, $a_id, $a_type)
standard implementation for title, may be overwritten by derived classes
buildDescription($a_desc, $a_id, $a_type)
standard implementation for description, may be overwritten by derived classes
buildLinkTarget($a_node_id, $a_type)
get link target (may be overwritten by derived classes)
getMaximumTreeDepth()
Get maximum tree depth.
special template class to simplify handling of ITX/PEAR
Tree class data representation in hierachical trees using the Nested Set Model with Gaps by Joe Celco...
static shortenText($a_str, $a_len, $a_dots=false, $a_next_blank=false, $a_keep_extension=false)
shorten a string to given length.
static sortArray($array, $a_array_sortby, $a_array_sortorder=0, $a_numeric=false, $a_keep_keys=false)
sortArray
static getStyleSheetLocation($mode="output", $a_css_name="", $a_css_location="")
get full style sheet file name (path inclusive) of current user
static getImagePath($img, $module_path="", $mode="output", $offline=false)
get image path (for images located in a template directory)
static initConnection()
Init YUI Connection module.
redirection script todo: (a better solution should control the processing via a xml file)
if(!is_array($argv)) $options
if((!isset($_SERVER['DOCUMENT_ROOT'])) OR(empty($_SERVER['DOCUMENT_ROOT']))) $_SERVER['DOCUMENT_ROOT']