$menu01 = new HTML_TreeMenuXL(); #main node that shows current year $node1 = new HTML_TreeNodeXL("Archives", "", $nodeProperties); #get available years $SQL = "SELECT DISTINCT EXTRACT(YEAR FROM pub_date) AS yr FROM sionapros_pubs"; $SQL .= " WHERE EXTRACT(YEAR FROM pub_date) != '{$yr}' ORDER BY pub_date DESC"; $yrs = $db->execute($SQL); $i = 0; #$yr--; foreach ($yrs as $yr) { #get total number of articles published in the year $yrSQL = "SELECT COUNT(id) FROM sionapros_pubs WHERE EXTRACT(YEAR FROM pub_date) = {$yr['yr']}"; $yrRow = $db->execute($yrSQL); #yr node $var = "node_" . $i; ${$var} =& $node1->addItem(new HTML_TreeNodeXL("{$yr['yr']}[{$yrRow[0]['COUNT(id)']}]", "", $nodeProperties)); #category nodes under the main node with the tottal number of articles for each categroy $catSQL = "SELECT c.value,c.id,COUNT(cs.id) FROM sionapros_pubs AS cs"; $catSQL .= " INNER JOIN sionapros_categories AS c ON cs.category = c.id"; $catSQL .= " WHERE EXTRACT(YEAR FROM cs.pub_date) = '{$yr['yr']}' GROUP BY cs.category"; $catRes = $db->execute($catSQL); foreach ($catRes as $catRow) { #create the nodes for the current year $var = "node_" . $i; ${$var}->addItem(new HTML_TreeNodeXL("{$catRow['value']}[{$catRow['COUNT(cs.id)']}]", "index.php?prgm=sionapros-files&category={$catRow['id']}&year={$yr['yr']}", $nodeProperties)); } #$yr--; $i++; } #add node to the tree $menu01->addItem($node1);
$nx =& $nx->addItem(new HTML_TreeNodeXL("Nested Folder", "#link2", $nodeProperties)); $nx =& $nx->addItem(new HTML_TreeNodeXL("Deeper ...", "#link3", $nodeProperties)); $nx =& $nx->addItem(new HTML_TreeNodeXL("... and Deeper", "#link4", $nodeProperties)); $node0->addItem(new HTML_TreeNodeXL("deleted-items", "#link5", $nodeProperties)); $node0->addItem(new HTML_TreeNodeXL("sent-items", "#link6", $nodeProperties)); $node0->addItem(new HTML_TreeNodeXL("drafts", "#link7", $nodeProperties)); $node0->addItem(new HTML_TreeNodeXL("spam", "#link8", $nodeProperties)); $menu00->addItem($node0); $menu00->addItem(new HTML_TreeNodeXL("My Stuff", "#link9", $nodeProperties)); $menu00->addItem(new HTML_TreeNodeXL("Other Stuff", "#link10", $nodeProperties)); $menu00->addItem($node0); // Menu03 -- This uses no icons. The plus/minus are still present $nodeProperties = array("cssClass" => "auto"); $menu03 = new HTML_TreeMenuXL(); $node03 = new HTML_TreeNodeXL("INBOX", "#", $nodeProperties); $nx =& $node03->addItem(new HTML_TreeNodeXL("A Folder", "#link1", $nodeProperties)); $nx =& $nx->addItem(new HTML_TreeNodeXL("Nested Folder", "#link2", $nodeProperties)); $nx =& $nx->addItem(new HTML_TreeNodeXL("Deeper ...", "#link3", $nodeProperties)); $nx =& $nx->addItem(new HTML_TreeNodeXL("... and Deeper", "#link4", $nodeProperties)); $node03->addItem(new HTML_TreeNodeXL("deleted-items", "#link5", $nodeProperties)); $node03->addItem(new HTML_TreeNodeXL("sent-items", "#link6", $nodeProperties)); $node03->addItem(new HTML_TreeNodeXL("drafts", "#link7", $nodeProperties)); $node03->addItem(new HTML_TreeNodeXL("spam", "#link8", $nodeProperties)); $menu03->addItem($node03); $menu03->addItem(new HTML_TreeNodeXL("My Stuff", "#link9", $nodeProperties)); $menu03->addItem(new HTML_TreeNodeXL("Other Stuff", "#link10", $nodeProperties)); $menu03->addItem($node03); ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><!-- InstanceBegin template="/Templates/stdlayout01.dwt.php" codeOutsideHTMLIsLocked="false" --> <head> <!-- InstanceBeginEditable name="doctitle" -->