PluginProbe
wpForo Forum / 1.4.0
wpForo Forum v1.4.0
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.0, at wpf-includes/install-sql.php

222 lines 9.2 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 `parentid` (`parentid`),
35 KEY `is_cat` (`is_cat`)
36 ) ENGINE=MyISAM $charset_collate;",
37 "CREATE TABLE IF NOT EXISTS `{$wpforo->db->prefix}wpforo_topics`(
38 `topicid` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
39 `forumid` INT UNSIGNED NOT NULL,
40 `first_postid` BIGINT UNSIGNED NOT NULL DEFAULT 0,
41 `userid` INT UNSIGNED NOT NULL,
42 `title` VARCHAR(255) NOT NULL,
43 `slug` VARCHAR(255) NOT NULL,
44 `created` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
45 `modified` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
46 `last_post` BIGINT UNSIGNED NOT NULL DEFAULT 0,
47 `posts` INT NOT NULL DEFAULT 0,
48 `votes` INT NOT NULL DEFAULT 0,
49 `answers` INT NOT NULL DEFAULT 0,
50 `views` INT UNSIGNED NOT NULL DEFAULT 0,
51 `meta_key` TEXT,
52 `meta_desc` TEXT,
53 `type` TINYINT NOT NULL DEFAULT 0,
54 `closed` tinyint(1) UNSIGNED NOT NULL DEFAULT 0,
55 `has_attach` tinyint(1) UNSIGNED NOT NULL DEFAULT 0,
56 `private` tinyint(1) UNSIGNED NOT NULL DEFAULT 0,
57 `status` tinyint(1) UNSIGNED NOT NULL DEFAULT 0,
58 `name` VARCHAR(50) NOT NULL DEFAULT '',
59 `email` VARCHAR(50) NOT NULL DEFAULT '',
60 PRIMARY KEY (`topicid`),
61 UNIQUE KEY `UNIQUE SLUG` (`slug`(191)),
62 FULLTEXT KEY `title` (`title`),
63 KEY `forumid` (`forumid`),
64 KEY `first_postid` (`first_postid`),
65 KEY `type` (`type`),
66 KEY `status` (`status`),
67 KEY `email` (`email`),
68 KEY `is_private` (`private`),
69 KEY `own_private` (`userid`,`private`)
70 ) ENGINE=$engine $charset_collate;",
71 "CREATE TABLE IF NOT EXISTS `{$wpforo->db->prefix}wpforo_posts`(
72 `postid` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
73 `parentid` BIGINT UNSIGNED NOT NULL DEFAULT 0,
74 `forumid` INT UNSIGNED NOT NULL,
75 `topicid` BIGINT UNSIGNED NOT NULL,
76 `userid` INT UNSIGNED NOT NULL,
77 `title` varchar(255),
78 `body` LONGTEXT,
79 `created` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
80 `modified` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
81 `likes` INT UNSIGNED NOT NULL DEFAULT 0,
82 `votes` INT NOT NULL DEFAULT 0,
83 `is_answer` tinyint(1) UNSIGNED NOT NULL DEFAULT 0,
84 `is_first_post` tinyint(1) UNSIGNED NOT NULL DEFAULT 0,
85 `status` tinyint(1) UNSIGNED NOT NULL DEFAULT 0,
86 `name` VARCHAR(50) NOT NULL DEFAULT '',
87 `email` VARCHAR(50) NOT NULL DEFAULT '',
88 PRIMARY KEY (`postid`),
89 FULLTEXT KEY `title`(`title`(191)),
90 FULLTEXT KEY `body` (`body`),
91 FULLTEXT KEY `title_plus_body` (`title`,`body`),
92 KEY `topicid` (`topicid`),
93 KEY `forumid` (`forumid`),
94 KEY `userid` (`userid`),
95 KEY `parentid` (`parentid`),
96 KEY `is_answer` (`is_answer`),
97 KEY `is_first_post` (`is_first_post`),
98 KEY `status` (`status`),
99 KEY `email` (`email`)
100 ) ENGINE=$engine $charset_collate;",
101 "CREATE TABLE IF NOT EXISTS `{$wpforo->db->prefix}wpforo_profiles` (
102 `userid` INT UNSIGNED NOT NULL,
103 `title` VARCHAR(255) NOT NULL DEFAULT 'member',
104 `username` VARCHAR(255) NOT NULL,
105 `groupid` INT UNSIGNED NOT NULL,
106 `posts` INT NOT NULL DEFAULT 0,
107 `questions` INT NOT NULL DEFAULT 0,
108 `answers` INT NOT NULL DEFAULT 0,
109 `comments` INT NOT NULL DEFAULT 0,
110 `site` VARCHAR(255) DEFAULT NULL,
111 `icq` VARCHAR(255) DEFAULT NULL,
112 `aim` VARCHAR(255) DEFAULT NULL,
113 `yahoo` VARCHAR(255) DEFAULT NULL,
114 `msn` VARCHAR(255) DEFAULT NULL,
115 `facebook` VARCHAR(255) DEFAULT NULL,
116 `twitter` VARCHAR(255) DEFAULT NULL,
117 `gtalk` VARCHAR(255) DEFAULT NULL,
118 `skype` VARCHAR(255) DEFAULT NULL,
119 `avatar` VARCHAR(255) DEFAULT NULL,
120 `signature` TEXT,
121 `about` TEXT,
122 `occupation` TEXT,
123 `location` VARCHAR(255) DEFAULT NULL,
124 `last_login` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
125 `rank` INT UNSIGNED NOT NULL DEFAULT 0,
126 `like` INT UNSIGNED NOT NULL DEFAULT 0,
127 `status` VARCHAR(8) DEFAULT 'active' COMMENT 'active, blocked, trashed, spamer',
128 `timezone` VARCHAR(255),
129 PRIMARY KEY (`userid`),
130 UNIQUE KEY `UNIQUE ID` (`userid`),
131 UNIQUE KEY `UNIQUE USERNAME` (`username`(191)),
132 KEY `groupid` (`groupid`),
133 KEY `posts` (`posts`),
134 KEY `status` (`status`)
135 ) ENGINE=MyISAM $charset_collate;",
136 "CREATE TABLE IF NOT EXISTS `{$wpforo->db->prefix}wpforo_usergroups`(
137 `groupid` INT UNSIGNED NOT NULL AUTO_INCREMENT,
138 `name` VARCHAR(255) NOT NULL,
139 `cans` LONGTEXT NOT NULL COMMENT 'board permissions',
140 `description` TEXT,
141 PRIMARY KEY (`groupid`),
142 UNIQUE KEY `UNIQUE_GROUP_NAME` (`name`(191))
143 ) ENGINE=MyISAM $charset_collate;",
144 "CREATE TABLE IF NOT EXISTS `{$wpforo->db->prefix}wpforo_languages`(
145 `langid` INT UNSIGNED NOT NULL AUTO_INCREMENT,
146 `name` VARCHAR(255) NOT NULL,
147 PRIMARY KEY (`langid`),
148 UNIQUE KEY `UNIQUE language name` (`name`(191))
149 ) ENGINE=MyISAM $charset_collate;",
150 "CREATE TABLE IF NOT EXISTS `{$wpforo->db->prefix}wpforo_phrases` (
151 `phraseid` INT UNSIGNED NOT NULL AUTO_INCREMENT,
152 `langid` INT UNSIGNED NOT NULL,
153 `phrase_key` VARCHAR(255) NOT NULL,
154 `phrase_value` text NOT NULL,
155 `package` VARCHAR(255) NOT NULL DEFAULT 'wpforo',
156 PRIMARY KEY (`phraseid`),
157 KEY `langid` (`langid`),
158 KEY `phrase_key` (`phrase_key`(191)),
159 UNIQUE KEY lng_and_key_uniq (`langid`, `phrase_key`(191))
160 ) ENGINE=MyISAM $charset_collate;",
161 "CREATE TABLE IF NOT EXISTS `{$wpforo->db->prefix}wpforo_likes`(
162 `likeid` INT UNSIGNED NOT NULL AUTO_INCREMENT,
163 `userid` INT UNSIGNED NOT NULL,
164 `postid` INT UNSIGNED NOT NULL,
165 `post_userid` INT UNSIGNED NOT NULL,
166 PRIMARY KEY (`likeid`),
167 UNIQUE KEY `userid` (`userid`,`postid`)
168 ) ENGINE=$engine $charset_collate;",
169 "CREATE TABLE IF NOT EXISTS `{$wpforo->db->prefix}wpforo_views`(
170 `vid` INT UNSIGNED NOT NULL AUTO_INCREMENT,
171 `userid` INT UNSIGNED NOT NULL,
172 `topicid` INT UNSIGNED NOT NULL,
173 `created` INT UNSIGNED NOT NULL,
174 PRIMARY KEY (`vid`),
175 KEY `user_topic` (`userid`,`topicid`)
176 ) ENGINE=$engine $charset_collate;",
177 "CREATE TABLE IF NOT EXISTS `{$wpforo->db->prefix}wpforo_votes`(
178 `voteid` INT UNSIGNED NOT NULL AUTO_INCREMENT,
179 `userid` INT UNSIGNED NOT NULL,
180 `postid` INT UNSIGNED NOT NULL,
181 `reaction` TINYINT NOT NULL DEFAULT 1,
182 `post_userid` INT UNSIGNED NOT NULL,
183 PRIMARY KEY (`voteid`),
184 UNIQUE KEY `userid` (`userid`,`postid`)
185 ) ENGINE=$engine $charset_collate;",
186 "CREATE TABLE IF NOT EXISTS `{$wpforo->db->prefix}wpforo_accesses`(
187 `accessid` INT UNSIGNED NOT NULL AUTO_INCREMENT,
188 `access` VARCHAR(255) NOT NULL,
189 `title` VARCHAR(255) NOT NULL,
190 `cans` LONGTEXT NOT NULL COMMENT 'forum permissions',
191 PRIMARY KEY (`accessid`),
192 UNIQUE KEY ( `access`(191) )
193 ) ENGINE=MyISAM $charset_collate;",
194 "CREATE TABLE IF NOT EXISTS `{$wpforo->db->prefix}wpforo_subscribes` (
195 `subid` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
196 `itemid` BIGINT UNSIGNED NOT NULL,
197 `type` VARCHAR(5) NOT NULL,
198 `confirmkey` varchar(32) NOT NULL,
199 `userid` BIGINT UNSIGNED NOT NULL,
200 `active` TINYINT(1) UNSIGNED NOT NULL DEFAULT 0,
201 PRIMARY KEY (`subid`),
202 UNIQUE KEY `itemid` (`itemid`,`type`,`userid`),
203 UNIQUE KEY `confirmkey` (`confirmkey`),
204 KEY `itemid_2` (`itemid`),
205 KEY `userid` (`userid`)
206 ) ENGINE=$engine $charset_collate;",
207 "CREATE TABLE IF NOT EXISTS `{$wpforo->db->prefix}wpforo_visits` (
208 `id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
209 `userid` BIGINT UNSIGNED NOT NULL,
210 `name` VARCHAR(60) NOT NULL,
211 `ip` VARCHAR(60) NOT NULL,
212 `time` INT UNSIGNED NOT NULL,
213 `forumid` INT UNSIGNED NOT NULL,
214 `topicid` BIGINT UNSIGNED NOT NULL,
215 PRIMARY KEY (`id`),
216 KEY `userid` (`userid`),
217 KEY `forumid` (`forumid`),
218 KEY `topicid` (`topicid`),
219 KEY `time` (`time`),
220 KEY `ip` (`ip`)
221 ) ENGINE=$engine $charset_collate;"
222 );