Make WordPress Core

Ticket #32589: 32589.8.patch

File 32589.8.patch, 6.5 KB (added by johnjamesjacoby, 7 years ago)

UX improvements and bug fixes

  • src/wp-admin/js/user-profile.js

     
    77                        pw_field2 = $('#pass2'),
    88                        pw_togglebtn = pw_new.find('.wp-hide-pw'),
    99                        pw_generatebtn = pw_new.find('button.wp-generate-pw'),
     10                        pw_cancelbtn = pw_new.find('button.wp-cancel-pw'),
    1011                        pw_2 = $('.user-pass2-wrap'),
    1112                        parentform = pw_new.closest('form'),
    1213                        pw_strength = $('#pass-strength-result'),
    1314                        pw_submitbtn_edit = $('#submit'),
    1415                        pw_submitbtn_new = $( '#createusersub' ),
    1516                        pw_checkbox = $('.pw-checkbox'),
    16                         pw_weak = $('.pw-weak')
     17                        pw_weak = $('.pw-weak'),
     18                        pw_update_lock = false
    1719                ;
    1820
     21                var beforeunload = function() {
     22                        if ( true === pw_update_lock ) {
     23                                return userProfileL10n.warn;
     24                        }
     25                }
     26
    1927                var generatePassword = window.generatePassword = function() {
    2028                        if ( typeof zxcvbn !== 'function' ) {
    2129                                setTimeout( generatePassword, 50 );
     
    8896                        pw_generatebtn.hide();
    8997                        pw_line.show();
    9098                        generatePassword();
     99                        pw_update_lock = true;
    91100                });
    92101
     102                pw_line.on( 'click', 'button.wp-cancel-pw', function(){
     103                        pw_generatebtn.show();
     104                        pw_line.hide();
     105                        pw_update_lock = false;
     106                });
     107
    93108                pw_togglebtn.on( 'click', function() {
    94109                        var show = pw_togglebtn.attr( 'data-toggle' );
    95110                        if ( show == 1 ) {
     
    108123                        pw_field.focus();
    109124                        pw_field[0].setSelectionRange(100, 100);
    110125                });
     126
     127                $( window ).on( 'beforeunload', beforeunload );
    111128        });
    112129
    113130        function check_pass_strength() {
  • src/wp-admin/user-edit.php

     
    452452        <td><textarea name="description" id="description" rows="5" cols="30"><?php echo $profileuser->description; // textarea_escaped ?></textarea>
    453453        <p class="description"><?php _e('Share a little biographical information to fill out your profile. This may be shown publicly.'); ?></p></td>
    454454</tr>
    455 
     455</table>
    456456<?php
    457457/** This filter is documented in wp-admin/user-new.php */
    458458$show_password_fields = apply_filters( 'show_password_fields', true, $profileuser );
    459459if ( $show_password_fields ) :
    460460?>
     461<h3><?php _e('Account Management') ?></h3>
     462<table class="form-table">
    461463<tr id="password" class="user-pass1-wrap">
    462464        <th><label for="pass1"><?php _e( 'New Password' ); ?></label></th>
    463465        <td>
    464466                <input class="hidden" value=" " /><!-- #24364 workaround -->
    465                 <button type="button" class="button button-secondary wp-generate-pw hide-if-no-js"><?php _e( 'Generate new password' ); ?></button>
     467                <button type="button" class="button button-secondary wp-generate-pw hide-if-no-js"><?php _e( 'Generate Password' ); ?></button>
    466468                <div class="wp-pwd hide-if-js">
    467469                        <input type="password" name="pass1" id="pass1" class="regular-text" value="" autocomplete="off" data-pw="<?php echo esc_attr( wp_generate_password( 24 ) ); ?>" />
    468470                        <button type="button" class="button button-secondary wp-hide-pw hide-if-no-js" data-toggle="0">
    469471                                <span class="dashicons dashicons-visibility"></span>
    470472                                <span class="text"><?php _e( 'Hide' ); ?></span>
    471473                        </button>
     474                        <button type="button" class="button button-secondary wp-cancel-pw hide-if-no-js" data-toggle="0">
     475                                <span class="text"><?php _e( 'Cancel' ); ?></span>
     476                        </button>
    472477                        <div style="display:none" id="pass-strength-result"></div>
    473478                </div>
    474479        </td>
     
    483488<tr class="pw-weak">
    484489        <th><?php _e( 'Confirm Password' ); ?></th>
    485490        <td>
    486                 <label for="pw_weak">
     491                <label>
    487492                        <input type="checkbox" name="pw_weak" class="pw-checkbox" id="pw-weak" />
    488493                        <?php _e( 'Confirm use of weak password' ); ?>
    489494                </label>
     
    494499<?php
    495500if ( IS_PROFILE_PAGE && count( $sessions->get_all() ) === 1 ) : ?>
    496501        <tr class="user-sessions-wrap hide-if-no-js">
    497                 <th>&nbsp;</th>
     502                <th><?php _e( 'Sessions' ); ?></th>
    498503                <td aria-live="assertive">
    499                         <div class="destroy-sessions"><button type="button" disabled class="button button-secondary"><?php _e( 'Log Out of All Other Sessions' ); ?></button></div>
     504                        <div class="destroy-sessions"><button type="button" disabled class="button button-secondary"><?php _e( 'Sign-out Everywhere' ); ?></button></div>
    500505                        <p class="description">
    501506                                <?php _e( 'You are only logged in at this location.' ); ?>
    502507                        </p>
     
    504509        </tr>
    505510<?php elseif ( IS_PROFILE_PAGE && count( $sessions->get_all() ) > 1 ) : ?>
    506511        <tr class="user-sessions-wrap hide-if-no-js">
    507                 <th>&nbsp;</th>
     512                <th><?php _e( 'Sessions' ); ?></th>
    508513                <td aria-live="assertive">
    509                         <div class="destroy-sessions"><button type="button" class="button button-secondary" id="destroy-sessions"><?php _e( 'Log Out of All Other Sessions' ); ?></button></div>
     514                        <div class="destroy-sessions"><button type="button" class="button button-secondary" id="destroy-sessions"><?php _e( 'Sign-out Everywhere' ); ?></button></div>
    510515                        <p class="description">
    511516                                <?php _e( 'Left your account logged in at a public computer? Lost your phone? This will log you out everywhere except your current browser.' ); ?>
    512517                        </p>
  • src/wp-admin/user-new.php

     
    407407                                        <span class="dashicons dashicons-visibility"></span>
    408408                                        <span class="text"><?php _e( 'Hide' ); ?></span>
    409409                                </button>
     410                                <button type="button" class="button button-secondary wp-cancel-pw hide-if-no-js" data-toggle="0">
     411                                        <span class="text"><?php _e( 'Cancel' ); ?></span>
     412                                </button>
    410413                                <div style="display:none" id="pass-strength-result"></div>
    411414                        </div>
    412415                        <p><span class="description"><?php _e( 'A password reset link will be sent to the user via email.' ); ?></span></p>
     
    421424        <tr class="pw-weak">
    422425                <th><?php _e( 'Confirm Password' ); ?></th>
    423426                <td>
    424                         <label for="pw-weak">
    425                                 <input type="checkbox" name="pw-weak" class="pw-checkbox" id="pw-weak" />
     427                        <label>
     428                                <input type="checkbox" name="pw_weak" class="pw-checkbox" id="pw-weak" />
    426429                                <?php _e( 'Confirm use of weak password' ); ?>
    427430                        </label>
    428431                </td>
  • src/wp-includes/script-loader.php

     
    374374
    375375        $scripts->add( 'user-profile', "/wp-admin/js/user-profile$suffix.js", array( 'jquery', 'password-strength-meter', 'wp-util' ), false, 1 );
    376376        did_action( 'init' ) && $scripts->localize( 'user-profile', 'userProfileL10n', array(
    377                 'show' => __( 'Show' ),
    378                 'hide' => __( 'Hide' ),
     377                'show'   => __( 'Show' ),
     378                'hide'   => __( 'Hide' ),
     379                'cancel' => __( 'Cancel' ),
     380                'warn'   => __( 'Doing so now will leave your password unchanged.' ),
    379381        ) );
    380382
    381383        $scripts->add( 'language-chooser', "/wp-admin/js/language-chooser$suffix.js", array( 'jquery' ), false, 1 );