Make WordPress Core

Ticket #10396: 10396_b.diff

File 10396_b.diff, 2.6 KB (added by dancole, 12 years ago)

Second version, with admin check.

  • wp-admin/install.php

     
    6666                        <td><input name="weblog_title" type="text" id="weblog_title" size="25" value="<?php echo ( isset($_POST['weblog_title']) ? esc_attr($_POST['weblog_title']) : '' ); ?>" /></td>
    6767                </tr>
    6868                <tr>
     69                        <th scope="row"><label for="user_name"><?php _e('User Name'); ?></label></th>
     70                        <td>
     71                        <?php if (username_exists('admin')) { echo 'admin <input type="hidden" id="user_name" value="admin" />'; } else { ?><input name="user_name" type="text" id="user_name" size="25" value="<?php echo ( isset($_POST['user_name']) ? esc_attr($_POST['user_name']) : '' ); ?>" /><?php } ?>
     72                        </td>
     73                </tr>
     74                <tr>
    6975                        <th scope="row"><label for="admin_email"><?php _e('Your E-mail'); ?></label></th>
    7076                        <td><input name="admin_email" type="text" id="admin_email" size="25" value="<?php echo ( isset($_POST['admin_email']) ? esc_attr($_POST['admin_email']) : '' ); ?>" /><br />
    7177                        <?php _e('Double-check your email address before continuing.'); ?></td>
     
    106112                display_header();
    107113                // Fill in the data we gathered
    108114                $weblog_title = isset($_POST['weblog_title']) ? stripslashes($_POST['weblog_title']) : '';
     115                $user_name = isset($_POST['user_name']) ? stripslashes($_POST['user_name']) : '';
    109116                $admin_email = isset($_POST['admin_email']) ? stripslashes($_POST['admin_email']) : '';
    110117                $public = isset($_POST['blog_public']) ? (int) $_POST['blog_public'] : 0;
    111118                // check e-mail address
     
    114121                        // TODO: poka-yoke
    115122                        display_setup_form( __('you must provide an e-mail address.') );
    116123                        $error = true;
     124                } else if (empty($user_name)) {
     125                        // TODO: poka-yoke
     126                        display_setup_form( __('you must provide a valid user name.') );
     127                        $error = true;
    117128                } else if (!is_email($admin_email)) {
    118129                        // TODO: poka-yoke
    119130                        display_setup_form( __('that isn&#8217;t a valid e-mail address.  E-mail addresses look like: <code>username@example.com</code>') );
    120131                        $error = true;
    121132                }
     133                // Don't allow a second administrator on a re-install
     134                if (username_exists('admin')) {
     135                        $user_name = 'admin'
     136                }
    122137
    123138                if ( $error === false ) {
    124139                        $wpdb->show_errors();
    125                         $result = wp_install($weblog_title, 'admin', $admin_email, $public);
     140                        $result = wp_install($weblog_title, $user_name, $admin_email, $public);
    126141                        extract($result, EXTR_SKIP);
    127142?>
    128143
     
    133148<table class="form-table">
    134149        <tr>
    135150                <th><?php _e('Username'); ?></th>
    136                 <td><code>admin</code></td>
     151                <td><code><?php echo $user_name; ?></code></td>
    137152        </tr>
    138153        <tr>
    139154                <th><?php _e('Password'); ?></th>