// Let us findout courses that we can return events from.
if (!$hassystemcap) {
+ $courses = enrol_get_my_courses('id');
+ $courses = array_keys($courses);
foreach ($params['events']['courseids'] as $id) {
try {
$context = context_course::instance($id);
'warningcode' => 'nopermissions',
'message' => 'No access rights in course context '.$e->getMessage().$e->getTraceAsString()
);
- continue;
}
}
} else {
$events = external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
$this->assertEquals(1, count($events['events'])); // site.
$this->assertEquals(0, count($events['warnings']));
+
+ // Try getting a course event by its id.
+ $paramevents = array ('eventids' => array($courseevent->id));
+ $events = core_calendar_external::get_calendar_events($paramevents, $options);
+ $events = external_api::clean_returnvalue(core_calendar_external::get_calendar_events_returns(), $events);
+ $this->assertEquals(1, count($events['events']));
+ $this->assertEquals(0, count($events['warnings']));
}
/**