diff --git a/calendar/externallib.php b/calendar/externallib.php index 0aeb9a4e8a8..e644e399710 100644 --- a/calendar/externallib.php +++ b/calendar/externallib.php @@ -356,6 +356,8 @@ class core_calendar_external extends external_api { 'description' => new external_value(PARAM_RAW, 'Description', VALUE_OPTIONAL, null, NULL_ALLOWED), 'format' => new external_format_value('description'), 'courseid' => new external_value(PARAM_INT, 'course id'), + 'categoryid' => new external_value(PARAM_INT, 'Category id (only for category events).', + VALUE_OPTIONAL), 'groupid' => new external_value(PARAM_INT, 'group id'), 'userid' => new external_value(PARAM_INT, 'user id'), 'repeatid' => new external_value(PARAM_INT, 'repeat id'), diff --git a/calendar/tests/externallib_test.php b/calendar/tests/externallib_test.php index 42e3b0ecf08..9fcf147e005 100644 --- a/calendar/tests/externallib_test.php +++ b/calendar/tests/externallib_test.php @@ -506,6 +506,7 @@ class core_calendar_externallib_testcase extends externallib_advanced_testcase { // Should be just one, since there's just one category event of the course I am enrolled (course3 - cat2b). $this->assertEquals(1, count($events['events'])); $this->assertEquals($catevent2->id, $events['events'][0]['id']); + $this->assertEquals($category2->id, $events['events'][0]['categoryid']); $this->assertEquals(0, count($events['warnings'])); // Now get category events but by course (there aren't course events in the course). @@ -536,7 +537,9 @@ class core_calendar_externallib_testcase extends externallib_advanced_testcase { $this->assertEquals(2, count($events['events'])); $this->assertEquals(0, count($events['warnings'])); $this->assertEquals($catevent1->id, $events['events'][0]['id']); + $this->assertEquals($category->id, $events['events'][0]['categoryid']); $this->assertEquals($catevent2->id, $events['events'][1]['id']); + $this->assertEquals($category2->id, $events['events'][1]['categoryid']); } /** diff --git a/calendar/upgrade.txt b/calendar/upgrade.txt index b2973e53f0a..359ee3e796b 100644 --- a/calendar/upgrade.txt +++ b/calendar/upgrade.txt @@ -1,6 +1,9 @@ This files describes API changes in /calendar/* , information provided here is intended especially for developers. +=== 3.5 === +* core_calendar_external::get_calendar_events now returns the categoryid for category events. + === 3.4 === * calendar_get_mini, and calendar_get_upcoming have been deprecated. Please update to use the new exporters and renderers. * added core_calendar_get_valid_event_timestart_range and core_calendar_event_timestart_updated callbacks for module events