r972: Rebranding from Iris Studios to Blue Static
[bugdar.git] / includes / class_admin_navigation.php
1 <?php
2 /*=====================================================================*\
3 || ###################################################################
4 || # Bugdar [#]version[#]
5 || # Copyright ©2002-[#]year[#] Blue Static
6 || #
7 || # This program is free software; you can redistribute it and/or modify
8 || # it under the terms of the GNU General Public License as published by
9 || # the Free Software Foundation; version [#]gpl[#] of the License.
10 || #
11 || # This program is distributed in the hope that it will be useful, but
12 || # WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
13 || # or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
14 || # more details.
15 || #
16 || # You should have received a copy of the GNU General Public License along
17 || # with this program; if not, write to the Free Software Foundation, Inc.,
18 || # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
19 || ###################################################################
20 \*=====================================================================*/
21
22 /**
23 * Navigation Link System
24 *
25 * A static class whose methods are called to generate the common navigation
26 * links for the Admin CP.
27 *
28 * @author Blue Static
29 * @copyright Copyright ©2002 - [#]year[#], Blue Static
30 * @version $Revision$
31 * @package Bugdar
32 *
33 */
34 class NavLinks
35 {
36 // ###################################################################
37 /**
38 * All the different locations under the "Options" tab
39 *
40 * @access public
41 */
42 function optionsPages()
43 {
44 global $navigator, $lang;
45
46 $navigator->add_component('section', 'options-pages', 'options', $lang->string('Options'), null);
47 $navigator->add_component('link', 'options-pages-home', 'options-pages', $lang->string('Home'), 'index.php');
48 $navigator->add_component('link', 'options-pages-settings', 'options-pages', $lang->string('Bugdar Settings'), 'setting.php');
49 $navigator->add_component('link', 'options-pages-languages', 'options-pages', $lang->string('Languages'), 'language.php');
50 $navigator->add_component('link', 'options-pages-userhelp', 'options-pages', $lang->string('User Help Items'), 'userhelp.php');
51 }
52
53 // ###################################################################
54 /**
55 * Adding a new language
56 *
57 * @access public
58 */
59 function languagesAdd()
60 {
61 global $navigator, $lang;
62
63 $navigator->add_component('section', 'options-languages', 'options', $lang->string('Languages'), null);
64 $navigator->add_component('link', 'options-languages-add', 'options-languages', $lang->string('Add New Language'), 'language.php?do=add');
65 }
66
67 // ###################################################################
68 /**
69 * Edit a language
70 *
71 * @access public
72 *
73 * @param integer Language ID
74 */
75 function languagesEdit($id)
76 {
77 global $navigator, $lang;
78
79 NavLinks::languagesAdd();
80 $navigator->add_component('link', 'options-languages-edit', 'options-languages', $lang->string('Edit Language'), 'language.php?do=edit&amp;languageid=' . $id);
81 $navigator->add_component('link', 'options-languages-reload', 'options-languages', $lang->string('Reload XML'), 'language.php?do=reload&amp;languageid=' . $id);
82 $navigator->add_component('link', 'options-languages-delete', 'options-languages', $lang->string('Delete'), 'language.php?do=delete&amp;languageid=' . $id);
83 }
84
85 // ###################################################################
86 /**
87 * Adding a new user help item
88 *
89 * @access public
90 */
91 function userhelpAdd()
92 {
93 global $navigator, $lang;
94
95 $navigator->add_component('section', 'options-userhelp', 'options', $lang->string('User Help Items'), null);
96 $navigator->add_component('link', 'options-userhelp-add', 'options-userhelp', $lang->string('Add New Item'), 'userhelp.php?do=add');
97 }
98
99 // ###################################################################
100 /**
101 * Adding a new product
102 *
103 * @access public
104 */
105 function productsAdd()
106 {
107 global $navigator, $lang;
108
109 $navigator->add_component('section', 'products', 'products', $lang->string('Products'), null);
110 $navigator->add_component('link', 'products-manage', 'products', $lang->string('Manage Products'), 'product.php');
111 $navigator->add_component('link', 'products-add', 'products', $lang->string('Add New Product'), 'product.php?do=addproduct');
112 }
113
114 // ###################################################################
115 /**
116 * Editing a product
117 *
118 * @access public
119 *
120 * @param integer Product ID
121 */
122 function productsEdit($id)
123 {
124 global $navigator, $lang;
125
126 NavLinks::productsAdd();
127 $navigator->add_component('section', 'products-edit', 'products', $lang->string('Edit Product'), null);
128 $navigator->add_component('link', 'products-edit', 'products-edit', $lang->string('Edit Product'), 'product.php?do=editproduct&amp;productid=' . $id);
129 $navigator->add_component('link', 'products-edit-version', 'products-edit', $lang->string('Add New Version'), 'product.php?do=addversion&amp;productid=' . $id);
130 $navigator->add_component('link', 'products-edit-delete', 'products-edit', $lang->string('Delete Product'), 'product.php?do=deleteproduct&amp;productid=' . $id);
131 }
132
133 // ###################################################################
134 /**
135 * Fields tab pages
136 *
137 * @access public
138 */
139 function fieldsPages()
140 {
141 global $navigator, $lang;
142
143 $navigator->add_component('section', 'fields-pages', 'fields', $lang->string('Fields'), null);
144 $navigator->add_component('link', 'fields-pages-fields', 'fields-pages', $lang->string('Custom Fields'), 'field.php');
145 $navigator->add_component('link', 'fields-pages-priorities', 'fields-pages', $lang->string('Priorities'), 'priority.php');
146 $navigator->add_component('link', 'fields-pages-resolutions', 'fields-pages', $lang->string('Resolutions'), 'resolution.php');
147 $navigator->add_component('link', 'fields-pages-severities', 'fields-pages', $lang->string('Severities'), 'severity.php');
148 $navigator->add_component('link', 'fields-pages-statuses', 'fields-pages', $lang->string('Statuses'), 'status.php');
149 $navigator->add_component('link', 'fields-pages-autoactions', 'fields-pages', $lang->string('Automatic Actions'), 'autoaction.php');
150 }
151
152 // ###################################################################
153 /**
154 * Adding an new custom field
155 *
156 * @access public
157 */
158 function fieldsAdd()
159 {
160 global $navigator, $lang;
161
162 $navigator->add_component('section', 'fields', 'fields', $lang->string('Custom Fields'), null);
163 $navigator->add_component('link', 'fields-add', 'fields', $lang->string('Add New Custom Field'), 'field.php?do=add');
164 }
165
166 // ###################################################################
167 /**
168 * Edit a custom field
169 *
170 * @access public
171 *
172 * @param integer Field ID
173 */
174 function fieldsEdit($id)
175 {
176 global $navigator, $lang;
177
178 NavLinks::fieldsAdd();
179 $navigator->add_component('link', 'fields-delete', 'fields', $lang->string('Delete'), 'field.php?do=delete&amp;fieldid=' . $id);
180 }
181
182 // ###################################################################
183 /**
184 * Adding an new priority
185 *
186 * @access public
187 */
188 function prioritiesAdd()
189 {
190 global $navigator, $lang;
191
192 $navigator->add_component('section', 'priorities', 'fields', $lang->string('Priorities'), null);
193 $navigator->add_component('link', 'priorities-add', 'priorities', $lang->string('Add New Priority'), 'priority.php?do=add');
194 }
195
196 // ###################################################################
197 /**
198 * Edit a priority
199 *
200 * @access public
201 *
202 * @param integer Priority ID
203 */
204 function prioritiesEdit($id)
205 {
206 global $navigator, $lang;
207
208 NavLinks::prioritiesAdd();
209 $navigator->add_component('link', 'priorities-delete', 'priorities', $lang->string('Delete'), 'priority.php?do=delete&amp;priorityid=' . $id);
210 }
211
212 // ###################################################################
213 /**
214 * Adding an new resolution
215 *
216 * @access public
217 */
218 function resolutionsAdd()
219 {
220 global $navigator, $lang;
221
222 $navigator->add_component('section', 'resolutions', 'fields', $lang->string('Resolutions'), null);
223 $navigator->add_component('link', 'resolutions-add', 'resolutions', $lang->string('Add New Resolution'), 'resolution.php?do=add');
224 }
225
226 // ###################################################################
227 /**
228 * Edit a resolution
229 *
230 * @access public
231 *
232 * @param integer Resolution ID
233 */
234 function resolutionsEdit($id)
235 {
236 global $navigator, $lang;
237
238 NavLinks::resolutionsAdd();
239 $navigator->add_component('link', 'resolutions-delete', 'resolutions', $lang->string('Delete'), 'resolution.php?do=delete&amp;resolutionid=' . $id);
240 }
241
242 // ###################################################################
243 /**
244 * Adding an new severity
245 *
246 * @access public
247 */
248 function severitiesAdd()
249 {
250 global $navigator, $lang;
251
252 $navigator->add_component('section', 'severities', 'fields', $lang->string('Severities'), null);
253 $navigator->add_component('link', 'severities-add', 'severities', $lang->string('Add New Severity'), 'severity.php?do=add');
254 }
255
256 // ###################################################################
257 /**
258 * Edit a severity
259 *
260 * @access public
261 *
262 * @param integer Severity ID
263 */
264 function severitiesEdit($id)
265 {
266 global $navigator, $lang;
267
268 NavLinks::severitiesAdd();
269 $navigator->add_component('link', 'severities-delete', 'severities', $lang->string('Delete'), 'severity.php?do=delete&amp;severityid=' . $id);
270 }
271
272 // ###################################################################
273 /**
274 * Adding an new status
275 *
276 * @access public
277 */
278 function statusesAdd()
279 {
280 global $navigator, $lang;
281
282 $navigator->add_component('section', 'statuses', 'fields', $lang->string('Severities'), null);
283 $navigator->add_component('link', 'statuses-add', 'statuses', $lang->string('Add New Status'), 'status.php?do=add');
284 }
285
286 // ###################################################################
287 /**
288 * Edit a status
289 *
290 * @access public
291 *
292 * @param integer Status ID
293 */
294 function statusesEdit($id)
295 {
296 global $navigator, $lang;
297
298 NavLinks::statusesAdd();
299 $navigator->add_component('link', 'statuses-delete', 'statuses', $lang->string('Delete'), 'status.php?do=delete&amp;statusid=' . $id);
300 }
301
302 // ###################################################################
303 /**
304 * Adding an new auto action
305 *
306 * @access public
307 */
308 function autoactionsAdd()
309 {
310 global $navigator, $lang;
311
312 $navigator->add_component('section', 'autoactions', 'fields', $lang->string('Automatic Actions'), null);
313 $navigator->add_component('link', 'autoactions-add', 'autoactions', $lang->string('Add New Automatic Action'), 'autoaction.php?do=add');
314 }
315
316 // ###################################################################
317 /**
318 * Edit an auto action
319 *
320 * @access public
321 *
322 * @param integer Action ID
323 */
324 function autoactionsEdit($id)
325 {
326 global $navigator, $lang;
327
328 NavLinks::autoactionsAdd();
329 $navigator->add_component('link', 'autoactions-delete', 'autoactions', $lang->string('Delete'), 'autoaction.php?do=delete&amp;actionid=' . $id);
330 }
331
332 // ###################################################################
333 /**
334 * User tab pages
335 *
336 * @access public
337 */
338 function usersPages()
339 {
340 global $navigator, $lang;
341
342 $navigator->add_component('section', 'users-pages', 'users', $lang->string('Users &amp; Permissions'), null);
343 $navigator->add_component('link', 'users-pages-users', 'users-pages', $lang->string('Users'), 'user.php');
344 $navigator->add_component('link', 'users-pages-usergroups', 'users-pages', $lang->string('Usergroups'), 'usergroup.php');
345 $navigator->add_component('link', 'users-pages-permissions', 'users-pages', $lang->string('Usergroup Permissions'), 'permission.php');
346 }
347
348 // ###################################################################
349 /**
350 * Add a new user
351 *
352 * @access public
353 */
354 function usersAdd()
355 {
356 global $navigator, $lang;
357
358 $navigator->add_component('section', 'users', 'users', $lang->string('Users'), null);
359 $navigator->add_component('link', 'users-add', 'users', $lang->string('Add New User'), 'user.php?do=add');
360 }
361
362 // ###################################################################
363 /**
364 * Edit a user
365 *
366 * @access public
367 *
368 * @param integer User ID
369 */
370 function usersEdit($id)
371 {
372 global $navigator, $lang;
373
374 NavLinks::usersAdd();
375 $navigator->add_component('link', 'users-delete', 'users', $lang->string('Delete'), 'user.php?do=delete&amp;userid=' . $id);
376 }
377
378 // ###################################################################
379 /**
380 * Add a new usergroup
381 *
382 * @access public
383 */
384 function usergroupsAdd()
385 {
386 global $navigator, $lang;
387
388 $navigator->add_component('section', 'usergroups', 'users', $lang->string('Usergroups'), null);
389 $navigator->add_component('link', 'usergroups-add', 'usergroups', $lang->string('Add New Usergroup'), 'usergroup.php?do=add');
390 }
391
392 // ###################################################################
393 /**
394 * Edit a usergroup
395 *
396 * @access public
397 *
398 * @param integer User ID
399 */
400 function usergroupsEdit($id)
401 {
402 global $navigator, $lang;
403
404 NavLinks::usergroupsAdd();
405 $navigator->add_component('link', 'usergroups-delete', 'usergroups', $lang->string('Delete'), 'usergroup.php?do=delete&amp;userid=' . $id);
406 }
407 }
408
409 /*=====================================================================*\
410 || ###################################################################
411 || # $HeadURL$
412 || # $Id$
413 || ###################################################################
414 \*=====================================================================*/
415 ?>