You are here

function multichoice_more_choices_submit in Quiz 8.4

Same name and namespace in other branches
  1. 6.4 question_types/multichoice/multichoice.module \multichoice_more_choices_submit()
  2. 7 question_types/multichoice/multichoice.module \multichoice_more_choices_submit()
  3. 7.4 question_types/multichoice/multichoice.module \multichoice_more_choices_submit()

Submit handler used when adding more alternatives to the node-form

1 string reference to 'multichoice_more_choices_submit'
MultichoiceQuestion::getCreationForm in question_types/multichoice/lib/Drupal/multichoice/MultichoiceQuestion.php
Implementation of getCreationForm

File

question_types/multichoice/multichoice.module, line 149
The main file for multichoice.

Code

function multichoice_more_choices_submit($form, &$form_state) {

  // Set the form to rebuild and run submit handlers.
  $node = $form_state['controller']
    ->getEntity();
  if ($node instanceof \Drupal\node\Entity\Node && $node
    ->id()) {

    // @todo: verify once.
    // node_form_submit_build_node($form, $form_state);
  }

  // Count the existing alternatives
  $exists = 0;
  while (isset($form['alternatives'][$exists])) {
    $exists++;
  }

  // Make the changes we want to the form state.
  if ($form_state['values']['alternatives']['multichoice_add_alternative']) {

    // We add 3 if js is disabled. 1 if the adding is done using ahah
    $n = current_path() == 'system/ajax' ? 1 : 3;
    $form_state['choice_count'] = $exists + $n;
  }
  $form_state['rebuild'] = TRUE;
}