Browse Source

get_filtered_sessions and get_user_statuses_stat as per community

MOODLE_26_STABLE
Joseph Baxter 11 years ago
parent
commit
5b1f3b2390
  1. 22
      locallib.php

22
locallib.php

@ -702,8 +702,6 @@ class attendance {
if ($this->pageparams->startdate && $this->pageparams->enddate) { if ($this->pageparams->startdate && $this->pageparams->enddate) {
$where = "attendanceid = :aid AND sessdate >= :csdate AND sessdate >= :sdate AND sessdate < :edate"; $where = "attendanceid = :aid AND sessdate >= :csdate AND sessdate >= :sdate AND sessdate < :edate";
} else if ($this->pageparams->enddate) {
$where = "attendanceid = :aid AND sessdate >= :csdate AND sessdate < :edate";
} else { } else {
$where = "attendanceid = :aid AND sessdate >= :csdate"; $where = "attendanceid = :aid AND sessdate >= :csdate";
} }
@ -1190,24 +1188,6 @@ class attendance {
GROUP BY al.statusid"; GROUP BY al.statusid";
} }
}
// Make the filter array into a SQL string.
if (!empty($processed_filters)) {
$processed_filters = 'AND '.implode(' AND ', $processed_filters);
} else {
$processed_filters = '';
}
$qry = "SELECT al.statusid, count(al.statusid) AS stcnt
FROM {attendance_log} al
JOIN {attendance_sessions} ats
ON al.sessionid = ats.id
WHERE ats.attendanceid = :aid AND
ats.sessdate >= :cstartdate AND
al.studentid = :uid
$processed_filters
GROUP BY al.statusid";
if ($filters !== null) { // We do not want to cache, or use a cached version of the results when a filter is set. if ($filters !== null) { // We do not want to cache, or use a cached version of the results when a filter is set.
return $DB->get_records_sql($qry, $params); return $DB->get_records_sql($qry, $params);
@ -1216,6 +1196,8 @@ class attendance {
$this->userstatusesstat[$userid] = $DB->get_records_sql($qry, $params); $this->userstatusesstat[$userid] = $DB->get_records_sql($qry, $params);
} }
}
// Return the cached stats. // Return the cached stats.
return $this->userstatusesstat[$userid]; return $this->userstatusesstat[$userid];
} }

Loading…
Cancel
Save