You are here

function security_questions_user_form_validate in Security Questions 7.2

Same name and namespace in other branches
  1. 6.2 security_questions.pages.inc \security_questions_user_form_validate()

Validation handler for the user's security questions form.

2 calls to security_questions_user_form_validate()
security_questions_user_login_user_form_validate in ./security_questions.module
Validation handler for _security_questions_user_login_form_alter().
security_questions_user_register_form_validate in ./security_questions.module
Validation handler for security_questions_form_user_register_form_alter().

File

./security_questions.pages.inc, line 91
User page callbacks for the security questions module.

Code

function security_questions_user_form_validate($form, &$form_state) {
  $chosen = array();
  foreach ($form_state['values']['questions'] as $i => $question) {
    $chosen[$i] = $question['question'];

    // Make sure that custom questions are not blank.
    if ($question['question'] == 'other' && empty($question['custom_question'])) {
      form_set_error('questions][' . $i . '][custom_question', t('Please supply a custom question.'));
    }
  }

  // Disallow duplicate question selections.
  $duplicates = array_diff_key($chosen, array_unique($chosen));
  foreach ($duplicates as $duplicate => $sqid) {
    if ($sqid != 'other') {
      form_set_error('questions][' . $duplicate . '][question', t('Please select a question that you have not already chosen.'));
    }
  }
}