From ca607d2ce0edf690dba98d722b113d42c5e2f2d5 Mon Sep 17 00:00:00 2001 From: Safat Date: Wed, 3 Jul 2024 15:59:21 +1000 Subject: [PATCH] MDL-81932 core_course: Fix communication provider change issue --- course/lib.php | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/course/lib.php b/course/lib.php index c598e3e3278..7f5aa5b8549 100644 --- a/course/lib.php +++ b/course/lib.php @@ -2293,7 +2293,8 @@ function create_course($data, $editoroptions = NULL) { if (!empty($provider)) { // Prepare the communication api data. $courseimage = course_get_courseimage($course); - $communicationroomname = !empty($data->communicationroomname) ? $data->communicationroomname : $data->fullname; + $roomnameidentifier = $provider . 'roomname'; + $communicationroomname = !empty($data->$roomnameidentifier) ? $data->$roomnameidentifier : $data->fullname; // Communication api call. $communication = \core_communication\api::load_by_instance( @@ -2455,8 +2456,9 @@ function update_course($data, $editoroptions = NULL) { $courseimage = course_get_courseimage($data); // This nasty logic is here because of hide course doesn't pass anything in the data object. - if (!empty($data->communicationroomname)) { - $communicationroomname = $data->communicationroomname; + $roomnameidentifier = $provider . 'roomname'; + if (!empty($data->$roomnameidentifier)) { + $communicationroomname = $data->$roomnameidentifier; } else { $communicationroomname = $data->fullname ?? $oldcourse->fullname; }