diff --git a/phpBB/update_to_RC3.php b/phpBB/update_to_RC3.php index fb383cbc4a..4eec041145 100644 --- a/phpBB/update_to_RC3.php +++ b/phpBB/update_to_RC3.php @@ -12,12 +12,52 @@ switch ( SQL_LAYER ) { case 'mysql': case 'mysql4': + $sql[] = "ALTER TABLE " . USERS_TABLE . " + ADD COLUMN user_session_time int(11) DEFAULT '0' NOT NULL, + ADD COLUMN user_session_page smallint(5) DEFAULT '0' NOT NULL, + ADD INDEX (user_session_time)"; + $sql[] = "ALTER TABLE " . SEARCH_TABLE . " + MODIFY search_id int(11) NOT NULL"; + $sql[] = "ALTER TABLE " . TOPICS_TABLE . " + MODIFY topic_moved_id mediumint(8) UNSIGNED DEFAULT '0' NOT NULL"; + $sql[] = "UPDATE " . THEMES_TABLE . " + SET head_stylesheet = 'subSilver.css' + WHERE template_name = 'subSilver'"; + $sql[] = "ALTER TABLE " . TOPICS_TABLE . " ADD COLUMN topic_first_post_id mediumint(8) UNSIGNED DEFAULT '0' NOT NULL, ADD INDEX (topic_first_post_id)"; + + $sql[] = "ALTER TABLE " . THEMES_NAME_TABLE . " ADD + tr_class1_name varchar(50) NULL, + tr_class2_name varchar(50) NULL, + tr_class3_name varchar(50) NULL, + th_class1_name varchar(50) NULL, + th_class2_name varchar(50) NULL, + th_class3_name varchar(50) NULL, + td_class1_name varchar(50) NULL, + td_class2_name varchar(50) NULL, + td_class3_name varchar(50) NULL, + span_class1_name varchar(50) NULL, + span_class2_name varchar(50) NULL, + span_class3_name varchar(50) NULL"; break; case 'postgresql': + $sql[] = "ALTER TABLE " . USERS_TABLE . " + ADD COLUMN user_session_time int4"; + $sql[] = "ALTER TABLE " . USERS_TABLE . " + ADD COLUMN user_session_page int2"; + $sql[] = "ALTER TABLE " . USERS_TABLE . " + ALTER COLUMN user_session_time SET DEFAULT '0'"; + $sql[] = "ALTER TABLE " . USERS_TABLE . " + ALTER COLUMN user_session_page SET DEFAULT '0'"; + $sql[] = "CREATE INDEX user_session_time_" . $table_prefix . "users_index + ON " . USERS_TABLE . " (user_session_time)"; + $sql[] = "UPDATE " . THEMES_TABLE . " + SET head_stylesheet = 'subSilver.css' + WHERE template_name = 'subSilver'"; + $sql[] = "ALTER TABLE " . TOPICS_TABLE . " ADD COLUMN topic_first_post_id int4"; $sql[] = "CREATE INDEX topic_first_post_id_" . $table_prefix . "topics_index @@ -26,18 +66,66 @@ switch ( SQL_LAYER ) case 'mssql-odbc': case 'mssql': + $sql[] = "ALTER TABLE " . USERS_TABLE . " ADD + user_session_time int NOT NULL, + user_session_page smallint NOT NULL, + CONSTRAINT [DF_" . $table_prefix . "users_user_session_time] DEFAULT (0) FOR [user_session_time], + CONSTRAINT [DF_" . $table_prefix . "users_user_session_page] DEFAULT (0) FOR [user_session_page]"; + $sql[] = "CREATE INDEX [IX_" . $table_prefix . "users] + ON [" . USERS_TABLE . "]([user_session_time]) ON [PRIMARY]"; + $sql[] = "UPDATE " . THEMES_TABLE . " + SET head_stylesheet = 'subSilver.css' + WHERE template_name = 'subSilver'"; + $sql[] = "DROP INDEX " . TOPICS_TABLE . ".IX_" . $table_prefix . "topics"; $sql[] = "ALTER TABLE " . TOPICS_TABLE . " ADD topic_first_post_id int NOT NULL, CONSTRAINT [DF_" . $table_prefix . "topics_topic_first_post_id] DEFAULT (0) FOR [topic_first_post_id]"; - $sql[] = "CREATE INDEX [IX_" . $table_prefix . "topics] - ON [" . TOPICS_TABLE . "]([topic_first_post_id]) ON [PRIMARY]"; + $sql[] = "CREATE INDEX [IX_" . $table_prefix . "topics] + ON [" . TOPICS_TABLE . "]([forum_id], [topic_type], [topic_first_post_id], [topic_last_post_id]) ON [PRIMARY]"; + $sql[] = "ALTER TABLE " . THEMES_NAME_TABLE . " ADD + tr_class1_name varchar(50) NULL, + tr_class2_name varchar(50) NULL, + tr_class3_name varchar(50) NULL, + th_class1_name varchar(50) NULL, + th_class2_name varchar(50) NULL, + th_class3_name varchar(50) NULL, + td_class1_name varchar(50) NULL, + td_class2_name varchar(50) NULL, + td_class3_name varchar(50) NULL, + span_class1_name varchar(50) NULL, + span_class2_name varchar(50) NULL, + span_class3_name varchar(50) NULL"; break; case 'msaccess': + $sql[] = "ALTER TABLE " . USERS_TABLE . " ADD + user_session_time int NOT NULL, + user_session_page smallint NOT NULL"; + $sql[] = "CREATE INDEX user_session_time + ON " . USERS_TABLE . " (user_session_time)"; + $sql[] = "UPDATE " . THEMES_TABLE . " + SET head_stylesheet = 'subSilver.css' + WHERE template_name = 'subSilver'"; + $sql[] = "ALTER TABLE " . TOPICS_TABLE . " ADD topic_first_post_id int NOT NULL"; $sql[] = "CREATE INDEX topic_first_post_id ON " . TOPICS_TABLE . " (topic_first_post_id)"; + + $sql[] = "ALTER TABLE " . THEMES_NAME_TABLE . " ADD + tr_class1_name varchar(50) NULL, + tr_class2_name varchar(50) NULL, + tr_class3_name varchar(50) NULL, + th_class1_name varchar(50) NULL, + th_class2_name varchar(50) NULL, + th_class3_name varchar(50) NULL, + td_class1_name varchar(50) NULL, + td_class2_name varchar(50) NULL, + td_class3_name varchar(50) NULL, + span_class1_name varchar(50) NULL, + span_class2_name varchar(50) NULL, + span_class3_name varchar(50) NULL"; + break; default: @@ -85,7 +173,7 @@ else $theme_id = $row['themes_id']; $sql = "UPDATE " . THEMES_TABLE . " - SET head_stylesheet = '', body_background = '', body_bgcolor = 'E5E5E5', body_text = '000000', body_link = '006699', body_vlink = '5493B4', body_alink = '', body_hlink = 'DD6900', tr_color1 = 'EFEFEF', tr_color2 = 'DEE3E7', tr_color3 = 'D1D7DC', tr_class1 = '', tr_class2 = '', tr_class3 = '', th_color1 = '98AAB1', th_color2 = '006699', th_color3 = 'FFFFFF', th_class1 = 'cellpic1.gif', th_class2 = 'cellpic3.gif', th_class3 = 'cellpic2.jpg', td_color1 = 'FAFAFA', td_color2 = 'FFFFFF', td_color3 = '', td_class1 = 'row1', td_class2 = 'row2', td_class3 = '', fontface1 = 'Verdana, Arial, Helvetica, sans-serif', fontface2 = 'Trebuchet MS', fontface3 = 'Courier, \'Courier New\', sans-serif', fontsize1 = 10, fontsize2 = 11, fontsize3 = 12, fontcolor1 = '444444', fontcolor2 = '006600', fontcolor3 = 'FFA34F', span_class1 = '', span_class2 = '', span_class3 = '' + SET head_stylesheet = '', body_background = '', body_bgcolor = 'E5E5E5', body_text = '000000', body_link = '006699', body_vlink = '5493B4', body_alink = '', body_hlink = 'DD6900', tr_color1 = 'EFEFEF', tr_color2 = 'DEE3E7', tr_color3 = 'D1D7DC', tr_class1 = '', tr_class2 = '', tr_class3 = '', th_color1 = '98AAB1', th_color2 = '006699', th_color3 = 'FFFFFF', th_class1 = 'cellpic1.gif', th_class2 = 'cellpic3.gif', th_class3 = 'cellpic2.jpg', td_color1 = 'FAFAFA', td_color2 = 'FFFFFF', td_color3 = '', td_class1 = 'row1', td_class2 = 'row2', td_class3 = '', fontface1 = 'Verdana, Arial, Helvetica, sans-serif', fontface2 = 'Trebuchet MS', fontface3 = 'Courier, ''Courier New'', sans-serif', fontsize1 = 10, fontsize2 = 11, fontsize3 = 12, fontcolor1 = '444444', fontcolor2 = '006600', fontcolor3 = 'FFA34F', span_class1 = '', span_class2 = '', span_class3 = '' WHERE themes_id = $theme_id"; if ( !($result = $db->sql_query($sql)) ) { @@ -100,10 +188,10 @@ else } } - $sql = "SELECT post_id, topic_id - FROM " . POSTS_TABLE . " - GROUP BY topic_id ASC - ORDER BY post_id ASC"; + $sql = "SELECT MIN(post_id) AS first_post_id, topic_id + FROM " . POSTS_TABLE . " + GROUP BY topic_id + ORDER BY topic_id ASC"; if ( !($result = $db->sql_query($sql)) ) { die("Couldn't obtain first post id list"); @@ -113,7 +201,7 @@ else { do { - $post_id = $row['post_id']; + $post_id = $row['first_post_id']; $topic_id = $row['topic_id']; $sql = "UPDATE " . TOPICS_TABLE . "