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