Public Member Functions | |
| ilFileExplorer ($a_directory, $a_target) | |
| Constructor public. | |
| setOrderColumn ($a_column) | |
| set the order column public | |
| setTargetGet ($a_target_get) | |
| set the varname in Get-string public | |
| setParamsGet ($a_params_get) | |
| set additional params to be passed in Get-string public | |
| setExpandTarget ($a_exp_target) | |
| target script for expand icons | |
| checkPermissions ($a_check) | |
| check permissions via rbac | |
| outputIcons ($a_icons) | |
| output icons | |
| setOutput ($a_parent_dir, $a_depth=1) | |
| Creates output for explorer view in admin menue recursive method public. | |
| getFiles ($a_parent_dir, $a_order) | |
| getOutput () | |
| Creates output recursive method public. | |
| formatHeader ($a_obj_id, $a_option) | |
| Creates output for header (is empty here but can be overwritten in derived classes). | |
| formatObject ($a_node_id, $a_option) | |
| Creates output recursive method private. | |
| createTarget ($a_type, $a_node_id) | |
| Creates Get Parameter private. | |
| setFrameTarget ($a_target) | |
| set target frame or not frame? | |
| createLines ($a_depth) | |
| Creates lines for explorer view private. | |
| is_in_array ($a_start, $a_depth) | |
| DESCRIPTION MISSING private. | |
| getIndex ($a_data) | |
| get index of format_options array from specific ref_id,parent_id private | |
| addFilter ($a_item) | |
| adds item to the filter public | |
| delFilter ($a_item) | |
| adds item to the filter public | |
| setExpand ($a_node_id) | |
| set the expand option this value is stored in a SESSION variable to save it different view (lo view, frm view,...) private | |
| setFiltered ($a_bool) | |
| active/deactivate the filter public | |
| checkFilter ($a_item) | |
| check if item is in filter private | |
Data Fields | |
| $ilias | |
| $output | |
| $format_options | |
| $directory | |
| $target | |
| $target_get | |
| $params_get | |
| $expanded | |
| $order_column | |
| $expand_target | |
| $output_icons | |
Definition at line 33 of file class.ilFileExplorer.php.
| ilFileExplorer::addFilter | ( | $ | a_item | ) |
adds item to the filter public
| string | object type to add |
Definition at line 559 of file class.ilFileExplorer.php.
{
$ispresent = 0;
if (is_array($this->filter))
{
//run through filter
foreach ($this->filter as $item)
{
if ($item == $a_item)
{
$is_present = 1;
return false;
}
}
}
else
{
$this->filter = array();
}
if ($is_present == 0)
{
$this->filter[] = $a_item;
}
return true;
}
| ilFileExplorer::checkFilter | ( | $ | a_item | ) |
check if item is in filter private
| string |
Definition at line 677 of file class.ilFileExplorer.php.
Referenced by setOutput().
{
if (is_array($this->filter))
{
return in_array($a_item, $this->filter);
}
else
{
return false;
}
}
Here is the caller graph for this function:| ilFileExplorer::checkPermissions | ( | $ | a_check | ) |
check permissions via rbac
| boolean | $a_check check true/false |
Definition at line 206 of file class.ilFileExplorer.php.
{
$this->rbac_check = $a_check;
}
| ilFileExplorer::createLines | ( | $ | a_depth | ) |
Creates lines for explorer view private.
| integer |
Definition at line 476 of file class.ilFileExplorer.php.
References is_in_array().
{
for ($i = 0; $i < count($this->format_options); ++$i)
{
if ($this->format_options[$i]["depth"] == $a_depth+1
and !$this->format_options[$i]["container"]
and $this->format_options[$i]["depth"] != 1)
{
$this->format_options[$i]["tab"]["$a_depth"] = "quer";
}
if ($this->format_options[$i]["depth"] == $a_depth+2)
{
if ($this->is_in_array($i+1,$this->format_options[$i]["depth"]))
{
$this->format_options[$i]["tab"]["$a_depth"] = "winkel";
}
else
{
$this->format_options[$i]["tab"]["$a_depth"] = "ecke";
}
}
if ($this->format_options[$i]["depth"] > $a_depth+2)
{
if ($this->is_in_array($i+1,$a_depth+2))
{
$this->format_options[$i]["tab"]["$a_depth"] = "hoch";
}
}
}
}
Here is the call graph for this function:| ilFileExplorer::createTarget | ( | $ | a_type, | |
| $ | a_node_id | |||
| ) |
Creates Get Parameter private.
| string | ||
| integer |
Definition at line 441 of file class.ilFileExplorer.php.
Referenced by formatObject().
{
if (!isset($a_type) or !is_string($a_type) or !isset($a_node_id))
{
$this->ilias->raiseError(get_class($this)."::createTarget(): Missing parameter or wrong datatype! ".
"type: ".$a_type." node_id:".$a_node_id,$this->ilias->error_obj->WARNING);
}
// SET expand parameter:
// positive if object is expanded
// negative if object is compressed
$a_node_id = $a_type == '+' ? $a_node_id : -(int) $a_node_id;
$sep = (is_int(strpos($this->expand_target, "?")))
? "&"
: "?";
return $this->expand_target.$sep."expand=".$a_node_id.$this->params_get;
}
Here is the caller graph for this function:| ilFileExplorer::delFilter | ( | $ | a_item | ) |
adds item to the filter public
| string | object type to delete |
Definition at line 596 of file class.ilFileExplorer.php.
{
//check if a filter exists
if (is_array($this->filter))
{
//build copy of the existing filter without the given item
$tmp = array();
foreach ($this->filter as $item)
{
if ($item != $a_item)
{
$tmp[] = $item;
}
else
{
$deleted = 1;
}
}
$this->filter = $tmp;
}
else
{
return false;
}
if ($deleted == 1)
{
return true;
}
else
{
return false;
}
}
| ilFileExplorer::formatHeader | ( | $ | a_obj_id, | |
| $ | a_option | |||
| ) |
Creates output for header (is empty here but can be overwritten in derived classes).
public
| integer | obj_id | |
| integer | array options |
Definition at line 357 of file class.ilFileExplorer.php.
Referenced by getOutput().
{
}
Here is the caller graph for this function:| ilFileExplorer::formatObject | ( | $ | a_node_id, | |
| $ | a_option | |||
| ) |
Creates output recursive method private.
| integer | ||
| array |
Definition at line 369 of file class.ilFileExplorer.php.
References $lng, $target, $tpl, createTarget(), and ilUtil::getImagePath().
Referenced by getOutput().
{
global $lng;
if (!isset($a_node_id) or !is_array($a_option))
{
$this->ilias->raiseError(get_class($this)."::formatObject(): Missing parameter or wrong datatype! ".
"node_id: ".$a_node_id." options:".var_dump($a_option),$this->ilias->error_obj->WARNING);
}
$tpl = new ilTemplate("tpl.tree.html", true, true);
foreach ($a_option["tab"] as $picture)
{
if ($picture == 'plus')
{
$target = $this->createTarget('+',$a_node_id);
$tpl->setCurrentBlock("expander");
$tpl->setVariable("LINK_TARGET", $target);
$tpl->setVariable("IMGPATH", ilUtil::getImagePath("browser/plus.gif"));
$tpl->parseCurrentBlock();
}
if ($picture == 'minus')
{
$target = $this->createTarget('-',$a_node_id);
$tpl->setCurrentBlock("expander");
$tpl->setVariable("LINK_TARGET", $target);
$tpl->setVariable("IMGPATH", ilUtil::getImagePath("browser/minus.gif"));
$tpl->parseCurrentBlock();
}
if ($picture == 'blank' or $picture == 'winkel'
or $picture == 'hoch' or $picture == 'quer' or $picture == 'ecke')
{
$tpl->setCurrentBlock("expander");
$tpl->setVariable("IMGPATH", ilUtil::getImagePath("browser/".$picture.".gif"));
$tpl->setVariable("TXT_ALT_IMG", $lng->txt($a_option["desc"]));
$tpl->parseCurrentBlock();
}
}
if ($this->output_icons)
{
$tpl->setCurrentBlock("icon");
$tpl->setVariable("ICON_IMAGE" ,ilUtil::getImagePath("icon_".$a_option["type"].".gif"));
$tpl->setVariable("TXT_ALT_IMG", $lng->txt($a_option["desc"]));
$tpl->parseCurrentBlock();
}
$tpl->setCurrentBlock("row");
$target = (strpos($this->target, "?") === false) ?
$this->target."?" : $this->target."&";
$tpl->setVariable("LINK_TARGET", $target.$this->target_get."=".$a_node_id.$this->params_get);
$tpl->setVariable("TITLE", $a_option["title"]);
if ($this->frame_target != "")
{
$tpl->setVariable("TARGET", " target=\"".$this->frame_target."\"");
}
$tpl->parseCurrentBlock();
$this->output[] = $tpl->get();
}
Here is the call graph for this function:
Here is the caller graph for this function:| ilFileExplorer::getFiles | ( | $ | a_parent_dir, | |
| $ | a_order | |||
| ) |
Definition at line 298 of file class.ilFileExplorer.php.
References $file.
Referenced by setOutput().
{
$files = array();
$handle = opendir($a_parent_dir);
while (false !== ($file = readdir($handle)))
{
if (!is_dir($file))
{
$files[] = array("type" => "file", "name" => $file);
}
else
{
$files[] = array("type" => "dir", "name" => $file);
}
}
return $files;
}
Here is the caller graph for this function:| ilFileExplorer::getIndex | ( | $ | a_data | ) |
get index of format_options array from specific ref_id,parent_id private
| array | object data |
Definition at line 539 of file class.ilFileExplorer.php.
Referenced by setOutput().
{
foreach ($this->format_options as $key => $value)
{
if (($value["child"] == $a_data["parent"]))
{
return $key;
}
}
// exit on error
$this->ilias->raiseError(get_class($this)."::getIndex(): Error in tree. No index found!",$this->ilias->error_obj->FATAL);
}
Here is the caller graph for this function:| ilFileExplorer::getOutput | ( | ) |
Creates output recursive method public.
Definition at line 322 of file class.ilFileExplorer.php.
References formatHeader(), and formatObject().
{
$this->format_options[0]["tab"] = array();
/* ???
$depth = $this->tree->getMaximumDepth();
for ($i=0;$i<$depth;++$i)
{
$this->createLines($i);
}*/
foreach ($this->format_options as $key => $options)
{
if ($options["visible"] and $key != 0)
{
$this->formatObject($options["child"],$options);
}
if ($key == 0)
{
$this->formatHeader($options["child"],$options);
}
}
return implode('',$this->output);
}
Here is the call graph for this function:| ilFileExplorer::ilFileExplorer | ( | $ | a_directory, | |
| $ | a_target | |||
| ) |
Constructor public.
| string | scriptname |
Definition at line 117 of file class.ilFileExplorer.php.
References $ilias.
{
global $ilias;
if (!isset($a_target) or !is_string($a_target))
{
$this->ilias->raiseError(get_class($this)."::Constructor(): No target given!",$this->ilias->error_obj->WARNING);
}
if (!isset($a_directory) or !is_string($a_directory))
{
$this->ilias->raiseError(get_class($this)."::Constructor(): No directory given!",$this->ilias->error_obj->WARNING);
}
$this->ilias =& $ilias;
$this->directory = $a_directory;
$this->output = array();
$this->expanded = array();
$this->target = $a_target;
$this->target_get = 'ref_id';
$this->frame_target = "_top";
$this->order_column = "title";
$this->expand_target = $_SERVER["PATH_INFO"];
$this->rbac_check = true;
$this->output_icons = true;
}
| ilFileExplorer::is_in_array | ( | $ | a_start, | |
| $ | a_depth | |||
| ) |
DESCRIPTION MISSING private.
| integer | ||
| integer |
Definition at line 516 of file class.ilFileExplorer.php.
Referenced by createLines().
{
for ($i=$a_start;$i<count($this->format_options);++$i)
{
if ($this->format_options[$i]["depth"] < $a_depth)
{
break;
}
if ($this->format_options[$i]["depth"] == $a_depth)
{
return true;
}
}
return false;
}
Here is the caller graph for this function:| ilFileExplorer::outputIcons | ( | $ | a_icons | ) |
output icons
| boolean | $a_icons output icons true/false |
Definition at line 216 of file class.ilFileExplorer.php.
{
$this->output_icons = $a_icons;
}
| ilFileExplorer::setExpand | ( | $ | a_node_id | ) |
set the expand option this value is stored in a SESSION variable to save it different view (lo view, frm view,...) private
| string | pipe-separated integer |
Definition at line 638 of file class.ilFileExplorer.php.
References $_SESSION.
{
// IF ISN'T SET CREATE SESSION VARIABLE
if(!is_array($_SESSION["expand"]))
{
$_SESSION["expand"] = array($this->tree->getRootId());
}
// IF $_GET["expand"] is positive => expand this node
if ($a_node_id > 0 && !in_array($a_node_id,$_SESSION["expand"]))
{
array_push($_SESSION["expand"],$a_node_id);
}
// IF $_GET["expand"] is negative => compress this node
if ($a_node_id < 0)
{
$key = array_keys($_SESSION["expand"],-(int) $a_node_id);
unset($_SESSION["expand"][$key[0]]);
}
$this->expanded = $_SESSION["expand"];
}
| ilFileExplorer::setExpandTarget | ( | $ | a_exp_target | ) |
target script for expand icons
| string | $a_exp_target script name of target script(may include parameters) initially set to $_SERVER["PATH_INFO"] |
Definition at line 196 of file class.ilFileExplorer.php.
{
$this->expand_target = $a_exp_target;
}
| ilFileExplorer::setFiltered | ( | $ | a_bool | ) |
active/deactivate the filter public
| boolean |
Definition at line 665 of file class.ilFileExplorer.php.
{
$this->filtered = $a_bool;
return true;
}
| ilFileExplorer::setFrameTarget | ( | $ | a_target | ) |
set target frame or not frame?
| string | public |
Definition at line 466 of file class.ilFileExplorer.php.
{
$this->frame_target = $a_target;
}
| ilFileExplorer::setOrderColumn | ( | $ | a_column | ) |
set the order column public
| string | name of order column |
Definition at line 149 of file class.ilFileExplorer.php.
{
$this->order_column = $a_column;
}
| ilFileExplorer::setOutput | ( | $ | a_parent_dir, | |
| $ | a_depth = 1 | |||
| ) |
Creates output for explorer view in admin menue recursive method public.
| integer | parent_node_id where to start from (default=0, 'root') | |
| integer | depth level where to start (default=1) |
Definition at line 230 of file class.ilFileExplorer.php.
References $counter, $tab, checkFilter(), getFiles(), and getIndex().
{
static $counter = 0;
if (!isset($a_parent_id))
{
$this->ilias->raiseError(get_class($this)."::setOutput(): No node_id given!",$this->ilias->error_obj->WARNING);
}
$files = $this->getFiles($a_parent_dir, $this->order_column);
if (count($files) > 0)
{
$tab = ++$a_depth - 2;
foreach ($objects as $key => $object)
{
//ask for FILTER
if ($this->filtered == false || $this->checkFilter($object["type"])==true)
{
if ($object["child"] != $this->tree->getRootId())
{
$parent_index = $this->getIndex($object);
}
$this->format_options["$counter"]["parent"] = $object["parent"];
$this->format_options["$counter"]["child"] = $object["child"];
$this->format_options["$counter"]["title"] = $object["title"];
$this->format_options["$counter"]["type"] = $object["type"];
$this->format_options["$counter"]["desc"] = "obj_".$object["type"];
$this->format_options["$counter"]["depth"] = $tab;
$this->format_options["$counter"]["container"] = false;
$this->format_options["$counter"]["visible"] = true;
// Create prefix array
for ($i = 0; $i < $tab; ++$i)
{
$this->format_options["$counter"]["tab"][] = 'blank';
}
// only if parent is expanded and visible, object is visible
if ($object["child"] != $this->tree->getRootId() and (!in_array($object["parent"],$this->expanded)
or !$this->format_options["$parent_index"]["visible"]))
{
$this->format_options["$counter"]["visible"] = false;
}
// if object exists parent is container
if ($object["child"] != $this->tree->getRootId())
{
$this->format_options["$parent_index"]["container"] = true;
if (in_array($object["parent"],$this->expanded))
{
$this->format_options["$parent_index"]["tab"][($tab-2)] = 'minus';
}
else
{
$this->format_options["$parent_index"]["tab"][($tab-2)] = 'plus';
}
}
++$counter;
// Recursive
$this->setOutput($object["child"],$a_depth);
} //if FILTER
} //foreach
} //if
} //function
Here is the call graph for this function:| ilFileExplorer::setParamsGet | ( | $ | a_params_get | ) |
set additional params to be passed in Get-string public
| array |
Definition at line 174 of file class.ilFileExplorer.php.
{
if (!isset($a_params_get) or !is_array($a_params_get))
{
$this->ilias->raiseError(get_class($this)."::setTargetGet(): No target given!",$this->ilias->error_obj->WARNING);
}
foreach ($a_params_get as $key => $val)
{
$str .= "&".$key."=".$val;
}
$this->params_get = $str;
}
| ilFileExplorer::setTargetGet | ( | $ | a_target_get | ) |
set the varname in Get-string public
| string | varname containing Ids to be used in GET-string |
Definition at line 159 of file class.ilFileExplorer.php.
{
if (!isset($a_target_get) or !is_string($a_target_get))
{
$this->ilias->raiseError(get_class($this)."::setTargetGet(): No target given!",$this->ilias->error_obj->WARNING);
}
$this->target_get = $a_target_get;
}
| ilFileExplorer::$directory |
Definition at line 61 of file class.ilFileExplorer.php.
| ilFileExplorer::$expand_target |
Definition at line 103 of file class.ilFileExplorer.php.
| ilFileExplorer::$expanded |
Definition at line 89 of file class.ilFileExplorer.php.
| ilFileExplorer::$format_options |
Definition at line 54 of file class.ilFileExplorer.php.
| ilFileExplorer::$ilias |
Definition at line 40 of file class.ilFileExplorer.php.
Referenced by ilFileExplorer().
| ilFileExplorer::$order_column |
Definition at line 96 of file class.ilFileExplorer.php.
| ilFileExplorer::$output |
Definition at line 47 of file class.ilFileExplorer.php.
| ilFileExplorer::$output_icons |
Definition at line 110 of file class.ilFileExplorer.php.
| ilFileExplorer::$params_get |
Definition at line 82 of file class.ilFileExplorer.php.
| ilFileExplorer::$target |
Definition at line 68 of file class.ilFileExplorer.php.
Referenced by formatObject().
| ilFileExplorer::$target_get |
Definition at line 75 of file class.ilFileExplorer.php.
1.7.1