You are here

function quiz_question_config in Quiz 7.6

Same name and namespace in other branches
  1. 8.6 question_types/quiz_question/quiz_question.module \quiz_question_config()
  2. 8.5 question_types/quiz_question/quiz_question.module \quiz_question_config()
  3. 6.4 question_types/quiz_question/quiz_question.module \quiz_question_config()
  4. 7 question_types/quiz_question/quiz_question.module \quiz_question_config()
  5. 7.4 question_types/quiz_question/quiz_question.module \quiz_question_config()
  6. 7.5 question_types/quiz_question/quiz_question.module \quiz_question_config()

Get the configuration form for all enabled question types.

1 string reference to 'quiz_question_config'
quiz_question_menu in question_types/quiz_question/quiz_question.module
Implements hook_menu().

File

question_types/quiz_question/quiz_question.module, line 388
Quiz Question module. This module provides the basic facilities for adding quiz question types to a quiz.

Code

function quiz_question_config($form, $context) {
  $q_types = quiz_question_get_info();
  $form = array();
  $form['#validate'] = array();

  // Go through all question types and merge their config forms
  foreach ($q_types as $type => $values) {
    $function = $type . '_quiz_question_config';
    if ($admin_form = $function()) {
      $form[$type] = $admin_form;
      $form[$type]['#type'] = 'fieldset';
      $form[$type]['#title'] = $values['name'];
      $form[$type]['#collapsible'] = TRUE;
      $form[$type]['#collapsed'] = TRUE;
      if (isset($admin_form['#validate']) && is_array($admin_form['#validate'])) {
        $form['#validate'] = array_merge($form['#validate'], $admin_form['#validate']);
        unset($form[$type]['#validate']);
      }
    }
  }
  return system_settings_form($form);
}