[Aimmath-commit] moodle/mod/math_assignment lib.php,1.26,1.27
Brought to you by:
gustav_delius,
npstrick
From: <gus...@us...> - 2003-09-28 15:13:05
|
Update of /cvsroot/aimmath/moodle/mod/math_assignment In directory sc8-pr-cvs1:/tmp/cvs-serv22375/mod/math_assignment Modified Files: lib.php Log Message: Removes Options section from both Quiz and Question admin pages. Also sets Quiz Title, Access and Mode when it is set up as assignment. Index: lib.php =================================================================== RCS file: /cvsroot/aimmath/moodle/mod/math_assignment/lib.php,v retrieving revision 1.26 retrieving revision 1.27 diff -C2 -d -r1.26 -r1.27 *** lib.php 27 Sep 2003 13:36:33 -0000 1.26 --- lib.php 28 Sep 2003 11:57:39 -0000 1.27 *************** *** 451,454 **** --- 451,455 ---- /// Function which checks an AiM page to see if AiM has thrown an error from which we can recover + /* // remove everything up to and including the html tag if (!preg_match("/<html(?:\s[^<>]*?|)>/i", $data, $matches, PREG_OFFSET_CAPTURE)) *************** *** 469,472 **** --- 470,482 ---- } return 0; + */ + + if (strpos($data,"<html") === false) + return false; // no HTML data found; + if (strpos($data,"<head") === false) + return false; // no head section found; + if (preg_match("/<title>(.*)\bNot registered\b(.*)<\/title>/si", $data)) + return 1; // user not registered + return 0; } *************** *** 515,518 **** --- 525,532 ---- $postdata = math_assignment_add_arg_to_url_data($postdata, "DueDateMonth", $date['mon']); $postdata = math_assignment_add_arg_to_url_data($postdata, "DueDateYear", $date['year']); + $postdata = math_assignment_add_arg_to_url_data($postdata, "Title", $math_assignment->name); + $postdata = math_assignment_add_arg_to_url_data($postdata, "Weight", "1.0"); + $postdata = math_assignment_add_arg_to_url_data($postdata, "Access", "all"); + $postdata = math_assignment_add_arg_to_url_data($postdata, "Mode", "assessment"); // load the AiM page and grab the result if (!$data = math_assignment_get_aim_output($server->address, $postdata)) *************** *** 637,644 **** // find the row which gives the totals if (preg_match("/<td(?:\s[^<>]*?|)>Total<\/td>(?:.(?!<td\s|<td>))*.?<td(?:\s[^<>]*?|)>((?:.(?!<\/td>))*?.?)<\/td>(?:.(?!<td\s|<td>))*.?<td(?:\s[^<>]*?|)>((?:.(?!<\/td>))*?.?)<\/td>/si", $data, $matches)) { ! if (empty($CFG->math_assignment_grade_multiplier)) ! $CFG->math_assignment_grade_multiplier = 1.0; ! $max_grade = (int) (((float) html_entity_decode($matches[1])) * ((float) $CFG->math_assignment_grade_multiplier)); ! $grade = (int) (((float) html_entity_decode($matches[2])) * ((float) $CFG->math_assignment_grade_multiplier)); } } --- 651,658 ---- // find the row which gives the totals if (preg_match("/<td(?:\s[^<>]*?|)>Total<\/td>(?:.(?!<td\s|<td>))*.?<td(?:\s[^<>]*?|)>((?:.(?!<\/td>))*?.?)<\/td>(?:.(?!<td\s|<td>))*.?<td(?:\s[^<>]*?|)>((?:.(?!<\/td>))*?.?)<\/td>/si", $data, $matches)) { ! if (empty($CFG->math_assignment_grade_multiplier)) ! $CFG->math_assignment_grade_multiplier = 1.0; ! $max_grade = (int) (((float) html_entity_decode($matches[1])) * ((float) $CFG->math_assignment_grade_multiplier)); ! $grade = (int) (((float) html_entity_decode($matches[2])) * ((float) $CFG->math_assignment_grade_multiplier)); } } *************** *** 646,649 **** --- 660,666 ---- } + // remove Options section (from both Subject and Quiz administration) + $out = preg_replace("/<a name=\"Options\"[\s\S]*?<hr noshade=\"true\" \/>/","",$out); + // covert the URLs if ($old_url) { *************** *** 819,858 **** if ($students) { foreach ($students as $key => $student) { ! if ($user = get_record_sql("SELECT firstname, lastname, email, mailformat, picture FROM {$CFG->prefix}user WHERE id = '$key' AND deleted = '0'")) { ! $students[$key]->firstname = $user->firstname; ! $students[$key]->lastname = $user->lastname; ! $students[$key]->email = $user->email; ! $students[$key]->mailformat = $user->mailformat; ! $students[$key]->picture = $user->picture; ! $grade = get_record_sql("SELECT papergrade, aimgrade, aimoverride, aimcomment FROM {$CFG->prefix}math_assignment_grades WHERE assignment = '$math_assignment->id' and userid = '$key'"); ! if ($grade) { ! $students[$key]->papergrade = $grade->papergrade; ! $students[$key]->aimgrade = $grade->aimgrade; ! $students[$key]->aimoverride = $grade->aimoverride ; ! $students[$key]->aimcomment = $grade->aimcomment; ! $students[$key]->totalgrade = math_assignment_total_grade($math_assignment, $grade); ! } ! else { ! $students[$key]->papergrade = -1; ! $students[$key]->aimgrade = -1; ! $students[$key]->aimoverride = AIMOVR_OFF ; ! $students[$key]->aimcomment = ""; ! $students[$key]->totalgrade = 0; ! } ! } ! else { ! // assume it failed because deleted was not zero ! unset($students[$key]); ! } } // sort if (strcasecmp($sortdir, "desc") == 0) ! $mult = -1; else ! $mult = 1; if (strcasecmp($sort, "id") == 0) ! uksort($students, create_function('$a, $b', 'return (($a > $b) ? 1 : -1) * ' . $mult . ';')); else ! uasort($students, create_function('$a, $b', 'return (($a->' . $sort . ' > $b->' . $sort . ') ? 1 : -1) * ' . $mult . ';')); } break; --- 836,875 ---- if ($students) { foreach ($students as $key => $student) { ! if ($user = get_record_sql("SELECT firstname, lastname, email, mailformat, picture FROM {$CFG->prefix}user WHERE id = '$key' AND deleted = '0'")) { ! $students[$key]->firstname = $user->firstname; ! $students[$key]->lastname = $user->lastname; ! $students[$key]->email = $user->email; ! $students[$key]->mailformat = $user->mailformat; ! $students[$key]->picture = $user->picture; ! $grade = get_record_sql("SELECT papergrade, aimgrade, aimoverride, aimcomment FROM {$CFG->prefix}math_assignment_grades WHERE assignment = '$math_assignment->id' and userid = '$key'"); ! if ($grade) { ! $students[$key]->papergrade = $grade->papergrade; ! $students[$key]->aimgrade = $grade->aimgrade; ! $students[$key]->aimoverride = $grade->aimoverride ; ! $students[$key]->aimcomment = $grade->aimcomment; ! $students[$key]->totalgrade = math_assignment_total_grade($math_assignment, $grade); ! } ! else { ! $students[$key]->papergrade = -1; ! $students[$key]->aimgrade = -1; ! $students[$key]->aimoverride = AIMOVR_OFF ; ! $students[$key]->aimcomment = ""; ! $students[$key]->totalgrade = 0; ! } ! } ! else { ! // assume it failed because deleted was not zero ! unset($students[$key]); ! } } // sort if (strcasecmp($sortdir, "desc") == 0) ! $mult = -1; else ! $mult = 1; if (strcasecmp($sort, "id") == 0) ! uksort($students, create_function('$a, $b', 'return (($a > $b) ? 1 : -1) * ' . $mult . ';')); else ! uasort($students, create_function('$a, $b', 'return (($a->' . $sort . ' > $b->' . $sort . ') ? 1 : -1) * ' . $mult . ';')); } break; |