function security_questions_form_user_pass_alter in Security Questions 6.2
Same name and namespace in other branches
- 6 security_questions.module \security_questions_form_user_pass_alter()
- 7.2 security_questions.module \security_questions_form_user_pass_alter()
- 7 security_questions.module \security_questions_form_user_pass_alter()
Implements hook_form_FORM_ID_alter().
Adds a question challenge to the password reset form.
File
- ./
security_questions.module, line 488 - Main module file for security_questions.
Code
function security_questions_form_user_pass_alter(&$form, &$form_state) {
// Abort if the password form is not protected.
if (!variable_get('security_questions_password_reset', FALSE)) {
return;
}
// We need our own submission handler to make this a multistep form.
$form['#submit'] = array(
'security_questions_user_pass_submit',
);
// If our submit handler triggered a rebuild, we need to issue a challenge.
$account = FALSE;
if (!empty($form_state['storage']['security_questions']['uid'])) {
$account = user_load($form_state['storage']['security_questions']['uid']);
}
if ($account) {
$form += security_questions_challenge($account);
$form['#validate'][] = 'security_questions_user_pass_answer_validate';
$form['name']['#type'] = 'value';
$form['name']['#value'] = $account->mail;
$form['submit']['#weight'] = 10;
}
}