From 8c7db03a560b1d7875d3fb59647422287a88f054 Mon Sep 17 00:00:00 2001 From: David Monllao Date: Mon, 30 Oct 2017 10:53:30 +0100 Subject: [PATCH] MDL-60631 analytics: Pass evaluation analysables filters as objects --- analytics/classes/local/analyser/by_course.php | 6 +++++- analytics/classes/local/time_splitting/base.php | 4 ++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/analytics/classes/local/analyser/by_course.php b/analytics/classes/local/analyser/by_course.php index 7d9f28a7145..bbda69a1abf 100644 --- a/analytics/classes/local/analyser/by_course.php +++ b/analytics/classes/local/analyser/by_course.php @@ -44,7 +44,11 @@ abstract class by_course extends base { // Default to all system courses. if (!empty($this->options['filter'])) { - $courses = $this->options['filter']; + $courses = array(); + foreach ($this->options['filter'] as $courseid) { + $courses[$courseid] = new \stdClass(); + $courses[$courseid]->id = $courseid; + } } else { // Iterate through all potentially valid courses. $courses = get_courses('all', 'c.sortorder ASC', 'c.id'); diff --git a/analytics/classes/local/time_splitting/base.php b/analytics/classes/local/time_splitting/base.php index 11532a98127..1ee6dfb6e22 100644 --- a/analytics/classes/local/time_splitting/base.php +++ b/analytics/classes/local/time_splitting/base.php @@ -197,6 +197,10 @@ abstract class base { $dataset = $this->calculate_indicators($sampleids, $samplesorigin, $indicators, $ranges); + if (empty($dataset)) { + return false; + } + // Now that we have the indicators in place we can add the time range indicators (and target if provided) to each of them. $this->fill_dataset($dataset, $calculatedtarget);