Commit 49da4a5f authored by David Mudrak's avatar David Mudrak
Browse files

MDL-18903 All outgoing emails can be diverted into a single address

This is highly useful when developing or debugging any emailing feature.
I am going to backport this after the end of the current Ice Age.
parent 581190fa
......@@ -360,6 +360,9 @@ $CFG->admin = 'admin';
// When working with production data on test servers, no emails should ever be send to real users
// $CFG->noemailever = true;
// Divert all outgoing emails to this address to test and debug emailing features
// $CFG->divertallemailsto = 'root@localhost.local';
// Specify prefix for fake unit test tables. If not specified only tests
// that do not need fake tables will be executed.
// $CFG->unittestprefix = 'tst_';
......@@ -4614,6 +4614,12 @@ function email_to_user($user, $from, $subject, $messagetext, $messagehtml='', $a
return true;
if (!empty($CFG->divertallemailsto)) {
$subject = "[DIVERTED {$user->email}] $subject";
$user = clone($user);
$user->email = $CFG->divertallemailsto;
// skip mail to suspended users
if (isset($user->auth) && $user->auth=='nologin') {
return true;
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment