[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;
|