MDL-61521 course: Add missing text formatting for category name

This commit is contained in:
Juan Leyva 2018-04-26 12:21:22 +02:00
parent 6fa694bef0
commit 8c9a196409
2 changed files with 14 additions and 4 deletions

View File

@ -1718,7 +1718,7 @@ class core_course_external extends external_api {
$categoryinfo = array();
$categoryinfo['id'] = $category->id;
$categoryinfo['name'] = $category->name;
$categoryinfo['name'] = external_format_string($category->name, $context);
list($categoryinfo['description'], $categoryinfo['descriptionformat']) =
external_format_text($category->description, $category->descriptionformat,
$context->id, 'coursecat', 'description', null);
@ -1870,8 +1870,12 @@ class core_course_external extends external_api {
external_validate_format($category['descriptionformat']);
$newcategory = coursecat::create($category);
$context = context_coursecat::instance($newcategory->id);
$createdcategories[] = array('id' => $newcategory->id, 'name' => $newcategory->name);
$createdcategories[] = array(
'id' => $newcategory->id,
'name' => external_format_string($newcategory->name, $context),
);
}
$transaction->allow_commit();
@ -2275,6 +2279,11 @@ class core_course_external extends external_api {
list($summary, $summaryformat) =
external_format_text($course->summary, $course->summaryformat, $coursecontext->id, 'course', 'summary', null);
$categoryname = '';
if (!empty($category)) {
$categoryname = external_format_string($category->name, $category->get_context());
}
$displayname = get_course_display_name_for_list($course);
$coursereturns = array();
$coursereturns['id'] = $course->id;
@ -2282,7 +2291,7 @@ class core_course_external extends external_api {
$coursereturns['displayname'] = external_format_string($displayname, $coursecontext->id);
$coursereturns['shortname'] = external_format_string($course->shortname, $coursecontext->id);
$coursereturns['categoryid'] = $course->category;
$coursereturns['categoryname'] = $category == null ? '' : $category->name;
$coursereturns['categoryname'] = $categoryname;
$coursereturns['summary'] = $summary;
$coursereturns['summaryformat'] = $summaryformat;
$coursereturns['summaryfiles'] = external_util::get_area_files($coursecontext->id, 'course', 'summary', false, false);

View File

@ -2043,7 +2043,7 @@ class core_course_externallib_testcase extends externallib_advanced_testcase {
global $DB;
$this->resetAfterTest(true);
$category1 = self::getDataGenerator()->create_category();
$category1 = self::getDataGenerator()->create_category(array('name' => 'Cat 1'));
$category2 = self::getDataGenerator()->create_category(array('parent' => $category1->id));
$course1 = self::getDataGenerator()->create_course(
array('category' => $category1->id, 'shortname' => 'c1', 'format' => 'topics'));
@ -2099,6 +2099,7 @@ class core_course_externallib_testcase extends externallib_advanced_testcase {
$result = external_api::clean_returnvalue(core_course_external::get_courses_by_field_returns(), $result);
$this->assertCount(1, $result['courses']);
$this->assertEquals($course1->id, $result['courses'][0]['id']);
$this->assertEquals('Cat 1', $result['courses'][0]['categoryname']);
$result = core_course_external::get_courses_by_field('shortname', 'c1');
$result = external_api::clean_returnvalue(core_course_external::get_courses_by_field_returns(), $result);