]> git.mjollnir.org Git - moodle.git/commitdiff
"MDL-15469, limit email notification"
authordongsheng <dongsheng>
Wed, 2 Jul 2008 04:54:37 +0000 (04:54 +0000)
committerdongsheng <dongsheng>
Wed, 2 Jul 2008 04:54:37 +0000 (04:54 +0000)
lib/datalib.php

index a91de99ab1ce6ca70c146a890ffd91ffbda8b7c1..46a10c8d114927905104c0653e503f94ca8444c6 100644 (file)
@@ -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);
     }