Skip to content

Commit d2d0bbc

Browse files
Course: Add email setting to notify students on manual course subscription - refs #3398
1 parent 6ce57a5 commit d2d0bbc

File tree

2 files changed

+39
-10
lines changed

2 files changed

+39
-10
lines changed

public/main/course_info/infocours.php

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -325,6 +325,23 @@
325325
);
326326
$globalGroup[get_lang('E-mail teacher when a new user auto-subscribes')] = $group;
327327

328+
$group = [];
329+
$group[] = $form->createElement(
330+
'radio',
331+
'email_alert_student_on_manual_subscription',
332+
get_lang('E-mail student when he is subscribed to the course'),
333+
get_lang('Enable'),
334+
1
335+
);
336+
$group[] = $form->createElement(
337+
'radio',
338+
'email_alert_student_on_manual_subscription',
339+
null,
340+
get_lang('Disable'),
341+
0
342+
);
343+
$globalGroup[get_lang('E-mail student when he is subscribed to the course')] = $group;
344+
328345
$group = [];
329346
$group[] = $form->createElement(
330347
'radio',
@@ -923,6 +940,10 @@
923940
$values['student_delete_own_publication'] = 0;
924941
}
925942

943+
if (!isset($values['email_alert_student_on_manual_subscription'])) {
944+
$values['email_alert_student_on_manual_subscription'] = 0;
945+
}
946+
926947
$documentAutoLaunch = api_get_course_setting('enable_document_auto_launch');
927948
$lpAutoLaunch = api_get_course_setting('enable_lp_auto_launch');
928949
$exerciseAutoLaunch = api_get_course_setting('enable_exercise_auto_launch');

public/main/inc/lib/course.lib.php

Lines changed: 18 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -913,17 +913,24 @@ public static function subscribeUser(
913913
)
914914
);
915915

916-
$subject = get_lang('You have been enrolled in the course').' '.$course->getTitle();
917-
$message = sprintf(get_lang('Hello %s, you have been enrolled in the course %s.'), UserManager::formatUserFullName($user, true), $course->getTitle());
916+
$sendToStudent = (int) api_get_course_setting('email_alert_student_on_manual_subscription', $course);
917+
if (1 === $sendToStudent) {
918+
$subject = get_lang('You have been enrolled in the course').' '.$course->getTitle();
919+
$message = sprintf(
920+
get_lang('Hello %s, you have been enrolled in the course %s.'),
921+
UserManager::formatUserFullName($user, true),
922+
$course->getTitle()
923+
);
918924

919-
MessageManager::send_message_simple(
920-
$userId,
921-
$subject,
922-
$message,
923-
api_get_user_id(),
924-
false,
925-
true
926-
);
925+
MessageManager::send_message_simple(
926+
$userId,
927+
$subject,
928+
$message,
929+
api_get_user_id(),
930+
false,
931+
true
932+
);
933+
}
927934

928935
$send = (int) api_get_course_setting('email_alert_to_teacher_on_new_user_in_course', $course);
929936

@@ -5301,6 +5308,7 @@ public static function getCourseSettingVariables(AppPlugin $appPlugin = null)
53015308
'email_alert_students_on_new_homework',
53025309
// Get send_mail_setting (auth)from table
53035310
'email_alert_to_teacher_on_new_user_in_course',
5311+
'email_alert_student_on_manual_subscription',
53045312
'enable_lp_auto_launch',
53055313
'enable_exercise_auto_launch',
53065314
'enable_document_auto_launch',

0 commit comments

Comments
 (0)