Merge branch 'MDL-32985_m21' of git://github.com/merrill-oakland/moodle into MOODLE_21_STABLE

This commit is contained in:
Eloy Lafuente (stronk7)
2012-06-05 02:03:06 +02:00
2 changed files with 16 additions and 7 deletions
+2 -3
View File
@@ -275,9 +275,8 @@ function cron_run() {
}
flush();
if (!empty($CFG->notifyloginfailures)) {
notify_login_failures();
mtrace('Notified login failured');
if (notify_login_failures()) {
mtrace('Notified login failures');
}
flush();
+14 -4
View File
@@ -8136,12 +8136,22 @@ function upgrade_set_timeout($max_execution_time=300) {
* @global object
* @global object
* @uses HOURSECS
* @return bool True if executed, false if not
*/
function notify_login_failures() {
global $CFG, $DB, $OUTPUT;
if (empty($CFG->notifyloginfailures)) {
return false;
}
$recip = get_users_from_config($CFG->notifyloginfailures, 'moodle/site:config');
// If it has been less than an hour, or if there are no recipients, don't execute.
if (((time() - HOURSECS) < $CFG->lastnotifyfailure) || !is_array($recip) || count($recip) <= 0) {
return false;
}
if (empty($CFG->lastnotifyfailure)) {
$CFG->lastnotifyfailure=0;
}
@@ -8218,10 +8228,8 @@ function notify_login_failures() {
}
$rs->close();
/// If we haven't run in the last hour and
/// we have something useful to report and we
/// are actually supposed to be reporting to somebody
if ((time() - HOURSECS) > $CFG->lastnotifyfailure && $count > 0 && is_array($recip) && count($recip) > 0) {
// If we have something useful to report.
if ($count > 0) {
$site = get_site();
$subject = get_string('notifyloginfailuressubject', '', format_string($site->fullname));
/// Calculate the complete body of notification (start + messages + end)
@@ -8243,6 +8251,8 @@ function notify_login_failures() {
/// Finally, delete all the temp records we have created in cache_flags
$DB->delete_records_select('cache_flags', "flagtype IN ('login_failure_by_ip', 'login_failure_by_info')");
return true;
}
/**