Mercurial > owls
annotate Includes/Nav.inc.php @ 0:3021ce32ee14 owls-0.5
begin of using hg for owls
author | "Meillo r e t u r n s <meillo@marmaro.de>" |
---|---|
date | Sun, 03 Dec 2006 22:32:13 +0100 |
parents | |
children | ab74e95a8040 |
rev | line source |
---|---|
0
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
1 <!-- Nav --> |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
2 <ul id="nav"> |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
3 |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
4 <?php |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
5 // build nav tree |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
6 echo ' '. navtree(0) ."\n"; |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
7 |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
8 |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
9 // find unmatched nodes (orphans) |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
10 $sql = sprintf(" |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
11 select distinct |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
12 idParent |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
13 from %sOwls |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
14 where |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
15 idParent not in (select id from %sOwls) |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
16 and idParent != 0 -- not the real root |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
17 -- and idParent != id -- avoid endless recursion |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
18 order by name asc |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
19 ", |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
20 DB_PREFIX, |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
21 DB_PREFIX |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
22 ); |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
23 $result = mysql_query($sql) or die(mysql_error()); |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
24 unset($sql); |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
25 |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
26 // output only if there are orphans |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
27 if (mysql_num_rows($result)) { |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
28 echo ' <li id="orphans">orphans<ul>'; |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
29 // output subtree for every orphan |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
30 while($row = mysql_fetch_array($result)) { |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
31 echo navtree($row['idParent']); |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
32 } |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
33 unset($row); |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
34 mysql_free_result($result); |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
35 |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
36 echo '</ul></li>'; |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
37 } |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
38 ?> |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
39 |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
40 <li id="login"> |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
41 <?php |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
42 if ($lsys->loggedIn()) { |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
43 echo ' <a href="'. $_GET['id'] .'logout" style="color: #c00;">logout</a>'; |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
44 } else { |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
45 ?> |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
46 <form name="loginform" action="<?php echo $_GET['id']; ?>login" method="post" enctype="multipart/form-data"> |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
47 <input name="login_loginname" type="text" /> |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
48 <input name="login_password" type="password" /> |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
49 <input name="login" type="submit" value="login" style="padding: 0; cursor: pointer;" /> |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
50 </form> |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
51 <?php |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
52 } |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
53 ?> |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
54 </li> |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
55 |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
56 </ul> |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
57 |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
58 <?php |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
59 |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
60 function navtree($root) { |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
61 // fetch subcategories |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
62 $result = mysql_query("select * from ". DB_PREFIX ."Owls where idParent = $root order by name asc"); |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
63 |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
64 $return = ''; |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
65 while($row = mysql_fetch_array($result)) { |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
66 $return .= '<li><a href="'. $row['id'] .'"'. (($_GET['id'] == $row['id']) ? ' id="selected"' : '') .'>'. $row['name'] .'</a>'; |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
67 if ($row['id'] != $row['idParent']) { |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
68 $subtree = navtree($row['id']); |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
69 if (!empty($subtree)) { |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
70 $return .= ' <a href="javascript:toggleVisibility(\''. $row[id] .'\')" id="ctrl'. $row['id'] .'" style="display: none;">-</a>'; |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
71 $return .= '<ul id="node'. $row['id'] .'">'. $subtree .'</ul>'; |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
72 } |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
73 unset($subtree); |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
74 } |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
75 $return .= '</li>'; |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
76 } |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
77 unset($row); |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
78 mysql_free_result($result); |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
79 |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
80 // return |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
81 return $return; |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
82 } |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
83 |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
84 ?> |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
85 |
3021ce32ee14
begin of using hg for owls
"Meillo r e t u r n s <meillo@marmaro.de>"
parents:
diff
changeset
|
86 <!-- Content --> |