/* ATTENTION: You don't need to run or use this file! The upgrade.php script does everything for you! */ /******************************************************************************/ --- Adding new settings... /******************************************************************************/ ---# Adding login history... CREATE TABLE IF NOT EXISTS {$db_prefix}member_logins ( id_login int(10) NOT NULL auto_increment, id_member mediumint(8) NOT NULL, time int(10) NOT NULL, ip varchar(255) NOT NULL default '', ip2 varchar(255) NOT NULL default '', PRIMARY KEY id_login(id_login), KEY id_member (id_member), KEY time (time) ) ENGINE=MyISAM{$db_collation}; ---# ---# Moving the cookie name to the database... ---{ if (!isset($modSettings['cookie_name'])) { if (empty($cookiename)) $cookiename = 'SMFCookie11'; upgrade_query(" INSERT INTO {$db_prefix}settings (variable, value) VALUES ('cookie_name', '$cookiename')"); } ---} ---# ---# Copying the current package backup setting... ---{ if (!isset($modSettings['package_make_full_backups']) && isset($modSettings['package_make_backups'])) upgrade_query(" INSERT INTO {$db_prefix}settings (variable, value) VALUES ('package_make_full_backups', '" . $modSettings['package_make_backups'] . "')"); ---} ---# /******************************************************************************/ --- Updating legacy attachments... /******************************************************************************/ ---# Converting legacy attachments. ---{ $request = upgrade_query(" SELECT MAX(id_attach) FROM {$db_prefix}attachments"); list ($step_progress['total']) = $smcFunc['db_fetch_row']($request); $smcFunc['db_free_result']($request); $_GET['a'] = isset($_GET['a']) ? (int) $_GET['a'] : 0; $step_progress['name'] = 'Converting legacy attachments'; $step_progress['current'] = $_GET['a']; // We may be using multiple attachment directories. if (!empty($modSettings['currentAttachmentUploadDir']) && !is_array($modSettings['attachmentUploadDir'])) $modSettings['attachmentUploadDir'] = unserialize($modSettings['attachmentUploadDir']); $is_done = false; while (!$is_done) { nextSubStep($substep); $request = upgrade_query(" SELECT id_attach, id_folder, filename, file_hash FROM {$db_prefix}attachments WHERE file_hash = '' LIMIT $_GET[a], 100"); // Finished? if ($smcFunc['db_num_rows']($request) == 0) $is_done = true; while ($row = $smcFunc['db_fetch_assoc']($request)) { // The current folder. $current_folder = !empty($modSettings['currentAttachmentUploadDir']) ? $modSettings['attachmentUploadDir'][$row['id_folder']] : $modSettings['attachmentUploadDir']; // The old location of the file. $old_location = getLegacyAttachmentFilename($row['filename'], $row['id_attach'], $row['id_folder']); // The new file name. $file_hash = getAttachmentFilename($row['filename'], $row['id_attach'], $row['id_folder'], true); // And we try to move it. rename($old_location, $current_folder . '/' . $row['id_attach'] . '_' . $file_hash); // Only update thif if it was successful. if (file_exists($current_folder . '/' . $row['id_attach'] . '_' . $file_hash) && !file_exists($old_location)) upgrade_query(" UPDATE {$db_prefix}attachments SET file_hash = '$file_hash' WHERE id_attach = $row[id_attach]"); } $smcFunc['db_free_result']($request); $_GET['a'] += 100; $step_progress['current'] = $_GET['a']; } unset($_GET['a']); ---} ---# /******************************************************************************/ --- Adding support for IPv6... /******************************************************************************/ ---# Adding new columns to ban items... ALTER TABLE {$db_prefix}ban_items ADD COLUMN ip_low5 smallint(255) unsigned NOT NULL DEFAULT '0', ADD COLUMN ip_high5 smallint(255) unsigned NOT NULL DEFAULT '0', ADD COLUMN ip_low6 smallint(255) unsigned NOT NULL DEFAULT '0', ADD COLUMN ip_high6 smallint(255) unsigned NOT NULL DEFAULT '0', ADD COLUMN ip_low7 smallint(255) unsigned NOT NULL DEFAULT '0', ADD COLUMN ip_high7 smallint(255) unsigned NOT NULL DEFAULT '0', ADD COLUMN ip_low8 smallint(255) unsigned NOT NULL DEFAULT '0', ADD COLUMN ip_high8 smallint(255) unsigned NOT NULL DEFAULT '0'; ---# ---# Changing existing columns to ban items... ALTER TABLE {$db_prefix}ban_items CHANGE ip_low1 ip_low1 tinyint(3) unsigned NOT NULL DEFAULT '0', CHANGE ip_high1 ip_high1 tinyint(3) unsigned NOT NULL DEFAULT '0', CHANGE ip_low2 ip_low2 tinyint(3) unsigned NOT NULL DEFAULT '0', CHANGE ip_high2 ip_high2 tinyint(3) unsigned NOT NULL DEFAULT '0', CHANGE ip_low3 ip_low3 tinyint(3) unsigned NOT NULL DEFAULT '0', CHANGE ip_high3 ip_high3 tinyint(3) unsigned NOT NULL DEFAULT '0', CHANGE ip_low4 ip_low4 tinyint(3) unsigned NOT NULL DEFAULT '0', CHANGE ip_high4 ip_high4 tinyint(3) unsigned NOT NULL DEFAULT '0'; ---#