diff -r a4642baaf829 -r 4d4862461b8d web/wp-admin/update-core.php
--- a/web/wp-admin/update-core.php Tue Feb 02 14:45:47 2010 +0000
+++ b/web/wp-admin/update-core.php Tue Feb 02 15:44:16 2010 +0000
@@ -1,237 +1,391 @@
-locale && 'en_US' == get_locale() ) ?
- $update->current : sprintf("%s–%s", $update->current, $update->locale);
- $current = false;
- if ( !isset($update->response) || 'latest' == $update->response )
- $current = true;
- $submit = __('Upgrade Automatically');
- $form_action = 'update-core.php?action=do-core-upgrade';
- if ( 'development' == $update->response ) {
- $message = __('You are using a development version of WordPress. You can upgrade to the latest nightly build automatically or download the nightly build and install it manually:');
- $download = __('Download nightly build');
- } else {
- if ( $current ) {
- $message = sprintf(__('You have the latest version of WordPress. You do not need to upgrade. However, if you want to re-install version %s, you can do so automatically or download the package and re-install manually:'), $version_string);
- $submit = __('Re-install Automatically');
- $form_action = 'update-core.php?action=do-core-reinstall';
- } else {
- $message = sprintf(__('You can upgrade to version %s automatically or download the package and install it manually:'), $version_string);
- }
- $download = sprintf(__('Download %s'), $version_string);
- }
-
- echo '
';
- echo $message;
- echo '
';
- echo '';
-
-}
-
-function dismissed_updates() {
- $dismissed = get_core_updates( array( 'dismissed' => true, 'available' => false ) );
- if ( $dismissed ) {
-
- $show_text = esc_js(__('Show hidden updates'));
- $hide_text = esc_js(__('Hide hidden updates'));
- ?>
-
- '.__('Show hidden updates').'';
- echo '';
- foreach( (array) $dismissed as $update) {
- echo '- ';
- list_core_update( $update );
- echo '
';
- }
- echo '
';
- }
-}
-
-/**
- * Display upgrade WordPress for downloading latest or upgrading automatically form.
- *
- * @since 2.7
- *
- * @return null
- */
-function core_upgrade_preamble() {
- $updates = get_core_updates();
-?>
-
-
-
-response) || 'latest' == $updates[0]->response ) {
- echo '
';
- _e('You have the latest version of WordPress. You do not need to upgrade');
- echo '
';
- } else {
- echo '
';
-
- echo '
';
- _e( 'There is a new version of WordPress available for upgrade' );
- echo '
';
- }
-
- echo '
';
- $alternate = true;
- foreach( (array) $updates as $update ) {
- $class = $alternate? ' class="alternate"' : '';
- $alternate = !$alternate;
- echo "- ";
- list_core_update( $update );
- echo '
';
- }
- echo '
';
- dismissed_updates();
- echo '
';
-}
-
-
-/**
- * Upgrade WordPress core display.
- *
- * @since 2.7
- *
- * @return null
- */
-function do_core_upgrade( $reinstall = false ) {
- global $wp_filesystem;
-
- if ( $reinstall )
- $url = 'update-core.php?action=do-core-reinstall';
- else
- $url = 'update-core.php?action=do-core-upgrade';
- $url = wp_nonce_url($url, 'upgrade-core');
- if ( false === ($credentials = request_filesystem_credentials($url, '', false, ABSPATH)) )
- return;
-
- $version = isset( $_POST['version'] )? $_POST['version'] : false;
- $locale = isset( $_POST['locale'] )? $_POST['locale'] : 'en_US';
- $update = find_core_update( $version, $locale );
- if ( !$update )
- return;
-
-
- if ( ! WP_Filesystem($credentials, ABSPATH) ) {
- request_filesystem_credentials($url, '', true, ABSPATH); //Failed to connect, Error and request again
- return;
- }
-?>
-
-
-
-errors->get_error_code() ) {
- foreach ( $wp_filesystem->errors->get_error_messages() as $message )
- show_message($message);
- echo '';
- return;
- }
-
- if ( $reinstall )
- $update->response = 'reinstall';
-
- $result = wp_update_core($update, 'show_message');
-
- if ( is_wp_error($result) ) {
- show_message($result);
- if ('up_to_date' != $result->get_error_code() )
- show_message( __('Installation Failed') );
- } else {
- show_message( __('WordPress upgraded successfully') );
- }
- echo '';
-}
-
-function do_dismiss_core_update() {
- $version = isset( $_POST['version'] )? $_POST['version'] : false;
- $locale = isset( $_POST['locale'] )? $_POST['locale'] : 'en_US';
- $update = find_core_update( $version, $locale );
- if ( !$update )
- return;
- dismiss_core_update( $update );
- wp_redirect( wp_nonce_url('update-core.php?action=upgrade-core', 'upgrade-core') );
-}
-
-function do_undismiss_core_update() {
- $version = isset( $_POST['version'] )? $_POST['version'] : false;
- $locale = isset( $_POST['locale'] )? $_POST['locale'] : 'en_US';
- $update = find_core_update( $version, $locale );
- if ( !$update )
- return;
- undismiss_core_update( $version, $locale );
- wp_redirect( wp_nonce_url('update-core.php?action=upgrade-core', 'upgrade-core') );
-}
-
-$action = isset($_GET['action']) ? $_GET['action'] : 'upgrade-core';
-
-if ( 'upgrade-core' == $action ) {
- wp_version_check();
- $title = __('Upgrade WordPress');
- $parent_file = 'tools.php';
- require_once('admin-header.php');
- core_upgrade_preamble();
- include('admin-footer.php');
-} elseif ( 'do-core-upgrade' == $action || 'do-core-reinstall' == $action ) {
- check_admin_referer('upgrade-core');
- $title = __('Upgrade WordPress');
- $parent_file = 'tools.php';
- // do the (un)dismiss actions before headers,
- // so that they can redirect
- if ( isset( $_POST['dismiss'] ) )
- do_dismiss_core_update();
- elseif ( isset( $_POST['undismiss'] ) )
- do_undismiss_core_update();
- require_once('admin-header.php');
- if ( 'do-core-reinstall' == $action )
- $reinstall = true;
- else
- $reinstall = false;
- if ( isset( $_POST['upgrade'] ) )
- do_core_upgrade($reinstall);
- include('admin-footer.php');
-
-}?>
+locale && 'en_US' == get_locale() ) ?
+ $update->current : sprintf("%s–%s", $update->current, $update->locale);
+ $current = false;
+ if ( !isset($update->response) || 'latest' == $update->response )
+ $current = true;
+ $submit = __('Upgrade Automatically');
+ $form_action = 'update-core.php?action=do-core-upgrade';
+ if ( 'development' == $update->response ) {
+ $message = __('You are using a development version of WordPress. You can upgrade to the latest nightly build automatically or download the nightly build and install it manually:');
+ $download = __('Download nightly build');
+ } else {
+ if ( $current ) {
+ $message = sprintf(__('You have the latest version of WordPress. You do not need to upgrade. However, if you want to re-install version %s, you can do so automatically or download the package and re-install manually:'), $version_string);
+ $submit = __('Re-install Automatically');
+ $form_action = 'update-core.php?action=do-core-reinstall';
+ } else {
+ $message = sprintf(__('You can upgrade to version %s automatically or download the package and install it manually:'), $version_string);
+ }
+ $download = sprintf(__('Download %s'), $version_string);
+ }
+
+ echo '';
+ echo $message;
+ echo '
';
+ echo '';
+
+}
+
+function dismissed_updates() {
+ $dismissed = get_core_updates( array( 'dismissed' => true, 'available' => false ) );
+ if ( $dismissed ) {
+
+ $show_text = esc_js(__('Show hidden updates'));
+ $hide_text = esc_js(__('Hide hidden updates'));
+ ?>
+
+ '.__('Show hidden updates').'';
+ echo '';
+ foreach( (array) $dismissed as $update) {
+ echo '- ';
+ list_core_update( $update );
+ echo '
';
+ }
+ echo '
';
+ }
+}
+
+/**
+ * Display upgrade WordPress for downloading latest or upgrading automatically form.
+ *
+ * @since 2.7
+ *
+ * @return null
+ */
+function core_upgrade_preamble() {
+ global $upgrade_error;
+
+ $updates = get_core_updates();
+?>
+
+
+
+
';
+ _e('Please select one or more plugins to upgrade.');
+ echo '
';
+ }
+
+ if ( !isset($updates[0]->response) || 'latest' == $updates[0]->response ) {
+ echo '';
+ _e('You have the latest version of WordPress. You do not need to upgrade');
+ echo '
';
+ } else {
+ echo '';
+
+ echo '';
+ _e( 'There is a new version of WordPress available for upgrade' );
+ echo '
';
+ }
+
+ echo '';
+ $alternate = true;
+ foreach( (array) $updates as $update ) {
+ $class = $alternate? ' class="alternate"' : '';
+ $alternate = !$alternate;
+ echo "- ";
+ list_core_update( $update );
+ echo '
';
+ }
+ echo '
';
+ dismissed_updates();
+
+ list_plugin_updates();
+ //list_theme_updates();
+ do_action('core_upgrade_preamble');
+ echo '';
+}
+
+function list_plugin_updates() {
+ global $wp_version;
+
+ $cur_wp_version = preg_replace('/-.*$/', '', $wp_version);
+
+ require_once(ABSPATH . 'wp-admin/includes/plugin-install.php');
+ $plugins = get_plugin_updates();
+ if ( empty($plugins) )
+ return;
+ $form_action = 'update-core.php?action=do-plugin-upgrade';
+
+ $core_updates = get_core_updates();
+ if ( !isset($core_updates[0]->response) || 'latest' == $core_updates[0]->response || 'development' == $core_updates[0]->response || version_compare( $core_updates[0]->current, $cur_wp_version, '=') )
+ $core_update_version = false;
+ else
+ $core_update_version = $core_updates[0]->current;
+ ?>
+
+
+
+
+
+
+
+
+
+
+errors->get_error_code() ) {
+ foreach ( $wp_filesystem->errors->get_error_messages() as $message )
+ show_message($message);
+ echo '';
+ return;
+ }
+
+ if ( $reinstall )
+ $update->response = 'reinstall';
+
+ $result = wp_update_core($update, 'show_message');
+
+ if ( is_wp_error($result) ) {
+ show_message($result);
+ if ('up_to_date' != $result->get_error_code() )
+ show_message( __('Installation Failed') );
+ } else {
+ show_message( __('WordPress upgraded successfully') );
+ }
+ echo '';
+}
+
+function do_dismiss_core_update() {
+ $version = isset( $_POST['version'] )? $_POST['version'] : false;
+ $locale = isset( $_POST['locale'] )? $_POST['locale'] : 'en_US';
+ $update = find_core_update( $version, $locale );
+ if ( !$update )
+ return;
+ dismiss_core_update( $update );
+ wp_redirect( wp_nonce_url('update-core.php?action=upgrade-core', 'upgrade-core') );
+}
+
+function do_undismiss_core_update() {
+ $version = isset( $_POST['version'] )? $_POST['version'] : false;
+ $locale = isset( $_POST['locale'] )? $_POST['locale'] : 'en_US';
+ $update = find_core_update( $version, $locale );
+ if ( !$update )
+ return;
+ undismiss_core_update( $version, $locale );
+ wp_redirect( wp_nonce_url('update-core.php?action=upgrade-core', 'upgrade-core') );
+}
+
+function no_update_actions($actions) {
+ return '';
+}
+
+function do_plugin_upgrade() {
+ include_once ABSPATH . 'wp-admin/includes/class-wp-upgrader.php';
+
+ if ( isset($_GET['plugins']) ) {
+ $plugins = explode(',', $_GET['plugins']);
+ } elseif ( isset($_POST['checked']) ) {
+ $plugins = (array) $_POST['checked'];
+ } else {
+ // Nothing to do.
+ return;
+ }
+ $url = 'update-core.php?action=do-plugin-upgrade&plugins=' . urlencode(join(',', $plugins));
+ $title = __('Upgrade Plugins');
+ $nonce = 'upgrade-core';
+ $upgrader = new Plugin_Upgrader( new Plugin_Upgrader_Skin( compact('title', 'nonce', 'url', 'plugin') ) );
+ $upgrader->bulk_upgrade($plugins);
+}
+
+$action = isset($_GET['action']) ? $_GET['action'] : 'upgrade-core';
+
+$upgrade_error = false;
+if ( 'do-plugin-upgrade' == $action && !isset($_GET['plugins']) && !isset($_POST['checked']) ) {
+ $upgrade_error = true;
+ $action = 'upgrade-core';
+}
+
+$title = __('Upgrade WordPress');
+$parent_file = 'tools.php';
+
+if ( 'upgrade-core' == $action ) {
+ wp_version_check();
+ require_once('admin-header.php');
+ core_upgrade_preamble();
+} elseif ( 'do-core-upgrade' == $action || 'do-core-reinstall' == $action ) {
+ check_admin_referer('upgrade-core');
+ // do the (un)dismiss actions before headers,
+ // so that they can redirect
+ if ( isset( $_POST['dismiss'] ) )
+ do_dismiss_core_update();
+ elseif ( isset( $_POST['undismiss'] ) )
+ do_undismiss_core_update();
+ require_once('admin-header.php');
+ if ( 'do-core-reinstall' == $action )
+ $reinstall = true;
+ else
+ $reinstall = false;
+ if ( isset( $_POST['upgrade'] ) )
+ do_core_upgrade($reinstall);
+} elseif ( 'do-plugin-upgrade' == $action ) {
+ check_admin_referer('upgrade-core');
+ require_once('admin-header.php');
+ do_plugin_upgrade();
+}
+
+include('admin-footer.php');