MDL-25708 recordsets - fix completion

This commit is contained in:
Eloy Lafuente (stronk7) 2011-01-02 16:39:29 +01:00
parent b967c54185
commit 419178d713
6 changed files with 38 additions and 45 deletions

View file

@ -228,15 +228,13 @@ class completion_criteria_activity extends completion_criteria {
'; ';
// Loop through completions, and mark as complete // Loop through completions, and mark as complete
if ($rs = $DB->get_recordset_sql($sql)) { $rs = $DB->get_recordset_sql($sql);
foreach ($rs as $record) { foreach ($rs as $record) {
$completion = new completion_criteria_completion((array)$record); $completion = new completion_criteria_completion((array)$record);
$completion->mark_complete($record->timecompleted); $completion->mark_complete($record->timecompleted);
}
$rs->close();
} }
$rs->close();
} }
/** /**

View file

@ -185,14 +185,12 @@ class completion_criteria_course extends completion_criteria {
"; ";
// Loop through completions, and mark as complete // Loop through completions, and mark as complete
if ($rs = $DB->get_recordset_sql($sql)) { $rs = $DB->get_recordset_sql($sql);
foreach ($rs as $record) { foreach ($rs as $record) {
$completion = new completion_criteria_completion((array)$record); $completion = new completion_criteria_completion((array)$record);
$completion->mark_complete($record->timecompleted); $completion->mark_complete($record->timecompleted);
}
$rs->close();
} }
$rs->close();
} }
/** /**

View file

@ -178,15 +178,12 @@ class completion_criteria_date extends completion_criteria {
'; ';
// Loop through completions, and mark as complete // Loop through completions, and mark as complete
if ($rs = $DB->get_recordset_sql($sql, array(time()))) { $rs = $DB->get_recordset_sql($sql, array(time()));
foreach ($rs as $record) { foreach ($rs as $record) {
$completion = new completion_criteria_completion((array)$record);
$completion = new completion_criteria_completion((array)$record); $completion->mark_complete($record->timeend);
$completion->mark_complete($record->timeend);
}
$rs->close();
} }
$rs->close();
} }
/** /**

View file

@ -219,22 +219,19 @@ class completion_criteria_duration extends completion_criteria {
// Loop through completions, and mark as complete // Loop through completions, and mark as complete
$now = time(); $now = time();
if ($rs = $DB->get_recordset_sql($sql, array($now, $now))) { $rs = $DB->get_recordset_sql($sql, array($now, $now));
foreach ($rs as $record) { foreach ($rs as $record) {
$completion = new completion_criteria_completion((array)$record); $completion = new completion_criteria_completion((array)$record);
// Use time start if not 0, otherwise use timeenrolled // Use time start if not 0, otherwise use timeenrolled
if ($record->otimestart) { if ($record->otimestart) {
$completion->mark_complete($record->ctimestart); $completion->mark_complete($record->ctimestart);
} } else {
else { $completion->mark_complete($record->ctimeenrolled);
$completion->mark_complete($record->ctimeenrolled);
}
} }
$rs->close();
} }
$rs->close();
} }
/** /**

View file

@ -214,15 +214,12 @@ class completion_criteria_grade extends completion_criteria {
'; ';
// Loop through completions, and mark as complete // Loop through completions, and mark as complete
if ($rs = $DB->get_recordset_sql($sql)) { $rs = $DB->get_recordset_sql($sql);
foreach ($rs as $record) { foreach ($rs as $record) {
$completion = new completion_criteria_completion((array)$record);
$completion = new completion_criteria_completion((array)$record); $completion->mark_complete($record->timecompleted);
$completion->mark_complete($record->timecompleted);
}
$rs->close();
} }
$rs->close();
} }
/** /**

View file

@ -118,9 +118,12 @@ function completion_cron_mark_started() {
userid userid
"; ";
// Check if result is empty
$now = time(); $now = time();
if (!$rs = $DB->get_recordset_sql($sql, array($now, $now, $now, $now))) { $rs = $DB->get_recordset_sql($sql, array($now, $now, $now, $now));
// Check if result is empty
if (!$rs->valid()) {
$rs->close(); // Not going to iterate (but exit), close rs
return; return;
} }
@ -267,8 +270,11 @@ function completion_cron_completions() {
userid userid
'; ';
$rs = $DB->get_recordset_sql($sql, array('timestarted' => $timestarted));
// Check if result is empty // Check if result is empty
if (!$rs = $DB->get_recordset_sql($sql, array('timestarted' => $timestarted))) { if (!$rs->valid()) {
$rs->close(); // Not going to iterate (but exit), close rs
return; return;
} }