Merge branch '5.4' into 5.5
[GitHub/WoltLab/WCF.git] / wcfsetup / setup / db / install.sql
1 /*
2 This table was moved up here, because it must be created during the first iteration
3
4 DO *NOT* MOVE IT BACK!
5 */
6 DROP TABLE IF EXISTS wcf1_package_installation_sql_log;
7 CREATE TABLE wcf1_package_installation_sql_log (
8 packageID INT(10),
9 sqlTable VARCHAR(100) NOT NULL DEFAULT '',
10 sqlColumn VARCHAR(100) NOT NULL DEFAULT '',
11 sqlIndex VARCHAR(100) NOT NULL DEFAULT '',
12 isDone TINYINT(1) NOT NULL DEFAULT 1,
13 UNIQUE KEY packageID (packageID, sqlTable, sqlColumn, sqlIndex)
14 );
15
16 /* tables */
17 DROP TABLE IF EXISTS wcf1_acl_option;
18 CREATE TABLE wcf1_acl_option (
19 optionID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
20 packageID INT(10) NOT NULL,
21 objectTypeID INT(10) NOT NULL,
22 optionName VARCHAR(191) NOT NULL,
23 categoryName VARCHAR(191) NOT NULL,
24 UNIQUE KEY (packageID, objectTypeID, optionName)
25 );
26
27 DROP TABLE IF EXISTS wcf1_acl_option_category;
28 CREATE TABLE wcf1_acl_option_category (
29 categoryID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
30 packageID INT(10) NOT NULL,
31 objectTypeID INT(10) NOT NULL,
32 categoryName VARCHAR(191) NOT NULL,
33 UNIQUE KEY (packageID, objectTypeID, categoryName)
34 );
35
36 DROP TABLE IF EXISTS wcf1_acl_option_to_user;
37 CREATE TABLE wcf1_acl_option_to_user (
38 optionID INT(10) NOT NULL,
39 objectID INT(10) NOT NULL,
40 userID INT(10) NOT NULL,
41 optionValue TINYINT(1) NOT NULL DEFAULT 0,
42 UNIQUE KEY userID (userID, objectID, optionID)
43 );
44
45 DROP TABLE IF EXISTS wcf1_acl_option_to_group;
46 CREATE TABLE wcf1_acl_option_to_group (
47 optionID INT(10) NOT NULL,
48 objectID INT(10) NOT NULL,
49 groupID INT(10) NOT NULL,
50 optionValue TINYINT(1) NOT NULL DEFAULT 0,
51 UNIQUE KEY groupID (groupID, objectID, optionID)
52 );
53
54 DROP TABLE IF EXISTS wcf1_acl_simple_to_user;
55 CREATE TABLE wcf1_acl_simple_to_user (
56 objectTypeID INT(10) NOT NULL,
57 objectID INT(10) NOT NULL,
58 userID INT(10) NOT NULL,
59 UNIQUE KEY userKey (objectTypeID, objectID, userID)
60 );
61
62 DROP TABLE IF EXISTS wcf1_acl_simple_to_group;
63 CREATE TABLE wcf1_acl_simple_to_group (
64 objectTypeID INT(10) NOT NULL,
65 objectID INT(10) NOT NULL,
66 groupID INT(10) NOT NULL,
67 UNIQUE KEY groupKey (objectTypeID, objectID, groupID)
68 );
69
70 DROP TABLE IF EXISTS wcf1_acp_menu_item;
71 CREATE TABLE wcf1_acp_menu_item (
72 menuItemID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
73 packageID INT(10) NOT NULL,
74 menuItem VARCHAR(191) NOT NULL DEFAULT '',
75 parentMenuItem VARCHAR(191) NOT NULL DEFAULT '',
76 menuItemController VARCHAR(255) NOT NULL DEFAULT '',
77 menuItemLink VARCHAR(255) NOT NULL DEFAULT '',
78 showOrder INT(10) NOT NULL DEFAULT 0,
79 permissions TEXT,
80 options TEXT,
81 icon VARCHAR(255) NOT NULL DEFAULT '',
82 UNIQUE KEY menuItem (menuItem, packageID)
83 );
84
85 DROP TABLE IF EXISTS wcf1_acp_search_provider;
86 CREATE TABLE wcf1_acp_search_provider (
87 providerID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
88 packageID INT(10) NOT NULL,
89 providerName VARCHAR(191) NOT NULL DEFAULT '',
90 className VARCHAR(255) NOT NULL DEFAULT '',
91 showOrder INT(10) NOT NULL DEFAULT 0,
92 UNIQUE KEY providerName (providerName, packageID)
93 );
94
95 DROP TABLE IF EXISTS wcf1_acp_session_access_log;
96 CREATE TABLE wcf1_acp_session_access_log (
97 sessionAccessLogID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
98 sessionLogID INT(10) NOT NULL,
99 ipAddress VARCHAR(39) NOT NULL DEFAULT '',
100 time INT(10) NOT NULL DEFAULT 0,
101 requestURI VARCHAR(255) NOT NULL DEFAULT '',
102 requestMethod VARCHAR(255) NOT NULL DEFAULT '',
103 className VARCHAR(255) NOT NULL DEFAULT '',
104 KEY sessionLogID (sessionLogID)
105 );
106
107 DROP TABLE IF EXISTS wcf1_acp_session_log;
108 CREATE TABLE wcf1_acp_session_log (
109 sessionLogID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
110 sessionID CHAR(40) NOT NULL DEFAULT '',
111 userID INT(10),
112 ipAddress VARCHAR(39) NOT NULL DEFAULT '',
113 hostname VARCHAR(255) NOT NULL DEFAULT '',
114 userAgent VARCHAR(255) NOT NULL DEFAULT '',
115 time INT(10) NOT NULL DEFAULT 0,
116 lastActivityTime INT(10) NOT NULL DEFAULT 0,
117 KEY sessionID (sessionID)
118 );
119
120 DROP TABLE IF EXISTS wcf1_acp_template;
121 CREATE TABLE wcf1_acp_template (
122 templateID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
123 packageID INT(10),
124 templateName VARCHAR(191) NOT NULL,
125 application VARCHAR(20) NOT NULL,
126 UNIQUE KEY applicationTemplate (application, templateName)
127 );
128
129 DROP TABLE IF EXISTS wcf1_ad;
130 CREATE TABLE wcf1_ad (
131 adID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
132 objectTypeID INT(10) NOT NULL,
133 adName VARCHAR(255) NOT NULL,
134 ad MEDIUMTEXT,
135 isDisabled TINYINT(1) NOT NULL DEFAULT 0,
136 showOrder INT(10) NOT NULL DEFAULT 0
137 );
138
139 DROP TABLE IF EXISTS wcf1_application;
140 CREATE TABLE wcf1_application (
141 packageID INT(10) NOT NULL PRIMARY KEY,
142 domainName VARCHAR(255) NOT NULL,
143 domainPath VARCHAR(255) NOT NULL DEFAULT '/',
144 cookieDomain VARCHAR(255) NOT NULL,
145 isTainted TINYINT(1) NOT NULL DEFAULT 0,
146 landingPageID INT(10) NULL
147 );
148
149 DROP TABLE IF EXISTS wcf1_article;
150 CREATE TABLE wcf1_article (
151 articleID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
152 userID INT(10),
153 username VARCHAR(255) NOT NULL DEFAULT '',
154 time INT(10) NOT NULL DEFAULT 0,
155 categoryID INT(10),
156 isMultilingual TINYINT(1) NOT NULL DEFAULT 0,
157 publicationStatus TINYINT(1) NOT NULL DEFAULT 1,
158 publicationDate INT(10) NOT NULL DEFAULT 0,
159 enableComments TINYINT(1) NOT NULL DEFAULT 1,
160 views MEDIUMINT(7) NOT NULL DEFAULT 0,
161 cumulativeLikes MEDIUMINT(7) NOT NULL DEFAULT 0,
162 isDeleted TINYINT(1) NOT NULL DEFAULT 0,
163 hasLabels TINYINT(1) NOT NULL DEFAULT 0,
164
165 KEY (time)
166 );
167
168 DROP TABLE IF EXISTS wcf1_article_content;
169 CREATE TABLE wcf1_article_content (
170 articleContentID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
171 articleID INT(10) NOT NULL,
172 languageID INT(10),
173 title VARCHAR(255) NOT NULL,
174 teaser TEXT,
175 content MEDIUMTEXT,
176 imageID INT(10),
177 teaserImageID INT(10),
178 hasEmbeddedObjects TINYINT(1) NOT NULL DEFAULT 0,
179 metaTitle VARCHAR(255) NOT NULL DEFAULT '',
180 metaDescription VARCHAR(255) NOT NULL DEFAULT '',
181 comments SMALLINT(5) NOT NULL DEFAULT 0,
182
183 UNIQUE KEY (articleID, languageID)
184 );
185
186 DROP TABLE IF EXISTS wcf1_attachment;
187 CREATE TABLE wcf1_attachment (
188 attachmentID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
189 objectTypeID INT(10) NOT NULL,
190 objectID INT(10),
191 userID INT(10),
192 tmpHash VARCHAR(40) NOT NULL DEFAULT '',
193 filename VARCHAR(255) NOT NULL DEFAULT '',
194 filesize INT(10) NOT NULL DEFAULT 0,
195 fileType VARCHAR(255) NOT NULL DEFAULT '',
196 fileHash VARCHAR(40) NOT NULL DEFAULT '',
197
198 isImage TINYINT(1) NOT NULL DEFAULT 0,
199 width SMALLINT(5) NOT NULL DEFAULT 0,
200 height SMALLINT(5) NOT NULL DEFAULT 0,
201
202 tinyThumbnailType VARCHAR(255) NOT NULL DEFAULT '',
203 tinyThumbnailSize INT(10) NOT NULL DEFAULT 0,
204 tinyThumbnailWidth SMALLINT(5) NOT NULL DEFAULT 0,
205 tinyThumbnailHeight SMALLINT(5) NOT NULL DEFAULT 0,
206
207 thumbnailType VARCHAR(255) NOT NULL DEFAULT '',
208 thumbnailSize INT(10) NOT NULL DEFAULT 0,
209 thumbnailWidth SMALLINT(5) NOT NULL DEFAULT 0,
210 thumbnailHeight SMALLINT(5) NOT NULL DEFAULT 0,
211
212 downloads INT(10) NOT NULL DEFAULT 0,
213 lastDownloadTime INT(10) NOT NULL DEFAULT 0,
214 uploadTime INT(10) NOT NULL DEFAULT 0,
215 showOrder SMALLINT(5) NOT NULL DEFAULT 0,
216 KEY (objectTypeID, objectID),
217 KEY (objectTypeID, tmpHash),
218 KEY (objectID, uploadTime)
219 );
220
221 DROP TABLE IF EXISTS wcf1_background_job;
222 CREATE TABLE wcf1_background_job (
223 jobID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
224 job MEDIUMBLOB NOT NULL,
225 status ENUM('ready', 'processing') NOT NULL DEFAULT 'ready',
226 time INT(10) NOT NULL,
227 KEY (status, time)
228 );
229
230 DROP TABLE IF EXISTS wcf1_bbcode;
231 CREATE TABLE wcf1_bbcode (
232 bbcodeID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
233 bbcodeTag VARCHAR(191) NOT NULL,
234 packageID INT(10) NOT NULL,
235 htmlOpen VARCHAR(255) NOT NULL DEFAULT '',
236 htmlClose VARCHAR(255) NOT NULL DEFAULT '',
237 className VARCHAR(255) NOT NULL DEFAULT '',
238 wysiwygIcon varchar(255) NOT NULL DEFAULT '',
239 buttonLabel VARCHAR(255) NOT NULL DEFAULT '',
240 isBlockElement TINYINT(1) NOT NULL DEFAULT 0,
241 isSourceCode TINYINT(1) NOT NULL DEFAULT 0,
242 showButton TINYINT(1) NOT NULL DEFAULT 0,
243 originIsSystem TINYINT(1) NOT NULL DEFAULT 0,
244 UNIQUE KEY bbcodeTag (bbcodeTag)
245 );
246
247 DROP TABLE IF EXISTS wcf1_bbcode_attribute;
248 CREATE TABLE wcf1_bbcode_attribute (
249 attributeID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
250 bbcodeID INT(10) NOT NULL,
251 attributeNo TINYINT(3) NOT NULL DEFAULT 0,
252 attributeHtml VARCHAR(255) NOT NULL DEFAULT '',
253 validationPattern VARCHAR(255) NOT NULL DEFAULT '',
254 required TINYINT(1) NOT NULL DEFAULT 0,
255 useText TINYINT(1) NOT NULL DEFAULT 0,
256 UNIQUE KEY attributeNo (bbcodeID, attributeNo)
257 );
258
259 DROP TABLE IF EXISTS wcf1_bbcode_media_provider;
260 CREATE TABLE wcf1_bbcode_media_provider (
261 providerID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
262 name VARCHAR(80) NOT NULL,
263 packageID INT(10) NOT NULL,
264 title VARCHAR(255) NOT NULL,
265 regex TEXT NOT NULL,
266 html TEXT NOT NULL,
267 className varchar(255) NOT NULL DEFAULT '',
268 isDisabled TINYINT(1) NOT NULL DEFAULT 0,
269 UNIQUE KEY name (name, packageID)
270 );
271
272 DROP TABLE IF EXISTS wcf1_blacklist_status;
273 CREATE TABLE wcf1_blacklist_status (
274 date DATE NOT NULL,
275 delta1 TINYINT(1) NOT NULL DEFAULT 0,
276 delta2 TINYINT(1) NOT NULL DEFAULT 0,
277 delta3 TINYINT(1) NOT NULL DEFAULT 0,
278 delta4 TINYINT(1) NOT NULL DEFAULT 0,
279
280 UNIQUE KEY day (date)
281 );
282
283 DROP TABLE IF EXISTS wcf1_blacklist_entry;
284 CREATE TABLE wcf1_blacklist_entry (
285 type ENUM('email', 'ipv4','ipv6','username'),
286 hash BINARY(32),
287 lastSeen DATETIME NOT NULL,
288 occurrences SMALLINT(5) NOT NULL,
289
290 UNIQUE KEY entry (type, hash),
291 KEY numberOfReports (type, occurrences),
292 KEY lastSeen (lastSeen)
293 );
294
295 DROP TABLE IF EXISTS wcf1_box;
296 CREATE TABLE wcf1_box (
297 boxID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
298 objectTypeID INT(10),
299 identifier VARCHAR(255) NOT NULL,
300 name VARCHAR(255) NOT NULL,
301 boxType VARCHAR(255) NOT NULL,
302 position VARCHAR(255) NOT NULL,
303 showOrder INT(10) NOT NULL DEFAULT 0,
304 visibleEverywhere TINYINT(1) NOT NULL DEFAULT 1,
305 isMultilingual TINYINT(1) NOT NULL DEFAULT 0,
306 lastUpdateTime INT(10) NOT NULL DEFAULT 0,
307 cssClassName VARCHAR(255) NOT NULL DEFAULT '',
308 showHeader TINYINT(1) NOT NULL DEFAULT 1,
309 originIsSystem TINYINT(1) NOT NULL DEFAULT 0,
310 packageID INT(10) NOT NULL,
311 menuID INT(10) NULL,
312 linkPageID INT(10),
313 linkPageObjectID INT(10) NOT NULL DEFAULT 0,
314 externalURL VARCHAR(255) NOT NULL DEFAULT '',
315 isDisabled TINYINT(1) NOT NULL DEFAULT 0,
316 invertPermissions TINYINT(1) NOT NULL DEFAULT 0,
317 additionalData TEXT
318 );
319
320 DROP TABLE IF EXISTS wcf1_box_content;
321 CREATE TABLE wcf1_box_content (
322 boxContentID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
323 boxID INT(10) NOT NULL,
324 languageID INT(10),
325 title VARCHAR(255) NOT NULL,
326 content MEDIUMTEXT,
327 imageID INT(10),
328 hasEmbeddedObjects TINYINT(1) NOT NULL DEFAULT 0,
329
330 UNIQUE KEY (boxID, languageID)
331 );
332
333 DROP TABLE IF EXISTS wcf1_box_to_page;
334 CREATE TABLE wcf1_box_to_page (
335 boxID INT(10) NOT NULL,
336 pageID INT(10) NOT NULL,
337 visible TINYINT(1) NOT NULL DEFAULT 1,
338
339 UNIQUE KEY (pageID, boxID),
340 KEY (pageID, visible)
341 );
342
343 DROP TABLE IF EXISTS wcf1_captcha_question;
344 CREATE TABLE wcf1_captcha_question (
345 questionID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
346 question VARCHAR(255) NOT NULL,
347 answers MEDIUMTEXT,
348 isDisabled TINYINT(1) NOT NULL DEFAULT 0
349 );
350
351 DROP TABLE IF EXISTS wcf1_category;
352 CREATE TABLE wcf1_category (
353 categoryID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
354 objectTypeID INT(10) NOT NULL,
355 parentCategoryID INT(10) NOT NULL DEFAULT 0,
356 title VARCHAR(255) NOT NULL,
357 description TEXT,
358 descriptionUseHtml TINYINT(1) NOT NULL DEFAULT 0,
359 showOrder INT(10) NOT NULL DEFAULT 0,
360 time INT(10) NOT NULL DEFAULT 0,
361 isDisabled TINYINT(1) NOT NULL DEFAULT 0,
362 additionalData TEXT
363 );
364
365 DROP TABLE IF EXISTS wcf1_cli_history;
366 CREATE TABLE wcf1_cli_history (
367 historyItem INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
368 userID INT(10) NOT NULL,
369 command VARCHAR(255) NOT NULL,
370 KEY (userID)
371 );
372
373 DROP TABLE IF EXISTS wcf1_clipboard_action;
374 CREATE TABLE wcf1_clipboard_action (
375 actionID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
376 packageID INT(10) NOT NULL DEFAULT 0,
377 actionName VARCHAR(50) NOT NULL DEFAULT '',
378 actionClassName VARCHAR(191) NOT NULL DEFAULT '',
379 showOrder INT(10) NOT NULL DEFAULT 0,
380 UNIQUE KEY actionName (packageID, actionName, actionClassName)
381 );
382
383 DROP TABLE IF EXISTS wcf1_clipboard_item;
384 CREATE TABLE wcf1_clipboard_item (
385 objectTypeID INT(10) NOT NULL DEFAULT 0,
386 userID INT(10) NOT NULL DEFAULT 0,
387 objectID INT(10) NOT NULL DEFAULT 0,
388 UNIQUE KEY (objectTypeID, userID, objectID),
389 KEY (userID)
390 );
391
392 DROP TABLE IF EXISTS wcf1_clipboard_page;
393 CREATE TABLE wcf1_clipboard_page (
394 pageClassName VARCHAR(80) NOT NULL DEFAULT '',
395 packageID INT(10) NOT NULL DEFAULT 0,
396 actionID INT(10) NOT NULL DEFAULT 0
397 );
398
399 DROP TABLE IF EXISTS wcf1_comment;
400 CREATE TABLE wcf1_comment (
401 commentID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
402 objectTypeID INT(10) NOT NULL,
403 objectID INT(10) NOT NULL,
404 time INT(10) NOT NULL DEFAULT '0',
405 userID INT(10),
406 username VARCHAR(255) NOT NULL,
407 message MEDIUMTEXT NOT NULL,
408 responses MEDIUMINT(7) NOT NULL DEFAULT '0',
409 responseIDs VARCHAR(255) NOT NULL DEFAULT '',
410 unfilteredResponses MEDIUMINT(7) NOT NULL DEFAULT '0',
411 unfilteredResponseIDs VARCHAR(255) NOT NULL DEFAULT '',
412 enableHtml TINYINT(1) NOT NULL DEFAULT 0,
413 isDisabled TINYINT(1) NOT NULL DEFAULT 0,
414 hasEmbeddedObjects TINYINT(1) NOT NULL DEFAULT 0,
415
416 KEY (objectTypeID, objectID, isDisabled, time),
417 KEY lastCommentTime (userID, time)
418 );
419
420 DROP TABLE IF EXISTS wcf1_comment_response;
421 CREATE TABLE wcf1_comment_response (
422 responseID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
423 commentID INT(10) NOT NULL,
424 time INT(10) NOT NULL DEFAULT '0',
425 userID INT(10),
426 username VARCHAR(255) NOT NULL,
427 message MEDIUMTEXT NOT NULL,
428 enableHtml TINYINT(1) NOT NULL DEFAULT 0,
429 isDisabled TINYINT(1) NOT NULL DEFAULT 0,
430 hasEmbeddedObjects TINYINT(1) NOT NULL DEFAULT 0,
431
432 KEY (commentID, isDisabled, time),
433 KEY lastResponseTime (userID, time)
434 );
435
436 DROP TABLE IF EXISTS wcf1_condition;
437 CREATE TABLE wcf1_condition (
438 conditionID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
439 objectTypeID INT(10) NOT NULL,
440 objectID INT(10) NOT NULL,
441 conditionData MEDIUMTEXT
442 );
443
444 DROP TABLE IF EXISTS wcf1_contact_attachment;
445 CREATE TABLE wcf1_contact_attachment (
446 attachmentID INT(10) NOT NULL,
447 accessKey CHAR(40) NOT NULL
448 );
449
450 DROP TABLE IF EXISTS wcf1_contact_option;
451 CREATE TABLE wcf1_contact_option (
452 optionID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
453 optionTitle VARCHAR(255) NOT NULL DEFAULT '',
454 optionDescription TEXT,
455 optionType VARCHAR(255) NOT NULL DEFAULT '',
456 defaultValue MEDIUMTEXT,
457 validationPattern TEXT,
458 selectOptions MEDIUMTEXT,
459 required TINYINT(1) NOT NULL DEFAULT 0,
460 showOrder INT(10) NOT NULL DEFAULT 0,
461 isDisabled TINYINT(1) NOT NULL DEFAULT 0,
462 originIsSystem TINYINT(1) NOT NULL DEFAULT 0
463 );
464
465 DROP TABLE IF EXISTS wcf1_contact_recipient;
466 CREATE TABLE wcf1_contact_recipient (
467 recipientID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
468 name VARCHAR(255) NOT NULL,
469 email VARCHAR(255) NOT NULL,
470 showOrder INT(10) NOT NULL DEFAULT 0,
471 isAdministrator TINYINT(1) NOT NULL DEFAULT 0,
472 isDisabled TINYINT(1) NOT NULL DEFAULT 0,
473 originIsSystem TINYINT(1) NOT NULL DEFAULT 0
474 );
475
476 /* SQL_PARSER_OFFSET */
477
478 DROP TABLE IF EXISTS wcf1_core_object;
479 CREATE TABLE wcf1_core_object (
480 objectID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
481 packageID INT(10) NOT NULL,
482 objectName VARCHAR(191) NOT NULL DEFAULT '',
483 UNIQUE KEY object (packageID, objectName)
484 );
485
486 DROP TABLE IF EXISTS wcf1_cronjob;
487 CREATE TABLE wcf1_cronjob (
488 cronjobID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
489 className varchar(255) NOT NULL DEFAULT '',
490 packageID INT(10) NOT NULL,
491 cronjobName VARCHAR(191) NOT NULL,
492 description varchar(255) NOT NULL DEFAULT '',
493 startMinute varchar(255) NOT NULL DEFAULT '*',
494 startHour varchar(255) NOT NULL DEFAULT '*',
495 startDom varchar(255) NOT NULL DEFAULT '*',
496 startMonth varchar(255) NOT NULL DEFAULT '*',
497 startDow varchar(255) NOT NULL DEFAULT '*',
498 lastExec INT(10) NOT NULL DEFAULT 0,
499 nextExec INT(10) NOT NULL DEFAULT 0,
500 afterNextExec INT(10) NOT NULL DEFAULT 0,
501 isDisabled TINYINT(1) NOT NULL DEFAULT 0,
502 canBeEdited TINYINT(1) NOT NULL DEFAULT 1,
503 canBeDisabled TINYINT(1) NOT NULL DEFAULT 1,
504 state TINYINT(1) NOT NULL DEFAULT 0,
505 failCount TINYINT(1) NOT NULL DEFAULT 0,
506 options TEXT,
507
508 UNIQUE KEY cronjobName (cronjobName, packageID)
509 );
510
511 DROP TABLE IF EXISTS wcf1_cronjob_log;
512 CREATE TABLE wcf1_cronjob_log (
513 cronjobLogID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
514 cronjobID INT(10) NOT NULL,
515 execTime INT(10) NOT NULL DEFAULT 0,
516 success TINYINT(1) NOT NULL DEFAULT 0,
517 error TEXT
518 );
519
520 DROP TABLE IF EXISTS wcf1_devtools_project;
521 CREATE TABLE wcf1_devtools_project (
522 projectID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
523 name VARCHAR(191) NOT NULL,
524 path TEXT,
525
526 UNIQUE KEY name (name)
527 );
528
529 DROP TABLE IF EXISTS wcf1_devtools_missing_language_item;
530 CREATE TABLE wcf1_devtools_missing_language_item (
531 itemID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
532 languageID INT(10),
533 languageItem VARCHAR(191) NOT NULL,
534 lastTime INT(10) NOT NULL,
535 stackTrace MEDIUMTEXT NOT NULL,
536
537 UNIQUE KEY (languageID, languageItem)
538 );
539
540 DROP TABLE IF EXISTS wcf1_edit_history_entry;
541 CREATE TABLE wcf1_edit_history_entry (
542 entryID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
543 objectTypeID INT(10) NOT NULL,
544 objectID INT(10) NOT NULL,
545 userID INT(10),
546 username VARCHAR(255) NOT NULL DEFAULT '',
547 time INT(10) NOT NULL DEFAULT 0,
548 obsoletedAt INT(10) NOT NULL DEFAULT 0,
549 obsoletedByUserID INT(10),
550 message MEDIUMTEXT,
551 editReason TEXT,
552
553 KEY (objectTypeID, objectID),
554 KEY (obsoletedAt, obsoletedByUserID)
555 );
556
557 DROP TABLE IF EXISTS wcf1_email_log_entry;
558 CREATE TABLE wcf1_email_log_entry (
559 entryID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
560 time INT(10) NOT NULL,
561 messageID VARCHAR(255) NOT NULL,
562 subject VARCHAR(255) NOT NULL,
563 recipient VARCHAR(255) NOT NULL,
564 recipientID INT(10) DEFAULT NULL,
565 status VARCHAR(255) NOT NULL,
566 message TEXT,
567
568 KEY time (time)
569 );
570
571 DROP TABLE IF EXISTS wcf1_event_listener;
572 CREATE TABLE wcf1_event_listener (
573 listenerID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
574 packageID INT(10) NOT NULL,
575 environment ENUM('user', 'admin', 'all') NOT NULL DEFAULT 'user',
576 listenerName VARCHAR(191) NOT NULL,
577 eventClassName VARCHAR(255) NOT NULL DEFAULT '',
578 eventName TEXT,
579 listenerClassName VARCHAR(200) NOT NULL DEFAULT '',
580 inherit TINYINT(1) NOT NULL DEFAULT 0,
581 niceValue TINYINT(3) NOT NULL DEFAULT 0,
582 permissions TEXT,
583 options TEXT,
584
585 UNIQUE KEY listenerName (listenerName, packageID)
586 );
587
588 /* As the flood control table can be a high traffic table and as it is periodically emptied,
589 there is no foreign key on the `objectTypeID` to speed up insertions. */
590 DROP TABLE IF EXISTS wcf1_flood_control;
591 CREATE TABLE wcf1_flood_control (
592 logID BIGINT(20) NOT NULL AUTO_INCREMENT PRIMARY KEY,
593 objectTypeID INT(10) NOT NULL,
594 identifier BINARY(16) NOT NULL,
595 time INT(10) NOT NULL,
596 KEY (identifier),
597 KEY (time)
598 );
599
600 DROP TABLE IF EXISTS wcf1_import_mapping;
601 CREATE TABLE wcf1_import_mapping (
602 importHash CHAR(8) NOT NULL,
603 objectTypeID INT(10) NOT NULL,
604 oldID VARCHAR(191) NOT NULL,
605 newID INT(10) NOT NULL,
606 UNIQUE KEY (importHash, objectTypeID, oldID)
607 );
608
609 DROP TABLE IF EXISTS wcf1_label;
610 CREATE TABLE wcf1_label (
611 labelID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
612 groupID INT(10) NOT NULL,
613 label VARCHAR(80) NOT NULL,
614 cssClassName VARCHAR(255) NOT NULL DEFAULT '',
615 showOrder INT(10) NOT NULL DEFAULT 0
616 );
617
618 DROP TABLE IF EXISTS wcf1_label_group;
619 CREATE TABLE wcf1_label_group (
620 groupID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
621 groupName VARCHAR(80) NOT NULL,
622 groupDescription VARCHAR(255) NOT NULL DEFAULT '',
623 forceSelection TINYINT(1) NOT NULL DEFAULT 0,
624 showOrder INT(10) NOT NULL DEFAULT 0
625 );
626
627 DROP TABLE IF EXISTS wcf1_label_group_to_object;
628 CREATE TABLE wcf1_label_group_to_object (
629 groupID INT(10) NOT NULL,
630 objectTypeID INT(10) NOT NULL,
631 objectID INT(10) NULL
632 );
633
634 DROP TABLE IF EXISTS wcf1_label_object;
635 CREATE TABLE wcf1_label_object (
636 labelID INT(10) NOT NULL,
637 objectTypeID INT(10) NOT NULL,
638 objectID INT(10) NOT NULL,
639
640 KEY (objectTypeID, labelID),
641 KEY (objectTypeID, objectID)
642 );
643
644 DROP TABLE IF EXISTS wcf1_language;
645 CREATE TABLE wcf1_language (
646 languageID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
647 languageCode VARCHAR(20) NOT NULL DEFAULT '',
648 languageName VARCHAR(255) NOT NULL DEFAULT '',
649 countryCode VARCHAR(10) NOT NULL DEFAULT '',
650 isDefault TINYINT(1) NOT NULL DEFAULT 0,
651 hasContent TINYINT(1) NOT NULL DEFAULT 0,
652 isDisabled TINYINT(1) NOT NULL DEFAULT 0,
653 UNIQUE KEY languageCode (languageCode)
654 );
655
656 DROP TABLE IF EXISTS wcf1_language_category;
657 CREATE TABLE wcf1_language_category (
658 languageCategoryID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
659 languageCategory VARCHAR(191) NOT NULL DEFAULT '',
660 UNIQUE KEY languageCategory (languageCategory)
661 );
662
663 DROP TABLE IF EXISTS wcf1_language_item;
664 CREATE TABLE wcf1_language_item (
665 languageItemID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
666 languageID INT(10) NOT NULL,
667 languageItem VARCHAR(191) NOT NULL DEFAULT '',
668 languageItemValue MEDIUMTEXT NOT NULL,
669 languageCustomItemValue MEDIUMTEXT,
670 languageUseCustomValue TINYINT(1) NOT NULL DEFAULT 0,
671 languageItemOriginIsSystem TINYINT(1) NOT NULL DEFAULT 1,
672 languageCategoryID INT(10) NOT NULL,
673 packageID INT(10),
674 languageItemOldValue MEDIUMTEXT,
675 languageCustomItemDisableTime INT(10),
676 isCustomLanguageItem TINYINT(1) NOT NULL DEFAULT 0,
677
678 UNIQUE KEY languageItem (languageItem, languageID),
679 KEY languageItemOriginIsSystem (languageItemOriginIsSystem)
680 );
681
682 DROP TABLE IF EXISTS wcf1_like;
683 CREATE TABLE wcf1_like (
684 likeID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
685 objectID INT(10) NOT NULL DEFAULT 0,
686 objectTypeID INT(10) NOT NULL,
687 objectUserID INT(10),
688 userID INT(10) NOT NULL,
689 time INT(10) NOT NULL DEFAULT 1,
690 likeValue TINYINT(1) NOT NULL DEFAULT 1,
691 reactionTypeID INT(10) NOT NULL,
692 UNIQUE KEY (objectTypeID, objectID, userID)
693 );
694
695 DROP TABLE IF EXISTS wcf1_like_object;
696 CREATE TABLE wcf1_like_object (
697 likeObjectID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
698 objectTypeID INT(10) NOT NULL,
699 objectID INT(10) NOT NULL DEFAULT 0,
700 objectUserID INT(10),
701 likes MEDIUMINT(7) NOT NULL DEFAULT 0,
702 dislikes MEDIUMINT(7) NOT NULL DEFAULT 0,
703 cumulativeLikes MEDIUMINT(7) NOT NULL DEFAULT 0,
704 cachedUsers TEXT,
705 cachedReactions TEXT,
706 UNIQUE KEY (objectTypeID, objectID)
707 );
708
709 DROP TABLE IF EXISTS wcf1_media;
710 CREATE TABLE wcf1_media (
711 mediaID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
712 categoryID INT(10),
713
714 filename VARCHAR(255) NOT NULL DEFAULT '',
715 filesize INT(10) NOT NULL DEFAULT 0,
716 fileType VARCHAR(255) NOT NULL DEFAULT '',
717 fileHash VARCHAR(255) NOT NULL DEFAULT '',
718 uploadTime INT(10) NOT NULL DEFAULT 0,
719 fileUpdateTime INT(10) NOT NULL DEFAULT 0,
720 userID INT(10),
721 username VARCHAR(255) NOT NULL,
722 languageID INT(10),
723 isMultilingual TINYINT(1) NOT NULL DEFAULT 0,
724 captionEnableHtml TINYINT(1) NOT NULL DEFAULT 0,
725
726 isImage TINYINT(1) NOT NULL DEFAULT 0,
727 width SMALLINT(5) NOT NULL DEFAULT 0,
728 height SMALLINT(5) NOT NULL DEFAULT 0,
729
730 tinyThumbnailType VARCHAR(255) NOT NULL DEFAULT '',
731 tinyThumbnailSize INT(10) NOT NULL DEFAULT 0,
732 tinyThumbnailWidth SMALLINT(5) NOT NULL DEFAULT 0,
733 tinyThumbnailHeight SMALLINT(5) NOT NULL DEFAULT 0,
734
735 smallThumbnailType VARCHAR(255) NOT NULL DEFAULT '',
736 smallThumbnailSize INT(10) NOT NULL DEFAULT 0,
737 smallThumbnailWidth SMALLINT(5) NOT NULL DEFAULT 0,
738 smallThumbnailHeight SMALLINT(5) NOT NULL DEFAULT 0,
739
740 mediumThumbnailType VARCHAR(255) NOT NULL DEFAULT '',
741 mediumThumbnailSize INT(10) NOT NULL DEFAULT 0,
742 mediumThumbnailWidth SMALLINT(5) NOT NULL DEFAULT 0,
743 mediumThumbnailHeight SMALLINT(5) NOT NULL DEFAULT 0,
744
745 largeThumbnailType VARCHAR(255) NOT NULL DEFAULT '',
746 largeThumbnailSize INT(10) NOT NULL DEFAULT 0,
747 largeThumbnailWidth SMALLINT(5) NOT NULL DEFAULT 0,
748 largeThumbnailHeight SMALLINT(5) NOT NULL DEFAULT 0,
749
750 downloads INT(10) NOT NULL DEFAULT 0,
751 lastDownloadTime INT(10) NOT NULL DEFAULT 0
752 );
753
754 DROP TABLE IF EXISTS wcf1_media_content;
755 CREATE TABLE wcf1_media_content (
756 mediaID INT(10) NOT NULL,
757 languageID INT(10),
758 title VARCHAR(255) NOT NULL,
759 caption TEXT,
760 altText VARCHAR(255) NOT NULL DEFAULT '',
761 UNIQUE KEY (mediaID, languageID)
762 );
763
764 DROP TABLE IF EXISTS wcf1_menu;
765 CREATE TABLE wcf1_menu (
766 menuID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
767 identifier VARCHAR(255) NOT NULL,
768 title VARCHAR(255) NOT NULL,
769 originIsSystem TINYINT(1) NOT NULL DEFAULT 0,
770 packageID INT(10) NOT NULL
771 );
772
773 DROP TABLE IF EXISTS wcf1_menu_item;
774 CREATE TABLE wcf1_menu_item (
775 itemID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
776 menuID INT(10) NOT NULL,
777 parentItemID INT(10),
778 identifier VARCHAR(255) NOT NULL,
779 title VARCHAR(255) NOT NULL,
780 pageID INT(10),
781 pageObjectID INT(10) NOT NULL DEFAULT 0,
782 externalURL VARCHAR(255) NOT NULL DEFAULT '',
783 showOrder INT(10) NOT NULL DEFAULT 0,
784 isDisabled TINYINT(1) NOT NULL DEFAULT 0,
785 originIsSystem TINYINT(1) NOT NULL DEFAULT 0,
786 packageID INT(10) NOT NULL
787 );
788
789 DROP TABLE IF EXISTS wcf1_message_embedded_object;
790 CREATE TABLE wcf1_message_embedded_object (
791 messageObjectTypeID INT(10) NOT NULL,
792 messageID INT(10) NOT NULL,
793 embeddedObjectTypeID INT(10) NOT NULL,
794 embeddedObjectID INT(10) NOT NULL,
795
796 KEY (messageObjectTypeID, messageID)
797 );
798
799 DROP TABLE IF EXISTS wcf1_moderation_queue;
800 CREATE TABLE wcf1_moderation_queue (
801 queueID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
802 objectTypeID INT(10) NOT NULL,
803 objectID INT(10) NOT NULL,
804 containerID INT(10) NOT NULL DEFAULT 0,
805 userID INT(10) NULL,
806 time INT(10) NOT NULL DEFAULT 0,
807
808 -- internal
809 assignedUserID INT(10) NULL,
810 status TINYINT(1) NOT NULL DEFAULT 0,
811 comments SMALLINT(5) NOT NULL DEFAULT 0,
812 lastChangeTime INT(10) NOT NULL DEFAULT 0,
813
814 -- additional data, e.g. message if reporting content
815 additionalData TEXT,
816
817 KEY objectTypeAndID (objectTypeID, objectID)
818 );
819
820 DROP TABLE IF EXISTS wcf1_moderation_queue_to_user;
821 CREATE TABLE wcf1_moderation_queue_to_user (
822 queueID INT(10) NOT NULL,
823 userID INT(10) NOT NULL,
824 isAffected TINYINT(1) NOT NULL DEFAULT 0,
825
826 UNIQUE KEY queue (queueID, userID),
827 KEY affected (queueID, userID, isAffected)
828 );
829
830 DROP TABLE IF EXISTS wcf1_modification_log;
831 CREATE TABLE wcf1_modification_log (
832 logID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
833 objectTypeID INT(10) NOT NULL,
834 objectID INT(10) NOT NULL,
835 parentObjectID INT(10),
836 userID INT(10),
837 username VARCHAR(255) NOT NULL DEFAULT '',
838 time INT(10) NOT NULL DEFAULT 0,
839 action VARCHAR(80) NOT NULL,
840 hidden TINYINT(1) NOT NULL DEFAULT 1,
841 additionalData MEDIUMTEXT,
842
843 KEY objectTypeAndID (objectTypeID, objectID)
844 );
845
846 DROP TABLE IF EXISTS wcf1_notice;
847 CREATE TABLE wcf1_notice (
848 noticeID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
849 noticeName VARCHAR(255) NOT NULL,
850 notice MEDIUMTEXT,
851 noticeUseHtml TINYINT(1) NOT NULL DEFAULT 0,
852 cssClassName VARCHAR(255) NOT NULL DEFAULT 'info',
853 showOrder INT(10) NOT NULL DEFAULT 0,
854 isDisabled TINYINT(1) NOT NULL DEFAULT 0,
855 isDismissible TINYINT(1) NOT NULL DEFAULT 0
856 );
857
858 DROP TABLE IF EXISTS wcf1_notice_dismissed;
859 CREATE TABLE wcf1_notice_dismissed (
860 noticeID INT(10) NOT NULL,
861 userID INT(10) NOT NULL,
862 PRIMARY KEY (noticeID, userID)
863 );
864
865 DROP TABLE IF EXISTS wcf1_object_type;
866 CREATE TABLE wcf1_object_type (
867 objectTypeID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
868 definitionID INT(10) NOT NULL,
869 packageID INT(10) NOT NULL,
870 objectType VARCHAR(191) NOT NULL,
871 className VARCHAR(255) NOT NULL DEFAULT '',
872 additionalData MEDIUMTEXT,
873 UNIQUE KEY objectType (objectType, definitionID, packageID)
874 );
875
876 DROP TABLE IF EXISTS wcf1_object_type_definition;
877 CREATE TABLE wcf1_object_type_definition (
878 definitionID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
879 definitionName VARCHAR(191) NOT NULL,
880 packageID INT(10) NOT NULL,
881 interfaceName VARCHAR(255) NOT NULL DEFAULT '',
882 categoryName VARCHAR(80) NOT NULL DEFAULT '',
883 UNIQUE KEY definitionName (definitionName)
884 );
885
886 DROP TABLE IF EXISTS wcf1_option;
887 CREATE TABLE wcf1_option (
888 optionID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
889 packageID INT(10) NOT NULL,
890 optionName VARCHAR(191) NOT NULL DEFAULT '',
891 categoryName VARCHAR(191) NOT NULL DEFAULT '',
892 optionType VARCHAR(255) NOT NULL DEFAULT '',
893 optionValue MEDIUMTEXT,
894 validationPattern TEXT,
895 selectOptions MEDIUMTEXT,
896 enableOptions MEDIUMTEXT,
897 showOrder INT(10) NOT NULL DEFAULT 0,
898 hidden TINYINT(1) NOT NULL DEFAULT 0,
899 permissions TEXT,
900 options TEXT,
901 supportI18n TINYINT(1) NOT NULL DEFAULT 0,
902 requireI18n TINYINT(1) NOT NULL DEFAULT 0,
903 additionalData MEDIUMTEXT,
904
905 UNIQUE KEY optionName (optionName)
906 );
907
908 DROP TABLE IF EXISTS wcf1_option_category;
909 CREATE TABLE wcf1_option_category (
910 categoryID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
911 packageID INT(10) NOT NULL,
912 categoryName VARCHAR(191) NOT NULL DEFAULT '',
913 parentCategoryName VARCHAR(191) NOT NULL DEFAULT '',
914 showOrder INT(10) NOT NULL DEFAULT 0,
915 permissions TEXT,
916 options TEXT,
917 UNIQUE KEY categoryName (categoryName)
918 );
919
920 DROP TABLE IF EXISTS wcf1_package;
921 CREATE TABLE wcf1_package (
922 packageID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
923 package VARCHAR(191) NOT NULL DEFAULT '',
924 packageDir VARCHAR(255) NOT NULL DEFAULT '',
925 packageName VARCHAR(255) NOT NULL DEFAULT '',
926 packageDescription VARCHAR(255) NOT NULL DEFAULT '',
927 packageVersion VARCHAR(255) NOT NULL DEFAULT '',
928 packageDate INT(10) NOT NULL DEFAULT 0,
929 installDate INT(10) NOT NULL DEFAULT 0,
930 updateDate INT(10) NOT NULL DEFAULT 0,
931 packageURL VARCHAR(255) NOT NULL DEFAULT '',
932 isApplication TINYINT(1) NOT NULL DEFAULT 0,
933 author VARCHAR(255) NOT NULL DEFAULT '',
934 authorURL VARCHAR(255) NOT NULL DEFAULT '',
935 UNIQUE KEY package (package)
936 );
937
938 -- @deprecated
939 DROP TABLE IF EXISTS wcf1_package_compatibility;
940 CREATE TABLE wcf1_package_compatibility (
941 packageID INT(10) NOT NULL,
942 version SMALLINT(4) NOT NULL,
943 UNIQUE KEY compatibleVersion (packageID, version)
944 );
945
946 DROP TABLE IF EXISTS wcf1_package_exclusion;
947 CREATE TABLE wcf1_package_exclusion (
948 packageID INT(10) NOT NULL,
949 excludedPackage VARCHAR(191) NOT NULL DEFAULT '',
950 excludedPackageVersion VARCHAR(255) NOT NULL DEFAULT '',
951 UNIQUE KEY packageID (packageID, excludedPackage)
952 );
953
954 DROP TABLE IF EXISTS wcf1_package_installation_file_log;
955 CREATE TABLE wcf1_package_installation_file_log (
956 packageID INT(10),
957 filename VARBINARY(765) NOT NULL, -- VARBINARY(765) roughly equals VARCHAR(255)
958 application VARCHAR(20) NOT NULL,
959 UNIQUE KEY applicationFile (application, filename)
960 );
961
962 DROP TABLE IF EXISTS wcf1_package_installation_form;
963 CREATE TABLE wcf1_package_installation_form (
964 queueID INT(10) NOT NULL,
965 formName VARCHAR(80) NOT NULL DEFAULT '',
966 document TEXT NOT NULL,
967 UNIQUE KEY formDocument (queueID, formName)
968 );
969
970 DROP TABLE IF EXISTS wcf1_package_installation_node;
971 CREATE TABLE wcf1_package_installation_node (
972 queueID INT(10) NOT NULL,
973 processNo INT(10) NOT NULL DEFAULT 0,
974 sequenceNo SMALLINT(4) NOT NULL DEFAULT 0,
975 node CHAR(8) NOT NULL DEFAULT '',
976 parentNode CHAR(8) NOT NULL DEFAULT '',
977 nodeType ENUM('optionalPackages','package', 'pip') NOT NULL DEFAULT 'package',
978 nodeData TEXT NOT NULL,
979 done TINYINT(1) NOT NULL DEFAULT 0
980 );
981
982 DROP TABLE IF EXISTS wcf1_package_installation_plugin;
983 CREATE TABLE wcf1_package_installation_plugin (
984 pluginName VARCHAR(191) NOT NULL PRIMARY KEY,
985 packageID INT(10),
986 priority TINYINT(1) NOT NULL DEFAULT 0,
987 className VARCHAR(255) NOT NULL
988 );
989
990 DROP TABLE IF EXISTS wcf1_package_installation_queue;
991 CREATE TABLE wcf1_package_installation_queue (
992 queueID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
993 parentQueueID INT(10) NOT NULL DEFAULT 0,
994 processNo INT(10) NOT NULL DEFAULT 0,
995 userID INT(10) NOT NULL,
996 package VARCHAR(255) NOT NULL DEFAULT '',
997 packageName VARCHAR(255) NOT NULL DEFAULT '',
998 packageID INT(10),
999 archive VARCHAR(255) NOT NULL DEFAULT '',
1000 action ENUM('install', 'update', 'uninstall') NOT NULL DEFAULT 'install',
1001 done TINYINT(1) NOT NULL DEFAULT 0,
1002 isApplication TINYINT(1) NOT NULL DEFAULT 0
1003 );
1004
1005 /* The table `wcf1_package_installation_sql_log` can be found at the very top! */
1006
1007 /* SQL_PARSER_OFFSET */
1008
1009 DROP TABLE IF EXISTS wcf1_package_requirement;
1010 CREATE TABLE wcf1_package_requirement (
1011 packageID INT(10) NOT NULL,
1012 requirement INT(10) NOT NULL,
1013 UNIQUE KEY packageID (packageID, requirement)
1014 );
1015
1016 DROP TABLE IF EXISTS wcf1_package_update;
1017 CREATE TABLE wcf1_package_update (
1018 packageUpdateID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1019 packageUpdateServerID INT(10) NOT NULL,
1020 package VARCHAR(191) NOT NULL DEFAULT '',
1021 packageName VARCHAR(255) NOT NULL DEFAULT '',
1022 packageDescription VARCHAR(255) NOT NULL DEFAULT '',
1023 author VARCHAR(255) NOT NULL DEFAULT '',
1024 authorURL VARCHAR(255) NOT NULL DEFAULT '',
1025 isApplication TINYINT(1) NOT NULL DEFAULT 0,
1026 pluginStoreFileID INT(10) NOT NULL DEFAULT 0,
1027 UNIQUE KEY packageUpdateServerID (packageUpdateServerID, package)
1028 );
1029
1030 -- @deprecated
1031 DROP TABLE IF EXISTS wcf1_package_update_compatibility;
1032 CREATE TABLE wcf1_package_update_compatibility (
1033 packageUpdateVersionID INT(10) NOT NULL,
1034 version SMALLINT(4) NOT NULL,
1035 UNIQUE KEY compatibleVersion (packageUpdateVersionID, version)
1036 );
1037
1038 DROP TABLE IF EXISTS wcf1_package_update_exclusion;
1039 CREATE TABLE wcf1_package_update_exclusion (
1040 packageUpdateVersionID INT(10) NOT NULL,
1041 excludedPackage VARCHAR(191) NOT NULL DEFAULT '',
1042 excludedPackageVersion VARCHAR(255) NOT NULL DEFAULT '',
1043 UNIQUE KEY packageUpdateVersionID (packageUpdateVersionID, excludedPackage)
1044 );
1045
1046 DROP TABLE IF EXISTS wcf1_package_update_fromversion;
1047 CREATE TABLE wcf1_package_update_fromversion (
1048 packageUpdateVersionID INT(10) NOT NULL DEFAULT 0,
1049 fromversion VARCHAR(50) NOT NULL DEFAULT '',
1050 UNIQUE KEY packageUpdateVersionID (packageUpdateVersionID, fromversion)
1051 );
1052
1053 -- @deprecated
1054 DROP TABLE IF EXISTS wcf1_package_update_optional;
1055 CREATE TABLE wcf1_package_update_optional (
1056 packageUpdateVersionID INT(10) NOT NULL DEFAULT 0,
1057 package VARCHAR(255) NOT NULL DEFAULT ''
1058 );
1059
1060 DROP TABLE IF EXISTS wcf1_package_update_requirement;
1061 CREATE TABLE wcf1_package_update_requirement (
1062 packageUpdateVersionID INT(10) NOT NULL,
1063 package VARCHAR(191) NOT NULL DEFAULT '',
1064 minversion VARCHAR(50) NOT NULL DEFAULT '',
1065 UNIQUE KEY packageUpdateVersionID (packageUpdateVersionID, package)
1066 );
1067
1068 DROP TABLE IF EXISTS wcf1_package_update_server;
1069 CREATE TABLE wcf1_package_update_server (
1070 packageUpdateServerID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1071 serverURL VARCHAR(255) NOT NULL DEFAULT '',
1072 loginUsername VARCHAR(255) NOT NULL DEFAULT '',
1073 loginPassword VARCHAR(255) NOT NULL DEFAULT '',
1074 isDisabled TINYINT(1) NOT NULL DEFAULT 0,
1075 lastUpdateTime INT(10) NOT NULL DEFAULT 0,
1076 status ENUM('online', 'offline') NOT NULL DEFAULT 'online',
1077 errorMessage TEXT,
1078 apiVersion ENUM('2.0', '2.1', '3.1') NOT NULL DEFAULT '2.0',
1079 metaData TEXT
1080 );
1081
1082 DROP TABLE IF EXISTS wcf1_package_update_version;
1083 CREATE TABLE wcf1_package_update_version (
1084 packageUpdateVersionID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1085 packageUpdateID INT(10) NOT NULL,
1086 packageVersion VARCHAR(50) NOT NULL DEFAULT '',
1087 packageDate INT(10) NOT NULL DEFAULT 0,
1088 filename VARCHAR(255) NOT NULL DEFAULT '',
1089 license VARCHAR(255) NOT NULL DEFAULT '',
1090 licenseURL VARCHAR(255) NOT NULL DEFAULT '',
1091 isAccessible TINYINT(1) NOT NULL DEFAULT 1,
1092 UNIQUE KEY packageUpdateID (packageUpdateID, packageVersion)
1093 );
1094
1095 DROP TABLE IF EXISTS wcf1_page;
1096 CREATE TABLE wcf1_page (
1097 pageID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1098 parentPageID INT(10),
1099 identifier VARCHAR(255) NOT NULL,
1100 name VARCHAR(255) NOT NULL,
1101 pageType VARCHAR(255) NOT NULL,
1102 isDisabled TINYINT(1) NOT NULL DEFAULT 0,
1103 isLandingPage TINYINT(1) NOT NULL DEFAULT 0,
1104 isMultilingual TINYINT(1) NOT NULL DEFAULT 0,
1105 originIsSystem TINYINT(1) NOT NULL DEFAULT 0,
1106 packageID INT(10) NOT NULL,
1107 applicationPackageID INT(10),
1108 overrideApplicationPackageID INT(10),
1109 controller VARCHAR(255) NOT NULL DEFAULT '',
1110 handler VARCHAR(255) NOT NULL DEFAULT '',
1111 controllerCustomURL VARCHAR(255) NOT NULL DEFAULT '',
1112 requireObjectID TINYINT(1) NOT NULL DEFAULT 0,
1113 hasFixedParent TINYINT(1) NOT NULL DEFAULT 0,
1114 lastUpdateTime INT(10) NOT NULL DEFAULT 0,
1115 cssClassName VARCHAR(255) NOT NULL DEFAULT '',
1116 availableDuringOfflineMode TINYINT(1) NOT NULL DEFAULT 0,
1117 allowSpidersToIndex TINYINT(1) NOT NULL DEFAULT 0,
1118 excludeFromLandingPage TINYINT(1) NOT NULL DEFAULT 0,
1119 enableShareButtons TINYINT(1) NOT NULL DEFAULT 0,
1120 permissions TEXT NULL,
1121 options TEXT NULL,
1122 invertPermissions TINYINT(1) NOT NULL DEFAULT 0
1123 );
1124
1125 DROP TABLE IF EXISTS wcf1_page_box_order;
1126 CREATE TABLE wcf1_page_box_order (
1127 pageID INT(10) NOT NULL,
1128 boxID INT(10) NOT NULL,
1129 showOrder INT(10) NOT NULL DEFAULT 0,
1130 UNIQUE KEY pageToBox (pageID, boxID)
1131 );
1132
1133 DROP TABLE IF EXISTS wcf1_page_content;
1134 CREATE TABLE wcf1_page_content (
1135 pageContentID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1136 pageID INT(10) NOT NULL,
1137 languageID INT(10),
1138 title VARCHAR(255) NOT NULL,
1139 content MEDIUMTEXT,
1140 metaDescription TEXT,
1141 customURL VARCHAR(255) NOT NULL,
1142 hasEmbeddedObjects TINYINT(1) NOT NULL DEFAULT 0,
1143
1144 UNIQUE KEY (pageID, languageID)
1145 );
1146
1147 DROP TABLE IF EXISTS wcf1_paid_subscription;
1148 CREATE TABLE wcf1_paid_subscription (
1149 subscriptionID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1150 title VARCHAR(255) NOT NULL DEFAULT '',
1151 description TEXT,
1152 isDisabled TINYINT(1) NOT NULL DEFAULT 0,
1153 showOrder INT(10) NOT NULL DEFAULT 0,
1154 cost DECIMAL(10,2) NOT NULL DEFAULT 0,
1155 currency VARCHAR(3) NOT NULL DEFAULT 'EUR',
1156 subscriptionLength SMALLINT(3) NOT NULL DEFAULT 0,
1157 subscriptionLengthUnit ENUM('', 'D', 'M', 'Y') NOT NULL DEFAULT '',
1158 isRecurring TINYINT(1) NOT NULL DEFAULT 0,
1159 groupIDs TEXT,
1160 excludedSubscriptionIDs TEXT
1161 );
1162
1163 DROP TABLE IF EXISTS wcf1_paid_subscription_user;
1164 CREATE TABLE wcf1_paid_subscription_user (
1165 subscriptionUserID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1166 subscriptionID INT(10) NOT NULL,
1167 userID INT(10) NOT NULL,
1168 startDate INT(10) NOT NULL DEFAULT 0,
1169 endDate INT(10) NOT NULL DEFAULT 0,
1170 isActive TINYINT(1) NOT NULL DEFAULT 1,
1171 sentExpirationNotification TINYINT(1) NOT NULL DEFAULT 0,
1172
1173 UNIQUE KEY (subscriptionID, userID),
1174 KEY (isActive)
1175 );
1176
1177 DROP TABLE IF EXISTS wcf1_paid_subscription_transaction_log;
1178 CREATE TABLE wcf1_paid_subscription_transaction_log (
1179 logID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1180 subscriptionUserID INT(10),
1181 userID INT(10),
1182 subscriptionID INT(10),
1183 paymentMethodObjectTypeID INT(10) NOT NULL,
1184 logTime INT(10) NOT NULL DEFAULT 0,
1185 transactionID VARCHAR(255) NOT NULL DEFAULT '',
1186 transactionDetails MEDIUMTEXT,
1187 logMessage VARCHAR(255) NOT NULL DEFAULT ''
1188 );
1189
1190 DROP TABLE IF EXISTS wcf1_poll;
1191 CREATE TABLE wcf1_poll (
1192 pollID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1193 objectTypeID INT(10) NOT NULL,
1194 objectID INT(10) NOT NULL DEFAULT 0,
1195 question VARCHAR(255) DEFAULT '',
1196 time INT(10) NOT NULL DEFAULT 0,
1197 endTime INT(10) NOT NULL DEFAULT 0,
1198 isChangeable TINYINT(1) NOT NULL DEFAULT 0,
1199 isPublic TINYINT(1) NOT NULL DEFAULT 0,
1200 sortByVotes TINYINT(1) NOT NULL DEFAULT 0,
1201 resultsRequireVote TINYINT(1) NOT NULL DEFAULT 0,
1202 maxVotes INT(10) NOT NULL DEFAULT 1,
1203 votes INT(10) NOT NULL DEFAULT 0
1204 );
1205
1206 DROP TABLE IF EXISTS wcf1_poll_option;
1207 CREATE TABLE wcf1_poll_option (
1208 optionID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1209 pollID INT(10) NOT NULL,
1210 optionValue VARCHAR(255) NOT NULL DEFAULT '',
1211 votes INT(10) NOT NULL DEFAULT 0,
1212 showOrder INT(10) NOT NULL DEFAULT 0
1213 );
1214
1215 DROP TABLE IF EXISTS wcf1_poll_option_vote;
1216 CREATE TABLE wcf1_poll_option_vote (
1217 pollID INT(10) NOT NULL,
1218 optionID INT(10) NOT NULL,
1219 userID INT(10) NOT NULL,
1220
1221 KEY (optionID, userID),
1222 UNIQUE KEY vote (pollID, optionID, userID)
1223 );
1224
1225 DROP TABLE IF EXISTS wcf1_reaction_type;
1226 CREATE TABLE wcf1_reaction_type (
1227 reactionTypeID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1228 title VARCHAR(255) NOT NULL,
1229 showOrder INT(10) NOT NULL DEFAULT 0,
1230 iconFile VARCHAR(255) NOT NULL DEFAULT '',
1231 isAssignable TINYINT(1) NOT NULL DEFAULT 1
1232 );
1233
1234 DROP TABLE IF EXISTS wcf1_registry;
1235 CREATE TABLE wcf1_registry (
1236 packageID INT(10) NOT NULL,
1237 field VARCHAR(191) NOT NULL,
1238 fieldValue MEDIUMTEXT,
1239
1240 UNIQUE KEY uniqueField (packageID, field)
1241 );
1242
1243 DROP TABLE IF EXISTS wcf1_search;
1244 CREATE TABLE wcf1_search (
1245 searchID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1246 userID INT(10),
1247 searchData MEDIUMTEXT NOT NULL,
1248 searchTime INT(10) NOT NULL DEFAULT 0,
1249 searchType VARCHAR(255) NOT NULL DEFAULT '',
1250 searchHash CHAR(40) NOT NULL DEFAULT '',
1251 KEY searchHash (searchHash)
1252 );
1253
1254 DROP TABLE IF EXISTS wcf1_search_keyword;
1255 CREATE TABLE wcf1_search_keyword (
1256 keywordID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1257 keyword VARCHAR(191) NOT NULL,
1258 searches INT(10) NOT NULL DEFAULT 0,
1259 lastSearchTime INT(10) NOT NULL DEFAULT 0,
1260 UNIQUE KEY (keyword),
1261 KEY (searches, lastSearchTime)
1262 );
1263
1264 DROP TABLE IF EXISTS wcf1_session;
1265 CREATE TABLE wcf1_session (
1266 sessionID CHAR(40) NOT NULL PRIMARY KEY,
1267 userID INT(10),
1268 ipAddress VARCHAR(39) NOT NULL DEFAULT '',
1269 userAgent VARCHAR(191) NOT NULL DEFAULT '',
1270 lastActivityTime INT(10) NOT NULL DEFAULT 0,
1271 requestURI VARCHAR(255) NOT NULL DEFAULT '',
1272 requestMethod VARCHAR(7) NOT NULL DEFAULT '',
1273 pageID INT(10),
1274 pageObjectID INT(10),
1275 parentPageID INT(10),
1276 parentPageObjectID INT(10),
1277 spiderID INT(10),
1278 KEY packageID (lastActivityTime, spiderID),
1279 KEY pageID (pageID, pageObjectID),
1280 KEY parentPageID (parentPageID, parentPageObjectID),
1281 UNIQUE KEY uniqueUserID (userID)
1282 );
1283
1284 DROP TABLE IF EXISTS wcf1_smiley;
1285 CREATE TABLE wcf1_smiley (
1286 smileyID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1287 packageID INT(10) NOT NULL,
1288 categoryID INT(10),
1289 smileyPath VARCHAR(255) NOT NULL DEFAULT '',
1290 smileyPath2x VARCHAR(255) NOT NULL DEFAULT '',
1291 smileyTitle VARCHAR(255) NOT NULL DEFAULT '',
1292 smileyCode VARCHAR(191) NOT NULL DEFAULT '',
1293 aliases TEXT NOT NULL,
1294 showOrder INT(10) NOT NULL DEFAULT 0,
1295 UNIQUE KEY smileyCode (smileyCode)
1296 );
1297
1298 DROP TABLE IF EXISTS wcf1_spider;
1299 CREATE TABLE wcf1_spider (
1300 spiderID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1301 spiderIdentifier VARCHAR(191) DEFAULT '',
1302 spiderName VARCHAR(255) DEFAULT '',
1303 spiderURL VARCHAR(255) DEFAULT '',
1304 UNIQUE KEY spiderIdentifier (spiderIdentifier)
1305 );
1306
1307 DROP TABLE IF EXISTS wcf1_stat_daily;
1308 CREATE TABLE wcf1_stat_daily (
1309 statID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1310 objectTypeID INT(10) NOT NULL,
1311 date DATE NOT NULL,
1312 counter INT(10) NOT NULL DEFAULT 0,
1313 total INT(10) NOT NULL DEFAULT 0,
1314
1315 UNIQUE KEY (objectTypeID, date)
1316 );
1317
1318 DROP TABLE IF EXISTS wcf1_style;
1319 CREATE TABLE wcf1_style (
1320 styleID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1321 packageID INT(10) NOT NULL,
1322 styleName VARCHAR(255) NOT NULL DEFAULT '',
1323 templateGroupID INT(10) NOT NULL DEFAULT 0,
1324 isDefault TINYINT(1) NOT NULL DEFAULT 0,
1325 isDisabled TINYINT(1) NOT NULL DEFAULT 0,
1326 styleDescription VARCHAR(30) NOT NULL DEFAULT '',
1327 styleVersion VARCHAR(255) NOT NULL DEFAULT '',
1328 styleDate CHAR(10) NOT NULL DEFAULT '0000-00-00',
1329 image VARCHAR(255) NOT NULL DEFAULT '',
1330 image2x VARCHAR(255) NOT NULL DEFAULT '',
1331 copyright VARCHAR(255) NOT NULL DEFAULT '',
1332 license VARCHAR(255) NOT NULL DEFAULT '',
1333 authorName VARCHAR(255) NOT NULL DEFAULT '',
1334 authorURL VARCHAR(255) NOT NULL DEFAULT '',
1335 imagePath VARCHAR(255) NOT NULL DEFAULT '',
1336 packageName VARCHAR(255) NOT NULL DEFAULT '',
1337 isTainted TINYINT(1) NOT NULL DEFAULT 0,
1338 hasFavicon TINYINT(1) NOT NULL DEFAULT 0,
1339 coverPhotoExtension VARCHAR(4) NOT NULL DEFAULT '',
1340 apiVersion ENUM('3.0', '3.1', '5.2', '5.5') NOT NULL DEFAULT '3.0'
1341 );
1342
1343 DROP TABLE IF EXISTS wcf1_style_variable;
1344 CREATE TABLE wcf1_style_variable (
1345 variableID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1346 variableName VARCHAR(50) NOT NULL,
1347 defaultValue MEDIUMTEXT,
1348 UNIQUE KEY variableName (variableName)
1349 );
1350
1351 DROP TABLE IF EXISTS wcf1_style_variable_value;
1352 CREATE TABLE wcf1_style_variable_value (
1353 styleID INT(10) NOT NULL,
1354 variableID INT(10) NOT NULL,
1355 variableValue MEDIUMTEXT,
1356 UNIQUE KEY (styleID, variableID)
1357 );
1358
1359 DROP TABLE IF EXISTS wcf1_tag;
1360 CREATE TABLE wcf1_tag (
1361 tagID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1362 languageID INT(10) NOT NULL DEFAULT 0,
1363 name VARCHAR(191) NOT NULL,
1364 synonymFor INT(10),
1365 UNIQUE KEY (languageID, name)
1366 );
1367
1368 DROP TABLE IF EXISTS wcf1_tag_to_object;
1369 CREATE TABLE wcf1_tag_to_object (
1370 objectID INT(10) NOT NULL,
1371 tagID INT(10) NOT NULL,
1372 objectTypeID INT(10) NOT NULL,
1373 languageID INT(10) NOT NULL,
1374 PRIMARY KEY (objectTypeID, objectID, tagID),
1375 KEY (objectTypeID, tagID),
1376 KEY (tagID)
1377 );
1378
1379 DROP TABLE IF EXISTS wcf1_template;
1380 CREATE TABLE wcf1_template (
1381 templateID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1382 packageID INT(10) NOT NULL,
1383 templateName VARCHAR(191) NOT NULL,
1384 application VARCHAR(20) NOT NULL,
1385 templateGroupID INT(10),
1386 lastModificationTime INT(10) NOT NULL DEFAULT 0,
1387 UNIQUE KEY applicationTemplate (application, templateGroupID, templateName),
1388 KEY templateGroupID (packageID, templateGroupID, templateName)
1389 );
1390
1391 DROP TABLE IF EXISTS wcf1_template_group;
1392 CREATE TABLE wcf1_template_group (
1393 templateGroupID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1394 parentTemplateGroupID INT(10),
1395 templateGroupName VARCHAR(255) NOT NULL DEFAULT '',
1396 templateGroupFolderName VARCHAR(255) NOT NULL DEFAULT ''
1397 );
1398
1399 DROP TABLE IF EXISTS wcf1_template_listener;
1400 CREATE TABLE wcf1_template_listener (
1401 listenerID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1402 packageID INT(10) NOT NULL,
1403 name VARCHAR(80) NOT NULL DEFAULT '',
1404 environment ENUM('user','admin') NOT NULL DEFAULT 'user',
1405 templateName VARCHAR(80) NOT NULL DEFAULT '',
1406 eventName VARCHAR(50) NOT NULL DEFAULT '',
1407 templateCode TEXT NOT NULL,
1408 niceValue TINYINT(3) NOT NULL DEFAULT 0,
1409 permissions TEXT,
1410 options TEXT,
1411
1412 KEY templateName (environment, templateName)
1413 );
1414
1415 /* SQL_PARSER_OFFSET */
1416
1417 DROP TABLE IF EXISTS wcf1_tracked_visit;
1418 CREATE TABLE wcf1_tracked_visit (
1419 objectTypeID INT(10) NOT NULL,
1420 objectID INT(10) NOT NULL,
1421 userID INT(10) NOT NULL,
1422 visitTime INT(10) NOT NULL DEFAULT 0,
1423 UNIQUE KEY (objectTypeID, objectID, userID),
1424 KEY (userID, visitTime)
1425 );
1426
1427 DROP TABLE IF EXISTS wcf1_tracked_visit_type;
1428 CREATE TABLE wcf1_tracked_visit_type (
1429 objectTypeID INT(10) NOT NULL,
1430 userID INT(10) NOT NULL,
1431 visitTime INT(10) NOT NULL DEFAULT 0,
1432 UNIQUE KEY (objectTypeID, userID),
1433 KEY (userID, visitTime)
1434 );
1435
1436 DROP TABLE IF EXISTS wcf1_trophy;
1437 CREATE TABLE wcf1_trophy(
1438 trophyID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1439 title VARCHAR(255),
1440 description MEDIUMTEXT,
1441 categoryID INT(10) NOT NULL,
1442 type SMALLINT(1) DEFAULT 1,
1443 iconFile MEDIUMTEXT,
1444 iconName VARCHAR(255),
1445 iconColor VARCHAR(255),
1446 badgeColor VARCHAR(255),
1447 isDisabled TINYINT(1) NOT NULL DEFAULT 0,
1448 awardAutomatically TINYINT(1) NOT NULL DEFAULT 0,
1449 revokeAutomatically TINYINT(1) NOT NULL DEFAULT 0,
1450 trophyUseHtml TINYINT(1) NOT NULL DEFAULT 0,
1451 showOrder INT(10) NOT NULL DEFAULT 0,
1452 KEY(categoryID)
1453 );
1454
1455 DROP TABLE IF EXISTS wcf1_unfurl_url;
1456 CREATE TABLE wcf1_unfurl_url (
1457 urlID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1458 url TEXT NOT NULL,
1459 urlHash VARCHAR(40) NOT NULL,
1460 title VARCHAR(255) NOT NULL DEFAULT '',
1461 description TEXT,
1462 imageID INT(10),
1463 status VARCHAR(255) NOT NULL DEFAULT 'PENDING',
1464 lastFetch INT(10) NOT NULL DEFAULT 0,
1465
1466 UNIQUE KEY urlHash (urlHash)
1467 );
1468
1469 DROP TABLE IF EXISTS wcf1_unfurl_url_image;
1470 CREATE TABLE wcf1_unfurl_url_image (
1471 imageID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1472 imageUrl TEXT NOT NULL,
1473 imageUrlHash VARCHAR(40) DEFAULT NULL,
1474 width INT(10) NOT NULL,
1475 height INT(10) NOT NULL,
1476 imageExtension VARCHAR(4) DEFAULT NULL,
1477 isStored TINYINT(1) NOT NULL DEFAULT 0,
1478
1479 UNIQUE KEY imageUrlHash (imageUrlHash)
1480 );
1481
1482 DROP TABLE IF EXISTS wcf1_user;
1483 CREATE TABLE wcf1_user (
1484 userID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1485 username VARCHAR(100) NOT NULL DEFAULT '',
1486 email VARCHAR(191) NOT NULL DEFAULT '',
1487 password VARCHAR(255) NOT NULL DEFAULT 'invalid:',
1488 accessToken CHAR(40) NOT NULL DEFAULT '',
1489 multifactorActive TINYINT(1) NOT NULL DEFAULT 0,
1490 languageID INT(10) NOT NULL DEFAULT 0,
1491 registrationDate INT(10) NOT NULL DEFAULT 0,
1492 styleID INT(10) NOT NULL DEFAULT 0,
1493 banned TINYINT(1) NOT NULL DEFAULT 0,
1494 banReason MEDIUMTEXT NULL,
1495 banExpires INT(10) NOT NULL DEFAULT 0,
1496 activationCode INT(10) NOT NULL DEFAULT 0,
1497 emailConfirmed CHAR(40) DEFAULT NULL,
1498 lastLostPasswordRequestTime INT(10) NOT NULL DEFAULT 0,
1499 lostPasswordKey CHAR(40) DEFAULT NULL,
1500 lastUsernameChange INT(10) NOT NULL DEFAULT 0,
1501 newEmail VARCHAR(255) NOT NULL DEFAULT '',
1502 oldUsername VARCHAR(255) NOT NULL DEFAULT '',
1503 quitStarted INT(10) NOT NULL DEFAULT 0,
1504 reactivationCode INT(10) NOT NULL DEFAULT 0,
1505 registrationIpAddress VARCHAR(39) NOT NULL DEFAULT '',
1506 avatarID INT(10),
1507 disableAvatar TINYINT(1) NOT NULL DEFAULT 0,
1508 disableAvatarReason TEXT,
1509 disableAvatarExpires INT(10) NOT NULL DEFAULT 0,
1510 enableGravatar TINYINT(1) NOT NULL DEFAULT 0,
1511 gravatarFileExtension VARCHAR(3) NOT NULL DEFAULT '',
1512 signature TEXT,
1513 signatureEnableHtml TINYINT(1) NOT NULL DEFAULT 0,
1514 disableSignature TINYINT(1) NOT NULL DEFAULT 0,
1515 disableSignatureReason TEXT,
1516 disableSignatureExpires INT(10) NOT NULL DEFAULT 0,
1517 lastActivityTime INT(10) NOT NULL DEFAULT 0,
1518 profileHits INT(10) NOT NULL DEFAULT 0,
1519 rankID INT(10),
1520 userTitle VARCHAR(255) NOT NULL DEFAULT '',
1521 userOnlineGroupID INT(10),
1522 activityPoints INT(10) NOT NULL DEFAULT 0,
1523 notificationMailToken VARCHAR(20) NOT NULL DEFAULT '',
1524 authData VARCHAR(191) NOT NULL DEFAULT '',
1525 likesReceived MEDIUMINT(7) NOT NULL DEFAULT 0,
1526 trophyPoints INT(10) NOT NULL DEFAULT 0,
1527 coverPhotoHash CHAR(40) DEFAULT NULL,
1528 coverPhotoExtension VARCHAR(4) NOT NULL DEFAULT '',
1529 coverPhotoHasWebP TINYINT(1) NOT NULL DEFAULT 0,
1530 disableCoverPhoto TINYINT(1) NOT NULL DEFAULT 0,
1531 disableCoverPhotoReason TEXT,
1532 disableCoverPhotoExpires INT(10) NOT NULL DEFAULT 0,
1533 articles INT(10) NOT NULL DEFAULT 0,
1534 blacklistMatches VARCHAR(255) NOT NULL DEFAULT '',
1535
1536 UNIQUE KEY username (username),
1537 KEY email (email),
1538 KEY registrationDate (registrationDate),
1539 KEY styleID (styleID),
1540 KEY activationCode (activationCode),
1541 KEY registrationData (registrationIpAddress, registrationDate),
1542 KEY activityPoints (activityPoints),
1543 KEY likesReceived (likesReceived),
1544 KEY authData (authData),
1545 KEY trophyPoints (trophyPoints)
1546 );
1547
1548 DROP TABLE IF EXISTS wcf1_user_activity_event;
1549 CREATE TABLE wcf1_user_activity_event (
1550 eventID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1551 objectTypeID INT(10) NOT NULL,
1552 objectID INT(10) NOT NULL,
1553 languageID INT(10),
1554 userID INT(10) NOT NULL,
1555 time INT(10) NOT NULL,
1556 additionalData TEXT,
1557
1558 KEY (time),
1559 KEY (userID, time),
1560 KEY (objectTypeID, objectID)
1561 );
1562
1563 DROP TABLE IF EXISTS wcf1_user_activity_point;
1564 CREATE TABLE wcf1_user_activity_point (
1565 userID INT(10) NOT NULL,
1566 objectTypeID INT(10) NOT NULL,
1567 activityPoints INT(10) NOT NULL DEFAULT 0,
1568 items INT(10) NOT NULL DEFAULT 0,
1569 PRIMARY KEY (userID, objectTypeID),
1570 KEY (objectTypeID)
1571 );
1572
1573 DROP TABLE IF EXISTS wcf1_user_authentication_failure;
1574 CREATE TABLE wcf1_user_authentication_failure (
1575 failureID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1576 environment ENUM('user', 'admin') NOT NULL DEFAULT 'user',
1577 userID INT(10),
1578 username VARCHAR(255) NOT NULL DEFAULT '',
1579 time INT(10) NOT NULL DEFAULT 0,
1580 ipAddress VARCHAR(39) NOT NULL DEFAULT '',
1581 userAgent VARCHAR(255) NOT NULL DEFAULT '',
1582 validationError VARCHAR(255) NOT NULL DEFAULT '',
1583 KEY (ipAddress, time),
1584 KEY (time)
1585 );
1586
1587 DROP TABLE IF EXISTS wcf1_user_avatar;
1588 CREATE TABLE wcf1_user_avatar (
1589 avatarID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1590 avatarName VARCHAR(255) NOT NULL DEFAULT '',
1591 avatarExtension VARCHAR(7) NOT NULL DEFAULT '',
1592 width SMALLINT(5) NOT NULL DEFAULT 0,
1593 height SMALLINT(5) NOT NULL DEFAULT 0,
1594 userID INT(10),
1595 fileHash VARCHAR(40) NOT NULL DEFAULT '',
1596 hasWebP TINYINT(1) NOT NULL DEFAULT 0
1597 );
1598
1599 DROP TABLE IF EXISTS wcf1_user_collapsible_content;
1600 CREATE TABLE wcf1_user_collapsible_content (
1601 objectTypeID INT(10) NOT NULL,
1602 objectID VARCHAR(191) NOT NULL,
1603 userID INT(10) NOT NULL,
1604 UNIQUE KEY (objectTypeID, objectID, userID)
1605 );
1606
1607 DROP TABLE IF EXISTS wcf1_user_follow;
1608 CREATE TABLE wcf1_user_follow (
1609 followID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1610 userID INT(10) NOT NULL,
1611 followUserID INT(10) NOT NULL,
1612 time INT(10) NOT NULL DEFAULT 0,
1613 UNIQUE KEY (userID, followUserID)
1614 );
1615
1616 DROP TABLE IF EXISTS wcf1_user_group;
1617 CREATE TABLE wcf1_user_group (
1618 groupID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1619 groupName VARCHAR(255) NOT NULL DEFAULT '',
1620 groupDescription TEXT,
1621 groupType TINYINT(1) NOT NULL DEFAULT 4,
1622 priority MEDIUMINT(8) NOT NULL DEFAULT 0,
1623 userOnlineMarking VARCHAR(255) NOT NULL DEFAULT '%s',
1624 showOnTeamPage TINYINT(1) NOT NULL DEFAULT 0,
1625 allowMention TINYINT(1) NOT NULL DEFAULT 0,
1626 requireMultifactor TINYINT(1) NOT NULL DEFAULT 0
1627 );
1628
1629 DROP TABLE IF EXISTS wcf1_user_group_assignment;
1630 CREATE TABLE wcf1_user_group_assignment (
1631 assignmentID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1632 groupID INT(10) NOT NULL,
1633 title VARCHAR(255) NOT NULL,
1634 isDisabled TINYINT(1) NOT NULL DEFAULT 0
1635 );
1636
1637 DROP TABLE IF EXISTS wcf1_user_group_option;
1638 CREATE TABLE wcf1_user_group_option (
1639 optionID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1640 packageID INT(10),
1641 optionName VARCHAR(191) NOT NULL DEFAULT '',
1642 categoryName VARCHAR(191) NOT NULL DEFAULT '',
1643 optionType VARCHAR(255) NOT NULL DEFAULT '',
1644 defaultValue MEDIUMTEXT,
1645 validationPattern TEXT,
1646 enableOptions MEDIUMTEXT,
1647 showOrder INT(10) NOT NULL DEFAULT 0,
1648 permissions TEXT,
1649 options TEXT,
1650 usersOnly TINYINT(1) NOT NULL DEFAULT 0,
1651 additionalData MEDIUMTEXT,
1652 UNIQUE KEY optionName (optionName, packageID)
1653 );
1654
1655 DROP TABLE IF EXISTS wcf1_user_group_option_category;
1656 CREATE TABLE wcf1_user_group_option_category (
1657 categoryID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1658 packageID INT(10) NOT NULL,
1659 categoryName VARCHAR(191) NOT NULL DEFAULT '',
1660 parentCategoryName VARCHAR(191) NOT NULL DEFAULT '',
1661 showOrder INT(10) NOT NULL DEFAULT 0,
1662 permissions TEXT,
1663 options TEXT,
1664 UNIQUE KEY categoryName (categoryName)
1665 );
1666
1667 DROP TABLE IF EXISTS wcf1_user_group_option_value;
1668 CREATE TABLE wcf1_user_group_option_value (
1669 groupID INT(10) NOT NULL,
1670 optionID INT(10) NOT NULL,
1671 optionValue MEDIUMTEXT NOT NULL,
1672 UNIQUE KEY groupID (groupID, optionID)
1673 );
1674
1675 DROP TABLE IF EXISTS wcf1_user_ignore;
1676 CREATE TABLE wcf1_user_ignore (
1677 ignoreID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1678 userID INT(10) NOT NULL,
1679 ignoreUserID INT(10) NOT NULL,
1680 time INT(10) NOT NULL DEFAULT 0,
1681 type TINYINT(1) NOT NULL DEFAULT 1,
1682 UNIQUE KEY (userID, ignoreUserID)
1683 );
1684
1685 DROP TABLE IF EXISTS wcf1_user_special_trophy;
1686 CREATE TABLE wcf1_user_special_trophy(
1687 trophyID INT(10) NOT NULL,
1688 userID INT(10) NOT NULL,
1689 UNIQUE KEY (trophyID, userID)
1690 );
1691
1692 DROP TABLE IF EXISTS wcf1_user_trophy;
1693 CREATE TABLE wcf1_user_trophy(
1694 userTrophyID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1695 trophyID INT(10) NOT NULL,
1696 userID INT(10) NOT NULL,
1697 time INT(10) NOT NULL DEFAULT 0,
1698 description MEDIUMTEXT,
1699 useCustomDescription TINYINT(1) NOT NULL DEFAULT 0,
1700 trophyUseHtml TINYINT(1) NOT NULL DEFAULT 0,
1701 KEY(trophyID, time)
1702 );
1703
1704 DROP TABLE IF EXISTS wcf1_user_menu_item;
1705 CREATE TABLE wcf1_user_menu_item (
1706 menuItemID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1707 packageID INT(10) NOT NULL,
1708 menuItem VARCHAR(191) NOT NULL DEFAULT '',
1709 parentMenuItem VARCHAR(191) NOT NULL DEFAULT '',
1710 menuItemController VARCHAR(255) NOT NULL DEFAULT '',
1711 menuItemLink VARCHAR(255) NOT NULL DEFAULT '',
1712 showOrder INT(10) NOT NULL DEFAULT 0,
1713 permissions TEXT,
1714 options TEXT,
1715 className VARCHAR(255) NOT NULL DEFAULT '',
1716 iconClassName VARCHAR(255) NOT NULL DEFAULT '',
1717 UNIQUE KEY menuItem (menuItem, packageID)
1718 );
1719
1720 DROP TABLE IF EXISTS wcf1_user_multifactor;
1721 CREATE TABLE wcf1_user_multifactor (
1722 setupID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1723 userID INT(10) NOT NULL,
1724 objectTypeID INT(10) NOT NULL,
1725 UNIQUE KEY (userID, objectTypeID)
1726 );
1727
1728 DROP TABLE IF EXISTS wcf1_user_multifactor_backup;
1729 CREATE TABLE wcf1_user_multifactor_backup (
1730 setupID INT(10) NOT NULL,
1731 identifier VARCHAR(191) NOT NULL,
1732 code VARCHAR(255) NOT NULL,
1733 createTime INT(10) NOT NULL,
1734 useTime INT(10) DEFAULT NULL,
1735
1736 UNIQUE KEY (setupID, identifier)
1737 );
1738
1739 DROP TABLE IF EXISTS wcf1_user_multifactor_email;
1740 CREATE TABLE wcf1_user_multifactor_email (
1741 setupID INT(10) NOT NULL,
1742 code VARCHAR(191) NOT NULL,
1743 createTime INT(10) NOT NULL,
1744
1745 UNIQUE KEY (setupID, code)
1746 );
1747
1748 DROP TABLE IF EXISTS wcf1_user_multifactor_totp;
1749 CREATE TABLE wcf1_user_multifactor_totp (
1750 setupID INT(10) NOT NULL,
1751 deviceID VARCHAR(191) NOT NULL,
1752 deviceName VARCHAR(255) NOT NULL,
1753 secret VARBINARY(255) NOT NULL,
1754 minCounter INT(10) NOT NULL,
1755 createTime INT(10) NOT NULL,
1756 useTime INT(10) DEFAULT NULL,
1757
1758 UNIQUE KEY (setupID, deviceID)
1759 );
1760
1761 -- notifications
1762 DROP TABLE IF EXISTS wcf1_user_notification;
1763 CREATE TABLE wcf1_user_notification (
1764 notificationID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1765 packageID INT(10) NOT NULL,
1766 eventID INT(10) NOT NULL,
1767 objectID INT(10) NOT NULL DEFAULT 0,
1768 baseObjectID INT(10) NOT NULL DEFAULT 0,
1769 eventHash VARCHAR(40) NOT NULL DEFAULT '',
1770 authorID INT(10) NULL,
1771 timesTriggered INT(10) NOT NULL DEFAULT 0,
1772 guestTimesTriggered INT(10) NOT NULL DEFAULT 0,
1773 userID INT(10) NOT NULL,
1774 time INT(10) NOT NULL DEFAULT 0,
1775 mailNotified TINYINT(1) NOT NULL DEFAULT 0,
1776 confirmTime INT(10) NOT NULL DEFAULT 0,
1777 additionalData TEXT,
1778 KEY (userID, eventID, objectID, confirmTime),
1779 KEY (userID, confirmTime),
1780 KEY (confirmTime)
1781 );
1782
1783 -- notification authors (stacking)
1784 DROP TABLE IF EXISTS wcf1_user_notification_author;
1785 CREATE TABLE wcf1_user_notification_author (
1786 notificationID INT(10) NOT NULL,
1787 authorID INT(10),
1788 time INT(10) NOT NULL DEFAULT 0,
1789 UNIQUE KEY (notificationID, authorID)
1790 );
1791
1792 -- notification recipients
1793 -- @deprecated
1794 DROP TABLE IF EXISTS wcf1_user_notification_to_user;
1795 CREATE TABLE wcf1_user_notification_to_user (
1796 notificationID INT(10) NOT NULL,
1797 userID INT(10) NOT NULL,
1798 UNIQUE KEY notificationID (notificationID, userID)
1799 );
1800
1801 -- events that create notifications
1802 DROP TABLE IF EXISTS wcf1_user_notification_event;
1803 CREATE TABLE wcf1_user_notification_event (
1804 eventID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1805 packageID INT(10) NOT NULL,
1806 eventName VARCHAR(191) NOT NULL DEFAULT '',
1807 objectTypeID INT(10) NOT NULL,
1808 className VARCHAR(255) NOT NULL DEFAULT '',
1809 permissions TEXT,
1810 options TEXT,
1811 preset TINYINT(1) NOT NULL DEFAULT 0,
1812 presetMailNotificationType ENUM('none', 'instant', 'daily') NOT NULL DEFAULT 'none',
1813 UNIQUE KEY eventName (eventName, objectTypeID)
1814 );
1815
1816 -- user configuration for events
1817 DROP TABLE IF EXISTS wcf1_user_notification_event_to_user;
1818 CREATE TABLE wcf1_user_notification_event_to_user (
1819 userID INT(10) NOT NULL,
1820 eventID INT(10) NOT NULL,
1821 mailNotificationType ENUM('none', 'instant', 'daily') NOT NULL DEFAULT 'none',
1822 UNIQUE KEY (eventID, userID)
1823 );
1824
1825 DROP TABLE IF EXISTS wcf1_user_object_watch;
1826 CREATE TABLE wcf1_user_object_watch (
1827 watchID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1828 objectTypeID INT(10) NOT NULL,
1829 objectID INT(10) NOT NULL,
1830 userID INT(10) NOT NULL,
1831 notification TINYINT(1) NOT NULL DEFAULT 0,
1832
1833 UNIQUE KEY (objectTypeID, userID, objectID),
1834 KEY (objectTypeID, objectID)
1835 );
1836
1837 DROP TABLE IF EXISTS wcf1_user_option;
1838 CREATE TABLE wcf1_user_option (
1839 optionID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1840 packageID INT(10) NOT NULL,
1841 optionName VARCHAR(191) NOT NULL DEFAULT '',
1842 categoryName VARCHAR(191) NOT NULL DEFAULT '',
1843 optionType VARCHAR(255) NOT NULL DEFAULT '',
1844 defaultValue MEDIUMTEXT,
1845 validationPattern TEXT,
1846 selectOptions MEDIUMTEXT,
1847 enableOptions MEDIUMTEXT,
1848 labeledUrl MEDIUMTEXT,
1849 required TINYINT(1) NOT NULL DEFAULT 0,
1850 askDuringRegistration TINYINT(1) NOT NULL DEFAULT 0,
1851 editable TINYINT(1) NOT NULL DEFAULT 0,
1852 visible TINYINT(1) NOT NULL DEFAULT 0,
1853 outputClass VARCHAR(255) NOT NULL DEFAULT '',
1854 searchable TINYINT(1) NOT NULL DEFAULT 0,
1855 showOrder INT(10) NOT NULL DEFAULT 0,
1856 isDisabled TINYINT(1) NOT NULL DEFAULT 0,
1857 permissions TEXT,
1858 options TEXT,
1859 additionalData MEDIUMTEXT,
1860 originIsSystem TINYINT(1) NOT NULL DEFAULT 0,
1861 UNIQUE KEY optionName (optionName, packageID),
1862 KEY categoryName (categoryName)
1863 );
1864
1865 DROP TABLE IF EXISTS wcf1_user_option_category;
1866 CREATE TABLE wcf1_user_option_category (
1867 categoryID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1868 packageID INT(10) NOT NULL,
1869 categoryName VARCHAR(191) NOT NULL DEFAULT '',
1870 parentCategoryName VARCHAR(191) NOT NULL DEFAULT '',
1871 showOrder INT(10) NOT NULL DEFAULT 0,
1872 permissions TEXT,
1873 options TEXT,
1874 UNIQUE KEY categoryName (categoryName)
1875 );
1876
1877 DROP TABLE IF EXISTS wcf1_user_option_value;
1878 CREATE TABLE wcf1_user_option_value (
1879 userID INT(10) NOT NULL PRIMARY KEY
1880 );
1881
1882 DROP TABLE IF EXISTS wcf1_user_profile_menu_item;
1883 CREATE TABLE wcf1_user_profile_menu_item (
1884 menuItemID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1885 packageID INT(10) NOT NULL,
1886 menuItem VARCHAR(191) NOT NULL,
1887 showOrder INT(10) NOT NULL DEFAULT 0,
1888 permissions TEXT NULL,
1889 options TEXT NULL,
1890 className VARCHAR(255) NOT NULL,
1891 UNIQUE KEY (packageID, menuItem)
1892 );
1893
1894 DROP TABLE IF EXISTS wcf1_user_profile_visitor;
1895 CREATE TABLE wcf1_user_profile_visitor (
1896 visitorID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1897 ownerID INT(10) NOT NULL,
1898 userID INT(10) NOT NULL,
1899 time INT(10) NOT NULL DEFAULT 0,
1900 UNIQUE KEY (ownerID, userID),
1901 KEY (time)
1902 );
1903
1904 DROP TABLE IF EXISTS wcf1_user_rank;
1905 CREATE TABLE wcf1_user_rank (
1906 rankID INT(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
1907 groupID INT(10) NOT NULL,
1908 requiredPoints INT(10) NOT NULL DEFAULT 0,
1909 rankTitle VARCHAR(255) NOT NULL DEFAULT '',
1910 cssClassName VARCHAR(255) NOT NULL DEFAULT '',
1911 rankImage VARCHAR(255) NOT NULL DEFAULT '',
1912 repeatImage TINYINT(3) NOT NULL DEFAULT 1,
1913 requiredGender TINYINT(1) NOT NULL DEFAULT 0,
1914 hideTitle TINYINT(1) NOT NULL DEFAULT 0
1915 );
1916
1917 DROP TABLE IF EXISTS wcf1_user_session;
1918 CREATE TABLE wcf1_user_session (
1919 sessionID CHAR(40) NOT NULL PRIMARY KEY,
1920 userID INT(10),
1921 ipAddress VARCHAR(39) NOT NULL DEFAULT '',
1922 userAgent VARCHAR(255) NOT NULL DEFAULT '',
1923 creationTime INT(10) NOT NULL,
1924 lastActivityTime INT(10) NOT NULL DEFAULT 0,
1925 sessionVariables MEDIUMBLOB,
1926 KEY (userID),
1927 KEY (lastActivityTime)
1928 );
1929
1930 DROP TABLE IF EXISTS wcf1_user_storage;
1931 CREATE TABLE wcf1_user_storage (
1932 userID INT(10) NOT NULL,
1933 field VARCHAR(80) NOT NULL DEFAULT '',
1934 fieldValue MEDIUMTEXT,
1935 UNIQUE KEY (userID, field),
1936 KEY (field)
1937 );
1938
1939 DROP TABLE IF EXISTS wcf1_user_to_group;
1940 CREATE TABLE wcf1_user_to_group (
1941 userID INT(10) NOT NULL,
1942 groupID INT(10) NOT NULL,
1943 UNIQUE KEY userID (userID, groupID)
1944 );
1945
1946 DROP TABLE IF EXISTS wcf1_user_to_language;
1947 CREATE TABLE wcf1_user_to_language (
1948 userID INT(10) NOT NULL,
1949 languageID INT(10) NOT NULL,
1950 UNIQUE KEY userID (userID, languageID)
1951 );
1952
1953 /* SQL_PARSER_OFFSET */
1954
1955 /* foreign keys */
1956 ALTER TABLE wcf1_acl_option ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
1957 ALTER TABLE wcf1_acl_option ADD FOREIGN KEY (objectTypeID) REFERENCES wcf1_object_type (objectTypeID) ON DELETE CASCADE;
1958
1959 ALTER TABLE wcf1_acl_option_category ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
1960 ALTER TABLE wcf1_acl_option_category ADD FOREIGN KEY (objectTypeID) REFERENCES wcf1_object_type (objectTypeID) ON DELETE CASCADE;
1961
1962 ALTER TABLE wcf1_acl_option_to_user ADD FOREIGN KEY (optionID) REFERENCES wcf1_acl_option (optionID) ON DELETE CASCADE;
1963 ALTER TABLE wcf1_acl_option_to_user ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE CASCADE;
1964
1965 ALTER TABLE wcf1_acl_option_to_group ADD FOREIGN KEY (optionID) REFERENCES wcf1_acl_option (optionID) ON DELETE CASCADE;
1966 ALTER TABLE wcf1_acl_option_to_group ADD FOREIGN KEY (groupID) REFERENCES wcf1_user_group (groupID) ON DELETE CASCADE;
1967
1968 ALTER TABLE wcf1_acl_simple_to_user ADD FOREIGN KEY (objectTypeID) REFERENCES wcf1_object_type (objectTypeID) ON DELETE CASCADE;
1969 ALTER TABLE wcf1_acl_simple_to_user ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE CASCADE;
1970
1971 ALTER TABLE wcf1_acl_simple_to_group ADD FOREIGN KEY (objectTypeID) REFERENCES wcf1_object_type (objectTypeID) ON DELETE CASCADE;
1972 ALTER TABLE wcf1_acl_simple_to_group ADD FOREIGN KEY (groupID) REFERENCES wcf1_user_group (groupID) ON DELETE CASCADE;
1973
1974 ALTER TABLE wcf1_acp_menu_item ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
1975
1976 ALTER TABLE wcf1_acp_search_provider ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
1977
1978 ALTER TABLE wcf1_acp_session_access_log ADD FOREIGN KEY (sessionLogID) REFERENCES wcf1_acp_session_log (sessionLogID) ON DELETE CASCADE;
1979
1980 ALTER TABLE wcf1_acp_session_log ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE SET NULL;
1981
1982 ALTER TABLE wcf1_acp_template ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
1983
1984 ALTER TABLE wcf1_ad ADD FOREIGN KEY (objectTypeID) REFERENCES wcf1_object_type (objectTypeID) ON DELETE CASCADE;
1985
1986 ALTER TABLE wcf1_application ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
1987 ALTER TABLE wcf1_application ADD FOREIGN KEY (landingPageID) REFERENCES wcf1_page (pageID) ON DELETE SET NULL;
1988
1989 ALTER TABLE wcf1_article ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE SET NULL;
1990 ALTER TABLE wcf1_article ADD FOREIGN KEY (categoryID) REFERENCES wcf1_category (categoryID) ON DELETE SET NULL;
1991
1992 ALTER TABLE wcf1_article_content ADD FOREIGN KEY (articleID) REFERENCES wcf1_article (articleID) ON DELETE CASCADE;
1993 ALTER TABLE wcf1_article_content ADD FOREIGN KEY (languageID) REFERENCES wcf1_language (languageID) ON DELETE SET NULL;
1994 ALTER TABLE wcf1_article_content ADD FOREIGN KEY (imageID) REFERENCES wcf1_media (mediaID) ON DELETE SET NULL;
1995 ALTER TABLE wcf1_article_content ADD FOREIGN KEY (teaserImageID) REFERENCES wcf1_media (mediaID) ON DELETE SET NULL;
1996
1997 ALTER TABLE wcf1_attachment ADD FOREIGN KEY (objectTypeID) REFERENCES wcf1_object_type (objectTypeID) ON DELETE CASCADE;
1998 ALTER TABLE wcf1_attachment ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE SET NULL;
1999
2000 ALTER TABLE wcf1_bbcode ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
2001
2002 ALTER TABLE wcf1_bbcode_attribute ADD FOREIGN KEY (bbcodeID) REFERENCES wcf1_bbcode (bbcodeID) ON DELETE CASCADE;
2003
2004 ALTER TABLE wcf1_bbcode_media_provider ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
2005
2006 ALTER TABLE wcf1_box ADD FOREIGN KEY (objectTypeID) REFERENCES wcf1_object_type (objectTypeID) ON DELETE CASCADE;
2007 ALTER TABLE wcf1_box ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
2008 ALTER TABLE wcf1_box ADD FOREIGN KEY (menuID) REFERENCES wcf1_menu (menuID) ON DELETE CASCADE;
2009 ALTER TABLE wcf1_box ADD FOREIGN KEY (linkPageID) REFERENCES wcf1_page (pageID) ON DELETE SET NULL;
2010
2011 /* SQL_PARSER_OFFSET */
2012
2013 ALTER TABLE wcf1_box_content ADD FOREIGN KEY (boxID) REFERENCES wcf1_box (boxID) ON DELETE CASCADE;
2014 ALTER TABLE wcf1_box_content ADD FOREIGN KEY (languageID) REFERENCES wcf1_language (languageID) ON DELETE CASCADE;
2015 ALTER TABLE wcf1_box_content ADD FOREIGN KEY (imageID) REFERENCES wcf1_media (mediaID) ON DELETE SET NULL;
2016
2017 ALTER TABLE wcf1_box_to_page ADD FOREIGN KEY (boxID) REFERENCES wcf1_box (boxID) ON DELETE CASCADE;
2018 ALTER TABLE wcf1_box_to_page ADD FOREIGN KEY (pageID) REFERENCES wcf1_page (pageID) ON DELETE CASCADE;
2019
2020 ALTER TABLE wcf1_category ADD FOREIGN KEY (objectTypeID) REFERENCES wcf1_object_type (objectTypeID) ON DELETE CASCADE;
2021
2022 ALTER TABLE wcf1_cli_history ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE CASCADE;
2023
2024 ALTER TABLE wcf1_clipboard_action ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
2025
2026 ALTER TABLE wcf1_clipboard_item ADD FOREIGN KEY (objectTypeID) REFERENCES wcf1_object_type (objectTypeID) ON DELETE CASCADE;
2027
2028 ALTER TABLE wcf1_clipboard_page ADD FOREIGN KEY (actionID) REFERENCES wcf1_clipboard_action (actionID) ON DELETE CASCADE;
2029 ALTER TABLE wcf1_clipboard_page ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
2030
2031 ALTER TABLE wcf1_condition ADD FOREIGN KEY (objectTypeID) REFERENCES wcf1_object_type (objectTypeID) ON DELETE CASCADE;
2032
2033 ALTER TABLE wcf1_contact_attachment ADD FOREIGN KEY (attachmentID) REFERENCES wcf1_attachment (attachmentID) ON DELETE CASCADE;
2034
2035 ALTER TABLE wcf1_core_object ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
2036
2037 ALTER TABLE wcf1_cronjob ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
2038
2039 ALTER TABLE wcf1_cronjob_log ADD FOREIGN KEY (cronjobID) REFERENCES wcf1_cronjob (cronjobID) ON DELETE CASCADE;
2040
2041 ALTER TABLE wcf1_devtools_missing_language_item ADD FOREIGN KEY (languageID) REFERENCES wcf1_language (languageID) ON DELETE SET NULL;
2042
2043 ALTER TABLE wcf1_edit_history_entry ADD FOREIGN KEY (objectTypeID) REFERENCES wcf1_object_type (objectTypeID) ON DELETE CASCADE;
2044 ALTER TABLE wcf1_edit_history_entry ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE SET NULL;
2045 ALTER TABLE wcf1_edit_history_entry ADD FOREIGN KEY (obsoletedByUserID) REFERENCES wcf1_user (userID) ON DELETE SET NULL;
2046
2047 ALTER TABLE wcf1_email_log_entry ADD FOREIGN KEY (recipientID) REFERENCES wcf1_user (userID) ON DELETE SET NULL;
2048
2049 ALTER TABLE wcf1_event_listener ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
2050
2051 ALTER TABLE wcf1_language_item ADD FOREIGN KEY (languageID) REFERENCES wcf1_language (languageID) ON DELETE CASCADE;
2052 ALTER TABLE wcf1_language_item ADD FOREIGN KEY (languageCategoryID) REFERENCES wcf1_language_category (languageCategoryID) ON DELETE CASCADE;
2053 ALTER TABLE wcf1_language_item ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
2054
2055 /* SQL_PARSER_OFFSET */
2056
2057 ALTER TABLE wcf1_media ADD FOREIGN KEY (categoryID) REFERENCES wcf1_category (categoryID) ON DELETE SET NULL;
2058 ALTER TABLE wcf1_media ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE SET NULL;
2059 ALTER TABLE wcf1_media ADD FOREIGN KEY (languageID) REFERENCES wcf1_language (languageID) ON DELETE SET NULL;
2060
2061 ALTER TABLE wcf1_media_content ADD FOREIGN KEY (mediaID) REFERENCES wcf1_media (mediaID) ON DELETE CASCADE;
2062 ALTER TABLE wcf1_media_content ADD FOREIGN KEY (languageID) REFERENCES wcf1_language (languageID) ON DELETE CASCADE;
2063
2064 ALTER TABLE wcf1_menu ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
2065
2066 ALTER TABLE wcf1_menu_item ADD FOREIGN KEY (menuID) REFERENCES wcf1_menu (menuID) ON DELETE CASCADE;
2067 ALTER TABLE wcf1_menu_item ADD FOREIGN KEY (parentItemID) REFERENCES wcf1_menu_item (itemID) ON DELETE SET NULL;
2068 ALTER TABLE wcf1_menu_item ADD FOREIGN KEY (pageID) REFERENCES wcf1_page (pageID) ON DELETE CASCADE;
2069 ALTER TABLE wcf1_menu_item ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
2070
2071 ALTER TABLE wcf1_modification_log ADD FOREIGN KEY (objectTypeID) REFERENCES wcf1_object_type (objectTypeID) ON DELETE CASCADE;
2072 ALTER TABLE wcf1_modification_log ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE SET NULL;
2073
2074 ALTER TABLE wcf1_object_type ADD FOREIGN KEY (definitionID) REFERENCES wcf1_object_type_definition (definitionID) ON DELETE CASCADE;
2075 ALTER TABLE wcf1_object_type ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
2076
2077 ALTER TABLE wcf1_object_type_definition ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
2078
2079 ALTER TABLE wcf1_option ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
2080
2081 ALTER TABLE wcf1_option_category ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
2082
2083 ALTER TABLE wcf1_package_compatibility ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
2084
2085 ALTER TABLE wcf1_package_exclusion ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
2086
2087 ALTER TABLE wcf1_package_installation_file_log ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
2088
2089 ALTER TABLE wcf1_package_installation_form ADD FOREIGN KEY (queueID) REFERENCES wcf1_package_installation_queue (queueID) ON DELETE CASCADE;
2090
2091 ALTER TABLE wcf1_package_installation_node ADD FOREIGN KEY (queueID) REFERENCES wcf1_package_installation_queue (queueID) ON DELETE CASCADE;
2092
2093 ALTER TABLE wcf1_package_installation_plugin ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
2094
2095 ALTER TABLE wcf1_package_installation_queue ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE CASCADE;
2096 ALTER TABLE wcf1_package_installation_queue ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE SET NULL;
2097
2098 ALTER TABLE wcf1_package_installation_sql_log ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
2099
2100 /* SQL_PARSER_OFFSET */
2101
2102 ALTER TABLE wcf1_package_requirement ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
2103 ALTER TABLE wcf1_package_requirement ADD FOREIGN KEY (requirement) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
2104
2105 ALTER TABLE wcf1_package_update ADD FOREIGN KEY (packageUpdateServerID) REFERENCES wcf1_package_update_server (packageUpdateServerID) ON DELETE CASCADE;
2106
2107 ALTER TABLE wcf1_package_update_compatibility ADD FOREIGN KEY (packageUpdateVersionID) REFERENCES wcf1_package_update_version (packageUpdateVersionID) ON DELETE CASCADE;
2108
2109 ALTER TABLE wcf1_package_update_exclusion ADD FOREIGN KEY (packageUpdateVersionID) REFERENCES wcf1_package_update_version (packageUpdateVersionID) ON DELETE CASCADE;
2110
2111 ALTER TABLE wcf1_package_update_fromversion ADD FOREIGN KEY (packageUpdateVersionID) REFERENCES wcf1_package_update_version (packageUpdateVersionID) ON DELETE CASCADE;
2112
2113 ALTER TABLE wcf1_package_update_requirement ADD FOREIGN KEY (packageUpdateVersionID) REFERENCES wcf1_package_update_version (packageUpdateVersionID) ON DELETE CASCADE;
2114
2115 ALTER TABLE wcf1_package_update_optional ADD FOREIGN KEY (packageUpdateVersionID) REFERENCES wcf1_package_update_version (packageUpdateVersionID) ON DELETE CASCADE;
2116
2117 ALTER TABLE wcf1_package_update_version ADD FOREIGN KEY (packageUpdateID) REFERENCES wcf1_package_update (packageUpdateID) ON DELETE CASCADE;
2118
2119 ALTER TABLE wcf1_paid_subscription_user ADD FOREIGN KEY (subscriptionID) REFERENCES wcf1_paid_subscription (subscriptionID) ON DELETE CASCADE;
2120 ALTER TABLE wcf1_paid_subscription_user ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE CASCADE;
2121
2122 ALTER TABLE wcf1_paid_subscription_transaction_log ADD FOREIGN KEY (subscriptionUserID) REFERENCES wcf1_paid_subscription_user (subscriptionUserID) ON DELETE SET NULL;
2123 ALTER TABLE wcf1_paid_subscription_transaction_log ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE SET NULL;
2124 ALTER TABLE wcf1_paid_subscription_transaction_log ADD FOREIGN KEY (subscriptionID) REFERENCES wcf1_paid_subscription (subscriptionID) ON DELETE SET NULL;
2125 ALTER TABLE wcf1_paid_subscription_transaction_log ADD FOREIGN KEY (paymentMethodObjectTypeID) REFERENCES wcf1_object_type (objectTypeID) ON DELETE CASCADE;
2126
2127 ALTER TABLE wcf1_page ADD FOREIGN KEY (parentPageID) REFERENCES wcf1_page (pageID) ON DELETE SET NULL;
2128 ALTER TABLE wcf1_page ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
2129 ALTER TABLE wcf1_page ADD FOREIGN KEY (applicationPackageID) REFERENCES wcf1_package (packageID) ON DELETE SET NULL;
2130 ALTER TABLE wcf1_page ADD FOREIGN KEY (overrideApplicationPackageID) REFERENCES wcf1_package (packageID) ON DELETE SET NULL;
2131
2132 ALTER TABLE wcf1_page_box_order ADD FOREIGN KEY (pageID) REFERENCES wcf1_page (pageID) ON DELETE CASCADE;
2133 ALTER TABLE wcf1_page_box_order ADD FOREIGN KEY (boxID) REFERENCES wcf1_box (boxID) ON DELETE CASCADE;
2134
2135 ALTER TABLE wcf1_page_content ADD FOREIGN KEY (pageID) REFERENCES wcf1_page (pageID) ON DELETE CASCADE;
2136 ALTER TABLE wcf1_page_content ADD FOREIGN KEY (languageID) REFERENCES wcf1_language (languageID) ON DELETE CASCADE;
2137
2138 ALTER TABLE wcf1_registry ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
2139
2140 ALTER TABLE wcf1_search ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE CASCADE;
2141
2142 /* SQL_PARSER_OFFSET */
2143
2144 ALTER TABLE wcf1_session ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE CASCADE;
2145 ALTER TABLE wcf1_session ADD FOREIGN KEY (spiderID) REFERENCES wcf1_spider (spiderID) ON DELETE CASCADE;
2146 ALTER TABLE wcf1_session ADD FOREIGN KEY (pageID) REFERENCES wcf1_page (pageID) ON DELETE SET NULL;
2147 ALTER TABLE wcf1_session ADD FOREIGN KEY (parentPageID) REFERENCES wcf1_page (pageID) ON DELETE SET NULL;
2148
2149 ALTER TABLE wcf1_smiley ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
2150 ALTER TABLE wcf1_smiley ADD FOREIGN KEY (categoryID) REFERENCES wcf1_category (categoryID) ON DELETE SET NULL;
2151
2152 ALTER TABLE wcf1_user_storage ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE CASCADE;
2153
2154 ALTER TABLE wcf1_style ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
2155
2156 ALTER TABLE wcf1_style_variable_value ADD FOREIGN KEY (styleID) REFERENCES wcf1_style (styleID) ON DELETE CASCADE;
2157 ALTER TABLE wcf1_style_variable_value ADD FOREIGN KEY (variableID) REFERENCES wcf1_style_variable (variableID) ON DELETE CASCADE;
2158
2159 ALTER TABLE wcf1_template ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
2160 ALTER TABLE wcf1_template ADD FOREIGN KEY (templateGroupID) REFERENCES wcf1_template_group (templateGroupID) ON DELETE CASCADE;
2161
2162 ALTER TABLE wcf1_template_group ADD FOREIGN KEY (parentTemplateGroupID) REFERENCES wcf1_template_group (templateGroupID) ON DELETE SET NULL;
2163
2164 ALTER TABLE wcf1_template_listener ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
2165
2166 ALTER TABLE wcf1_trophy ADD FOREIGN KEY (categoryID) REFERENCES wcf1_category (categoryID) ON DELETE CASCADE;
2167
2168 ALTER TABLE wcf1_user_collapsible_content ADD FOREIGN KEY (objectTypeID) REFERENCES wcf1_object_type (objectTypeID) ON DELETE CASCADE;
2169 ALTER TABLE wcf1_user_collapsible_content ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE CASCADE;
2170
2171 ALTER TABLE wcf1_user_group_assignment ADD FOREIGN KEY (groupID) REFERENCES wcf1_user_group (groupID) ON DELETE CASCADE;
2172
2173 ALTER TABLE wcf1_user_group_option ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
2174
2175 ALTER TABLE wcf1_user_group_option_category ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
2176
2177 ALTER TABLE wcf1_user_group_option_value ADD FOREIGN KEY (groupID) REFERENCES wcf1_user_group (groupID) ON DELETE CASCADE;
2178 ALTER TABLE wcf1_user_group_option_value ADD FOREIGN KEY (optionID) REFERENCES wcf1_user_group_option (optionID) ON DELETE CASCADE;
2179
2180 /* SQL_PARSER_OFFSET */
2181
2182 ALTER TABLE wcf1_user_option ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
2183
2184 ALTER TABLE wcf1_user_option_category ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
2185
2186 ALTER TABLE wcf1_user_option_value ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE CASCADE;
2187
2188 ALTER TABLE wcf1_user_to_group ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE CASCADE;
2189 ALTER TABLE wcf1_user_to_group ADD FOREIGN KEY (groupID) REFERENCES wcf1_user_group (groupID) ON DELETE CASCADE;
2190
2191 ALTER TABLE wcf1_user_to_language ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE CASCADE;
2192 ALTER TABLE wcf1_user_to_language ADD FOREIGN KEY (languageID) REFERENCES wcf1_language (languageID) ON DELETE CASCADE;
2193
2194 ALTER TABLE wcf1_user_trophy ADD FOREIGN KEY (trophyID) REFERENCES wcf1_trophy (trophyID) ON DELETE CASCADE;
2195 ALTER TABLE wcf1_user_trophy ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE CASCADE;
2196
2197 ALTER TABLE wcf1_import_mapping ADD FOREIGN KEY (objectTypeID) REFERENCES wcf1_object_type (objectTypeID) ON DELETE CASCADE;
2198
2199 ALTER TABLE wcf1_tracked_visit ADD FOREIGN KEY (objectTypeID) REFERENCES wcf1_object_type (objectTypeID) ON DELETE CASCADE;
2200 ALTER TABLE wcf1_tracked_visit ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE CASCADE;
2201
2202 ALTER TABLE wcf1_tracked_visit_type ADD FOREIGN KEY (objectTypeID) REFERENCES wcf1_object_type (objectTypeID) ON DELETE CASCADE;
2203 ALTER TABLE wcf1_tracked_visit_type ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE CASCADE;
2204
2205 ALTER TABLE wcf1_unfurl_url ADD FOREIGN KEY (imageID) REFERENCES wcf1_unfurl_url_image (imageID) ON DELETE SET NULL;
2206
2207 ALTER TABLE wcf1_user ADD FOREIGN KEY (avatarID) REFERENCES wcf1_user_avatar (avatarID) ON DELETE SET NULL;
2208 ALTER TABLE wcf1_user ADD FOREIGN KEY (rankID) REFERENCES wcf1_user_rank (rankID) ON DELETE SET NULL;
2209 ALTER TABLE wcf1_user ADD FOREIGN KEY (userOnlineGroupID) REFERENCES wcf1_user_group (groupID) ON DELETE SET NULL;
2210
2211 /* SQL_PARSER_OFFSET */
2212
2213 ALTER TABLE wcf1_user_avatar ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE CASCADE;
2214
2215 ALTER TABLE wcf1_user_follow ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE CASCADE;
2216 ALTER TABLE wcf1_user_follow ADD FOREIGN KEY (followUserID) REFERENCES wcf1_user (userID) ON DELETE CASCADE;
2217
2218 ALTER TABLE wcf1_user_ignore ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE CASCADE;
2219 ALTER TABLE wcf1_user_ignore ADD FOREIGN KEY (ignoreUserID) REFERENCES wcf1_user (userID) ON DELETE CASCADE;
2220
2221 ALTER TABLE wcf1_user_menu_item ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
2222
2223 ALTER TABLE wcf1_user_notification ADD FOREIGN KEY (eventID) REFERENCES wcf1_user_notification_event (eventID) ON DELETE CASCADE;
2224 ALTER TABLE wcf1_user_notification ADD FOREIGN KEY (authorID) REFERENCES wcf1_user (userID) ON DELETE SET NULL;
2225 ALTER TABLE wcf1_user_notification ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE CASCADE;
2226
2227 ALTER TABLE wcf1_user_notification_author ADD FOREIGN KEY (notificationID) REFERENCES wcf1_user_notification (notificationID) ON DELETE CASCADE;
2228 ALTER TABLE wcf1_user_notification_author ADD FOREIGN KEY (authorID) REFERENCES wcf1_user (userID) ON DELETE CASCADE;
2229
2230 ALTER TABLE wcf1_user_notification_to_user ADD FOREIGN KEY (notificationID) REFERENCES wcf1_user_notification (notificationID) ON DELETE CASCADE;
2231 ALTER TABLE wcf1_user_notification_to_user ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE CASCADE;
2232
2233 ALTER TABLE wcf1_user_notification_event ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
2234 ALTER TABLE wcf1_user_notification_event ADD FOREIGN KEY (objectTypeID) REFERENCES wcf1_object_type (objectTypeID) ON DELETE CASCADE;
2235
2236 ALTER TABLE wcf1_user_notification_event_to_user ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE CASCADE;
2237 ALTER TABLE wcf1_user_notification_event_to_user ADD FOREIGN KEY (eventID) REFERENCES wcf1_user_notification_event (eventID) ON DELETE CASCADE;
2238
2239 ALTER TABLE wcf1_user_profile_menu_item ADD FOREIGN KEY (packageID) REFERENCES wcf1_package (packageID) ON DELETE CASCADE;
2240
2241 /* SQL_PARSER_OFFSET */
2242
2243 ALTER TABLE wcf1_user_rank ADD FOREIGN KEY (groupID) REFERENCES wcf1_user_group (groupID) ON DELETE CASCADE;
2244
2245 ALTER TABLE wcf1_user_activity_event ADD FOREIGN KEY (objectTypeID) REFERENCES wcf1_object_type (objectTypeID) ON DELETE CASCADE;
2246 ALTER TABLE wcf1_user_activity_event ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE CASCADE;
2247 ALTER TABLE wcf1_user_activity_event ADD FOREIGN KEY (languageID) REFERENCES wcf1_language (languageID) ON DELETE SET NULL;
2248
2249 ALTER TABLE wcf1_user_activity_point ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE CASCADE;
2250 ALTER TABLE wcf1_user_activity_point ADD FOREIGN KEY (objectTypeID) REFERENCES wcf1_object_type (objectTypeID) ON DELETE CASCADE;
2251
2252 ALTER TABLE wcf1_user_authentication_failure ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE SET NULL;
2253
2254 ALTER TABLE wcf1_user_multifactor ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE CASCADE;
2255 ALTER TABLE wcf1_user_multifactor ADD FOREIGN KEY (objectTypeID) REFERENCES wcf1_object_type (objectTypeID) ON DELETE CASCADE;
2256
2257 ALTER TABLE wcf1_user_multifactor_backup ADD FOREIGN KEY (setupID) REFERENCES wcf1_user_multifactor (setupID) ON DELETE CASCADE;
2258
2259 ALTER TABLE wcf1_user_multifactor_email ADD FOREIGN KEY (setupID) REFERENCES wcf1_user_multifactor (setupID) ON DELETE CASCADE;
2260
2261 ALTER TABLE wcf1_user_multifactor_totp ADD FOREIGN KEY (setupID) REFERENCES wcf1_user_multifactor (setupID) ON DELETE CASCADE;
2262
2263 ALTER TABLE wcf1_user_object_watch ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE CASCADE;
2264 ALTER TABLE wcf1_user_object_watch ADD FOREIGN KEY (objectTypeID) REFERENCES wcf1_object_type (objectTypeID) ON DELETE CASCADE;
2265
2266 ALTER TABLE wcf1_user_profile_visitor ADD FOREIGN KEY (ownerID) REFERENCES wcf1_user (userID) ON DELETE CASCADE;
2267 ALTER TABLE wcf1_user_profile_visitor ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE CASCADE;
2268
2269 ALTER TABLE wcf1_user_session ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE CASCADE;
2270
2271 ALTER TABLE wcf1_user_special_trophy ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE CASCADE;
2272 ALTER TABLE wcf1_user_special_trophy ADD FOREIGN KEY (trophyID) REFERENCES wcf1_trophy (trophyID) ON DELETE CASCADE;
2273
2274 ALTER TABLE wcf1_message_embedded_object ADD FOREIGN KEY (messageObjectTypeID) REFERENCES wcf1_object_type (objectTypeID) ON DELETE CASCADE;
2275 ALTER TABLE wcf1_message_embedded_object ADD FOREIGN KEY (embeddedObjectTypeID) REFERENCES wcf1_object_type (objectTypeID) ON DELETE CASCADE;
2276
2277 ALTER TABLE wcf1_moderation_queue ADD FOREIGN KEY (objectTypeID) REFERENCES wcf1_object_type (objectTypeID) ON DELETE CASCADE;
2278 ALTER TABLE wcf1_moderation_queue ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE SET NULL;
2279 ALTER TABLE wcf1_moderation_queue ADD FOREIGN KEY (assignedUserID) REFERENCES wcf1_user (userID) ON DELETE SET NULL;
2280
2281 ALTER TABLE wcf1_moderation_queue_to_user ADD FOREIGN KEY (queueID) REFERENCES wcf1_moderation_queue (queueID) ON DELETE CASCADE;
2282 ALTER TABLE wcf1_moderation_queue_to_user ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE CASCADE;
2283
2284 ALTER TABLE wcf1_like ADD FOREIGN KEY (objectTypeID) REFERENCES wcf1_object_type (objectTypeID) ON DELETE CASCADE;
2285 ALTER TABLE wcf1_like ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE CASCADE;
2286 ALTER TABLE wcf1_like ADD FOREIGN KEY (objectUserID) REFERENCES wcf1_user (userID) ON DELETE SET NULL;
2287 ALTER TABLE wcf1_like ADD FOREIGN KEY (reactionTypeID) REFERENCES wcf1_reaction_type (reactionTypeID) ON DELETE CASCADE;
2288
2289 ALTER TABLE wcf1_like_object ADD FOREIGN KEY (objectTypeID) REFERENCES wcf1_object_type (objectTypeID) ON DELETE CASCADE;
2290 ALTER TABLE wcf1_like_object ADD FOREIGN KEY (objectUserID) REFERENCES wcf1_user (userID) ON DELETE SET NULL;
2291
2292 /* SQL_PARSER_OFFSET */
2293
2294 ALTER TABLE wcf1_comment ADD FOREIGN KEY (objectTypeID) REFERENCES wcf1_object_type (objectTypeID) ON DELETE CASCADE;
2295 ALTER TABLE wcf1_comment ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE SET NULL;
2296
2297 ALTER TABLE wcf1_comment_response ADD FOREIGN KEY (commentID) REFERENCES wcf1_comment (commentID) ON DELETE CASCADE;
2298 ALTER TABLE wcf1_comment_response ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE SET NULL;
2299
2300 ALTER TABLE wcf1_label ADD FOREIGN KEY (groupID) REFERENCES wcf1_label_group (groupID) ON DELETE CASCADE;
2301
2302 ALTER TABLE wcf1_label_group_to_object ADD FOREIGN KEY (groupID) REFERENCES wcf1_label_group (groupID) ON DELETE CASCADE;
2303 ALTER TABLE wcf1_label_group_to_object ADD FOREIGN KEY (objectTypeID) REFERENCES wcf1_object_type (objectTypeID) ON DELETE CASCADE;
2304
2305 ALTER TABLE wcf1_label_object ADD FOREIGN KEY (labelID) REFERENCES wcf1_label (labelID) ON DELETE CASCADE;
2306 ALTER TABLE wcf1_label_object ADD FOREIGN KEY (objectTypeID) REFERENCES wcf1_object_type (objectTypeID) ON DELETE CASCADE;
2307
2308 ALTER TABLE wcf1_tag ADD FOREIGN KEY (synonymFor) REFERENCES wcf1_tag (tagID) ON DELETE CASCADE;
2309
2310 ALTER TABLE wcf1_tag_to_object ADD FOREIGN KEY (tagID) REFERENCES wcf1_tag (tagID) ON DELETE CASCADE;
2311 ALTER TABLE wcf1_tag_to_object ADD FOREIGN KEY (languageID) REFERENCES wcf1_language (languageID) ON DELETE CASCADE;
2312 ALTER TABLE wcf1_tag_to_object ADD FOREIGN KEY (objectTypeID) REFERENCES wcf1_object_type (objectTypeID) ON DELETE CASCADE;
2313
2314 ALTER TABLE wcf1_stat_daily ADD FOREIGN KEY (objectTypeID) REFERENCES wcf1_object_type (objectTypeID) ON DELETE CASCADE;
2315
2316 ALTER TABLE wcf1_poll ADD FOREIGN KEY (objectTypeID) REFERENCES wcf1_object_type (objectTypeID) ON DELETE CASCADE;
2317
2318 ALTER TABLE wcf1_poll_option ADD FOREIGN KEY (pollID) REFERENCES wcf1_poll (pollID) ON DELETE CASCADE;
2319
2320 ALTER TABLE wcf1_poll_option_vote ADD FOREIGN KEY (pollID) REFERENCES wcf1_poll (pollID) ON DELETE CASCADE;
2321 ALTER TABLE wcf1_poll_option_vote ADD FOREIGN KEY (optionID) REFERENCES wcf1_poll_option (optionID) ON DELETE CASCADE;
2322 ALTER TABLE wcf1_poll_option_vote ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE CASCADE;
2323
2324 ALTER TABLE wcf1_notice_dismissed ADD FOREIGN KEY (noticeID) REFERENCES wcf1_notice (noticeID) ON DELETE CASCADE;
2325 ALTER TABLE wcf1_notice_dismissed ADD FOREIGN KEY (userID) REFERENCES wcf1_user (userID) ON DELETE CASCADE;
2326
2327 /* SQL_PARSER_OFFSET */
2328
2329 /* default inserts */
2330 -- default user groups
2331 INSERT INTO wcf1_user_group (groupID, groupName, groupDescription, groupType) VALUES (1, 'wcf.acp.group.group1', '', 1); -- Everyone
2332 INSERT INTO wcf1_user_group (groupID, groupName, groupDescription, groupType) VALUES (2, 'wcf.acp.group.group2', '', 2); -- Guests
2333 INSERT INTO wcf1_user_group (groupID, groupName, groupDescription, groupType) VALUES (3, 'wcf.acp.group.group3', '', 3); -- Registered Users
2334 INSERT INTO wcf1_user_group (groupID, groupName, groupDescription, groupType) VALUES (4, 'wcf.acp.group.group4', '', 9); -- Administrators
2335 INSERT INTO wcf1_user_group (groupID, groupName, groupDescription, groupType) VALUES (5, 'wcf.acp.group.group5', '', 4); -- Moderators
2336
2337 -- default user group options
2338 INSERT INTO wcf1_user_group_option (optionID, optionName, categoryName, optionType, defaultValue, showOrder, usersOnly) VALUES (1, 'admin.general.canUseAcp', 'admin.general', 'boolean', '0', 1, 1);
2339 INSERT INTO wcf1_user_group_option (optionID, optionName, categoryName, optionType, defaultValue, showOrder, usersOnly) VALUES (2, 'admin.configuration.package.canInstallPackage', 'admin.configuration.package', 'boolean', '0', 1, 1);
2340 INSERT INTO wcf1_user_group_option (optionID, optionName, categoryName, optionType, defaultValue, showOrder, usersOnly) VALUES (3, 'admin.user.canEditGroup', 'admin.user.group', 'boolean', '0', 1, 1);
2341
2342 -- default user group option values
2343 INSERT INTO wcf1_user_group_option_value (groupID, optionID, optionValue) VALUES (1, 1, '0'); -- Everyone
2344 INSERT INTO wcf1_user_group_option_value (groupID, optionID, optionValue) VALUES (1, 2, '0'); -- Everyone
2345 INSERT INTO wcf1_user_group_option_value (groupID, optionID, optionValue) VALUES (1, 3, '0'); -- Everyone
2346 INSERT INTO wcf1_user_group_option_value (groupID, optionID, optionValue) VALUES (4, 1, '1'); -- Administrators
2347 INSERT INTO wcf1_user_group_option_value (groupID, optionID, optionValue) VALUES (4, 2, '1'); -- Administrators
2348 INSERT INTO wcf1_user_group_option_value (groupID, optionID, optionValue) VALUES (4, 3, '1'); -- Administrators
2349
2350 -- default update servers
2351 INSERT INTO wcf1_package_update_server (serverURL, status, isDisabled, errorMessage, lastUpdateTime, loginUsername, loginPassword) VALUES ('http://update.woltlab.com/5.5/', 'online', 0, NULL, 0, '', '');
2352 INSERT INTO wcf1_package_update_server (serverURL, status, isDisabled, errorMessage, lastUpdateTime, loginUsername, loginPassword) VALUES ('http://store.woltlab.com/5.5/', 'online', 0, NULL, 0, '', '');
2353
2354 -- style default values
2355 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('individualScss', '');
2356 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('messageSidebarOrientation', 'left');
2357 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('overrideScss', '');
2358 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('pageLogo', '');
2359 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('pageLogoWidth', '281');
2360 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('pageLogoHeight', '40');
2361 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('pageLogoMobile', '');
2362 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('useFluidLayout', '1');
2363 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfButtonBackground', 'rgba(207, 216, 220, 1)');
2364 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfButtonBackgroundActive', 'rgba(120, 144, 156, 1)');
2365 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfButtonDisabledBackground', 'rgba(223, 223, 223, 1)');
2366 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfButtonDisabledText', 'rgba(165, 165, 165, 1)');
2367 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfButtonPrimaryBackground', 'rgba(33, 150, 243, 1)');
2368 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfButtonPrimaryBackgroundActive', 'rgba(26, 119, 201, 1)');
2369 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfButtonPrimaryText', 'rgba(255, 255, 255, 1)');
2370 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfButtonPrimaryTextActive', 'rgba(255, 255, 255, 1)');
2371 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfButtonText', 'rgba(33, 33, 33, 1)');
2372 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfButtonTextActive', 'rgba(255, 255, 255, 1)');
2373 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfContentBackground', 'rgba(250, 250, 250, 1)');
2374 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfContentBorder', 'rgba(65, 121, 173, 1)');
2375 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfContentBorderInner', 'rgba(224, 224, 224, 1)');
2376 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfContentContainerBackground', 'rgba(255, 255, 255, 1)');
2377 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfContentContainerBorder', 'rgba(236, 241, 247, 1)');
2378 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfContentDimmedLink', 'rgba(52, 73, 94, 1)');
2379 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfContentDimmedLinkActive', 'rgba(52, 73, 94, 1)');
2380 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfContentDimmedText', 'rgba(125, 130, 135, 1)');
2381 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfContentHeadlineBorder', 'rgba(238, 238, 238, 1)');
2382 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfContentHeadlineLink', 'rgba(58, 58, 61, 1)');
2383 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfContentHeadlineLinkActive', 'rgba(58, 58, 61, 1)');
2384 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfContentHeadlineText', 'rgba(58, 58, 61, 1)');
2385 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfContentLink', 'rgba(230, 81, 0, 1)');
2386 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfContentLinkActive', 'rgba(191, 54, 12, 1)');
2387 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfContentText', 'rgba(58, 58, 61, 1)');
2388 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfDropdownBackground', 'rgba(255, 255, 255, 1)');
2389 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfDropdownBackgroundActive', 'rgba(238, 238, 238, 1)');
2390 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfDropdownBorderInner', 'rgba(238, 238, 238, 1)');
2391 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfDropdownLink', 'rgba(33, 33, 33, 1)');
2392 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfDropdownLinkActive', 'rgba(33, 33, 33, 1)');
2393 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfDropdownText', 'rgba(33, 33, 33, 1)');
2394 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfEditorButtonBackground', 'rgba(58, 109, 156, 1)');
2395 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfEditorButtonBackgroundActive', 'rgba(36, 66, 95, 1)');
2396 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfEditorButtonText', 'rgba(255, 255, 255, 1)');
2397 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfEditorButtonTextActive', 'rgba(255, 255, 255, 1)');
2398 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfEditorButtonTextDisabled', 'rgba(165, 165, 165, 1)');
2399 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfEditorTableBorder', 'rgba(221, 221, 221, 1)');
2400 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfFontFamilyFallback', 'system');
2401 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfFontFamilyGoogle', '');
2402 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfFontLineHeight', '1.48');
2403 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfFontSizeDefault', '15px');
2404 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfFontSizeHeadline', '18px');
2405 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfFontSizeSection', '23px');
2406 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfFontSizeSmall', '12px');
2407 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfFontSizeTitle', '28px');
2408 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfFooterBackground', 'rgba(58, 109, 156, 1)');
2409 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfFooterBoxBackground', 'rgba(236, 239, 241, 1)');
2410 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfFooterBoxHeadlineLink', 'rgba(58, 58, 61, 1)');
2411 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfFooterBoxHeadlineLinkActive', 'rgba(58, 58, 61, 1)');
2412 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfFooterBoxHeadlineText', 'rgba(58, 58, 61, 1)');
2413 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfFooterBoxLink', 'rgba(230, 81, 0, 1)');
2414 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfFooterBoxLinkActive', 'rgba(191, 54, 12, 1)');
2415 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfFooterBoxText', 'rgba(58, 58, 61, 1)');
2416 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfFooterCopyrightBackground', 'rgba(50, 92, 132, 1)');
2417 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfFooterCopyrightLink', 'rgba(217, 220, 222, 1)');
2418 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfFooterCopyrightLinkActive', 'rgba(255, 255, 255, 1)');
2419 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfFooterCopyrightText', 'rgba(217, 220, 222, 1)');
2420 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfFooterHeadlineLink', 'rgba(255, 255, 255, 1)');
2421 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfFooterHeadlineLinkActive', 'rgba(255, 255, 255, 1)');
2422 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfFooterHeadlineText', 'rgba(189, 195, 199, 1)');
2423 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfFooterLink', 'rgba(255, 255, 255, 1)');
2424 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfFooterLinkActive', 'rgba(255, 255, 255, 1)');
2425 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfFooterText', 'rgba(217, 220, 222, 1)');
2426 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfHeaderBackground', 'rgba(58, 109, 156, 1)');
2427 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfHeaderText', 'rgba(255, 255, 255, 1)');
2428 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfHeaderLink', 'rgba(255, 255, 255, 1)');
2429 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfHeaderLinkActive', 'rgba(255, 255, 255, 1)');
2430 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfHeaderMenuBackground', 'rgba(50, 92, 132, 1)');
2431 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfHeaderMenuLinkBackground', 'rgba(43, 79, 113, 1)');
2432 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfHeaderMenuLinkBackgroundActive', 'rgba(36, 66, 95, 1)');
2433 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfHeaderMenuLink', 'rgba(255, 255, 255, 1)');
2434 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfHeaderMenuLinkActive', 'rgba(255, 255, 255, 1)');
2435 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfHeaderMenuDropdownBackground', 'rgba(36, 66, 95, 1)');
2436 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfHeaderMenuDropdownBackgroundActive', 'rgba(65, 121, 173, 1)');
2437 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfHeaderMenuDropdownLink', 'rgba(255, 255, 255, 1)');
2438 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfHeaderMenuDropdownLinkActive', 'rgba(255, 255, 255, 1)');
2439 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfHeaderSearchBoxBackground', 'rgba(50, 92, 132, 1)');
2440 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfHeaderSearchBoxBackgroundActive', 'rgba(50, 92, 132, 1)');
2441 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfHeaderSearchBoxText', 'rgba(255, 255, 255, 1)');
2442 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfHeaderSearchBoxTextActive', 'rgba(255, 255, 255, 1)');
2443 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfHeaderSearchBoxPlaceholder', 'rgba(207, 207, 207, 1)');
2444 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfHeaderSearchBoxPlaceholderActive', 'rgba(207, 207, 207, 1)');
2445 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfInputBackground', 'rgba(241, 246, 251, 1)');
2446 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfInputBackgroundActive', 'rgba(241, 246, 251, 1)');
2447 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfInputBorder', 'rgba(176, 200, 224, 1)');
2448 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfInputBorderActive', 'rgba(41, 128, 185, 1)');
2449 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfInputDisabledBackground', 'rgba(245, 245, 245, 1)');
2450 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfInputDisabledBorder', 'rgba(174, 176, 179, 1)');
2451 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfInputDisabledText', 'rgba(125, 130, 100, 1)');
2452 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfInputLabel', 'rgba(59, 109, 169, 1)');
2453 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfInputText', 'rgba(58, 58, 61, 1)');
2454 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfInputTextActive', 'rgba(58, 58, 61, 1)');
2455 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfInputPlaceholder', 'rgba(169, 169, 169, 1)');
2456 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfInputPlaceholderActive', 'rgba(204, 204, 204, 1)');
2457 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfLayoutFixedWidth', '1200px');
2458 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfLayoutMaxWidth', '1400px');
2459 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfLayoutMinWidth', '1000px');
2460 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfNavigationBackground', 'rgba(236, 239, 241, 1)');
2461 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfNavigationLink', 'rgba(58, 58, 61, 1)');
2462 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfNavigationLinkActive', 'rgba(58, 58, 61, 1)');
2463 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfNavigationText', 'rgba(170, 170, 170, 1)');
2464 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfPageThemeColor', ''); -- uses `$wcfHeaderBackground` if left empty
2465 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfSidebarBackground', 'rgba(236, 241, 247, 1)');
2466 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfSidebarDimmedLink', 'rgba(58, 58, 61, 1)');
2467 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfSidebarDimmedLinkActive', 'rgba(58, 58, 61, 1)');
2468 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfSidebarDimmedText', 'rgba(127, 140, 141, 1)');
2469 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfSidebarHeadlineLink', 'rgba(58, 58, 61, 1)');
2470 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfSidebarHeadlineLinkActive', 'rgba(58, 58, 61, 1)');
2471 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfSidebarHeadlineText', 'rgba(58, 58, 61, 1)');
2472 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfSidebarLink', 'rgba(230, 81, 0, 1)');
2473 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfSidebarLinkActive', 'rgba(191, 54, 12, 1)');
2474 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfSidebarText', 'rgba(58, 58, 61, 1)');
2475 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfStatusErrorBackground', 'rgba(242, 222, 222, 1)');
2476 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfStatusErrorBorder', 'rgba(235, 204, 204, 1)');
2477 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfStatusErrorLink', 'rgba(132, 53, 52, 1)');
2478 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfStatusErrorLinkActive', 'rgba(132, 53, 52, 1)');
2479 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfStatusErrorText', 'rgba(169, 68, 66, 1)');
2480 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfStatusInfoBackground', 'rgba(217, 237, 247, 1)');
2481 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfStatusInfoBorder', 'rgba(188, 223, 241, 1)');
2482 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfStatusInfoLink', 'rgba(36, 82, 105, 1)');
2483 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfStatusInfoLinkActive', 'rgba(36, 82, 105, 1)');
2484 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfStatusInfoText', 'rgba(49, 112, 143, 1)');
2485 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfStatusSuccessBackground', 'rgba(223, 240, 216, 1)');
2486 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfStatusSuccessBorder', 'rgba(208, 233, 198, 1)');
2487 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfStatusSuccessLink', 'rgba(43, 84, 44, 1)');
2488 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfStatusSuccessLinkActive', 'rgba(43, 84, 44, 1)');
2489 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfStatusSuccessText', 'rgba(60, 118, 61, 1)');
2490 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfStatusWarningBackground', 'rgba(252, 248, 227, 1)');
2491 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfStatusWarningBorder', 'rgba(250, 242, 204, 1)');
2492 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfStatusWarningLink', 'rgba(102, 81, 44, 1)');
2493 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfStatusWarningLinkActive', 'rgba(102, 81, 44, 1)');
2494 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfStatusWarningText', 'rgba(138, 109, 59, 1)');
2495 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfTabularBoxBackgroundActive', 'rgba(242, 242, 242, 1)');
2496 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfTabularBoxBorderInner', 'rgba(238, 238, 238, 1)');
2497 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfTabularBoxHeadline', 'rgba(65, 121, 173, 1)');
2498 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfTabularBoxHeadlineActive', 'rgba(230, 81, 0, 1)');
2499 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfTextShadowDark', 'rgba(0, 0, 0, .8)');
2500 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfTextShadowLight', 'rgba(255, 255, 255, .8)');
2501 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfTooltipBackground', 'rgba(0, 0, 0, .8)');
2502 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfTooltipText', 'rgba(255, 255, 255, 1)');
2503 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfUserMenuBackground', 'rgba(255, 255, 255, 1)');
2504 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfUserMenuBackgroundActive', 'rgba(239, 239, 239, 1)');
2505 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfUserMenuText', 'rgba(58, 58, 61, 1)');
2506 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfUserMenuTextActive', 'rgba(58, 58, 61, 1)');
2507 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfUserMenuTextDimmed', 'rgba(108, 108, 108, 1)');
2508 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfUserMenuIndicator', 'rgba(49, 138, 220, 1)');
2509 INSERT INTO wcf1_style_variable (variableName, defaultValue) VALUES ('wcfUserMenuBorder', 'rgba(221, 221, 221, 1)');
2510
2511 -- Email template group
2512 INSERT INTO wcf1_template_group (parentTemplateGroupID, templateGroupName, templateGroupFolderName) VALUES (NULL, 'wcf.acp.template.group.email', '_wcf_email/');
2513
2514 -- default priorities
2515 UPDATE wcf1_user_group SET priority = 10 WHERE groupID = 3;
2516 UPDATE wcf1_user_group SET priority = 1000 WHERE groupID = 4;
2517 UPDATE wcf1_user_group SET priority = 100 WHERE groupID = 5;
2518
2519 -- default 'showOnTeamPage' setting
2520 UPDATE wcf1_user_group SET showOnTeamPage = 1 WHERE groupID IN (4, 5);
2521
2522 -- default ranks
2523 INSERT INTO wcf1_user_rank (groupID, requiredPoints, rankTitle, cssClassName) VALUES
2524 (4, 0, 'wcf.user.rank.administrator', 'blue'),
2525 (5, 0, 'wcf.user.rank.moderator', 'blue'),
2526 (3, 0, 'wcf.user.rank.user0', ''),
2527 (3, 300, 'wcf.user.rank.user1', ''),
2528 (3, 900, 'wcf.user.rank.user2', ''),
2529 (3, 3000, 'wcf.user.rank.user3', ''),
2530 (3, 9000, 'wcf.user.rank.user4', ''),
2531 (3, 15000, 'wcf.user.rank.user5', '');
2532
2533 -- default options: subject and message
2534 INSERT INTO wcf1_contact_option (optionID, optionTitle, optionDescription, optionType, required, showOrder, originIsSystem) VALUES (1, 'wcf.contact.option1', 'wcf.contact.optionDescription1', 'text', 1, 1, 1);
2535 INSERT INTO wcf1_contact_option (optionID, optionTitle, optionDescription, optionType, required, showOrder, originIsSystem) VALUES (2, 'wcf.contact.option2', '', 'textarea', 1, 1, 1);
2536
2537 -- default recipient: site administrator
2538 INSERT INTO wcf1_contact_recipient (recipientID, name, email, isAdministrator, originIsSystem) VALUES (1, 'wcf.contact.recipient.name1', '', 1, 1);
2539
2540 -- default reaction type
2541 INSERT INTO wcf1_reaction_type (reactionTypeID, title, showOrder, iconFile) VALUES (1, 'wcf.reactionType.title1', 1, 'like.svg');
2542 INSERT INTO wcf1_reaction_type (reactionTypeID, title, showOrder, iconFile) VALUES (2, 'wcf.reactionType.title2', 2, 'thanks.svg');
2543 INSERT INTO wcf1_reaction_type (reactionTypeID, title, showOrder, iconFile) VALUES (3, 'wcf.reactionType.title3', 3, 'haha.svg');
2544 INSERT INTO wcf1_reaction_type (reactionTypeID, title, showOrder, iconFile) VALUES (4, 'wcf.reactionType.title4', 4, 'confused.svg');
2545 INSERT INTO wcf1_reaction_type (reactionTypeID, title, showOrder, iconFile) VALUES (5, 'wcf.reactionType.title5', 5, 'sad.svg');