WordPress.org

Plugin Directory

Changeset 553318


Ignore:
Timestamp:
06/05/12 07:57:35 (23 months ago)
Author:
cnorris23
Message:

Rework Author Slug display into radio buttons

File:
1 edited

Legend:

Unmodified
Added
Removed
  • edit-author-slug/trunk/includes/admin-functions.php

    r550158 r553318  
    4444 
    4545    if ( !empty( $user->first_name ) && !empty( $user->last_name ) ) { 
    46         $options['firstname-lastname'] = sanitize_title( $user->first_name  . ' ' . $user->last_name ); 
    47         $options['lastname-firstname'] = sanitize_title( $user->last_name . ' ' . $user->first_name ); 
     46        $options['firslast'] = sanitize_title( $user->first_name  . ' ' . $user->last_name ); 
     47        $options['lastfirst'] = sanitize_title( $user->last_name . ' ' . $user->first_name ); 
    4848    } 
    49  
    50     $options['other'] = $nicename; 
    5149 
    5250    $options = (array) apply_filters( 'ba_eas_show_user_nicename_options_list', $options ); 
    5351    $options = array_map( 'trim', $options ); 
    5452    $options = array_unique( $options ); 
     53 
     54    $checked = true; 
    5555    ?> 
    5656 
    5757    <h3><?php esc_html_e( 'Edit Author Slug', 'edit-author-slug' ); ?></h3> 
    58     <p><?php _e( 'Use the select box to auto-populate an Author Slug, or create your own.', 'edit-author-slug' ); ?> 
     58    <p><?php _e( 'Choose an Author Slug based on the above profile information, or create your own.', 'edit-author-slug' ); ?> <br /><span class="description"><?php esc_html_e( "ie. - 'user-name', 'firstname-lastname', or 'master-ninja'", 'edit-author-slug' ); ?></span></p> 
    5959    <table class="form-table"> 
    6060        <tbody><tr> 
    61             <th><label for="ba-edit-author-slug"><?php esc_html_e( 'Author Slug', 'edit-author-slug' ); ?></label></th> 
     61            <th scope="row"><?php esc_html_e( 'Author Slug', 'edit-author-slug' ); ?></th> 
    6262            <td> 
    63                 <select id="ba_eas_author_slug_select" name="ba_eas_author_slug_select"> 
    64                 <?php foreach ( (array) $options as $id => $item ) { ?> 
    65                     <option id="<?php esc_attr_e( $id ); ?>" value="<?php esc_attr_e( $item ); ?>"<?php selected( $nicename, $item ); ?>><?php esc_attr_e( $id ); ?></option> 
     63                <fieldset><legend class="screen-reader-text"><span><?php esc_html_e( 'Author Slug', 'edit-author-slug' ); ?></span></legend> 
     64                <?php foreach ( (array) $options as $id => $item ) { 
     65                    $checked_text = ''; 
     66                    if ( $item === $nicename ) { 
     67                        $checked_text = ' checked="checked"'; 
     68                        $checked = false; 
     69                    } 
     70                ?> 
     71                <label title="<?php esc_attr_e( $item ); ?>"><input type="radio" id="ba_eas_author_slug" name="ba_eas_author_slug" value="<?php esc_attr_e( $item ); ?>"<?php echo $checked_text; ?>> <span><?php esc_attr_e( $item ); ?></span></label><br> 
    6672                <?php } ?> 
    67                 </select> 
    68                 <input type="text" name="ba_eas_author_slug" id="ba_eas_author_slug" value="<?php ( isset( $user->user_nicename ) ) ? esc_attr_e( $user->user_nicename ) : ''; ?>" class="regular-text" /><br /> 
    69                 <span class="description"><?php esc_html_e( "ie. - 'user-name', 'firstname-lastname', or 'master-ninja'", 'edit-author-slug' ); ?></span> 
     73                <label title="<?php esc_attr_e( $nicename ); ?>"><input type="radio" id="ba_eas_author_slug_custom_radio" name="ba_eas_author_slug" value="\c\u\s\t\o\m"<?php checked( $checked ); ?>> <span><?php esc_html_e( 'Custom:', 'edit-author-slug' ); ?> </span></label> <input type="text" name="ba_eas_author_slug_custom" id="ba_eas_author_slug_custom" value="<?php ( isset( $user->user_nicename ) ) ? esc_attr_e( $user->user_nicename ) : ''; ?>" class="regular-text" /> 
     74                </fieldset> 
    7075            </td> 
    7176        </tr></tbody> 
     
    117122    $user = get_userdata( $user_id ); 
    118123 
     124    // Check for a custom author slug 
     125    if ( !empty( $_POST['ba_eas_author_slug'] ) && isset( $_POST['ba_eas_author_slug_custom'] ) && '\c\u\s\t\o\m' == stripslashes( $_POST['ba_eas_author_slug'] ) ) 
     126            $_POST['ba_eas_author_slug'] = $_POST['ba_eas_author_slug_custom']; 
     127 
    119128    // Setup the author slug 
    120     $author_slug = isset( $_POST['ba_eas_author_slug'] ) ? trim( $_POST['ba_eas_author_slug'] ) : ''; 
     129    $author_slug = ''; 
     130    if ( isset( $_POST['ba_eas_author_slug'] ) ) 
     131        $author_slug = trim( stripslashes( $_POST['ba_eas_author_slug'] ) ); 
    121132 
    122133    // Do we have an author slug? 
     
    406417    <!-- Edit Author Slug nicename edit --> 
    407418    <script type="text/javascript"> 
    408         jQuery(document).ready(function(){ 
    409             jQuery("#ba_eas_author_slug_select").change(function(){ 
    410                 var value = jQuery(this).val(); 
    411                 jQuery("#ba_eas_author_slug").val(value); 
     419    //<![CDATA[ 
     420        jQuery(document).ready(function($){ 
     421            $("input[name='ba_eas_author_slug']").click(function(){ 
     422                if ( "ba_eas_author_slug_custom_radio" != $(this).attr("id") ) 
     423                    $("input[name='ba_eas_author_slug_custom']").val( $(this).val() ).siblings('.example').text( $(this).siblings('span').text() ); 
    412424            }); 
     425            $("input[name='ba_eas_author_slug_custom']").focus(function(){ 
     426                $("#ba_eas_author_slug_custom_radio").attr("checked", "checked"); 
     427            }); 
     428 
    413429        }); 
     430    //]]> 
    414431    </script> 
    415432    <!-- end Edit Author Slug nicename edit --> 
     
    498515            <?php do_settings_sections( 'edit-author-slug' ); ?> 
    499516 
    500             <p class="submit"> 
    501                 <input type="submit" name="submit" class="button-primary" value="<?php _e( 'Save Changes', 'edit-author-slug' ); ?>" /> 
    502             </p> 
     517            <?php submit_button(); ?> 
    503518        </form> 
    504519    </div> 
     
    608623    $structure = get_option( '_ba_eas_default_user_nicename', 'username' ); 
    609624 
     625    if ( empty( $structure ) ) 
     626        $structure = 'username'; 
     627 
    610628    $options = apply_filters( 'ba_eas_default_user_nicename_options_list', array( 
    611         'username'  => 'Default (Username)', 
    612         'nickname'  => 'Nickname', 
    613         'firstname' => 'First Name', 
    614         'lastname'  => 'Last Name', 
    615         'firstlast' => 'First Name + Last Name', 
    616         'lastfirst' => 'Last Name + First Name', 
     629        'username'  => __( 'username (Default)', 'edit-author-slug' ), 
     630        'nickname'  => __( 'nickname', 'edit-author-slug' ), 
     631        'firstname' => __( 'firstname', 'edit-author-slug' ), 
     632        'lastname'  => __( 'lastname', 'edit-author-slug' ), 
     633        'firstlast' => __( 'firstname-lastname', 'edit-author-slug' ), 
     634        'lastfirst' => __( 'lastname-firstname', 'edit-author-slug' ), 
    617635    ) ); 
    618636 
    619     $options = (array) $options; 
     637    $options = (array) apply_filters( 'ba_eas_default_user_nicename_options_list', $options ); 
    620638    $options = array_map( 'trim', $options ); 
    621639    $options = array_unique( $options ); 
Note: See TracChangeset for help on using the changeset viewer.