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 "