You are here

function opigno_quiz_app_check_questions_for_type in Opigno Quiz App 7

1 string reference to 'opigno_quiz_app_check_questions_for_type'
opigno_quiz_app_form_alter in ./opigno_quiz_app.module
Quiz node form alter

File

./opigno_quiz_app.module, line 1597
Module file. Defines module hooks.

Code

function opigno_quiz_app_check_questions_for_type($form, &$form_state) {
  if (isset($form_state['values']['quiz_type'][LANGUAGE_NONE][0]['value']) && isset($form_state['values']['nid']) && isset($form_state['values']['vid'])) {
    switch ($form_state['values']['quiz_type'][LANGUAGE_NONE][0]['value']) {
      case 'quiz':
        $quiz_questions = quiz_get_questions($form_state['values']['nid'], $form_state['values']['vid'], TRUE, TRUE, TRUE, TRUE);
        foreach ($quiz_questions as $index => $value) {
          if ($value->type == "quiz_directions") {
            form_set_error('quiz_type', t('You cannot set this lesson as quiz type, remove all slides questions first.'));
          }
        }
        break;
      case "theory":
        $quiz_questions = quiz_get_questions($form_state['values']['nid'], $form_state['values']['vid'], TRUE, TRUE, TRUE, TRUE);
        foreach ($quiz_questions as $index => $value) {
          if ($value->type != "quiz_directions") {
            form_set_error('quiz_type', t('You cannot set this lesson as theory type, remove all non slides questions first.'));
          }
        }
        break;
      case "mix":
        break;
    }
  }
}