root/dev/common/includes/class.navigation.php @ 237

Revision 237, 1.7 KB (checked in by ralle030583, 15 years ago)

some stuff for top navigation

Line 
1<?php
2//for easier patching
3
4
5class Navigation{
6       
7        function Navigation()
8        {
9                require_once('common/includes/autoupgrade.php');
10                check_navigationtable();
11        $this->sql_start = "SELECT * FROM kb3_navigation";
12        $this->sql_end = " AND KBSITE LIKE '" . KB_SITE . "' ORDER BY posnr";
13        $this->type_ = 'top';
14        }
15       
16        function execQuery()
17        {
18                $this->qry = new DBQuery();
19                $query = $this->sql_start;
20                $query .= " WHERE nav_type LIKE '$this->type_'";
21               
22                if (killboard::hasContracts() == false){
23                        $query .= " AND url NOT LIKE '?a=contracts'";
24                }
25                if (killboard::hasCampaigns() == false){
26                        $query .= " AND url NOT LIKE '?a=campaigns'";
27                }
28                if (config::get('public_losses'))
29                {
30                        $query .= " AND url NOT LIKE '?a=losses'";
31                }
32                if (!config::get('show_standings'))
33                {
34                        $query .= " AND url NOT LIKE '?a=standings'";
35                }
36                if (config::get('public_stats')=='remove')
37                {
38                        $query .= " AND url NOT LIKE '?a=stats'";
39                }
40                $query .= " AND (page LIKE '".$this->site_."' OR page LIKE 'ALL_PAGES') AND hidden = 0";
41                $query .= $this->sql_end;
42                $this->qry->execute($query);
43        }
44       
45        function getRow(){
46                return $this->qry->getRow();
47        }
48       
49        function setNavType($type)
50        {
51                $this->type_ = $type;
52        }
53       
54        function setSite($site){
55                $this->site_ = $site;
56        }
57       
58        function generateMenu()
59    {
60        $this->site_ = $site;
61        $this->execQuery();
62       
63        $menu = new Menu();
64        while ($row = $this->getRow())
65        {
66                // i know thats a bad hack
67                $url = $row['url'] .'" target="'.$row['target'].'"';
68                $menu->add($url , $row['descr']);
69        }   
70        return $menu;
71    }
72   
73    function generateMenuBox()
74    {
75        // TODO
76    }
77}
78?>
Note: See TracBrowser for help on using the browser.