X-Git-Url: https://scripts.mit.edu/gitweb/autoinstalls/wordpress.git/blobdiff_plain/138998bbd8f7a1ac38b2f1eacbdf7cd522be4b13..e3ff8f35458a959c1879c0a4976701ed8dcfe651:/wp-admin/install.php diff --git a/wp-admin/install.php b/wp-admin/install.php index 0e30ec0c..ed9d06d1 100644 --- a/wp-admin/install.php +++ b/wp-admin/install.php @@ -141,7 +141,7 @@ function display_setup_form( $error = null ) {
- @@ -211,7 +211,12 @@ function display_setup_form( $error = null ) { // Let's check to make sure WP isn't already installed. if ( is_blog_installed() ) { display_header(); - die( '

' . __( 'Already Installed' ) . '

' . __( 'You appear to have already installed WordPress. To reinstall please clear your old database tables first.' ) . '

' . __( 'Log In' ) . '

' ); + die( + '

' . __( 'Already Installed' ) . '

' . + '

' . __( 'You appear to have already installed WordPress. To reinstall please clear your old database tables first.' ) . '

' . + '

' . __( 'Log In' ) . '

' . + '' + ); } /** @@ -227,12 +232,16 @@ $mysql_version = $wpdb->db_version(); $php_compat = version_compare( $php_version, $required_php_version, '>=' ); $mysql_compat = version_compare( $mysql_version, $required_mysql_version, '>=' ) || file_exists( WP_CONTENT_DIR . '/db.php' ); -if ( !$mysql_compat && !$php_compat ) +if ( !$mysql_compat && !$php_compat ) { + /* translators: 1: WordPress version number, 2: Minimum required PHP version number, 3: Minimum required MySQL version number, 4: Current PHP version number, 5: Current MySQL version number */ $compat = sprintf( __( 'You cannot install because WordPress %1$s requires PHP version %2$s or higher and MySQL version %3$s or higher. You are running PHP version %4$s and MySQL version %5$s.' ), $wp_version, $required_php_version, $required_mysql_version, $php_version, $mysql_version ); -elseif ( !$php_compat ) +} elseif ( !$php_compat ) { + /* translators: 1: WordPress version number, 2: Minimum required PHP version number, 3: Current PHP version number */ $compat = sprintf( __( 'You cannot install because WordPress %1$s requires PHP version %2$s or higher. You are running version %3$s.' ), $wp_version, $required_php_version, $php_version ); -elseif ( !$mysql_compat ) +} elseif ( !$mysql_compat ) { + /* translators: 1: WordPress version number, 2: Minimum required MySQL version number, 3: Current MySQL version number */ $compat = sprintf( __( 'You cannot install because WordPress %1$s requires MySQL version %2$s or higher. You are running version %3$s.' ), $wp_version, $required_mysql_version, $mysql_version ); +} if ( !$mysql_compat || !$php_compat ) { display_header(); @@ -241,13 +250,27 @@ if ( !$mysql_compat || !$php_compat ) { if ( ! is_string( $wpdb->base_prefix ) || '' === $wpdb->base_prefix ) { display_header(); - die( '

' . __( 'Configuration Error' ) . '

' . __( 'Your wp-config.php file has an empty database table prefix, which is not supported.' ) . '

' ); + die( + '

' . __( 'Configuration Error' ) . '

' . + '

' . sprintf( + /* translators: %s: wp-config.php */ + __( 'Your %s file has an empty database table prefix, which is not supported.' ), + 'wp-config.php' + ) . '

' + ); } // Set error message if DO_NOT_UPGRADE_GLOBAL_TABLES isn't set as it will break install. if ( defined( 'DO_NOT_UPGRADE_GLOBAL_TABLES' ) ) { display_header(); - die( '

' . __( 'Configuration Error' ) . '

' . __( 'The constant DO_NOT_UPGRADE_GLOBAL_TABLES cannot be defined when installing WordPress.' ) . '

' ); + die( + '

' . __( 'Configuration Error' ) . '

' . + '

' . sprintf( + /* translators: %s: DO_NOT_UPGRADE_GLOBAL_TABLES */ + __( 'The constant %s cannot be defined when installing WordPress.' ), + 'DO_NOT_UPGRADE_GLOBAL_TABLES' + ) . '

' + ); } /** @@ -261,10 +284,12 @@ if ( ! empty( $_REQUEST['language'] ) ) { $language = $GLOBALS['wp_local_package']; } +$scripts_to_print = array( 'jquery' ); + switch($step) { case 0: // Step 0 - if ( wp_can_install_language_pack() && empty( $language ) && ( $languages = wp_get_available_translations() ) ) { + $scripts_to_print[] = 'language-chooser'; display_header( 'language-chooser' ); echo '
'; wp_install_language_form( $languages ); @@ -283,6 +308,8 @@ switch($step) { } } + $scripts_to_print[] = 'user-profile'; + display_header(); ?>

@@ -305,7 +332,8 @@ switch($step) { if ( ! empty( $wpdb->error ) ) wp_die( $wpdb->error->get_error_message() ); - display_header(); + $scripts_to_print[] = 'user-profile'; + // Fill in the data we gathered $weblog_title = isset( $_POST['weblog_title'] ) ? trim( wp_unslash( $_POST['weblog_title'] ) ) : ''; $user_name = isset($_POST['user_name']) ? trim( wp_unslash( $_POST['user_name'] ) ) : ''; @@ -318,21 +346,26 @@ switch($step) { $error = false; if ( empty( $user_name ) ) { // TODO: poka-yoke + display_header(); display_setup_form( __( 'Please provide a valid username.' ) ); $error = true; } elseif ( $user_name != sanitize_user( $user_name, true ) ) { + display_header(); display_setup_form( __( 'The username you provided has invalid characters.' ) ); $error = true; } elseif ( $admin_password != $admin_password_check ) { // TODO: poka-yoke + display_header(); display_setup_form( __( 'Your passwords do not match. Please try again.' ) ); $error = true; } elseif ( empty( $admin_email ) ) { // TODO: poka-yoke + display_header(); display_setup_form( __( 'You must provide an email address.' ) ); $error = true; } elseif ( ! is_email( $admin_email ) ) { // TODO: poka-yoke + display_header(); display_setup_form( __( 'Sorry, that isn’t a valid email address. Email addresses look like username@example.com.' ) ); $error = true; } @@ -340,11 +373,21 @@ switch($step) { if ( $error === false ) { $wpdb->show_errors(); $result = wp_install( $weblog_title, $user_name, $admin_email, $public, '', wp_slash( $admin_password ), $loaded_language ); + + // Log the user in and send them to wp-admin: + if ( ! headers_sent() ) { + wp_set_auth_cookie( $result['user_id'], true, is_ssl() ); + wp_redirect( admin_url() ); + exit; + } + + // If headers have already been sent, fall back to a "Success!" message: + display_header(); ?>

-

+

@@ -368,12 +411,15 @@ switch($step) { } break; } -if ( !wp_is_mobile() ) { -?> + +if ( ! wp_is_mobile() ) { + ?> - - - +