function security_questions_user_pass_answer_validate in Security Questions 6.2
Same name and namespace in other branches
- 7.2 security_questions.module \security_questions_user_pass_answer_validate()
Validation handler for security_questions_form_user_pass_alter().
1 string reference to 'security_questions_user_pass_answer_validate'
File
- ./
security_questions.module, line 514 - Main module file for security_questions.
Code
function security_questions_user_pass_answer_validate($form, &$form_state) {
// @todo Can security_questions_user_pass_answer_validate() be combined with security_questions_user_login_answer_validate()?
// user_pass_validate() adds the 'account' value on a successful load.
if (!empty($form_state['values']['account'])) {
$account = $form_state['values']['account'];
$sqid = $form_state['values']['question'];
$answer = _security_questions_clean_answer($form_state['values']['answer']);
$valid_answer = _security_questions_clean_answer(security_questions_get_answer($account->uid, $sqid));
$form_state['storage']['security_questions']['passed_challenge'] = $valid_answer == $answer;
// If the answer was correct, flush the flood event.
if ($form_state['storage']['security_questions']['passed_challenge']) {
security_questions_flush_incorrect($account->uid);
}
else {
drupal_set_message(t('That answer does not match the one on the user account. Please try again with a different question.'), 'error');
security_questions_register_incorrect($sqid, $account->uid);
}
}
}