From ffc5dbdec1cae48e70378fa79e6ca5f60bbd18ed Mon Sep 17 00:00:00 2001 From: dongsheng Date: Wed, 2 Jul 2008 04:54:37 +0000 Subject: [PATCH] "MDL-15469, limit email notification" --- lib/datalib.php | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/lib/datalib.php b/lib/datalib.php index a91de99ab1ce6..46a10c8d11492 100644 --- a/lib/datalib.php +++ b/lib/datalib.php @@ -77,9 +77,23 @@ function setup_DB() { $dberr = ''; } if (empty($CFG->noemailever) and !empty($CFG->emailconnectionerrorsto)) { - @mail($CFG->emailconnectionerrorsto, - 'WARNING: Database connection error: '.$CFG->wwwroot, - 'Connection error: '.$CFG->wwwroot); + if (file_exists($CFG->dataroot.'/emailcount')){ + $fp = fopen($CFG->dataroot.'/emailcount', 'r'); + $content = fread($fp, 24); + if((time() - (int)$content) > 600){ + @mail($CFG->emailconnectionerrorsto, + 'WARNING: Database connection error: '.$CFG->wwwroot, + 'Connection error: '.$CFG->wwwroot); + $fp = fopen($CFG->dataroot.'/emailcount', 'w'); + fwrite($fp, time()); + } + } else { + @mail($CFG->emailconnectionerrorsto, + 'WARNING: Database connection error: '.$CFG->wwwroot, + 'Connection error: '.$CFG->wwwroot); + $fp = fopen($CFG->dataroot.'/emailcount', 'w'); + fwrite($fp, time()); + } } print_error('dbconnectionfailed', 'error', '', $dberr); }