root/dev/common/admin/admin_navmanager.php @ 216

Revision 216, 7.3 KB (checked in by ralle030583, 15 years ago)

- new table kb3_navigation
- new Admin Section Navigation - Top Navigation
- removes customable top nav bar changes which came with last revs
- new tablestruct added to autoupgrade.php
- db_cache error when creating new table fixed

Line 
1<?php
2@set_time_limit(0);
3require_once('common/includes/class.parser.php');
4require_once('common/includes/class.kill.php');
5require_once('common/admin/admin_menu.php');
6
7$page = new Page();
8$page->setAdmin();
9$page->setTitle('Administration - Navigation - Top Navigation');
10
11if ($_GET['incPrio']){
12        increasePriority($_GET['incPrio']);
13}
14if ($_GET['decPrio']){
15        decreasePriority($_GET['decPrio']);
16}
17
18if ($_POST['name']){
19        renamePage($_POST['id'],$_POST['name']);
20}
21if ($_POST['target']){
22        changeTarget($_POST['id'],$_POST['target']);
23}
24if ($_POST['newUrl']){
25        changeUrl($_POST['id'],$_POST['newUrl']);
26}
27if ($_POST['new']){
28        newPage($_POST['name'],$_POST['url'],$_POST['target']);
29}
30if ($_POST['delete']){
31        delPage($_POST['id']);
32}
33//Reading global Navigation Bar
34$html .= "<div class=block-header2>Navigation for intern pages</div>";
35$qry = new DBQuery();
36$query = "select * from kb3_navigation WHERE intern = 1;";
37$result = $qry->execute($query);
38
39if ($result)
40{
41        $html .= "<table class=kb-table>";
42        $html .= "<tr><td width=100><u><b>Page</b></u></td><th colspan=2><u>Actions</u></th></tr>";
43        $odd = false;
44        while ($row = $qry->getRow())
45        {
46                if (!$odd)
47        {
48            $odd = true;
49            $class = 'kb-table-row-odd';
50        }
51        else
52        {
53            $odd = false;
54            $class = 'kb-table-row-even';
55        }
56                $html .= "<tr class=$class><td>".$row['descr']."</td><form action ='$PHP_SELF' method='POST'><td><input name='name' type='text' value='".$row['descr']."'></td><td><input type='hidden' name='id' value='".$row['ID']."'><input type='submit' value='rename'></td></form></tr>";
57        }
58        $html .= "</table>";
59}       
60$html .= "<div class=block-header2>Navigation for extern pages</div>";
61$qry = new DBQuery();
62$query = "select * from kb3_navigation WHERE intern = 0;";
63$result = $qry->execute($query);
64
65if ($result)
66{
67        $html .= "<table class=kb-table>";
68        $html .= "<tr><td width=100><u><b>Page</b></u></td><th colspan=2>Rename</th><th colspan=2>URL</th><th colspan=2>Target</th></tr>";
69        $odd = false;
70        while ($row = $qry->getRow())
71        {
72                $html .= "<tr class=$class><td>".$row['descr']."</td>";
73                $html .= "<form action ='$PHP_SELF' method='POST'><td><input name='name' type='text' value='".$row['descr']."'></td><td><input type='hidden' name='id' value='".$row['ID']."'><input type='submit' value='rename'></td></form>";
74                $html .= "<form action ='$PHP_SELF' method='POST'><td><input name='newUrl' type='text' value='".$row['url']."'></td><td><input type='hidden' name='id' value='".$row['ID']."'><input type='submit' value='change'></td></form>";
75                $html .= "<form action ='$PHP_SELF' method='POST'><td><select name='target'>";
76                $html .= "<option value='_self' ";
77                if ($row['target'] == '_self')
78                {
79                        $html .= "selected";
80                }
81                $html .= ">_self</option>";
82                $html .= "<option value='_blank' ";
83                if ($row['target'] == '_blank')
84                {
85                        $html .= "selected";
86                }
87                $html .=">_blank</option></select>";
88                $html .= "</td><td><input type='hidden' name='id' value='".$row['ID']."'><input type='submit' value='change'></td></form>";
89                $html .= "<form action ='$PHP_SELF' method='POST'><td><input name='delete' type='hidden' value='1'><input type='hidden' name='id' value='".$row['ID']."'><input type='submit' value='delete'></td></form>";
90                $html .= "</tr>";
91                if (!$odd)
92        {
93            $odd = true;
94            $class = 'kb-table-row-odd';
95        }
96        else
97        {
98            $odd = false;
99            $class = 'kb-table-row-even';
100        }
101        }
102        $html .= "<tr class=$class><td colspan=10><b><u>New Page:</b></u></td></tr>";
103        if (!$odd)
104       {
105           $odd = true;
106           $class = 'kb-table-row-odd';
107       }
108       else
109       {
110           $odd = false;
111           $class = 'kb-table-row-even';
112       }
113        $html .= "<tr class=$class><td>Description:</td>";
114        $html .= "<form action ='$PHP_SELF' method='POST'><td><input name='name' type='text'></td>";
115        $html .= "<td>URL:</td><td><input name='url' type='text' value='http://'></td><td>Target:</td>";
116        $html .= "<td><select name='target'><option value='_self'>_self</option><option value='_blank'>_blank</option></select>";
117        $html .= "</td><td><input type='hidden' name='new' value='1'><input type='submit' value='add'></td></form>";
118        $html .= "</tr>";
119        $html .= "</table>";
120}
121
122$html .= "<div class=block-header2>Order of the pages in Top Navigation Bar</div>";
123$qry = new DBQuery();
124$query = "select * from kb3_navigation WHERE nav_type = 'top' ORDER BY posnr;";
125$result = $qry->execute($query);
126
127if ($result)
128{       
129        $html .= "<table class=kb-table>";
130        $html .= "<tr><th><u>Nr</u></th><td><u><b>Page</b></u></td><th colspan=2><u>Actions</u></th></tr>";
131        $odd = false;
132        while ($row = $qry->getRow())
133        {
134                if (!$odd)
135        {
136            $odd = true;
137            $class = 'kb-table-row-odd';
138        }
139        else
140        {
141            $odd = false;
142            $class = 'kb-table-row-even';
143        }
144                $html .= "<tr class=$class><td align=right>". $row['posnr'] ."</td><td>" . $row['descr']."</td>";
145                $html .= "<td><a href='?a=admin_navmanager&decPrio=".$row['ID']."'><b> move up </b></a></td>";         
146                $html .= "<td><a href='?a=admin_navmanager&incPrio=".$row['ID']."'><b> down </b></a></td>";             
147                $html .= "<tr>" ;
148
149        }
150        $html .= "</table>";   
151}       
152$page->addContext($menubox->generate());
153$page->setContent($html);
154$page->generate();
155
156function increasePriority($id)
157{
158        $qry = new DBQuery();
159        $query = "SELECT posnr FROM kb3_navigation WHERE ID = $id";
160        $qry->execute($query);
161        $row = $qry->getRow();
162        $next = $row['posnr']+1;
163       
164        $qry = new DBQuery();
165        $query = "UPDATE kb3_navigation SET posnr = (posnr-1) WHERE nav_type = 'top' AND posnr = $next";
166        $qry->execute($query);
167       
168        $qry = new DBQuery();
169        $query = "UPDATE kb3_navigation SET posnr = (posnr+1) WHERE ID = $id";
170        $qry->execute($query);
171}
172function decreasePriority($id)
173{
174        $qry = new DBQuery();
175        $query = "SELECT posnr FROM kb3_navigation WHERE ID = $id";
176        $qry->execute($query);
177        $row = $qry->getRow();
178        $prev = $row['posnr']-1;
179       
180        $qry = new DBQuery();
181        $query = "UPDATE kb3_navigation SET posnr = (posnr+1) WHERE nav_type = 'top' AND posnr = $prev";
182        $qry->execute($query);
183       
184        $qry = new DBQuery();
185        $query = "UPDATE kb3_navigation SET posnr = (posnr-1) WHERE ID = $id";
186        $qry->execute($query);
187}
188
189function renamePage($id,$name){
190        $qry = new DBQuery();
191        $query = "UPDATE kb3_navigation SET descr ='$name' WHERE ID=$id";
192        $qry->execute($query);
193}
194
195function changeUrl($id,$url){
196        $qry = new DBQuery();
197        $query = "UPDATE kb3_navigation SET url ='$url' WHERE ID=$id";
198        $qry->execute($query);
199}
200function changeTarget($id,$target){
201        $qry = new DBQuery();
202        $query = "UPDATE kb3_navigation SET target ='$target' WHERE ID=$id";
203        $qry->execute($query);
204}
205function newPage($descr,$url,$target){
206        $qry = new DBQuery();
207        $query = "SELECT max(posnr) as nr FROM kb3_navigation WHERE nav_type='top'";
208        $qry->execute($query);
209        $row = $qry->getRow();
210        $posnr = $row['nr']+1;
211        $query = "INSERT INTO kb3_navigation SET descr='$descr', intern=0, nav_type='top',url='$url', target ='$target', posnr=$posnr, page='ALL_PAGES'";
212        $qry->execute($query);
213}
214function delPage($id){
215        $qry = new DBQuery();
216        $query = "DELETE FROM kb3_navigation WHERE ID=$id";
217        $qry->execute($query);
218}
219?>
Note: See TracBrowser for help on using the browser.