<div class="normal">
JavaScript Tree Menu
</div>
<?php 
require_once 'phplm320/lib/PHPLIB.php';
require_once 'phplm320/lib/layersmenu-common.inc.php';
require_once 'phplm320/lib/treemenu.inc.php';
$mid = new TreeMenu();
//$mid->setDirroot('./');
$mid->setLibjsdir('./phplm320/libjs/');
$mid->setImgdir('./phplm320/menuimages/');
$mid->setImgwww('phplm320/menuimages/');
$mid->setIcondir('./phplm320/menuicons/');
$mid->setIconwww('phplm320/menuicons/');
$mid->setMenuStructureFile('phplm320/layersmenu-vertical-1.txt');
$mid->setIconsize(16, 16);
$mid->parseStructureForMenu('treemenu1');
//$mid->setSelectedItemByCount('treemenu1', 7);
$mid->setSelectedItemByUrl('treemenu1', basename(__FILE__));
print $mid->newTreeMenu('treemenu1');
/* alternatively:
$mid->newTreeMenu('treemenu1');
$mid->printTreeMenu('treemenu1');
*/
/* alternatively:
$mid->newTreeMenu('treemenu1');
$tree_menu1 = $mid->getTreeMenu('treemenu1');
print $tree_menu1;
*/
?>
</div>
function auth_generate_admin_menu($menu_obj)
{
    $menu_obj->auth_update();
    global $C_translate, $smarty, $C_list;
    $i = 1;
    $js = '';
    $arr = $menu_obj->module;
    $arr2 = $menu_obj->module;
    // loop through the modules
    while (list($module, $val) = each($arr)) {
        if (!empty($val[2])) {
            if ($val[1] == $val[0] || empty($val[0]) || empty($val[1])) {
                $module_name = $C_translate->translate('menu', $module, '');
                $parent = $val[0];
                $module_id = $val[0];
                $module_arr[$i]["name"] = $module_name;
                $module_arr[$i]["module"] = $module;
                // loop through the methods
                while (list($method, $meth_arr) = each($arr[$module])) {
                    if (gettype($meth_arr) == 'array' && !empty($meth_arr[1])) {
                        $method_name = $C_translate->translate('menu_' . $method, $module, '');
                        if (empty($meth_arr[2])) {
                            $page = $module . ':' . $method;
                        } else {
                            $page = eregi_replace('%%', $module, $meth_arr[2]);
                        }
                        $module_arr[$i]["methods"][] = array('name' => $method_name, 'page' => $page);
                    }
                }
                // Loop through the sub-modules:
                reset($arr2);
                $ii = 0;
                while (list($module, $val) = each($arr2)) {
                    if (!empty($val[2])) {
                        if ($val[1] == $parent && $module_id != $val[0]) {
                            $module_name = $C_translate->translate('menu', $module, '');
                            $module_arr[$i]["sub_name"][$ii] = $module_name;
                            // loop through the methods
                            while (list($method, $meth_arr) = each($arr2[$module])) {
                                if (gettype($meth_arr) == 'array' && !empty($meth_arr[1])) {
                                    $method_name = $C_translate->translate('menu_' . $method, $module, '');
                                    if (empty($meth_arr[2])) {
                                        $page = $module . ':' . $method;
                                    } else {
                                        $page = eregi_replace('%%', $module, $meth_arr[2]);
                                    }
                                    $module_arr[$i]["sub_methods"][$ii][] = array('name' => $method_name, 'page' => $page);
                                }
                            }
                            $ii++;
                        }
                    }
                }
                $i++;
            }
        }
    }
    // Generate the main modules:
    $js = '';
    $js .= ".|Overview|javascript:openUrl('?_page=core:admin');\n";
    $js .= ".|Exit Administration|javascript:exitAdmin();\n";
    $js .= ".|Misc\n";
    $js .= "..|Documentation|http://agilebill.com/documentation|||mainFrame\n";
    $js .= "..|Agileco News|http://forum.agileco.com/forumdisplay.php?f=26|||mainFrame\n";
    $js .= "..|Version Check|?_page=module:upgrade|||mainFrame\n";
    for ($i = 1; $i <= count($module_arr); $i++) {
        $name = $module_arr[$i]['name'];
        $js .= ".|{$name}\n";
        // Generate the main methods:
        for ($ii = 0; $ii < count($module_arr[$i]['methods']); $ii++) {
            $name = $module_arr[$i]['methods'][$ii]['name'];
            $page = $module_arr[$i]['methods'][$ii]['page'];
            $js .= "..|{$name}|javascript:openUrl('?_page={$page}')\n";
        }
        // Generate the sub modules:
        for ($ii = 0; $ii < count(@$module_arr[$i]['sub_name']); $ii++) {
            $name = $module_arr[$i]['sub_name'][$ii];
            $js .= "..|{$name}|#\n";
            // Generate the sub methods:
            for ($iii = 0; $iii < count($module_arr[$i]['sub_methods'][$ii]); $iii++) {
                $name = $module_arr[$i]['sub_methods'][$ii][$iii]['name'];
                $page = $module_arr[$i]['sub_methods'][$ii][$iii]['page'];
                $js .= "...|{$name}|javascript:openUrl('?_page={$page}')\n";
            }
        }
    }
    # set the dates for the quicksearch
    $smarty->assign('today_start', $C_list->date(mktime(0, 0, 0, date("m"), date("d"), date("Y"))));
    $smarty->assign('week_start', $C_list->date(mktime(0, 0, 0, date("m"), date("d") - 7, date("Y"))));
    $smarty->assign('month_start', $C_list->date(mktime(0, 0, 0, date("m"), 1, date("Y"))));
    # Generate the menu
    require_once PATH_INCLUDES . "phplayers/PHPLIB.php";
    require_once PATH_INCLUDES . "phplayers/layersmenu-common.inc.php";
    require_once PATH_INCLUDES . "phplayers/treemenu.inc.php";
    // unstoppable agileco logo ;)
    echo '<img src="http://www.agileco.com/images/poweredby.gif" border="0" style="position: absolute; top: 8px; left: 45px;"/>';
    $mnu = new TreeMenu();
    $mnu->setMenuStructureString($js);
    $mnu->setIconsize(16, 16);
    $mnu->parseStructureForMenu('treemenu1');
    $mnu->setTreemenuTheme("kde_");
    return $mnu->newTreeMenu('treemenu1');
    return $js;
}
 - a file-based example with a Horizontal Layers Menu and a JavaScript Tree Menu</b>
