Esempio n. 1
0
function webauto_test_passed($grade, $url)
{
    global $USER, $OUTPUT;
    success_out("Test passed - congratulations");
    if ($USER->displayname === false || !isset($_SESSION['lti'])) {
        line_out('Not setup to return a grade..');
        return false;
    }
    $LTI = $_SESSION['lti'];
    $old_grade = isset($LTI['grade']) ? $LTI['grade'] : 0.0;
    if ($grade < $old_grade) {
        line_out('New grade is not higher than your previous grade=' . $old_grade);
        line_out('Sending your previous high score');
        $grade = $old_grade;
    }
    gradeUpdateJson(json_encode(array("url" => $url)));
    $debug_log = array();
    $retval = LTIX::gradeSend($grade, false, $debug_log);
    $OUTPUT->dumpDebugArray($debug_log);
    if ($retval == true) {
        $success = "Grade sent to server (" . $grade . ")";
    } else {
        if (is_string($retval)) {
            $failure = "Grade not sent: " . $retval;
        } else {
            echo "<pre>\n";
            var_dump($retval);
            echo "</pre>\n";
            $failure = "Internal error";
        }
    }
    if (strlen($success) > 0) {
        success_out($success);
        error_log($success);
    } else {
        if (strlen($failure) > 0) {
            error_out($failure);
            error_log($failure);
        } else {
            error_log("No status");
        }
    }
    return true;
}
Esempio n. 2
0
File: a02.php Progetto: ixtel/tsugi
$passed = 0;
$titlefound = false;
try {
    $h1 = $crawler->filter('h1')->text();
    line_out("Found h1 tag...");
} catch (Exception $ex) {
    error_out("Did not find h1 tag");
    $h1 = "";
}
if (stripos($h1, 'Hello') !== false) {
    success_out("Found 'Hello' in the h1 tag");
    $passed += 1;
} else {
    error_out("Did not find 'Hello' in the h1 tag");
}
if ($USER->displayname && stripos($h1, $USER->displayname) !== false) {
    success_out("Found ({$USER->displayname}) in the h1 tag");
    $passed += 1;
} else {
    if ($USER->displayname) {
        error_out("Did not find {$USER->displayname} in the h1 tag");
        error_out("No score sent");
        return;
    }
}
$perfect = 2;
$score = webauto_compute_effective_score($perfect, $passed, $penalty);
// Send grade
if ($score > 0.0) {
    webauto_test_passed($score, $url);
}
Esempio n. 3
0
function webauto_test_passed($grade, $url)
{
    global $displayname;
    global $OUTPUT;
    success_out("Test passed - congratulations");
    if ($displayname === false || !isset($_SESSION['lti'])) {
        line_out('Not setup to return a grade..');
        exit;
    }
    if (!isset($_GET['grade'])) {
        line_out('Dry run - grade of (' . intval($grade * 100) . '%) was not sent.');
        exit;
    }
    gradeUpdateJson(json_encode(array("url" => $url)));
    $debug_log = array();
    $retval = LTIX::gradeSend($grade, false, $debug_log);
    $OUTPUT->dumpDebugArray($debug_log);
    if ($retval == true) {
        $success = "Grade sent to server (" . intval($grade * 100) . "%)";
    } else {
        if (is_string($retval)) {
            $failure = "Grade not sent: " . $retval;
        } else {
            echo "<pre>\n";
            var_dump($retval);
            echo "</pre>\n";
            $failure = "Internal error";
        }
    }
    if (strlen($success) > 0) {
        success_out($success);
        error_log($success);
    } else {
        if (strlen($failure) > 0) {
            error_out($failure);
            error_log($failure);
        } else {
            error_log("No status");
        }
    }
}
Esempio n. 4
0
}
$success = "";
$failure = "";
$grade = 0.0;
if (strpos($h1, "Dr. Chuck") !== false) {
    $failure = "You need to put your own name in the h1 tag - assignment not complete!";
} else {
    if (strpos($h1, 'Hello') !== false) {
        $success = "Found 'Hello' in the h1 tag - assignment correct!";
        $grade = 1.0;
    } else {
        $failure = "Did not find 'Hello' in the h1 tag - assignment not complete!";
    }
}
if (strlen($success) > 0) {
    success_out($success);
    error_log($success);
} else {
    if (strlen($failure) > 0) {
        error_out($failure);
        error_log($failure);
        exit;
    } else {
        error_log("No status");
        exit;
    }
}
// Send grade
if ($penalty !== false) {
    $grade = $grade * (1.0 - $penalty);
}
Esempio n. 5
0
    if ($retval === true) {
        $titlefound = true;
    } else {
        if (!$title_once) {
            error_out($retval);
        }
        $title_once = true;
    }
    $matches = array();
    preg_match('/Your Play=([^ ]*) Computer Play=([^ ]*) Result=(.*)/', $html, $matches);
    if (count($matches) != 4) {
        error_out('Could not find line starting with "Your Play=" (case matters)');
        continue;
    }
    line_out('Found:' . $matches[0]);
    if (check($matches)) {
        success_out('Correct play');
        $passed++;
    } else {
        error_out('Incorrect play');
    }
}
$perfect = 5;
$score = webauto_compute_effective_score($perfect, $passed, $penalty);
if (!$titlefound) {
    error_out("These pages do not have proper titles so this grade was not sent");
    return;
}
if ($score > 0.0) {
    webauto_test_passed($score, $url);
}
 public function deleteTableRow($idfields)
 {
     if (empty($this->values)) {
         error_out("Can't delete. Couldn't find any values.");
         return false;
     }
     $idvals = $this->findRow($idfields);
     if ($idvals) {
         // Found row -- update it, leaving the idvals selectors alone
         $sqld = new SQLDelete($this->table, $this->values, $idvals);
         $sqld->international = $this->international;
         $sqld->execute();
         success_out("Deleted record");
     }
 }