function validate_form($form) { switch ($form->wizardpage) { case 'question': $calculatedmessages = array(); if (empty($form->name)) { $calculatedmessages[] = get_string('missingname', 'quiz'); } if (empty($form->questiontext)) { $calculatedmessages[] = get_string('missingquestiontext', 'quiz'); } // Verify formulas foreach ($form->answers as $key => $answer) { if ('' === trim($answer)) { $calculatedmessages[] = get_string('missingformula', 'quiz'); } if ($formulaerrors = qtype_calculated_find_formula_errors($answer)) { $calculatedmessages[] = $formulaerrors; } if (!isset($form->tolerance[$key])) { $form->tolerance[$key] = 0.0; } if (!is_numeric($form->tolerance[$key])) { $calculatedmessages[] = get_string('tolerancemustbenumeric', 'quiz'); } } if (!empty($calculatedmessages)) { $errorstring = "The following errors were found:<br />"; foreach ($calculatedmessages as $msg) { $errorstring .= $msg . '<br />'; } print_error($errorstring); } break; default: return parent::validate_form($form); break; } return true; }