Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
<?php
function getPageID($name) {
global $DB;
$query=$DB->GetRow("select id from menu where title='".$name."'");
return (int)@$query['id'];
}
function translate($word) {
global $language, $DB;
if ($language['code']!="en") {
$query=$DB->GetRow("select title, title".$language['db']." from menu where title='".$word."'");
if ($query['title'.$language['db']]!="") return $query['title'.$language['db']];
else return $query['title'];
} else return $word;
}
function parseMenu($res) {
global $language;
$menu = array();
foreach ($res as $row) {
if ($language['code']!="en") {
if ($row['title'.$language['db']]!="") $title=$row['title'.$language['db']];
else $title=$row['title'];
$menu[$title] = $row['target'];
} else {
$menu[$row['title']] = $row['target'];
}
}
return $menu;
}
if (isset($pathlist[1]))
$pagename = $pathlist[1]; else $pagename = "";
// Menu stuff
$smarty->assign("select",$pagename);
if (isset($pathlist[2]))
$smarty->assign("subselect",$pathlist[2]);
else
$smarty->assign("subselect",$pagename);
$query = "select * from menu where parent is NULL and (permission is NULL";
// Temporary - all members should be members of the "users" group but aren't
if ($session->loggedin) $query .= " or permission='users'";
foreach ($session->groups as $group => $value) {
$query .= " or permission='$group'";
}
$query .= ") order by menuorder";
$res = $DB->GetAll($query);
$menu = parseMenu($res);
// this needs to choose the actual current one
$res = $DB->GetAll("select * from menu where parent=".getPageID($pagename)." order by menuorder");
if (count($res)>0) {
$submenu = parseMenu($res);
$menu[translate($pagename)] = $submenu;
}
$smarty->assign("menu",$menu);
?>