1: <?php
2: 3: 4: 5: 6: 7: 8: 9:
10:
11: 12: define("MAX_LEVEL",9);
13:
14:
15: function getTree($parent=0,$maxlevel=99,$tree="") {
16: $result = mysql_query(" SELECT idt,
17: nazev,
18: popis,
19: level
20: FROM ".$GLOBALS["rspredpona"]."topic
21: WHERE id_predka= ".$parent." and
22: level<".$maxlevel."
23: ORDER BY nazev
24: ",$GLOBALS["dbspojeni"]);
25:
26: if (mysql_num_rows($result)>0) {
27: if ($parent==0) {
28: $tree.= "<ul class=\"topictree\">\n";
29: } else {
30: $tree.= "<ul>\n";
31: }
32: while ($row = mysql_fetch_assoc($result)) {
33: $tree .= getTree(
34: $row['idt'],
35: $maxlevel,
36: "<li><a href=\"search.php?rsvelikost=sab&rstext=all-phpRS-all&rstema=".
37: $row['idt']."\" title=\"".
38: strip_tags($row['popis'])."\"><!-- SPAN".
39: $row['idt']." --><span>".
40: $row['nazev']."</span></a>\n"
41: );
42: }
43: $tree.= "</ul>\n";
44: }
45: return $tree;
46: }
47:
48: function GenerateTree() {
49: $cache = mysql_query(" SELECT `cache`
50: FROM ".$GLOBALS['rspredpona']."cache
51: ",$GLOBALS["dbspojeni"]);
52:
53: if (false === $cache || mysql_num_rows($cache)!==1) {
54: $newcache = getTree(0,MAX_LEVEL);
55:
56: $create = mysql_query(" CREATE TABLE IF NOT EXISTS ".$GLOBALS['rspredpona']."cache(
57: `cache` TEXT NOT NULL,) TYPE = MYISAM
58: ",$GLOBALS['dbspojeni']);
59:
60: $erase = mysql_query(" TRUNCATE TABLE `".$GLOBALS['rspredpona']."cache`
61: ",$GLOBALS['dbspojeni']);
62:
63: $write = mysql_query(" INSERT INTO `".$GLOBALS['rspredpona']."cache` ( `cache` )
64: VALUES ('".addslashes($newcache)."');
65: ",$GLOBALS['dbspojeni']);
66:
67: return("<!-- NEW -->\n".$newcache);
68: } else {
69: $row = mysql_fetch_assoc($cache);
70: return("<!-- CACHED -->\n".$row['cache']);
71: }
72: }
73:
74:
75: $obsahbloku = "\n\n<!-- TopicTree|START -->\n";
76: $obsahbloku .= GenerateTree();
77: $obsahbloku .= "<!-- TopicTree|END -->\n\n";
78:
79: if (isset($_GET['rstema'])) {
80: 81: $old = '<li><a href="search.php?rsvelikost=sab&rstext=all-phpRS-all&rstema='.$_GET['rstema'].'"';
82: $new = '<li class="activated"><a href="search.php?rsvelikost=sab&rstext=all-phpRS-all&rstema='.$_GET['rstema'].'"';
83: $obsahbloku = str_replace($old, $new, $obsahbloku);
84: 85: $old = '<!-- SPAN'.$_GET['rstema'].' --><span>';
86: $new = '<!-- ACTIVE SPAN --><span class="activetxt">';
87: $obsahbloku = str_replace($old, $new, $obsahbloku);
88: }
89:
90: switch ($GLOBALS["vzhledwebu"]->AktBlokTyp()):
91: case 1: Blok1($GLOBALS["vzhledwebu"]->AktBlokNazev(),$obsahbloku); break;
92: case 2: Blok2($GLOBALS["vzhledwebu"]->AktBlokNazev(),$obsahbloku); break;
93: case 3: Blok3($GLOBALS["vzhledwebu"]->AktBlokNazev(),$obsahbloku); break;
94: case 4: Blok4($GLOBALS["vzhledwebu"]->AktBlokNazev(),$obsahbloku); break;
95: case 5: Blok5($GLOBALS["vzhledwebu"]->AktBlokNazev(),$obsahbloku); break;
96: default: Blok1($GLOBALS["vzhledwebu"]->AktBlokNazev(),$obsahbloku); break;
97: endswitch;
98:
99: ?>