Class Mail Explorer class for explorer view for mailboxes. More...
Inheritance diagram for ilMailExplorer:
Collaboration diagram for ilMailExplorer:Public Member Functions | |
| ilMailExplorer ($a_target, $a_user_id) | |
| Constructor public. | |
| getOutput () | |
| Creates output overwritten method from class Explorer public. | |
| setOutput ($a_parent, $a_depth=1) | |
| Overwritten method from class.Explorer.php to avoid checkAccess selects recursive method public. | |
| formatHeader ($a_obj_id, $a_option) | |
| method to create a mail system specific header 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 | |
| createTarget ($a_type, $a_child) | |
| Creates Get Parameter private. | |
| getImage ($a_name, $a_type="", $a_obj_id="") | |
| get image path (may be overwritten by derived classes) | |
Data Fields | |
| $user_id | |
| $root_id | |
Class Mail Explorer class for explorer view for mailboxes.
Definition at line 35 of file class.ilMailExplorer.php.
| ilMailExplorer::createTarget | ( | $ | a_type, | |
| $ | a_child | |||
| ) |
Creates Get Parameter private.
| string | ||
| integer |
Reimplemented from ilExplorer.
Definition at line 258 of file class.ilMailExplorer.php.
{
// SET expand parameter:
// positive if object is expanded
// negative if object is compressed
$a_child = $a_type == '+' ? $a_child : -(int) $a_child;
return eregi_replace("(mexpand=)(-?[0-9]+)", "\\1".$a_child, $_SERVER["REQUEST_URI"]);
}
| ilMailExplorer::formatHeader | ( | $ | a_obj_id, | |
| $ | a_option | |||
| ) |
method to create a mail system specific header public
| integer | obj_id | |
| integer | array options |
Definition at line 221 of file class.ilMailExplorer.php.
Referenced by getOutput().
{
}
Here is the caller graph for this function:| ilMailExplorer::getImage | ( | $ | a_name, | |
| $ | a_type = "", |
|||
| $ | a_obj_id = "" | |||
| ) |
get image path (may be overwritten by derived classes)
Reimplemented from ilExplorer.
Definition at line 271 of file class.ilMailExplorer.php.
References ilUtil::getImagePath().
{
if ($a_type) return ilUtil::getImagePath("icon_".$a_type.".gif");
else return ilUtil::getImagePath($a_name);
}
Here is the call graph for this function:| ilMailExplorer::getOutput | ( | ) |
Creates output overwritten method from class Explorer public.
Reimplemented from ilExplorer.
Definition at line 72 of file class.ilMailExplorer.php.
References $tpl, ilExplorer::createLines(), formatHeader(), ilExplorer::formatObject(), ilExplorer::handleListEndTags(), and ilExplorer::handleListStartTags().
{
global $tpl;
$this->format_options[0]["tab"] = array();
$depth = $this->tree->getMaximumDepth();
for ($i=0;$i<$depth;++$i)
{
$this->createLines($i);
}
$tpl->addBlockFile("EXPLORER_TOP", "exp_top", "tpl.explorer_top.html");
// set global body class
$tpl->setVariable("BODY_CLASS", "il_Explorer");
$tpl_tree = new ilTemplate("tpl.tree.html", true, true);
$cur_depth = -1;
foreach ($this->format_options as $key => $options)
{
if (!$options["visible"])
{
continue;
}
// end tags
$this->handleListEndTags($tpl_tree, $cur_depth, $options["depth"]);
// start tags
$this->handleListStartTags($tpl_tree, $cur_depth, $options["depth"]);
$cur_depth = $options["depth"];
if ($options["visible"] and $key != 0)
{
$this->formatObject($tpl_tree, $options["child"],$options);
}
if($key == 0)
{
$this->formatHeader($tpl_tree, $options["child"],$options);
}
}
$this->handleListEndTags($tpl_tree, $cur_depth, -1);
return $tpl_tree->get();
}
Here is the call graph for this function:| ilMailExplorer::ilMailExplorer | ( | $ | a_target, | |
| $ | a_user_id | |||
| ) |
Constructor public.
| string | scriptname | |
| int | user_id |
Definition at line 57 of file class.ilMailExplorer.php.
References ilExplorer::ilExplorer().
{
parent::ilExplorer($a_target);
$this->tree = new ilTree($a_user_id);
$this->tree->setTableNames('mail_tree','mail_obj_data');
$this->root_id = $this->tree->readRootId();
$this->user_id = $a_user_id;
}
Here is the call graph for this function:| ilMailExplorer::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 |
Reimplemented from ilExplorer.
Definition at line 231 of file class.ilMailExplorer.php.
References $_SESSION.
{
// IF ISN'T SET CREATE SESSION VARIABLE
if(!is_array($_SESSION["mexpand"]))
{
$_SESSION["mexpand"] = array();
}
// IF $_GET["expand"] is positive => expand this node
if($a_node_id > 0 && !in_array($a_node_id,$_SESSION["mexpand"]))
{
array_push($_SESSION["mexpand"],$a_node_id);
}
// IF $_GET["expand"] is negative => compress this node
if($a_node_id < 0)
{
$key = array_keys($_SESSION["mexpand"],-(int) $a_node_id);
unset($_SESSION["mexpand"][$key[0]]);
}
$this->expanded = $_SESSION["mexpand"];
}
| ilMailExplorer::setOutput | ( | $ | a_parent, | |
| $ | a_depth = 1 | |||
| ) |
Overwritten method from class.Explorer.php to avoid checkAccess selects 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 134 of file class.ilMailExplorer.php.
References $lng, $tab, and ilExplorer::getIndex().
{
global $lng;
static $counter = 0;
if ($objects = $this->tree->getChilds($a_parent,"title,type"))
{
// var_dump("<pre>",$objects,"</pre");
$tab = ++$a_depth - 2;
if($a_depth < 4)
{
for($i=0;$i<count($objects);++$i)
{
$objects[$i]["title"] = $lng->txt("mail_".$objects[$i]["title"]);
}
}
foreach ($objects as $key => $object)
{
//ask for FILTER
if ($object["child"] != $this->root_id)
{
//$data = $this->tree->getParentNodeData($object["child"]);
$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"] = $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';
}
// fix explorer (sometimes explorer disappears)
if ($parent_index == 0)
{
if (!in_array($object["parent"], $this->expanded))
{
$this->expanded[] = $object["parent"];
}
}
// only if parent is expanded and visible, object is visible
if ($object["child"] != $this->root_id 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->root_id)
{
$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);
} //foreach
} //if
} //function
Here is the call graph for this function:| ilMailExplorer::$root_id |
Reimplemented from ilExplorer.
Definition at line 49 of file class.ilMailExplorer.php.
| ilMailExplorer::$user_id |
Definition at line 42 of file class.ilMailExplorer.php.
1.7.1