Welcome, visitor! Log in
 

Source View: retrieve_password

To save our bandwidth, we show only a snippet of code around each occurence of the hook. View complete file in SVN (without highlighting).

Understanding Source Code

The best way to understand what a hook does is to look at where it occurs in the source code.

  • Action hooks look like this: do_action( "hook_name" )
  • Filter hooks look like this: apply_filters( "hook_name", "what_to_filter" ).

Remember, this hook may occur in more than one file. Moreover, the hook's context may change from version to version.

Source View

Line Code
101                $user_data = get_userdatabylogin(trim($_POST['user_login']));
102                // redefining user_login ensures we return the right case in the email
103                $user_login = $user_data->user_login;
104                $user_email = $user_data->user_email;
105
106                if (!$user_email || $user_email != $_POST['user_email']) {
107                     $errors['invalidcombo'] = __('<strong>ERROR</strong>: Invalid username / e-mail combination.');
108                } else {
109                     do_action('retreive_password', $user_login);  // Misspelled and deprecated
110                     do_action('retrieve_password', $user_login);
111
112                     // Generate something random for a password... md5'ing current time with a rand salt
113                     $key = substr( md5( uniqid( microtime() ) ), 0, 8);
114                     // Now insert the new pass md5'd into the db
115                     $wpdb->query("UPDATE $wpdb->users SET user_activation_key = '$key' WHERE user_login = '$user_login'");
116                     $message = __('Someone has asked to reset the password for the following site and username.') . "\r\n\r\n";
117                     $message .= get_option('siteurl') . "\r\n\r\n";
118                     $message .= sprintf(__('Username: %s'), $user_login) . "\r\n\r\n";
119                     $message .= __('To reset your password visit the following address, otherwise just ignore this email and nothing will happen.') . "\r\n\r\n";