Changeset 16009
- Timestamp:
- 10/27/2010 10:46:24 AM (14 years ago)
- Location:
- trunk
- Files:
-
- 10 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/wp-activate.php
r16007 r16009 11 11 die(); 12 12 } 13 14 require_once( ABSPATH . WPINC . '/registration.php');15 13 16 14 if ( is_object( $wp_object_cache ) ) -
trunk/wp-admin/admin-ajax.php
r15963 r16009 854 854 if ( !current_user_can('create_users') ) 855 855 die('-1'); 856 require_once(ABSPATH . WPINC . '/registration.php');857 856 if ( !$user_id = add_user() ) 858 857 die('0'); -
trunk/wp-admin/includes/admin.php
r15954 r16009 52 52 require_once(ABSPATH . 'wp-admin/includes/update.php'); 53 53 54 /** WordPress Registration API */55 require_once(ABSPATH . WPINC . '/registration.php');56 57 54 /** WordPress Deprecated Administration API */ 58 55 require_once(ABSPATH . 'wp-admin/includes/deprecated.php'); -
trunk/wp-admin/user-new.php
r15830 r16009 15 15 if ( is_multisite() && !get_site_option( 'add_new_users' ) ) 16 16 wp_die( __('Page disabled by the administrator') ); 17 18 /** WordPress Registration API */19 require_once( ABSPATH . WPINC . '/registration.php');20 17 21 18 if ( is_multisite() ) { -
trunk/wp-admin/users.php
r15956 r16009 9 9 /** WordPress Administration Bootstrap */ 10 10 require_once( './admin.php' ); 11 12 /** WordPress Registration API */13 require_once( ABSPATH . WPINC . '/registration.php');14 11 15 12 $wp_list_table = get_list_table('WP_Users_Table'); -
trunk/wp-includes/registration-functions.php
r12535 r16009 1 1 <?php 2 2 /** 3 * Deprecated. Use registration.php.3 * Deprecated. No longer needed. 4 4 * 5 5 * @package WordPress 6 6 */ 7 _deprecated_file( basename(__FILE__), '2.1', WPINC . '/registration.php' ); 8 require_once(ABSPATH . WPINC . '/registration.php'); 7 _deprecated_file( basename(__FILE__), '2.1', null, __( 'This file no longer needs to be included.' ) ); 9 8 ?> -
trunk/wp-includes/registration.php
r15896 r16009 1 1 <?php 2 2 /** 3 * User Registration API3 * Deprecated. No longer needed. 4 4 * 5 5 * @package WordPress 6 6 */ 7 8 /** 9 * Checks whether the given username exists. 10 * 11 * @since 2.0.0 12 * 13 * @param string $username Username. 14 * @return null|int The user's ID on success, and null on failure. 15 */ 16 function username_exists( $username ) { 17 if ( $user = get_userdatabylogin( $username ) ) { 18 return $user->ID; 19 } else { 20 return null; 21 } 22 } 23 24 /** 25 * Checks whether the given email exists. 26 * 27 * @since 2.1.0 28 * @uses $wpdb 29 * 30 * @param string $email Email. 31 * @return bool|int The user's ID on success, and false on failure. 32 */ 33 function email_exists( $email ) { 34 if ( $user = get_user_by_email($email) ) 35 return $user->ID; 36 37 return false; 38 } 39 40 /** 41 * Checks whether an username is valid. 42 * 43 * @since 2.0.1 44 * @uses apply_filters() Calls 'validate_username' hook on $valid check and $username as parameters 45 * 46 * @param string $username Username. 47 * @return bool Whether username given is valid 48 */ 49 function validate_username( $username ) { 50 $sanitized = sanitize_user( $username, true ); 51 $valid = ( $sanitized == $username ); 52 return apply_filters( 'validate_username', $valid, $username ); 53 } 54 55 /** 56 * Insert an user into the database. 57 * 58 * Can update a current user or insert a new user based on whether the user's ID 59 * is present. 60 * 61 * Can be used to update the user's info (see below), set the user's role, and 62 * set the user's preference on whether they want the rich editor on. 63 * 64 * Most of the $userdata array fields have filters associated with the values. 65 * The exceptions are 'rich_editing', 'role', 'jabber', 'aim', 'yim', 66 * 'user_registered', and 'ID'. The filters have the prefix 'pre_user_' followed 67 * by the field name. An example using 'description' would have the filter 68 * called, 'pre_user_description' that can be hooked into. 69 * 70 * The $userdata array can contain the following fields: 71 * 'ID' - An integer that will be used for updating an existing user. 72 * 'user_pass' - A string that contains the plain text password for the user. 73 * 'user_login' - A string that contains the user's username for logging in. 74 * 'user_nicename' - A string that contains a nicer looking name for the user. 75 * The default is the user's username. 76 * 'user_url' - A string containing the user's URL for the user's web site. 77 * 'user_email' - A string containing the user's email address. 78 * 'display_name' - A string that will be shown on the site. Defaults to user's 79 * username. It is likely that you will want to change this, for both 80 * appearance and security through obscurity (that is if you don't use and 81 * delete the default 'admin' user). 82 * 'nickname' - The user's nickname, defaults to the user's username. 83 * 'first_name' - The user's first name. 84 * 'last_name' - The user's last name. 85 * 'description' - A string containing content about the user. 86 * 'rich_editing' - A string for whether to enable the rich editor. False 87 * if not empty. 88 * 'user_registered' - The date the user registered. Format is 'Y-m-d H:i:s'. 89 * 'role' - A string used to set the user's role. 90 * 'jabber' - User's Jabber account. 91 * 'aim' - User's AOL IM account. 92 * 'yim' - User's Yahoo IM account. 93 * 94 * @since 2.0.0 95 * @uses $wpdb WordPress database layer. 96 * @uses apply_filters() Calls filters for most of the $userdata fields with the prefix 'pre_user'. See note above. 97 * @uses do_action() Calls 'profile_update' hook when updating giving the user's ID 98 * @uses do_action() Calls 'user_register' hook when creating a new user giving the user's ID 99 * 100 * @param array $userdata An array of user data. 101 * @return int|WP_Error The newly created user's ID or a WP_Error object if the user could not be created. 102 */ 103 function wp_insert_user($userdata) { 104 global $wpdb; 105 106 extract($userdata, EXTR_SKIP); 107 108 // Are we updating or creating? 109 if ( !empty($ID) ) { 110 $ID = (int) $ID; 111 $update = true; 112 $old_user_data = get_userdata($ID); 113 } else { 114 $update = false; 115 // Hash the password 116 $user_pass = wp_hash_password($user_pass); 117 } 118 119 $user_login = sanitize_user($user_login, true); 120 $user_login = apply_filters('pre_user_login', $user_login); 121 122 //Remove any non-printable chars from the login string to see if we have ended up with an empty username 123 $user_login = trim($user_login); 124 125 if ( empty($user_login) ) 126 return new WP_Error('empty_user_login', __('Cannot create a user with an empty login name.') ); 127 128 if ( !$update && username_exists( $user_login ) ) 129 return new WP_Error('existing_user_login', __('This username is already registered.') ); 130 131 if ( empty($user_nicename) ) 132 $user_nicename = sanitize_title( $user_login ); 133 $user_nicename = apply_filters('pre_user_nicename', $user_nicename); 134 135 if ( empty($user_url) ) 136 $user_url = ''; 137 $user_url = apply_filters('pre_user_url', $user_url); 138 139 if ( empty($user_email) ) 140 $user_email = ''; 141 $user_email = apply_filters('pre_user_email', $user_email); 142 143 if ( !$update && ! defined( 'WP_IMPORTING' ) && email_exists($user_email) ) 144 return new WP_Error('existing_user_email', __('This email address is already registered.') ); 145 146 if ( empty($display_name) ) 147 $display_name = $user_login; 148 $display_name = apply_filters('pre_user_display_name', $display_name); 149 150 if ( empty($nickname) ) 151 $nickname = $user_login; 152 $nickname = apply_filters('pre_user_nickname', $nickname); 153 154 if ( empty($first_name) ) 155 $first_name = ''; 156 $first_name = apply_filters('pre_user_first_name', $first_name); 157 158 if ( empty($last_name) ) 159 $last_name = ''; 160 $last_name = apply_filters('pre_user_last_name', $last_name); 161 162 if ( empty($description) ) 163 $description = ''; 164 $description = apply_filters('pre_user_description', $description); 165 166 if ( empty($rich_editing) ) 167 $rich_editing = 'true'; 168 169 if ( empty($comment_shortcuts) ) 170 $comment_shortcuts = 'false'; 171 172 if ( empty($admin_color) ) 173 $admin_color = 'fresh'; 174 $admin_color = preg_replace('|[^a-z0-9 _.\-@]|i', '', $admin_color); 175 176 if ( empty($use_ssl) ) 177 $use_ssl = 0; 178 179 if ( empty($user_registered) ) 180 $user_registered = gmdate('Y-m-d H:i:s'); 181 182 $user_nicename_check = $wpdb->get_var( $wpdb->prepare("SELECT ID FROM $wpdb->users WHERE user_nicename = %s AND user_login != %s LIMIT 1" , $user_nicename, $user_login)); 183 184 if ( $user_nicename_check ) { 185 $suffix = 2; 186 while ($user_nicename_check) { 187 $alt_user_nicename = $user_nicename . "-$suffix"; 188 $user_nicename_check = $wpdb->get_var( $wpdb->prepare("SELECT ID FROM $wpdb->users WHERE user_nicename = %s AND user_login != %s LIMIT 1" , $alt_user_nicename, $user_login)); 189 $suffix++; 190 } 191 $user_nicename = $alt_user_nicename; 192 } 193 194 $data = compact( 'user_pass', 'user_email', 'user_url', 'user_nicename', 'display_name', 'user_registered' ); 195 $data = stripslashes_deep( $data ); 196 197 if ( $update ) { 198 $wpdb->update( $wpdb->users, $data, compact( 'ID' ) ); 199 $user_id = (int) $ID; 200 } else { 201 $wpdb->insert( $wpdb->users, $data + compact( 'user_login' ) ); 202 $user_id = (int) $wpdb->insert_id; 203 } 204 205 update_user_meta( $user_id, 'first_name', $first_name); 206 update_user_meta( $user_id, 'last_name', $last_name); 207 update_user_meta( $user_id, 'nickname', $nickname ); 208 update_user_meta( $user_id, 'description', $description ); 209 update_user_meta( $user_id, 'rich_editing', $rich_editing); 210 update_user_meta( $user_id, 'comment_shortcuts', $comment_shortcuts); 211 update_user_meta( $user_id, 'admin_color', $admin_color); 212 update_user_meta( $user_id, 'use_ssl', $use_ssl); 213 214 $user = new WP_User($user_id); 215 216 foreach ( _wp_get_user_contactmethods( $user ) as $method => $name ) { 217 if ( empty($$method) ) 218 $$method = ''; 219 220 update_user_meta( $user_id, $method, $$method ); 221 } 222 223 if ( isset($role) ) 224 $user->set_role($role); 225 elseif ( !$update ) 226 $user->set_role(get_option('default_role')); 227 228 wp_cache_delete($user_id, 'users'); 229 wp_cache_delete($user_login, 'userlogins'); 230 231 if ( $update ) 232 do_action('profile_update', $user_id, $old_user_data); 233 else 234 do_action('user_register', $user_id); 235 236 return $user_id; 237 } 238 239 /** 240 * Update an user in the database. 241 * 242 * It is possible to update a user's password by specifying the 'user_pass' 243 * value in the $userdata parameter array. 244 * 245 * If $userdata does not contain an 'ID' key, then a new user will be created 246 * and the new user's ID will be returned. 247 * 248 * If current user's password is being updated, then the cookies will be 249 * cleared. 250 * 251 * @since 2.0.0 252 * @see wp_insert_user() For what fields can be set in $userdata 253 * @uses wp_insert_user() Used to update existing user or add new one if user doesn't exist already 254 * 255 * @param array $userdata An array of user data. 256 * @return int The updated user's ID. 257 */ 258 function wp_update_user($userdata) { 259 $ID = (int) $userdata['ID']; 260 261 // First, get all of the original fields 262 $user = get_userdata($ID); 263 264 // Escape data pulled from DB. 265 $user = add_magic_quotes(get_object_vars($user)); 266 267 // If password is changing, hash it now. 268 if ( ! empty($userdata['user_pass']) ) { 269 $plaintext_pass = $userdata['user_pass']; 270 $userdata['user_pass'] = wp_hash_password($userdata['user_pass']); 271 } 272 273 wp_cache_delete($user[ 'user_email' ], 'useremail'); 274 275 // Merge old and new fields with new fields overwriting old ones. 276 $userdata = array_merge($user, $userdata); 277 $user_id = wp_insert_user($userdata); 278 279 // Update the cookies if the password changed. 280 $current_user = wp_get_current_user(); 281 if ( $current_user->id == $ID ) { 282 if ( isset($plaintext_pass) ) { 283 wp_clear_auth_cookie(); 284 wp_set_auth_cookie($ID); 285 } 286 } 287 288 return $user_id; 289 } 290 291 /** 292 * A simpler way of inserting an user into the database. 293 * 294 * Creates a new user with just the username, password, and email. For a more 295 * detail creation of a user, use wp_insert_user() to specify more infomation. 296 * 297 * @since 2.0.0 298 * @see wp_insert_user() More complete way to create a new user 299 * 300 * @param string $username The user's username. 301 * @param string $password The user's password. 302 * @param string $email The user's email (optional). 303 * @return int The new user's ID. 304 */ 305 function wp_create_user($username, $password, $email = '') { 306 $user_login = esc_sql( $username ); 307 $user_email = esc_sql( $email ); 308 $user_pass = $password; 309 310 $userdata = compact('user_login', 'user_email', 'user_pass'); 311 return wp_insert_user($userdata); 312 } 313 314 315 /** 316 * Set up the default contact methods 317 * 318 * @access private 319 * @since 320 * 321 * @param object $user User data object (optional) 322 * @return array $user_contactmethods Array of contact methods and their labels. 323 */ 324 function _wp_get_user_contactmethods( $user = null ) { 325 $user_contactmethods = array( 326 'aim' => __('AIM'), 327 'yim' => __('Yahoo IM'), 328 'jabber' => __('Jabber / Google Talk') 329 ); 330 return apply_filters( 'user_contactmethods', $user_contactmethods, $user ); 331 } 332 7 _deprecated_file( basename(__FILE__), '3.1', null, __( 'This file no longer needs to be included.' ) ); 333 8 ?> -
trunk/wp-includes/user.php
r15883 r16009 1197 1197 } 1198 1198 1199 /** 1200 * Checks whether the given username exists. 1201 * 1202 * @since 2.0.0 1203 * 1204 * @param string $username Username. 1205 * @return null|int The user's ID on success, and null on failure. 1206 */ 1207 function username_exists( $username ) { 1208 if ( $user = get_userdatabylogin( $username ) ) { 1209 return $user->ID; 1210 } else { 1211 return null; 1212 } 1213 } 1214 1215 /** 1216 * Checks whether the given email exists. 1217 * 1218 * @since 2.1.0 1219 * @uses $wpdb 1220 * 1221 * @param string $email Email. 1222 * @return bool|int The user's ID on success, and false on failure. 1223 */ 1224 function email_exists( $email ) { 1225 if ( $user = get_user_by_email($email) ) 1226 return $user->ID; 1227 1228 return false; 1229 } 1230 1231 /** 1232 * Checks whether an username is valid. 1233 * 1234 * @since 2.0.1 1235 * @uses apply_filters() Calls 'validate_username' hook on $valid check and $username as parameters 1236 * 1237 * @param string $username Username. 1238 * @return bool Whether username given is valid 1239 */ 1240 function validate_username( $username ) { 1241 $sanitized = sanitize_user( $username, true ); 1242 $valid = ( $sanitized == $username ); 1243 return apply_filters( 'validate_username', $valid, $username ); 1244 } 1245 1246 /** 1247 * Insert an user into the database. 1248 * 1249 * Can update a current user or insert a new user based on whether the user's ID 1250 * is present. 1251 * 1252 * Can be used to update the user's info (see below), set the user's role, and 1253 * set the user's preference on whether they want the rich editor on. 1254 * 1255 * Most of the $userdata array fields have filters associated with the values. 1256 * The exceptions are 'rich_editing', 'role', 'jabber', 'aim', 'yim', 1257 * 'user_registered', and 'ID'. The filters have the prefix 'pre_user_' followed 1258 * by the field name. An example using 'description' would have the filter 1259 * called, 'pre_user_description' that can be hooked into. 1260 * 1261 * The $userdata array can contain the following fields: 1262 * 'ID' - An integer that will be used for updating an existing user. 1263 * 'user_pass' - A string that contains the plain text password for the user. 1264 * 'user_login' - A string that contains the user's username for logging in. 1265 * 'user_nicename' - A string that contains a nicer looking name for the user. 1266 * The default is the user's username. 1267 * 'user_url' - A string containing the user's URL for the user's web site. 1268 * 'user_email' - A string containing the user's email address. 1269 * 'display_name' - A string that will be shown on the site. Defaults to user's 1270 * username. It is likely that you will want to change this, for both 1271 * appearance and security through obscurity (that is if you don't use and 1272 * delete the default 'admin' user). 1273 * 'nickname' - The user's nickname, defaults to the user's username. 1274 * 'first_name' - The user's first name. 1275 * 'last_name' - The user's last name. 1276 * 'description' - A string containing content about the user. 1277 * 'rich_editing' - A string for whether to enable the rich editor. False 1278 * if not empty. 1279 * 'user_registered' - The date the user registered. Format is 'Y-m-d H:i:s'. 1280 * 'role' - A string used to set the user's role. 1281 * 'jabber' - User's Jabber account. 1282 * 'aim' - User's AOL IM account. 1283 * 'yim' - User's Yahoo IM account. 1284 * 1285 * @since 2.0.0 1286 * @uses $wpdb WordPress database layer. 1287 * @uses apply_filters() Calls filters for most of the $userdata fields with the prefix 'pre_user'. See note above. 1288 * @uses do_action() Calls 'profile_update' hook when updating giving the user's ID 1289 * @uses do_action() Calls 'user_register' hook when creating a new user giving the user's ID 1290 * 1291 * @param array $userdata An array of user data. 1292 * @return int|WP_Error The newly created user's ID or a WP_Error object if the user could not be created. 1293 */ 1294 function wp_insert_user($userdata) { 1295 global $wpdb; 1296 1297 extract($userdata, EXTR_SKIP); 1298 1299 // Are we updating or creating? 1300 if ( !empty($ID) ) { 1301 $ID = (int) $ID; 1302 $update = true; 1303 $old_user_data = get_userdata($ID); 1304 } else { 1305 $update = false; 1306 // Hash the password 1307 $user_pass = wp_hash_password($user_pass); 1308 } 1309 1310 $user_login = sanitize_user($user_login, true); 1311 $user_login = apply_filters('pre_user_login', $user_login); 1312 1313 //Remove any non-printable chars from the login string to see if we have ended up with an empty username 1314 $user_login = trim($user_login); 1315 1316 if ( empty($user_login) ) 1317 return new WP_Error('empty_user_login', __('Cannot create a user with an empty login name.') ); 1318 1319 if ( !$update && username_exists( $user_login ) ) 1320 return new WP_Error('existing_user_login', __('This username is already registered.') ); 1321 1322 if ( empty($user_nicename) ) 1323 $user_nicename = sanitize_title( $user_login ); 1324 $user_nicename = apply_filters('pre_user_nicename', $user_nicename); 1325 1326 if ( empty($user_url) ) 1327 $user_url = ''; 1328 $user_url = apply_filters('pre_user_url', $user_url); 1329 1330 if ( empty($user_email) ) 1331 $user_email = ''; 1332 $user_email = apply_filters('pre_user_email', $user_email); 1333 1334 if ( !$update && ! defined( 'WP_IMPORTING' ) && email_exists($user_email) ) 1335 return new WP_Error('existing_user_email', __('This email address is already registered.') ); 1336 1337 if ( empty($display_name) ) 1338 $display_name = $user_login; 1339 $display_name = apply_filters('pre_user_display_name', $display_name); 1340 1341 if ( empty($nickname) ) 1342 $nickname = $user_login; 1343 $nickname = apply_filters('pre_user_nickname', $nickname); 1344 1345 if ( empty($first_name) ) 1346 $first_name = ''; 1347 $first_name = apply_filters('pre_user_first_name', $first_name); 1348 1349 if ( empty($last_name) ) 1350 $last_name = ''; 1351 $last_name = apply_filters('pre_user_last_name', $last_name); 1352 1353 if ( empty($description) ) 1354 $description = ''; 1355 $description = apply_filters('pre_user_description', $description); 1356 1357 if ( empty($rich_editing) ) 1358 $rich_editing = 'true'; 1359 1360 if ( empty($comment_shortcuts) ) 1361 $comment_shortcuts = 'false'; 1362 1363 if ( empty($admin_color) ) 1364 $admin_color = 'fresh'; 1365 $admin_color = preg_replace('|[^a-z0-9 _.\-@]|i', '', $admin_color); 1366 1367 if ( empty($use_ssl) ) 1368 $use_ssl = 0; 1369 1370 if ( empty($user_registered) ) 1371 $user_registered = gmdate('Y-m-d H:i:s'); 1372 1373 $user_nicename_check = $wpdb->get_var( $wpdb->prepare("SELECT ID FROM $wpdb->users WHERE user_nicename = %s AND user_login != %s LIMIT 1" , $user_nicename, $user_login)); 1374 1375 if ( $user_nicename_check ) { 1376 $suffix = 2; 1377 while ($user_nicename_check) { 1378 $alt_user_nicename = $user_nicename . "-$suffix"; 1379 $user_nicename_check = $wpdb->get_var( $wpdb->prepare("SELECT ID FROM $wpdb->users WHERE user_nicename = %s AND user_login != %s LIMIT 1" , $alt_user_nicename, $user_login)); 1380 $suffix++; 1381 } 1382 $user_nicename = $alt_user_nicename; 1383 } 1384 1385 $data = compact( 'user_pass', 'user_email', 'user_url', 'user_nicename', 'display_name', 'user_registered' ); 1386 $data = stripslashes_deep( $data ); 1387 1388 if ( $update ) { 1389 $wpdb->update( $wpdb->users, $data, compact( 'ID' ) ); 1390 $user_id = (int) $ID; 1391 } else { 1392 $wpdb->insert( $wpdb->users, $data + compact( 'user_login' ) ); 1393 $user_id = (int) $wpdb->insert_id; 1394 } 1395 1396 update_user_meta( $user_id, 'first_name', $first_name); 1397 update_user_meta( $user_id, 'last_name', $last_name); 1398 update_user_meta( $user_id, 'nickname', $nickname ); 1399 update_user_meta( $user_id, 'description', $description ); 1400 update_user_meta( $user_id, 'rich_editing', $rich_editing); 1401 update_user_meta( $user_id, 'comment_shortcuts', $comment_shortcuts); 1402 update_user_meta( $user_id, 'admin_color', $admin_color); 1403 update_user_meta( $user_id, 'use_ssl', $use_ssl); 1404 1405 $user = new WP_User($user_id); 1406 1407 foreach ( _wp_get_user_contactmethods( $user ) as $method => $name ) { 1408 if ( empty($$method) ) 1409 $$method = ''; 1410 1411 update_user_meta( $user_id, $method, $$method ); 1412 } 1413 1414 if ( isset($role) ) 1415 $user->set_role($role); 1416 elseif ( !$update ) 1417 $user->set_role(get_option('default_role')); 1418 1419 wp_cache_delete($user_id, 'users'); 1420 wp_cache_delete($user_login, 'userlogins'); 1421 1422 if ( $update ) 1423 do_action('profile_update', $user_id, $old_user_data); 1424 else 1425 do_action('user_register', $user_id); 1426 1427 return $user_id; 1428 } 1429 1430 /** 1431 * Update an user in the database. 1432 * 1433 * It is possible to update a user's password by specifying the 'user_pass' 1434 * value in the $userdata parameter array. 1435 * 1436 * If $userdata does not contain an 'ID' key, then a new user will be created 1437 * and the new user's ID will be returned. 1438 * 1439 * If current user's password is being updated, then the cookies will be 1440 * cleared. 1441 * 1442 * @since 2.0.0 1443 * @see wp_insert_user() For what fields can be set in $userdata 1444 * @uses wp_insert_user() Used to update existing user or add new one if user doesn't exist already 1445 * 1446 * @param array $userdata An array of user data. 1447 * @return int The updated user's ID. 1448 */ 1449 function wp_update_user($userdata) { 1450 $ID = (int) $userdata['ID']; 1451 1452 // First, get all of the original fields 1453 $user = get_userdata($ID); 1454 1455 // Escape data pulled from DB. 1456 $user = add_magic_quotes(get_object_vars($user)); 1457 1458 // If password is changing, hash it now. 1459 if ( ! empty($userdata['user_pass']) ) { 1460 $plaintext_pass = $userdata['user_pass']; 1461 $userdata['user_pass'] = wp_hash_password($userdata['user_pass']); 1462 } 1463 1464 wp_cache_delete($user[ 'user_email' ], 'useremail'); 1465 1466 // Merge old and new fields with new fields overwriting old ones. 1467 $userdata = array_merge($user, $userdata); 1468 $user_id = wp_insert_user($userdata); 1469 1470 // Update the cookies if the password changed. 1471 $current_user = wp_get_current_user(); 1472 if ( $current_user->id == $ID ) { 1473 if ( isset($plaintext_pass) ) { 1474 wp_clear_auth_cookie(); 1475 wp_set_auth_cookie($ID); 1476 } 1477 } 1478 1479 return $user_id; 1480 } 1481 1482 /** 1483 * A simpler way of inserting an user into the database. 1484 * 1485 * Creates a new user with just the username, password, and email. For a more 1486 * detail creation of a user, use wp_insert_user() to specify more infomation. 1487 * 1488 * @since 2.0.0 1489 * @see wp_insert_user() More complete way to create a new user 1490 * 1491 * @param string $username The user's username. 1492 * @param string $password The user's password. 1493 * @param string $email The user's email (optional). 1494 * @return int The new user's ID. 1495 */ 1496 function wp_create_user($username, $password, $email = '') { 1497 $user_login = esc_sql( $username ); 1498 $user_email = esc_sql( $email ); 1499 $user_pass = $password; 1500 1501 $userdata = compact('user_login', 'user_email', 'user_pass'); 1502 return wp_insert_user($userdata); 1503 } 1504 1505 1506 /** 1507 * Set up the default contact methods 1508 * 1509 * @access private 1510 * @since 1511 * 1512 * @param object $user User data object (optional) 1513 * @return array $user_contactmethods Array of contact methods and their labels. 1514 */ 1515 function _wp_get_user_contactmethods( $user = null ) { 1516 $user_contactmethods = array( 1517 'aim' => __('AIM'), 1518 'yim' => __('Yahoo IM'), 1519 'jabber' => __('Jabber / Google Talk') 1520 ); 1521 return apply_filters( 'user_contactmethods', $user_contactmethods, $user ); 1522 } 1523 1199 1524 ?> -
trunk/wp-login.php
r16008 r16009 497 497 $user_email = ''; 498 498 if ( $http_post ) { 499 require_once( ABSPATH . WPINC . '/registration.php');500 501 499 $user_login = $_POST['user_login']; 502 500 $user_email = $_POST['user_email']; -
trunk/wp-signup.php
r16008 r16009 7 7 8 8 require( './wp-blog-header.php' ); 9 require_once( ABSPATH . WPINC . '/registration.php' );10 9 11 10 if ( is_array( get_site_option( 'illegal_names' )) && isset( $_GET[ 'new' ] ) && in_array( $_GET[ 'new' ], get_site_option( 'illegal_names' ) ) == true ) {
Note: See TracChangeset
for help on using the changeset viewer.