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; }
$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); }
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"); } } }
} $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); }
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"); } }