Index: start_test.php =================================================================== --- start_test.php (Revision 967) +++ start_test.php (Arbeitskopie) @@ -14,7 +14,7 @@ // Auswahl der gewählten Aktionen switch($action){ - case 'getQuestions': { // Fragebogen genererien + case 'getQuestions': // Fragebogen genererien // Überbrüfung auf integer / Wertzuweisung $topic=0; if($_REQUEST["t_id"])$topic=abs(intval($_REQUEST["t_id"])); @@ -35,13 +35,15 @@ $t_id=$myQuiz->getTopicID(); } break; - } - case 'evaluate':{ // Fragebogen auswerten + case 'evaluate': + // Fragebogen auswerten //Wertzuweisung und Initalisierung - $selectedAnswers=0; if($_REQUEST['selectedAnswers'])$selectedAnswers= $_REQUEST['selectedAnswers']; + $selectedAnswers=0; if($_REQUEST['selectedAnswers']) { + $selectedAnswers= $_REQUEST['selectedAnswers']; $_SESSION ['values']['selectedAnswers']=$selectedAnswers; - + } + if ($_SESSION['values']['selectedAnswers']) { $topic=0; if($_REQUEST["t_id"])$topic=abs(intval($_REQUEST["t_id"])); $myQuiz->setQuestions(); @@ -55,10 +57,25 @@ $myQuiz->setQuestionLimit($numOfQu); $myQuiz->setRawToPass($percentage); $myQuiz->evaluateQuiz(); + } else { + // kein Test bearbeitet + } break; + case "requestCert": + $topic=0; if($_REQUEST["t_id"])$topic=abs(intval($_REQUEST["t_id"])); + $progress = new progress(); + $progress->setTopic($topic); + $progress->getProgress(); + $topics->setTopicID($topic); + $percentage=$topics->getRawToPass(); + $haspassed = false; + foreach ($progress->progress as $entry) { + $currentperc = 100 * $entry['correct'] / (1.0 * $entry['number']); + if ($currentperc >= $percentage) { + $haspassed = true; } - case "requestCert": - { + } + if ($haspassed) { // A paper/PDF certificate for passing the test has been requested. echo "
".Class_Quiz_12_ExplainCert; echo "
\n". @@ -68,10 +85,13 @@ "\n". "\n"; + } else { + // Test wurde nie bestanden + echo "
" . Class_Quiz_09; + } break; } } -} else echo "
".Global_01."
"; ?>