diff -r 000000000000 -r 03b0d1493584 web/wp-admin/update-core.php --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/web/wp-admin/update-core.php Wed Dec 23 17:55:33 2009 +0000 @@ -0,0 +1,237 @@ +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 '
'; + wp_nonce_field('upgrade-core'); + echo '

'; + echo ' '; + echo ''; + echo ''; + echo '' . $download . ' '; + if ( 'en_US' != $update->locale ) + if ( !isset( $update->dismissed ) || !$update->dismissed ) + echo ''; + else + echo ''; + echo '

'; + if ( 'en_US' != $update->locale && ( !isset($wp_local_package) || $wp_local_package != $update->locale ) ) + echo '

'.__('This localized version contains both the translation and various other localization fixes. You can skip upgrading if you want to keep your current translation.').'

'; + else if ( 'en_US' == $update->locale && get_locale() != 'en_US' ) { + echo '

'.sprintf( __('You are about to install WordPress %s in English. There is a chance this upgrade will break your translation. You may prefer to wait for the localized version to be released.'), $update->current ).'

'; + } + 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 ''; + } +} + +/** + * 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 '

'; + _e('Important: before upgrading, please backup your database and files.'); + echo '

'; + + echo '

'; + _e( 'There is a new version of WordPress available for upgrade' ); + 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'); + +}?>