Zeile 51 | Zeile 51 |
---|
require_once MYBB_ROOT.'inc/class_language.php';
$lang = new MyLanguage();
|
require_once MYBB_ROOT.'inc/class_language.php';
$lang = new MyLanguage();
|
$lang->set_path(MYBB_ROOT.'install/resources/');
| $lang->set_path(INSTALL_ROOT.'resources/');
|
$lang->load('language');
// If we're upgrading from an SQLite installation, make sure we still work.
| $lang->load('language');
// If we're upgrading from an SQLite installation, make sure we still work.
|
Zeile 59 | Zeile 59 |
---|
{ $config['database']['type'] = 'sqlite'; }
|
{ $config['database']['type'] = 'sqlite'; }
|
| // Load DB interface require_once MYBB_ROOT."inc/db_base.php";
|
require_once MYBB_ROOT."inc/db_{$config['database']['type']}.php"; switch($config['database']['type'])
| require_once MYBB_ROOT."inc/db_{$config['database']['type']}.php"; switch($config['database']['type'])
|
Zeile 68 | Zeile 71 |
---|
break; case "pgsql": $db = new DB_PgSQL;
|
break; case "pgsql": $db = new DB_PgSQL;
|
break;
| break;
|
case "mysqli": $db = new DB_MySQLi; break;
| case "mysqli": $db = new DB_MySQLi; break;
|
Zeile 93 | Zeile 96 |
---|
if(function_exists('rebuild_settings')) { rebuild_settings();
|
if(function_exists('rebuild_settings')) { rebuild_settings();
|
}
| }
|
else { $options = array(
| else { $options = array(
|
Zeile 102 | Zeile 105 |
---|
);
$query = $db->simple_select("settings", "value, name", "", $options);
|
);
$query = $db->simple_select("settings", "value, name", "", $options);
|
|
|
$settings = array(); while($setting = $db->fetch_array($query)) {
| $settings = array(); while($setting = $db->fetch_array($query)) {
|
Zeile 110 | Zeile 113 |
---|
$settings[$setting['name']] = $setting['value']; } }
|
$settings[$setting['name']] = $setting['value']; } }
|
}
| }
|
$settings['wolcutoff'] = $settings['wolcutoffmins']*60; $settings['bbname_orig'] = $settings['bbname'];
| $settings['wolcutoff'] = $settings['wolcutoffmins']*60; $settings['bbname_orig'] = $settings['bbname'];
|
Zeile 127 | Zeile 130 |
---|
require_once MYBB_ROOT."inc/class_datacache.php"; $cache = new datacache;
|
require_once MYBB_ROOT."inc/class_datacache.php"; $cache = new datacache;
|
|
|
// Load cache $cache->cache();
| // Load cache $cache->cache();
|
Zeile 140 | Zeile 143 |
---|
// Include the necessary contants for installation $grouppermignore = array("gid", "type", "title", "description", "namestyle", "usertitle", "stars", "starimage", "image");
|
// Include the necessary contants for installation $grouppermignore = array("gid", "type", "title", "description", "namestyle", "usertitle", "stars", "starimage", "image");
|
$groupzerogreater = array("pmquota", "maxpmrecipients", "maxreputationsday", "attachquota", "maxemails", "maxwarningsday", "maxposts", "edittimelimit", "canusesigxposts", "maxreputationsperthread");
| $groupzerogreater = array("pmquota", "maxpmrecipients", "maxreputationsday", "attachquota", "maxemails", "maxwarningsday", "maxposts", "edittimelimit", "canusesigxposts", "maxreputationsperuser", "maxreputationsperthread", "emailfloodtime");
|
$displaygroupfields = array("title", "description", "namestyle", "usertitle", "stars", "starimage", "image");
|
$displaygroupfields = array("title", "description", "namestyle", "usertitle", "stars", "starimage", "image");
|
$fpermfields = array("canview", "candlattachments", "canpostthreads", "canpostreplys", "canpostattachments", "canratethreads", "caneditposts", "candeleteposts", "candeletethreads", "caneditattachments", "canpostpolls", "canvotepolls", "cansearch");
| $fpermfields = array('canview', 'canviewthreads', 'candlattachments', 'canpostthreads', 'canpostreplys', 'canpostattachments', 'canratethreads', 'caneditposts', 'candeleteposts', 'candeletethreads', 'caneditattachments', 'canpostpolls', 'canvotepolls', 'cansearch', 'modposts', 'modthreads', 'modattachments', 'mod_edit_posts');
|
// Include the installation resources require_once INSTALL_ROOT."resources/output.php";
| // Include the installation resources require_once INSTALL_ROOT."resources/output.php";
|
Zeile 160 | Zeile 163 |
---|
if($mybb->input['action'] == "logout" && $mybb->user['uid']) { // Check session ID if we have one
|
if($mybb->input['action'] == "logout" && $mybb->user['uid']) { // Check session ID if we have one
|
if($mybb->get_input('logoutkey') != $mybb->user['logoutkey'])
| if($mybb->get_input('logoutkey') !== $mybb->user['logoutkey'])
|
{ $output->print_error("Your user ID could not be verified to log you out. This may have been because a malicious Javascript was attempting to log you out automatically. If you intended to log out, please click the Log Out button at the top menu.");
|
{ $output->print_error("Your user ID could not be verified to log you out. This may have been because a malicious Javascript was attempting to log you out automatically. If you intended to log out, please click the Log Out button at the top menu.");
|
}
| }
|
my_unsetcookie("mybbuser");
|
my_unsetcookie("mybbuser");
|
my_unsetcookie("sid");
|
|
if($mybb->user['uid']) { $time = TIME_NOW;
| if($mybb->user['uid']) { $time = TIME_NOW;
|
Zeile 175 | Zeile 178 |
---|
"lastvisit" => $time, ); $db->update_query("users", $lastvisit, "uid='".$mybb->user['uid']."'");
|
"lastvisit" => $time, ); $db->update_query("users", $lastvisit, "uid='".$mybb->user['uid']."'");
|
$db->delete_query("sessions", "sid='".$session->sid."'");
| |
} header("Location: upgrade.php"); }
| } header("Location: upgrade.php"); }
|
Zeile 200 | Zeile 202 |
---|
{ $user = validate_password_from_uid($user['uid'], $mybb->get_input('password'), $user); if(!$user['uid'])
|
{ $user = validate_password_from_uid($user['uid'], $mybb->get_input('password'), $user); if(!$user['uid'])
|
{
| {
|
$output->print_error("The password you entered is incorrect. If you have forgotten your password, click <a href=\"../member.php?action=lostpw\">here</a>. Otherwise, go back and try again."); } }
|
$output->print_error("The password you entered is incorrect. If you have forgotten your password, click <a href=\"../member.php?action=lostpw\">here</a>. Otherwise, go back and try again."); } }
|
$db->delete_query("sessions", "ip='".$db->escape_string($session->ipaddress)."' AND sid != '".$session->sid."'");
$newsession = array( "uid" => $user['uid'] );
$db->update_query("sessions", $newsession, "sid='".$session->sid."'");
// Temporarily set the cookie remember option for the login cookies $mybb->user['remember'] = $user['remember'];
| |
my_setcookie("mybbuser", $user['uid']."_".$user['loginkey'], null, true);
|
my_setcookie("mybbuser", $user['uid']."_".$user['loginkey'], null, true);
|
my_setcookie("sid", $session->sid, -1, true);
| |
header("Location: ./upgrade.php"); }
| header("Location: ./upgrade.php"); }
|
Zeile 332 | Zeile 322 |
---|
} elseif($mybb->input['action'] == "doupgrade") {
|
} elseif($mybb->input['action'] == "doupgrade") {
|
add_upgrade_store("allow_anonymous_info", $mybb->get_input('allow_anonymous_info', 1)); require_once INSTALL_ROOT."resources/upgrade".$mybb->get_input('from', 1).".php";
| add_upgrade_store("allow_anonymous_info", $mybb->get_input('allow_anonymous_info', MyBB::INPUT_INT)); require_once INSTALL_ROOT."resources/upgrade".$mybb->get_input('from', MyBB::INPUT_INT).".php";
|
if($db->table_exists("datacache") && $upgrade_detail['requires_deactivated_plugins'] == 1 && $mybb->get_input('donewarning') != "true") { $plugins = $cache->read('plugins', true); if(!empty($plugins['active'])) { $output->print_header();
|
if($db->table_exists("datacache") && $upgrade_detail['requires_deactivated_plugins'] == 1 && $mybb->get_input('donewarning') != "true") { $plugins = $cache->read('plugins', true); if(!empty($plugins['active'])) { $output->print_header();
|
$lang->plugin_warning = "<input type=\"hidden\" name=\"from\" value=\"".$mybb->get_input('from', 1)."\" />\n<input type=\"hidden\" name=\"donewarning\" value=\"true\" />\n<div class=\"error\"><strong><span style=\"color: red\">Warning:</span></strong> <p>There are still ".count($plugins['active'])." plugin(s) active. Active plugins can sometimes cause problems during an upgrade procedure or may break your forum afterward. It is <strong>strongly</strong> reccommended that you deactivate your plugins before continuing.</p></div> <br />";
| $lang->plugin_warning = "<input type=\"hidden\" name=\"from\" value=\"".$mybb->get_input('from', MyBB::INPUT_INT)."\" />\n<input type=\"hidden\" name=\"donewarning\" value=\"true\" />\n<div class=\"error\"><strong><span style=\"color: red\">Warning:</span></strong> <p>There are still ".count($plugins['active'])." plugin(s) active. Active plugins can sometimes cause problems during an upgrade procedure or may break your forum afterward. It is <strong>strongly</strong> reccommended that you deactivate your plugins before continuing.</p></div> <br />";
|
$output->print_contents($lang->sprintf($lang->plugin_warning, $mybb->version)); $output->print_footer("doupgrade"); }
|
$output->print_contents($lang->sprintf($lang->plugin_warning, $mybb->version)); $output->print_footer("doupgrade"); }
|
else { add_upgrade_store("startscript", $mybb->get_input('from', 1)); $runfunction = next_function($mybb->get_input('from', 1)); }
| else { add_upgrade_store("startscript", $mybb->get_input('from', MyBB::INPUT_INT)); $runfunction = next_function($mybb->get_input('from', MyBB::INPUT_INT)); }
|
} else {
|
} else {
|
add_upgrade_store("startscript", $mybb->get_input('from', 1)); $runfunction = next_function($mybb->get_input('from', 1));
| add_upgrade_store("startscript", $mybb->get_input('from', MyBB::INPUT_INT)); $runfunction = next_function($mybb->get_input('from', MyBB::INPUT_INT));
|
} } $currentscript = get_upgrade_store("currentscript");
| } } $currentscript = get_upgrade_store("currentscript");
|
Zeile 376 | Zeile 366 |
---|
$runfunction = "upgradedone"; } else // Busy running modules, come back later
|
$runfunction = "upgradedone"; } else // Busy running modules, come back later
|
{
| {
|
$bits = explode("_", $mybb->input['action'], 2); if($bits[1]) // We're still running a module {
| $bits = explode("_", $mybb->input['action'], 2); if($bits[1]) // We're still running a module {
|
Zeile 384 | Zeile 374 |
---|
$runfunction = next_function($bits[0], $bits[1]);
}
|
$runfunction = next_function($bits[0], $bits[1]);
}
|
}
| }
|
// Fetch current script we're in if(function_exists($runfunction))
| // Fetch current script we're in if(function_exists($runfunction))
|
Zeile 392 | Zeile 382 |
---|
$runfunction(); } }
|
$runfunction(); } }
|
| /** * Do the upgrade changes */
|
function upgradethemes() { global $output, $db, $system_upgrade_detail, $lang, $mybb;
| function upgradethemes() { global $output, $db, $system_upgrade_detail, $lang, $mybb;
|
Zeile 417 | Zeile 410 |
---|
}
if($system_upgrade_detail['revert_all_themes'] > 0)
|
}
if($system_upgrade_detail['revert_all_themes'] > 0)
|
{
| {
|
$db->drop_table("themes"); $db->write_query("CREATE TABLE ".TABLE_PREFIX."themes ( tid smallint unsigned NOT NULL auto_increment,
| $db->drop_table("themes"); $db->write_query("CREATE TABLE ".TABLE_PREFIX."themes ( tid smallint unsigned NOT NULL auto_increment,
|
Zeile 487 | Zeile 480 |
---|
} else {
|
} else {
|
$output->print_error();
| $output->print_error($lang->no_theme_functions_file);
|
}
// Import master theme
| }
// Import master theme
|
Zeile 543 | Zeile 536 |
---|
$output->print_footer("rebuildsettings"); }
|
$output->print_footer("rebuildsettings"); }
|
| /** * Update the settings */
|
function buildsettings() { global $db, $output, $system_upgrade_detail, $lang;
| function buildsettings() { global $db, $output, $system_upgrade_detail, $lang;
|
Zeile 561 | Zeile 557 |
---|
$output->print_footer("buildcaches"); }
|
$output->print_footer("buildcaches"); }
|
| /** * Rebuild caches */
|
function buildcaches() { global $db, $output, $cache, $lang, $mybb;
| function buildcaches() { global $db, $output, $cache, $lang, $mybb;
|
Zeile 568 | Zeile 567 |
---|
$output->print_header($lang->upgrade_datacache_building);
$contents .= $lang->upgrade_building_datacache;
|
$output->print_header($lang->upgrade_datacache_building);
$contents .= $lang->upgrade_building_datacache;
|
require_once MYBB_ROOT."inc/class_datacache.php"; $cache = new datacache;
|
|
$cache->update_version(); $cache->update_attachtypes(); $cache->update_smilies();
| $cache->update_version(); $cache->update_attachtypes(); $cache->update_smilies();
|
Zeile 597 | Zeile 595 |
---|
$cache->update_groupleaders(); $cache->update_threadprefixes(); $cache->update_forumsdisplay();
|
$cache->update_groupleaders(); $cache->update_threadprefixes(); $cache->update_forumsdisplay();
|
| $cache->update_reportreasons(true);
|
$contents .= $lang->done."</p>";
$output->print_contents("$contents<p>".$lang->upgrade_continue."</p>"); $output->print_footer("finished"); }
|
$contents .= $lang->done."</p>";
$output->print_contents("$contents<p>".$lang->upgrade_continue."</p>"); $output->print_footer("finished"); }
|
| /** * Called as latest function. Send statistics, create lock file etc */
|
function upgradedone() {
|
function upgradedone() {
|
global $db, $output, $mybb, $lang, $config;
| global $db, $output, $mybb, $lang, $config, $plugins;
|
ob_start();
|
ob_start();
|
$output->print_header("Upgrade Complete");
| $output->print_header($lang->upgrade_complete);
|
$allow_anonymous_info = get_upgrade_store("allow_anonymous_info"); if($allow_anonymous_info == 1)
| $allow_anonymous_info = get_upgrade_store("allow_anonymous_info"); if($allow_anonymous_info == 1)
|
Zeile 626 | Zeile 628 |
---|
// Attempt to run an update check require_once MYBB_ROOT.'inc/functions_task.php';
|
// Attempt to run an update check require_once MYBB_ROOT.'inc/functions_task.php';
|
run_task(12);
| $query = $db->simple_select('tasks', 'tid', "file='versioncheck'"); $update_check = $db->fetch_array($query); if($update_check) { // Load plugin system for update check require_once MYBB_ROOT."inc/class_plugins.php"; $plugins = new pluginSystem;
run_task($update_check['tid']); }
|
if(is_writable("./")) {
| if(is_writable("./")) {
|
Zeile 667 | Zeile 678 |
---|
$output->print_footer(); }
|
$output->print_footer(); }
|
| /** * Show the finish page */
|
function whatsnext() { global $output, $db, $system_upgrade_detail, $lang;
| function whatsnext() { global $output, $db, $system_upgrade_detail, $lang;
|
Zeile 683 | Zeile 697 |
---|
} }
|
} }
|
| /** * Determine the next function we need to call * * @param int $from * @param string $func * * @return string */
|
function next_function($from, $func="dbchanges") { global $oldvers, $system_upgrade_detail, $currentscript, $cache;
| function next_function($from, $func="dbchanges") { global $oldvers, $system_upgrade_detail, $currentscript, $cache;
|
Zeile 713 | Zeile 735 |
---|
return $function; }
|
return $function; }
|
| /** * @param string $module */
|
function load_module($module) { global $system_upgrade_detail, $currentscript, $upgrade_detail;
| function load_module($module) { global $system_upgrade_detail, $currentscript, $upgrade_detail;
|
Zeile 732 | Zeile 757 |
---|
} }
|
} }
|
| /** * Get a value from our upgrade data cache * * @param string $title * * @return mixed */
|
function get_upgrade_store($title) { global $db;
| function get_upgrade_store($title) { global $db;
|
Zeile 741 | Zeile 773 |
---|
return my_unserialize($data['contents']); }
|
return my_unserialize($data['contents']); }
|
| /** * @param string $title * @param mixed $contents */
|
function add_upgrade_store($title, $contents) { global $db;
$replace_array = array( "title" => $db->escape_string($title),
|
function add_upgrade_store($title, $contents) { global $db;
$replace_array = array( "title" => $db->escape_string($title),
|
"contents" => $db->escape_string(serialize($contents))
| "contents" => $db->escape_string(my_serialize($contents))
|
); $db->replace_query("upgrade_data", $replace_array, "title"); }
|
); $db->replace_query("upgrade_data", $replace_array, "title"); }
|
| /** * @param int $redo 2 means that all setting tables will be dropped and recreated * * @return array */
|
function sync_settings($redo=0) { global $db;
| function sync_settings($redo=0) { global $db;
|
Zeile 952 | Zeile 993 |
---|
return array($groupcount, $settingcount); }
|
return array($groupcount, $settingcount); }
|
| /** * @param int $redo 2 means that the tasks table will be dropped and recreated * * @return int */
|
function sync_tasks($redo=0) { global $db;
| function sync_tasks($redo=0) { global $db;
|
Zeile 1074 | Zeile 1120 |
---|
return $taskcount; }
|
return $taskcount; }
|
| /** * Write our settings to the settings file */
|
function write_settings() { global $db;
| function write_settings() { global $db;
|
Zeile 1091 | Zeile 1140 |
---|
fclose($file); } }
|
fclose($file); } }
|
?>
| |