r987: Need to remove our custom fields
[bugdar.git] / install / schema.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 $query['attachment'] = "
23 CREATE TABLE " . TABLE_PREFIX . "attachment
24 (
25 attachmentid int unsigned NOT NULL AUTO_INCREMENT,
26 bugid int unsigned NOT NULL,
27 filename varchar(255) NOT NULL,
28 mimetype varchar(255) NOT NULL,
29 filesize bigint unsigned NOT NULL,
30 attachment blob NOT NULL,
31 description varchar(255) NOT NULL,
32 dateline bigint unsigned NOT NULL,
33 userid int unsigned NOT NULL,
34 obsolete bool unsigned NOT NULL,
35 PRIMARY KEY (attachmentid)
36 );";
37
38 $query['autoaction'] = "
39 CREATE TABLE " . TABLE_PREFIX . "autoaction
40 (
41 actionid int unsigned NOT NULL AUTO_INCREMENT,
42 name varchar(255) NOT NULL,
43 description text NOT NULL,
44 fieldchanges text NOT NULL,
45 comment text NOT NULL,
46 PRIMARY KEY (actionid)
47 );";
48
49 $query['bug'] = "
50 CREATE TABLE " . TABLE_PREFIX . "bug
51 (
52 bugid int unsigned NOT NULL AUTO_INCREMENT,
53 userid int unsigned NOT NULL,
54 dateline bigint unsigned NOT NULL,
55 product int unsigned NOT NULL,
56 component int unsigned NOT NULL,
57 version int unsigned NOT NULL,
58 summary varchar(255) NOT NULL,
59 priority int unsigned NOT NULL,
60 severity int unsigned NOT NULL,
61 status int unsigned NOT NULL,
62 resolution int unsigned NOT NULL,
63 assignedto int unsigned NOT NULL,
64 duplicateof int unsigned NOT NULL,
65 dependency text NOT NULL,
66 hidden smallint unsigned NOT NULL,
67 initialreport int unsigned NOT NULL,
68 lastposttime bigint unsigned NOT NULL,
69 lastpostby int unsigned NOT NULL,
70 hiddenlastposttime int unsigned NOT NULL,
71 hiddenlastpostby int unsigned NOT NULL,
72 username varchar(255) NOT NULL,
73 lastpostbyname varchar(255) NOT NULL,
74 hiddenlastpostbyname varchar(255) NOT NULL,
75 PRIMARY KEY (bugid),
76 FULLTEXT KEY summary (summary)
77 );";
78
79 $query['bugfield'] = "
80 CREATE TABLE " . TABLE_PREFIX . "bugfield
81 (
82 fieldid int unsigned NOT NULL AUTO_INCREMENT,
83 name varchar(255) NOT NULL,
84 description text NOT NULL,
85 type varchar(50) NOT NULL,
86 selects text NOT NULL,
87 required smallint NOT NULL,
88 cansearch smallint NOT NULL,
89 regexmatch text NOT NULL,
90 defaultvalue text NOT NULL,
91 usedefault smallint NOT NULL,
92 maxlength smallint unsigned NOT NULL,
93 PRIMARY KEY (fieldid)
94 );";
95
96 $query['bugfieldpermission'] = "
97 CREATE TABLE " . TABLE_PREFIX . "bugfieldpermission
98 (
99 usergroupid int unsigned NOT NULL,
100 fieldid int unsigned NOT NULL,
101 mask smallint unsigned NOT NULL,
102 PRIMARY KEY (usergroupid, fieldid)
103 );";
104
105 $query['bugvaluefill'] = "
106 CREATE TABLE " . TABLE_PREFIX . "bugvaluefill
107 (
108 bugid int unsigned NOT NULL
109 PRIMARY KEY (bugid)
110 );";
111
112 $query['comment'] = "
113 CREATE TABLE " . TABLE_PREFIX . "comment
114 (
115 commentid int unsigned NOT NULL AUTO_INCREMENT,
116 bugid int unsigned NOT NULL,
117 userid int unsigned NOT NULL,
118 dateline bigint unsigned NOT NULL,
119 comment text NOT NULL,
120 comment_parsed text NOT NULL,
121 hidden smallint unsigned NOT NULL,
122 PRIMARY KEY (commentid),
123 FULLTEXT KEY comment (comment)
124 );";
125
126 $query['datastore'] = "
127 CREATE TABLE " . TABLE_PREFIX . "datastore
128 (
129 title varchar(255) NOT NULL,
130 data text NOT NULL,
131 PRIMARY KEY (title)
132 );";
133
134 $query['favourite'] = "
135 CREATE TABLE " . TABLE_PREFIX . "favourite
136 (
137 userid int unsigned NOT NULL,
138 bugid int unsigned NOT NULL,
139 PRIMARY KEY (userid, bugid)
140 );";
141
142 $query['fieldhelp'] = "
143 CREATE TABLE " . TABLE_PREFIX . "fieldhelp
144 (
145 keystring varchar(255) NOT NULL,
146 title varchar(255) NOT NULL,
147 body text NOT NULL,
148 PRIMARY KEY (keystring)
149 );";
150
151 $query['history'] = "
152 CREATE TABLE " . TABLE_PREFIX . "history
153 (
154 historyid bigint unsigned NOT NULL AUTO_INCREMENT,
155 bugid int unsigned NOT NULL,
156 attachmentid int unsigned NOT NULL,
157 commentid int unsigned NOT NULL,
158 dateline bigint unsigned NOT NULL,
159 userid int unsigned NOT NULL,
160 field varchar(255) NOT NULL,
161 original text NOT NULL,
162 changed text NOT NULL,
163 PRIMARY KEY (historyid)
164 );";
165
166 $query['language'] = "
167 CREATE TABLE " . TABLE_PREFIX . "language
168 (
169 languageid int unsigned NOT NULL AUTO_INCREMENT,
170 title varchar(255) NOT NULL,
171 languagecode varchar(5) NOT NULL,
172 charset varchar(15) NOT NULL,
173 direction char(3) NOT NULL,
174 filename varchar(255) NOT NULL,
175 userselect smallint unsigned NOT NULL,
176 debug smallint unsigned NOT NULL,
177 PRIMARY KEY (languageid),
178 UNIQUE KEY languagecode (languagecode)
179 );";
180
181 $query['localization'] = "
182 CREATE TABLE " . TABLE_PREFIX . "localization
183 (
184 localid int unsigned NOT NULL AUTO_INCREMENT,
185 localkey text NOT NULL,
186 localtext text NOT NULL,
187 languageid int unsigned NOT NULL,
188 PRIMARY KEY (localid)
189 );";
190
191 $query['permission'] = "
192 CREATE TABLE " . TABLE_PREFIX . "permission
193 (
194 usergroupid int unsigned NOT NULL,
195 productid int unsigned NOT NULL,
196 mask smallint NOT NULL,
197 PRIMARY KEY (usergroupid, productid)
198 );";
199
200 $query['priority'] = "
201 CREATE TABLE " . TABLE_PREFIX . "priority
202 (
203 priorityid int unsigned NOT NULL AUTO_INCREMENT,
204 priority varchar(255) NOT NULL,
205 displayorder int unsigned NOT NULL,
206 PRIMARY KEY (priorityid)
207 );";
208
209 $query['product'] = "
210 CREATE TABLE " . TABLE_PREFIX . "product
211 (
212 productid int unsigned NOT NULL AUTO_INCREMENT,
213 componentmother int unsigned NOT NULL,
214 displayorder int unsigned NOT NULL,
215 title varchar(255) NOT NULL,
216 description text NOT NULL,
217 PRIMARY KEY (productid)
218 );";
219
220 $query['resolution'] = "
221 CREATE TABLE " . TABLE_PREFIX . "resolution
222 (
223 resolutionid int unsigned NOT NULL AUTO_INCREMENT,
224 resolution varchar(255) NOT NULL,
225 displayorder int unsigned NOT NULL,
226 PRIMARY KEY (resolutionid)
227 );";
228
229 $query['search'] = "
230 CREATE TABLE " . TABLE_PREFIX . "search
231 (
232 userid int unsigned NOT NULL,
233 dateline bigint unsigned NOT NULL,
234 query text NOT NULL,
235 ids text NOT NULL,
236 orderby text NOT NULL,
237 hilight varchar(255) NOT NULL,
238 resultcount int NULL,
239 PRIMARY KEY (userid)
240 );";
241
242 $query['setting'] = "
243 CREATE TABLE " . TABLE_PREFIX . "setting
244 (
245 varname varchar(255) NOT NULL,
246 value text NOT NULL,
247 PRIMARY KEY (varname)
248 );";
249
250 $query['severity'] = "
251 CREATE TABLE " . TABLE_PREFIX . "severity
252 (
253 severityid int unsigned NOT NULL AUTO_INCREMENT,
254 severity varchar(255) NOT NULL,
255 displayorder int unsigned NOT NULL,
256 PRIMARY KEY (severityid)
257 );";
258
259 $query['status'] = "
260 CREATE TABLE " . TABLE_PREFIX . "status
261 (
262 statusid int unsigned NOT NULL AUTO_INCREMENT,
263 status varchar(255) NOT NULL,
264 displayorder int unsigned NOT NULL,
265 color varchar(10) NOT NULL,
266 PRIMARY KEY (statusid)
267 );";
268
269 $query['user'] = "
270 CREATE TABLE " . TABLE_PREFIX . "user
271 (
272 userid int unsigned NOT NULL AUTO_INCREMENT,
273 email varchar(255) NOT NULL,
274 displayname varchar(255) NOT NULL,
275 usergroupid int unsigned NOT NULL,
276 password varchar(32) NOT NULL,
277 salt varchar(15) NOT NULL,
278 authkey varchar(65) NOT NULL,
279 showemail smallint unsigned NOT NULL,
280 showcolours smallint unsigned NOT NULL,
281 languageid int unsigned NOT NULL,
282 timezone smallint NOT NULL,
283 usedst bool NOT NULL,
284 hidestatuses text NOT NULL,
285 defaultsortkey varchar(50) NULL,
286 defaultsortas varchar(10) NULL,
287 PRIMARY KEY (userid)
288 );";
289
290 $query['useractivation'] = "
291 CREATE TABLE " . TABLE_PREFIX . "useractivation
292 (
293 activator varchar(25) NOT NULL,
294 userid int unsigned NOT NULL,
295 dateline int unsigned NOT NULL,
296 usergroupid int unsigned NOT NULL,
297 PRIMARY KEY (activator)
298 );";
299
300 $query['useremail'] = "
301 CREATE TABLE " . TABLE_PREFIX . "useremail
302 (
303 userid int unsigned NOT NULL,
304 mask int unsigned NOT NULL,
305 relation int unsigned NOT NULL
306 );";
307
308 $query['usergroup'] = "
309 CREATE TABLE " . TABLE_PREFIX . "usergroup
310 (
311 usergroupid int unsigned NOT NULL AUTO_INCREMENT,
312 title varchar(255) NOT NULL,
313 displaytitle varchar(255) NOT NULL,
314 permissions int unsigned NOT NULL,
315 PRIMARY KEY (usergroupid)
316 );";
317
318 $query['version'] = "
319 CREATE TABLE " . TABLE_PREFIX . "version
320 (
321 versionid int unsigned NOT NULL AUTO_INCREMENT,
322 productid int unsigned NOT NULL,
323 version varchar(255) NOT NULL,
324 displayorder int unsigned NOT NULL,
325 PRIMARY KEY (versionid)
326 );";
327
328 $query['vote'] = "
329 CREATE TABLE " . TABLE_PREFIX . "vote
330 (
331 bugid int unsigned NOT NULL,
332 userids text NOT NULL,
333 votefor int unsigned NOT NULL,
334 voteagainst int unsigned NOT NULL,
335 PRIMARY KEY (bugid)
336 );";
337
338 /*=====================================================================*\
339 || ###################################################################
340 || # $HeadURL$
341 || # $Id$
342 || ###################################################################
343 \*=====================================================================*/
344 ?>