PluginProbe
wpForo Forum / 1.4.1
wpForo Forum v1.4.1
3.1.5 3.1.4 3.1.2 3.1.1 3.1.0 3.0.9 3.0.8 3.0.7 trunk 1.0.0 1.0.1 1.0.2 1.1.0 1.1.1 1.1.2 1.2.0 1.3.0 1.3.1 1.4.0 1.4.1 1.4.10 1.4.11 1.4.12 1.4.13 1.4.2 All 137 releases
wpforo / wpf-includes / install-sql.php

install-sql.php in wpForo Forum 1.4.1, at wpf-includes/install-sql.php

226 lines 9.3 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 // Exit if accessed directly
3 if( !defined( 'ABSPATH' ) ) exit;
4
5
6 $charset_collate = '';
7 if ( ! empty($wpforo->db->charset) ) $charset_collate = "DEFAULT CHARACTER SET " . $wpforo->db->charset;
8 if ( ! empty($wpforo->db->collate) ) $charset_collate .= " COLLATE " . $wpforo->db->collate;
9 $engine = version_compare($wpforo->db->db_version(), '5.6.4', '>=') ? 'InnoDB' : 'MyISAM';
10
11 $wpforo_sql = array(
12 "CREATE TABLE IF NOT EXISTS `{$wpforo->db->prefix}wpforo_forums`(
13 `forumid` INT UNSIGNED NOT NULL AUTO_INCREMENT,
14 `title` VARCHAR(255) NOT NULL,
15 `slug` VARCHAR(255) NOT NULL,
16 `description` LONGTEXT,
17 `parentid` INT UNSIGNED NOT NULL DEFAULT 0,
18 `icon` VARCHAR(255),
19 `last_topicid` INT UNSIGNED NOT NULL DEFAULT 0,
20 `last_postid` INT UNSIGNED NOT NULL DEFAULT 0,
21 `last_userid` INT UNSIGNED NOT NULL DEFAULT 0,
22 `last_post_date` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
23 `topics` INT NOT NULL DEFAULT 0,
24 `posts` INT NOT NULL DEFAULT 0,
25 `permissions` TEXT,
26 `meta_key` TEXT,
27 `meta_desc` TEXT,
28 `status` tinyint(1) UNSIGNED NOT NULL DEFAULT 0,
29 `is_cat` tinyint(1) UNSIGNED NOT NULL DEFAULT 0,
30 `cat_layout` tinyint(1) UNSIGNED NOT NULL DEFAULT 0,
31 `order` INT UNSIGNED NOT NULL DEFAULT 0,
32 PRIMARY KEY (`forumid`),
33 UNIQUE KEY `UNIQUE SLUG` (`slug`(191)),
34 KEY `order` (`order`),
35 KEY `status` (`status`),
36 KEY `parentid` (`parentid`),
37 KEY `is_cat` (`is_cat`)
38 ) ENGINE=MyISAM $charset_collate;",
39 "CREATE TABLE IF NOT EXISTS `{$wpforo->db->prefix}wpforo_topics`(
40 `topicid` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
41 `forumid` INT UNSIGNED NOT NULL,
42 `first_postid` BIGINT UNSIGNED NOT NULL DEFAULT 0,
43 `userid` INT UNSIGNED NOT NULL,
44 `title` VARCHAR(255) NOT NULL,
45 `slug` VARCHAR(255) NOT NULL,
46 `created` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
47 `modified` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
48 `last_post` BIGINT UNSIGNED NOT NULL DEFAULT 0,
49 `posts` INT NOT NULL DEFAULT 0,
50 `votes` INT NOT NULL DEFAULT 0,
51 `answers` INT NOT NULL DEFAULT 0,
52 `views` INT UNSIGNED NOT NULL DEFAULT 0,
53 `meta_key` TEXT,
54 `meta_desc` TEXT,
55 `type` TINYINT NOT NULL DEFAULT 0,
56 `closed` tinyint(1) UNSIGNED NOT NULL DEFAULT 0,
57 `has_attach` tinyint(1) UNSIGNED NOT NULL DEFAULT 0,
58 `private` tinyint(1) UNSIGNED NOT NULL DEFAULT 0,
59 `status` tinyint(1) UNSIGNED NOT NULL DEFAULT 0,
60 `name` VARCHAR(50) NOT NULL DEFAULT '',
61 `email` VARCHAR(50) NOT NULL DEFAULT '',
62 PRIMARY KEY (`topicid`),
63 UNIQUE KEY `UNIQUE SLUG` (`slug`(191)),
64 FULLTEXT KEY `title` (`title`),
65 KEY `forumid` (`forumid`),
66 KEY `first_postid` (`first_postid`),
67 KEY `created` (`created`),
68 KEY `modified` (`modified`),
69 KEY `type` (`type`),
70 KEY `status` (`status`),
71 KEY `email` (`email`),
72 KEY `is_private` (`private`),
73 KEY `own_private` (`userid`,`private`)
74 ) ENGINE=$engine $charset_collate;",
75 "CREATE TABLE IF NOT EXISTS `{$wpforo->db->prefix}wpforo_posts`(
76 `postid` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
77 `parentid` BIGINT UNSIGNED NOT NULL DEFAULT 0,
78 `forumid` INT UNSIGNED NOT NULL,
79 `topicid` BIGINT UNSIGNED NOT NULL,
80 `userid` INT UNSIGNED NOT NULL,
81 `title` varchar(255),
82 `body` LONGTEXT,
83 `created` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
84 `modified` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
85 `likes` INT UNSIGNED NOT NULL DEFAULT 0,
86 `votes` INT NOT NULL DEFAULT 0,
87 `is_answer` tinyint(1) UNSIGNED NOT NULL DEFAULT 0,
88 `is_first_post` tinyint(1) UNSIGNED NOT NULL DEFAULT 0,
89 `status` tinyint(1) UNSIGNED NOT NULL DEFAULT 0,
90 `name` VARCHAR(50) NOT NULL DEFAULT '',
91 `email` VARCHAR(50) NOT NULL DEFAULT '',
92 PRIMARY KEY (`postid`),
93 FULLTEXT KEY `title`(`title`(191)),
94 FULLTEXT KEY `body` (`body`),
95 FULLTEXT KEY `title_plus_body` (`title`,`body`),
96 KEY `topicid` (`topicid`),
97 KEY `forumid` (`forumid`),
98 KEY `userid` (`userid`),
99 KEY `parentid` (`parentid`),
100 KEY `is_answer` (`is_answer`),
101 KEY `is_first_post` (`is_first_post`),
102 KEY `status` (`status`),
103 KEY `email` (`email`)
104 ) ENGINE=$engine $charset_collate;",
105 "CREATE TABLE IF NOT EXISTS `{$wpforo->db->prefix}wpforo_profiles` (
106 `userid` INT UNSIGNED NOT NULL,
107 `title` VARCHAR(255) NOT NULL DEFAULT 'member',
108 `username` VARCHAR(255) NOT NULL,
109 `groupid` INT UNSIGNED NOT NULL,
110 `posts` INT NOT NULL DEFAULT 0,
111 `questions` INT NOT NULL DEFAULT 0,
112 `answers` INT NOT NULL DEFAULT 0,
113 `comments` INT NOT NULL DEFAULT 0,
114 `site` VARCHAR(255) DEFAULT NULL,
115 `icq` VARCHAR(255) DEFAULT NULL,
116 `aim` VARCHAR(255) DEFAULT NULL,
117 `yahoo` VARCHAR(255) DEFAULT NULL,
118 `msn` VARCHAR(255) DEFAULT NULL,
119 `facebook` VARCHAR(255) DEFAULT NULL,
120 `twitter` VARCHAR(255) DEFAULT NULL,
121 `gtalk` VARCHAR(255) DEFAULT NULL,
122 `skype` VARCHAR(255) DEFAULT NULL,
123 `avatar` VARCHAR(255) DEFAULT NULL,
124 `signature` TEXT,
125 `about` TEXT,
126 `occupation` TEXT,
127 `location` VARCHAR(255) DEFAULT NULL,
128 `last_login` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
129 `rank` INT UNSIGNED NOT NULL DEFAULT 0,
130 `like` INT UNSIGNED NOT NULL DEFAULT 0,
131 `status` VARCHAR(8) DEFAULT 'active' COMMENT 'active, blocked, trashed, spamer',
132 `timezone` VARCHAR(255),
133 PRIMARY KEY (`userid`),
134 UNIQUE KEY `UNIQUE ID` (`userid`),
135 UNIQUE KEY `UNIQUE USERNAME` (`username`(191)),
136 KEY `groupid` (`groupid`),
137 KEY `posts` (`posts`),
138 KEY `status` (`status`)
139 ) ENGINE=MyISAM $charset_collate;",
140 "CREATE TABLE IF NOT EXISTS `{$wpforo->db->prefix}wpforo_usergroups`(
141 `groupid` INT UNSIGNED NOT NULL AUTO_INCREMENT,
142 `name` VARCHAR(255) NOT NULL,
143 `cans` LONGTEXT NOT NULL COMMENT 'board permissions',
144 `description` TEXT,
145 PRIMARY KEY (`groupid`),
146 UNIQUE KEY `UNIQUE_GROUP_NAME` (`name`(191))
147 ) ENGINE=MyISAM $charset_collate;",
148 "CREATE TABLE IF NOT EXISTS `{$wpforo->db->prefix}wpforo_languages`(
149 `langid` INT UNSIGNED NOT NULL AUTO_INCREMENT,
150 `name` VARCHAR(255) NOT NULL,
151 PRIMARY KEY (`langid`),
152 UNIQUE KEY `UNIQUE language name` (`name`(191))
153 ) ENGINE=MyISAM $charset_collate;",
154 "CREATE TABLE IF NOT EXISTS `{$wpforo->db->prefix}wpforo_phrases` (
155 `phraseid` INT UNSIGNED NOT NULL AUTO_INCREMENT,
156 `langid` INT UNSIGNED NOT NULL,
157 `phrase_key` VARCHAR(255) NOT NULL,
158 `phrase_value` text NOT NULL,
159 `package` VARCHAR(255) NOT NULL DEFAULT 'wpforo',
160 PRIMARY KEY (`phraseid`),
161 KEY `langid` (`langid`),
162 KEY `phrase_key` (`phrase_key`(191)),
163 UNIQUE KEY lng_and_key_uniq (`langid`, `phrase_key`(191))
164 ) ENGINE=MyISAM $charset_collate;",
165 "CREATE TABLE IF NOT EXISTS `{$wpforo->db->prefix}wpforo_likes`(
166 `likeid` INT UNSIGNED NOT NULL AUTO_INCREMENT,
167 `userid` INT UNSIGNED NOT NULL,
168 `postid` INT UNSIGNED NOT NULL,
169 `post_userid` INT UNSIGNED NOT NULL,
170 PRIMARY KEY (`likeid`),
171 UNIQUE KEY `userid` (`userid`,`postid`)
172 ) ENGINE=$engine $charset_collate;",
173 "CREATE TABLE IF NOT EXISTS `{$wpforo->db->prefix}wpforo_views`(
174 `vid` INT UNSIGNED NOT NULL AUTO_INCREMENT,
175 `userid` INT UNSIGNED NOT NULL,
176 `topicid` INT UNSIGNED NOT NULL,
177 `created` INT UNSIGNED NOT NULL,
178 PRIMARY KEY (`vid`),
179 KEY `user_topic` (`userid`,`topicid`)
180 ) ENGINE=$engine $charset_collate;",
181 "CREATE TABLE IF NOT EXISTS `{$wpforo->db->prefix}wpforo_votes`(
182 `voteid` INT UNSIGNED NOT NULL AUTO_INCREMENT,
183 `userid` INT UNSIGNED NOT NULL,
184 `postid` INT UNSIGNED NOT NULL,
185 `reaction` TINYINT NOT NULL DEFAULT 1,
186 `post_userid` INT UNSIGNED NOT NULL,
187 PRIMARY KEY (`voteid`),
188 UNIQUE KEY `userid` (`userid`,`postid`)
189 ) ENGINE=$engine $charset_collate;",
190 "CREATE TABLE IF NOT EXISTS `{$wpforo->db->prefix}wpforo_accesses`(
191 `accessid` INT UNSIGNED NOT NULL AUTO_INCREMENT,
192 `access` VARCHAR(255) NOT NULL,
193 `title` VARCHAR(255) NOT NULL,
194 `cans` LONGTEXT NOT NULL COMMENT 'forum permissions',
195 PRIMARY KEY (`accessid`),
196 UNIQUE KEY ( `access`(191) )
197 ) ENGINE=MyISAM $charset_collate;",
198 "CREATE TABLE IF NOT EXISTS `{$wpforo->db->prefix}wpforo_subscribes` (
199 `subid` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
200 `itemid` BIGINT UNSIGNED NOT NULL,
201 `type` VARCHAR(5) NOT NULL,
202 `confirmkey` varchar(32) NOT NULL,
203 `userid` BIGINT UNSIGNED NOT NULL,
204 `active` TINYINT(1) UNSIGNED NOT NULL DEFAULT 0,
205 PRIMARY KEY (`subid`),
206 UNIQUE KEY `itemid` (`itemid`,`type`,`userid`),
207 UNIQUE KEY `confirmkey` (`confirmkey`),
208 KEY `itemid_2` (`itemid`),
209 KEY `userid` (`userid`)
210 ) ENGINE=$engine $charset_collate;",
211 "CREATE TABLE IF NOT EXISTS `{$wpforo->db->prefix}wpforo_visits` (
212 `id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
213 `userid` BIGINT UNSIGNED NOT NULL,
214 `name` VARCHAR(60) NOT NULL,
215 `ip` VARCHAR(60) NOT NULL,
216 `time` INT UNSIGNED NOT NULL,
217 `forumid` INT UNSIGNED NOT NULL,
218 `topicid` BIGINT UNSIGNED NOT NULL,
219 PRIMARY KEY (`id`),
220 KEY `userid` (`userid`),
221 KEY `forumid` (`forumid`),
222 KEY `topicid` (`topicid`),
223 KEY `time` (`time`),
224 KEY `ip` (`ip`)
225 ) ENGINE=$engine $charset_collate;"
226 );