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 />';
                 }
                 error($errorstring);
             }
             break;
         default:
             return parent::validate_form($form);
             break;
     }
     return true;
 }