Quiz submission email notification
Please refer to these notes before editing this page.
When a student clicks 'Submit all and finish' to end a quiz attempt, it is possible to configure Quiz to send email notifications. There are two types of notification: a confirmation to the student that their attempt has finished successfully, and a notification to the teacher(s) that someone has submitted an attempt. Emails are never sent for preview attempts.
Allow confirmation emails to students
Email functions in a default Moodle Quiz are turned off for both students and teachers.
In the quiz settings or "Update this quiz" link, email options are turned on under the override permissions tab. Modify the student role and change the "Get email confirmation when submitting" (mod/quiz:emailconfirmsubmission) to "Allow".
Similarly, you can override the role at the course level to turn on notification for all quizzes in that course. The site administrator can also modify the student role for the entire site by allowing the mod/quiz:emailconfirmsubmission capability.
Allow notification emails to teachers
Settings > Quiz administration > Permissions To turn on the email process for a teacher in a specific quiz, go to the permissions screen, and in the Capability column under Activity: Quiz click on the + e procedure is similar to the above. On the Override permission tab in Quiz settings, change the capability "Get email notification when an attempt is submitted" (mod/quiz:emailnotifysubmission) to "Allow" for the teacher.
Since permissions are contexual, this permission can be set on the site or course level by the site administrator..
- Note that if the quiz is set to separate groups, then teachers will only get a notification if either
- the student is in the same group as the teacher, or
- the teacher has moodle/site:accessallgroups.
How to configure the text of the emails
The subject and body of the emails are defined in the quiz.php language file. The strings are 'emailconfirmsubject', 'emailconfirmbody', 'emailnotifysubject' and 'emailnotifybody'. The $a string passed in when these language strings are loaded contains all the following information:
- $a->coursename
- The name of the course
- $a->courseshortname
- The shortname of the course
- $a->quizname
- The name of the quiz
- $a->quizreporturl
- The URL of the results overview for this quiz (.../mod/quiz/report.php?q=quizid)
- $a->quizreportlink
- The URL of the results overview URL and quiz name as a HTML link
- $a->quizreviewurl
- The URL of the review page for this attempt (.../mod/quiz/review.php?attempt=attemptid)
- $a->quizreviewlink
- The attempt review URL and quiz name as a HTML link
- $a->quizurl
- The URL of the main page of the quiz (.../mod/quiz/view.php?q=quizid)
- $a->quizlink
- The URL of the quiz and the quiz name as a HTML link
- $a->attemptsubmissiontime
- The time the attempt was submitted, formatted using userdate().
- $a->timetaken
- How long the quiz attempt lasted.
- $a->studentname
- The name of the person who submitted the quiz.
- $a->studentidnumber
- The idnumber of the person who submitted the quiz.
- $a->studentusername
- The username of the person who submitted the quiz.
- $a->username
- The name of the user the email is being sent to.
- $a->useridnumber
- The idnumber of the user the email is being sent to.
- $a->userusername
- The username of the user the email is being sent to.