Server IP : 180.180.241.3 / Your IP : 216.73.216.252 Web Server : Microsoft-IIS/7.5 System : Windows NT NETWORK-NHRC 6.1 build 7601 (Windows Server 2008 R2 Standard Edition Service Pack 1) i586 User : IUSR ( 0) PHP Version : 5.3.28 Disable Function : NONE MySQL : ON | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /AppServ/www/news/nhrc-bk1/libraries/joomla/base/ |
Upload File : |
<?php /** * @version $Id:tree.php 6961 2007-03-15 16:06:53Z tcp $ * @package Joomla.Framework * @subpackage Base * @copyright Copyright (C) 2005 - 2010 Open Source Matters. All rights reserved. * @license GNU/GPL, see LICENSE.php * Joomla! is free software. This version may have been modified pursuant to the * GNU General Public License, and as distributed it includes or is derivative * of works licensed under the GNU General Public License or other free or open * source software licenses. See COPYRIGHT.php for copyright notices and * details. */ // Check to ensure this file is within the rest of the framework defined('JPATH_BASE') or die(); /** * Tree Class. * * @package Joomla.Framework * @subpackage Base * @since 1.5 */ class JTree extends JObject { /** * Root node */ var $_root = null; /** * Current working node */ var $_current = null; function __construct() { $this->_root = new JNode('ROOT'); $this->_current = & $this->_root; } function addChild(&$node, $setCurrent = false) { $this->_current->addChild($node); if ($setCurrent) { $this->_current =& $node; } } function getParent() { $this->_current =& $this->_current->getParent(); } function reset() { $this->_current =& $this->_root; } } /** * Tree Node Class. * * @package Joomla.Framework * @subpackage Base * @since 1.5 */ class JNode extends JObject { /** * Parent node */ var $_parent = null; /** * Array of Children */ var $_children = array(); function __construct() { return true; } function addChild( &$node ) { $node->setParent($this); $this->_children[] = & $node; } function &getParent() { return $this->_parent; } function setParent( &$node ) { $this->_parent = & $node; } function hasChildren() { return count($this->_children); } function &getChildren() { return $this->_children; } }