diff --git a/main/exercice/exercise.class.php b/main/exercice/exercise.class.php
index 1cfa82abcd..a8c1265810 100644
--- a/main/exercice/exercise.class.php
+++ b/main/exercice/exercise.class.php
@@ -3292,6 +3292,72 @@ class Exercise {
);
return $return_array;
}
+ /**
+ * Sends a notification when a user ends an examn
+ *
+ */
+ function send_notification_for_questions($question_list_answers, $origin, $exe_id) {
+ if (api_get_course_setting('email_alert_manager_on_new_quiz') != 1 ) {
+ return null;
+ }
+ // Email configuration settings
+ $coursecode = api_get_course_id();
+ $course_info = api_get_course_info(api_get_course_id());
+
+ $url_email = api_get_path(WEB_CODE_PATH).'exercice/exercise_show.php?'.api_get_cidreq().'&id_session='.api_get_session_id().'&id='.$exe_id.'&action=qualify';
+ $user_info = UserManager::get_user_info_by_id(api_get_user_id());
+
+ $msg = '
'.get_lang('ExerciseAttempted').' :
+ '.get_lang('AttemptDetails').' :
+
+
+ '.get_lang('CourseName').' |
+ #course# |
+
+
+ | '.get_lang('TestAttempted').' |
+ #exercise# |
+
+
+ | '.get_lang('StudentName').' |
+ #firstName# #lastName# |
+
+
+ | '.get_lang('StudentEmail').' |
+ #email# |
+
+
';
+ $open_question_list = null;
+
+ $msg = str_replace("#email#", $user_info['email'],$msg);
+ $msg1 = str_replace("#exercise#", $this->exercise, $msg);
+ $msg = str_replace("#firstName#", $user_info['firstname'],$msg1);
+ $msg1 = str_replace("#lastName#", $user_info['lastname'],$msg);
+
+ $msg = str_replace("#course#", $course_info['name'],$msg1);
+
+ if ($origin != 'learnpath') {
+ $msg.= get_lang('ClickToCommentAndGiveFeedback').',
+ #url#';
+ }
+ $msg1 = str_replace("#url#", $url_email, $msg);
+ $mail_content = $msg1;
+ $subject = get_lang('ExerciseAttempted');
+
+ $teachers = array();
+ if (api_get_session_id()) {
+ $teachers = CourseManager::get_coach_list_from_course_code($coursecode, api_get_session_id());
+ } else {
+ $teachers = CourseManager::get_teacher_list_from_course_code($coursecode);
+ }
+
+ if (!empty($teachers)) {
+ foreach ($teachers as $user_id => $teacher_data) {
+ MessageManager::send_message_simple($user_id, $subject, $mail_content);
+ }
+ }
+
+ }
/**
* Sends a notification when a user ends an examn
diff --git a/main/exercice/exercise.lib.php b/main/exercice/exercise.lib.php
index ede1dec93e..1293e1784e 100644
--- a/main/exercice/exercise.lib.php
+++ b/main/exercice/exercise.lib.php
@@ -2305,6 +2305,9 @@ function display_question_list_by_attempt($objExercise, $exe_id, $save_user_resu
// Send notification ..
if (!api_is_allowed_to_edit(null,true)) {
+ if (api_get_course_setting('email_alert_manager_on_new_quiz') == 1 ) {
+ $objExercise->send_notification_for_questions($question_list_answers, $origin, $exe_id);
+ }
$objExercise->send_notification_for_open_questions($question_list_answers, $origin, $exe_id);
$objExercise->send_notification_for_oral_questions($question_list_answers, $origin, $exe_id);
}