Subversion-Projekte lars-tiefland.php_share

Revision

Blame | Letzte Änderung | Log anzeigen | RSS feed

<?
        function getNavTree($root = "root", $rootInfo = false)
        {
                static $getNavTreeBuffer = array();
                
                if ($getNavTreeBuffer != array())
                {
                        $buffer = $getNavTreeBuffer;
                }
                else
                {
                        $query="
                                select
                                        directory.*,
                                        if (directory.Father = -1, 'root', directory.Father) as Father,
                                        Herstellerkatalog.Logo1 as Logo
                                from
                                        directory
                                left join
                                        Herstellerkatalog
                                on
                                        Herstellerkatalog.Bezeichnung = directory.Name
                                where
                                        directory.status=0
                                and
                                        directory.Artikelstamm=0
                                and
                                        directory.Language= '".$_SESSION['INI']['language']."'
                                order by
                                        directory.Kennung               
                        ";

                        $buffer=array();
                        $result = mysql_query ($query) or die (mysql_errno().": ".mysql_error()."<hr>$query<hr>");
                        while($zeile=mysql_fetch_assoc($result))
                        {
                                $buffer[$zeile['ID']]=$zeile;
                        }
                
                        foreach(array_keys($buffer) as $id)
                        {
                                if (!$buffer[$id]['childNodes']) { $buffer[$id]['childNodes'] = array(); }
                                $buffer[$buffer[$id]['Father']]['childNodes'][] = &$buffer[$id];
                        }
                }       
                $getNavTreeBuffer = $buffer;
                if ($rootInfo == true)
                {
                        return $buffer[$root];
                }
                else
                {
                        return $buffer[$root]['childNodes'];
                }
        }
?>