</div>
</div>

<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td width="20%" valign="top">
<div class="normalbox">
<div class="normal">
JavaScript Tree Menu
</div>
<?php 
require_once 'lib/treemenu.inc.php';
$treemid = new TreeMenu();
$treemid->setMenuStructureFile('layersmenu-vertical-1.txt');
$treemid->setIconsize(16, 16);
$treemid->parseStructureForMenu('treemenu1');
//$treemid->setSelectedItemByCount('treemenu1', 4);
$treemid->setSelectedItemByUrl('treemenu1', basename(__FILE__));
print $treemid->newTreeMenu('treemenu1');
?>
</div>
<br />
<center>
<a href="http://phplayersmenu.sourceforge.net/"><img border="0"
src="LOGOS/powered_by_phplm.png" alt="Powered by PHP Layers Menu" height="31" width="88" /></a>
</center>
<br />
<center>
<a href="http://validator.w3.org/check/referer"><img border="0"
src="images/valid-xhtml10.png" alt="Valid XHTML 1.0!" height="31" width="88" /></a>
예제 #4
0
 function action()
 {
     require_once $_SERVER["DOCUMENT_ROOT"] . '/openqrm/base/class/layersmenu.class.php';
     require_once $_SERVER["DOCUMENT_ROOT"] . '/openqrm/base/class/PHPLIB.php';
     $mid = new TreeMenu();
     $mid->dirroot = $this->RootDir;
     $mid->imgdir = $this->ImgDir . 'menu/';
     $mid->imgwww = $this->WebDir . 'img/menu/';
     $mid->icondir = $this->ImgDir . 'menu/';
     $mid->iconwww = $this->WebDir . 'img/menu/';
     $strMenuStructure = '';
     // define the base menu item
     $strMenuStructure .= implode('', file($this->RootDir . '/web/base/server/aa_server/menu.txt'));
     if ($strMenuStructure != '') {
         $mid->setMenuStructureString($strMenuStructure);
     }
     $mid->setIconsize(18, 18);
     $mid->parseStructureForMenu('menu1_');
     //		$mid->replaceStringInUrls('menu1_', '&', '&amp;');
     //		var_dump($_SERVER['QUERY_STRING']);
     $mid->setSelectedItemByUrl('menu1_', $_SERVER['QUERY_STRING']);
     $mid->newTreeMenu('menu1_');
     $mid2 = new TreeMenu();
     $mid2->dirroot = $this->RootDir;
     $mid2->imgdir = $this->ImgDir . 'menu/';
     $mid2->imgwww = $this->WebDir . 'img/menu/';
     $mid2->icondir = $this->ImgDir . 'menu/';
     $mid2->iconwww = $this->WebDir . 'img/menu/';
     $strMenuStructure = '';
     // define the plugin manager menu item
     $strMenuStructure .= implode('', file($this->PluginsDir . '/aa_plugins/menu.txt'));
     // define the base plugin sections
     $strMenuStructure .= $this->parse_subsection("Cloud", "cloud");
     $strMenuStructure .= $this->parse_subsection("Deployment", "deployment");
     $strMenuStructure .= $this->parse_subsection("Highavailability", "HA");
     $strMenuStructure .= $this->parse_subsection("Management", "management");
     $strMenuStructure .= $this->parse_subsection("Monitoring", "monitoring");
     $strMenuStructure .= $this->parse_subsection("Network", "network");
     $strMenuStructure .= $this->parse_subsection("Storage", "storage");
     $strMenuStructure .= $this->parse_subsection("Virtualization", "virtualization");
     $strMenuStructure .= $this->parse_subsection("Misc", "misc");
     if ($strMenuStructure != '') {
         $mid2->setMenuStructureString($strMenuStructure);
     }
     $mid2->setIconsize(18, 18);
     $mid2->parseStructureForMenu('menu2_');
     $mid2->setSelectedItemByUrl('menu2_', $_SERVER['QUERY_STRING']);
     $mid2->newTreeMenu('menu2_');
     $t = $this->response->html->template($this->tpldir . '/index_menu.tpl.php');
     $t->add("time()", 'timestamp');
     $t->add($mid->getTreeMenu('menu1_'), 'menu_1');
     $t->add($mid2->getTreeMenu('menu2_'), 'menu_2');
     return $t;
 }