Ticket #25348: 25348.3.diff
File 25348.3.diff, 4.0 KB (added by , 11 years ago) |
---|
-
src/wp-admin/includes/ajax-actions.php
197 197 $return = array(); 198 198 199 199 // Check the type of request 200 if ( isset( $_REQUEST['autocomplete_type'] ) ) 200 // Current allowed values are `add` and `search` 201 if ( isset( $_REQUEST['autocomplete_type'] ) && 'search' === $_REQUEST['autocomplete_type'] ) { 201 202 $type = $_REQUEST['autocomplete_type']; 202 else203 } else { 203 204 $type = 'add'; 205 } 204 206 207 // Check the desired field for value 208 // Current allowed values are `user_email` and `user_login` 209 if ( isset( $_REQUEST['autocomplete_field'] ) && 'user_email' === $_REQUEST['autocomplete_field'] ) { 210 $field = $_REQUEST['autocomplete_field']; 211 } else { 212 $field = 'user_login'; 213 } 214 205 215 // Exclude current users of this blog 206 if ( isset( $_REQUEST['site_id'] ) ) 216 if ( isset( $_REQUEST['site_id'] ) ) { 207 217 $id = absint( $_REQUEST['site_id'] ); 208 else218 } else { 209 219 $id = get_current_blog_id(); 220 } 210 221 211 222 $include_blog_users = ( $type == 'search' ? get_users( array( 'blog_id' => $id, 'fields' => 'ID' ) ) : array() ); 212 223 $exclude_blog_users = ( $type == 'add' ? get_users( array( 'blog_id' => $id, 'fields' => 'ID' ) ) : array() ); … … 223 234 $return[] = array( 224 235 /* translators: 1: user_login, 2: user_email */ 225 236 'label' => sprintf( __( '%1$s (%2$s)' ), $user->user_login, $user->user_email ), 226 'value' => $user-> user_login,237 'value' => $user->$field, 227 238 ); 228 239 } 229 240 -
src/wp-admin/js/user-suggest.js
8 8 position.my = 'right top'; 9 9 position.at = 'right bottom'; 10 10 } 11 $( '.wp-suggest-user' ).autocomplete({ 12 source: ajaxurl + '?action=autocomplete-user&autocomplete_type=add' + id, 13 delay: 500, 14 minLength: 2, 15 position: position, 16 open: function() { 17 $( this ).addClass( 'open' ); 18 }, 19 close: function() { 20 $( this ).removeClass( 'open' ); 21 } 11 $( '.wp-suggest-user' ).each( function(){ 12 var $this = $( this ), 13 autocompleteType = ( typeof $this.data( 'autocompleteType' ) !== 'undefined' ) ? $this.data( 'autocompleteType' ) : 'add', 14 autocompleteField = ( typeof $this.data( 'autocompleteField' ) !== 'undefined' ) ? $this.data( 'autocompleteField' ) : 'user_login'; 15 16 $this.autocomplete({ 17 source: ajaxurl + '?action=autocomplete-user&autocomplete_type=' + autocompleteType + '&autocomplete_field=' + autocompleteField + id, 18 delay: 500, 19 minLength: 2, 20 position: position, 21 open: function() { 22 $( this ).addClass( 'open' ); 23 }, 24 close: function() { 25 $( this ).removeClass( 'open' ); 26 } 27 }); 22 28 }); 23 29 }); 24 })( jQuery ); 25 No newline at end of file 30 })( jQuery ); -
src/wp-admin/network/site-new.php
106 106 $title = __('Add New Site'); 107 107 $parent_file = 'sites.php'; 108 108 109 wp_enqueue_script( 'user-suggest' ); 110 109 111 require( ABSPATH . 'wp-admin/admin-header.php' ); 110 112 111 113 ?> … … 138 140 </tr> 139 141 <tr class="form-field form-required"> 140 142 <th scope="row"><?php _e( 'Admin Email' ) ?></th> 141 <td><input name="blog[email]" type="text" class="regular-text " title="<?php esc_attr_e( 'Email' ) ?>"/></td>143 <td><input name="blog[email]" type="text" class="regular-text wp-suggest-user" data-autocomplete-type="search" data-autocomplete-field="user_email" title="<?php esc_attr_e( 'Email' ) ?>"/></td> 142 144 </tr> 143 145 <tr class="form-field"> 144 146 <td colspan="2"><?php _e( 'A new user will be created if the above email address is not in the database.' ) ?><br /><?php _e( 'The username and password will be mailed to this email address.' ) ?></td>