r21: Changed all bitwise operations to use can_perform() (new: includes/functions...
[bugdar.git] / admin / priority.php
1 <?php
2 /*=====================================================================*\
3 || ################################################################### ||
4 || # [#]app[#] [#]version[#]
5 || # --------------------------------------------------------------- # ||
6 || # All parts of this file are ©2003-[#]year[#] Iris Studios, Inc. No # ||
7 || # part of this file may be reproduced in any way: part or whole. # ||
8 || # --------------------------------------------------------------- # ||
9 || # ©2003 - [#]year[#] Iris Studios, Inc. | http://www.iris-studios.com # ||
10 || ################################################################### ||
11 \*=====================================================================*/
12
13 require_once('./global.php');
14 require_once('./includes/functions_datastore.php');
15
16 if (!can_perform('canadminfields'))
17 {
18 admin_login();
19 }
20
21 // ###################################################################
22
23 if (empty($_REQUEST['do']))
24 {
25 $_REQUEST['do'] = 'modify';
26 }
27
28 // ###################################################################
29
30 if ($_REQUEST['do'] == 'kill')
31 {
32 sanitize(array('priorityid' => INT));
33 $DB_sql->query("DELETE FROM " . TABLE_PREFIX . "priority WHERE priorityid = $vars[priorityid]");
34 build_priorities();
35 $admin->redirect('priority.php?do=modify');
36 }
37
38 // ###################################################################
39
40 if ($_REQUEST['do'] == 'delete')
41 {
42 sanitize(array('priorityid' => INT));
43 $admin->page_confirm('Are you sure you want to delete this priority? Doing so will revert all bugs to the default priority (which is set in the options panel)?', 'priority.php?do=kill&amp;priorityid=' . $vars['priorityid']);
44 }
45
46 // ###################################################################
47
48 if ($_POST['do'] == 'insert')
49 {
50 sanitize(array('priority' => STR, 'displayorder' => INT));
51 $DB_sql->query("INSERT INTO " . TABLE_PREFIX . "priority (priority, displayorder) VALUES ('" . addslasheslike($vars['priority']) . "', $vars[displayorder])");
52 build_priorities();
53 $admin->redirect('priority.php?do=modify');
54 }
55
56 // ###################################################################
57
58 if ($_REQUEST['do'] == 'add')
59 {
60 $admin->page_start('Add New Priority');
61
62 $admin->form_start('priority.php', 'insert');
63 $admin->table_start();
64 $admin->table_head('New Priority');
65 $admin->row_input('Priority Title<div><dfn>The title of this priority flag (eg: `Slated for Development` or `Address Now`)</dfn></div>', 'priority');
66 $admin->row_input('Display Order<div><dfn>The order in which the priorities are displayed. The higher the number, the lower down in the list it is.</dfn></div>', 'displayorder');
67 $admin->row_submit();
68 $admin->table_end();
69 $admin->form_end();
70
71 $admin->page_end();
72 }
73
74 // ###################################################################
75
76 if ($_POST['do'] == 'update')
77 {
78 sanitize(array('priorityid' => INT, 'priority' => STR, 'displayorder' => INT));
79 $DB_sql->query("UPDATE " . TABLE_PREFIX . "priority SET priority = '" . addslasheslike($vars['priority']) . "', displayorder = $vars[displayorder] WHERE priorityid = $vars[priorityid]");
80 build_priorities();
81 $admin->redirect('priority.php?do=modify');
82 }
83
84 // ###################################################################
85
86 if ($_REQUEST['do'] == 'edit')
87 {
88 sanitize(array('priorityid' => INT));
89
90 $priority = $DB_sql->query_first("SELECT * FROM " . TABLE_PREFIX . "priority WHERE priorityid = $vars[priorityid]");
91 if (!is_array($priority))
92 {
93 $admin->error('-1');
94 }
95
96 $admin->page_start('Edit Priority');
97
98 $admin->form_start('priority.php', 'update');
99 $admin->form_hidden_field('priorityid', $priority['priorityid']);
100 $admin->table_start();
101 $admin->table_head("Edit Priority - $priority[priority] (priorityid: $priority[priorityid])");
102 $admin->row_input('Priority Title<div><dfn>The title of this priority flag (eg: `Slated for Development` or `Address Now`)</dfn></div>', 'priority', $priority['priority']);
103 $admin->row_input('Display Order<div><dfn>The order in which the priorities are displayed. The higher the number, the lower down in the list it is.</dfn></div>', 'displayorder', $priority['displayorder']);
104 $admin->row_submit();
105 $admin->table_end();
106 $admin->form_end();
107
108 $admin->page_end();
109 }
110
111 // ###################################################################
112
113 if ($_REQUEST['do'] == 'modify')
114 {
115 $admin->page_start('Priority Manager');
116
117 $priorities = $DB_sql->query("SELECT * FROM " . TABLE_PREFIX . "priority ORDER BY displayorder");
118
119 $admin->form_start('priority.php', 'null');
120 $admin->table_start();
121 $admin->table_head('Priority Manager');
122
123 while ($priority = $DB_sql->fetch_array($priorities))
124 {
125 $admin->row_text("$priority[displayorder]: <a href=\"priority.php?do=edit&amp;priorityid=$priority[priorityid]\">$priority[priority]</a>", "(priorityid: $priority[priorityid]) <a href=\"priority.php?do=edit&amp;priorityid=$priority[priorityid]\">[Edit]</a> <a href=\"priority.php?do=delete&amp;priorityid=$priority[priorityid]\">[Delete]</a>");
126 }
127 $DB_sql->free_result($priorityes);
128
129 $admin->row_span('<input type="button" name="addug" value=" Add New Priority " onclick="window.location = \'priority.php?do=add\';" />', 'tfoot', 'center', 3);
130 $admin->table_end();
131 $admin->form_end();
132
133 $admin->page_end();
134 }
135
136 /*=====================================================================*\
137 || ###################################################################
138 || # $HeadURL$
139 || # $Id$
140 || ###################################################################
141 \*=====================================================================*/
142 ?>