<?php
+/**
+ * Upgrade WordPress Page.
+ *
+ * @package WordPress
+ * @subpackage Administration
+ */
+
+/**
+ * We are upgrading WordPress.
+ *
+ * @since unknown
+ * @var bool
+ */
define('WP_INSTALLING', true);
-if (!file_exists('../wp-config.php')) die("There doesn't seem to be a wp-config.php file. Double check that you updated wp-config-sample.php with the proper database connection information and renamed it to wp-config.php.");
-require('../wp-config.php');
+
+/** Load WordPress Bootstrap */
+require('../wp-load.php');
+
timer_start();
-require_once(ABSPATH . '/wp-admin/upgrade-functions.php');
+require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
-$step = $_GET['step'];
-if (!$step) $step = 0;
-header( 'Content-Type: text/html; charset=utf-8' );
+if ( isset($_GET['step']) )
+ $step = $_GET['step'];
+else
+ $step = 0;
+
+// Do it. No output.
+if ( 'upgrade_db' === $step ) {
+ wp_upgrade();
+ die('0');
+}
+
+$step = (int) $step;
+
+@header('Content-Type: ' . get_option('html_type') . '; charset=' . get_option('blog_charset'));
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
+<html xmlns="http://www.w3.org/1999/xhtml" <?php language_attributes(); ?>>
<head>
- <title>WordPress › Upgrade</title>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <style media="screen" type="text/css">
- <!--
- html {
- background: #eee;
- }
- body {
- background: #fff;
- color: #000;
- font-family: Georgia, "Times New Roman", Times, serif;
- margin-left: 20%;
- margin-right: 20%;
- padding: .2em 2em;
- }
-
- h1 {
- color: #006;
- font-size: 18px;
- font-weight: lighter;
- }
-
- h2 {
- font-size: 16px;
- }
-
- p, li, dt {
- line-height: 140%;
- padding-bottom: 2px;
- }
-
- ul, ol {
- padding: 5px 5px 5px 20px;
- }
- #logo {
- margin-bottom: 2em;
- }
-.step a, .step input {
- font-size: 2em;
-}
-.step, th {
- text-align: right;
-}
-#footer {
-text-align: center; border-top: 1px solid #ccc; padding-top: 1em; font-style: italic;
-}
- -->
- </style>
+ <meta http-equiv="Content-Type" content="<?php bloginfo('html_type'); ?>; charset=<?php echo get_option('blog_charset'); ?>" />
+ <title><?php _e('WordPress › Upgrade'); ?></title>
+ <?php wp_admin_css( 'install', true ); ?>
</head>
<body>
<h1 id="logo"><img alt="WordPress" src="images/wordpress-logo.png" /></h1>
-<?php
-switch($step) {
+<?php if ( get_option('db_version') == $wp_db_version || !is_blog_installed()) : ?>
+
+<h2><?php _e('No Upgrade Required'); ?></h2>
+<p><?php _e('Your WordPress database is already up-to-date!'); ?></p>
+<p class="step"><a class="button" href="<?php echo get_option('home'); ?>/"><?php _e('Continue'); ?></a></p>
+
+<?php else :
+switch($step) :
case 0:
- $goback = wp_specialchars(wp_get_referer());
-?>
-<p><?php _e('This file upgrades you from any previous version of WordPress to the latest. It may take a while though, so be patient.'); ?></p>
- <h2 class="step"><a href="upgrade.php?step=1&backto=<?php echo $goback; ?>"><?php _e('Upgrade WordPress »'); ?></a></h2>
+ $goback = stripslashes(wp_get_referer());
+ $goback = clean_url($goback, null, 'url');
+ $goback = urlencode($goback);
+?>
+<h2><?php _e('Database Upgrade Required'); ?></h2>
+<p><?php _e('Your WordPress database is out-of-date, and must be upgraded before you can continue.'); ?></p>
+<p><?php _e('The upgrade process may take a while, so please be patient.'); ?></p>
+<p class="step"><a class="button" href="upgrade.php?step=1&backto=<?php echo $goback; ?>"><?php _e('Upgrade WordPress'); ?></a></p>
<?php
- break;
-
+ break;
case 1:
- $wp_current_db_version = __get_option('db_version');
- if ( $wp_db_version != $wp_current_db_version ) {
- wp_cache_flush();
- make_db_current_silent();
- upgrade_all();
- wp_cache_flush();
- }
+ wp_upgrade();
- if ( empty( $_GET['backto'] ) )
- $backto = __get_option('home');
- else
- $backto = wp_specialchars( $_GET['backto'] , 1 );
-?>
-<h2><?php _e('Step 1'); ?></h2>
- <p><?php printf(__("There's actually only one step. So if you see this, you're done. <a href='%s'>Have fun</a>!"), $backto); ?></p>
+ if ( empty( $_GET['backto'] ) )
+ $backto = __get_option('home') . '/';
+ else {
+ $backto = stripslashes(urldecode($_GET['backto']));
+ $backto = clean_url($backto, null, 'url');
+ }
+?>
+<h2><?php _e('Upgrade Complete'); ?></h2>
+ <p><?php _e('Your WordPress database has been successfully upgraded!'); ?></p>
+ <p class="step"><a class="button" href="<?php echo $backto; ?>"><?php _e('Continue'); ?></a></p>
<!--
<pre>
-->
<?php
- break;
-}
-?>
+ break;
+endswitch;
+endif;
+?>
</body>
</html>