X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=inc%2Ffilters.php;h=7b6891497d0beeb3d1f3849adcc8b5417f3b9f25;hb=7cb246c51e8634735aaf24e546bcbc46c5ce3833;hp=8970f8ea32a71dcd71a9f1ce51849a45709502db;hpb=d52beaaad0b8388fec7f9f3cece88ef98a833751;p=mailer.git diff --git a/inc/filters.php b/inc/filters.php index 8970f8ea32..7b6891497d 100644 --- a/inc/filters.php +++ b/inc/filters.php @@ -863,5 +863,47 @@ function FILTER_FLUSH_TEMPLATE_CACHE () { } // END - if } +// Filter for loading user data +function FILTER_FETCH_USER_DATA ($userid = 0) { + // Is the userid not set? Then use member id + if (($userid == '0') || (is_null($userid))) $userid = getMemberId(); + + // Get user data + if (!fetchUserData($userid)) { + // Userid is not valid + debug_report_bug('User id '.$userid . ' is invalid.'); + } // END - if + + // Set member id + setMemberId($userid); +} + +// Filter for reseting users' last login failure, only available with latest ext-sql_patches +function FILTER_RESET_USER_LOGIN_FAILURE () { + // Is the user data valid? + if (!isMember()) { + // Do only run for logged in members + debug_report_bug('Please only run this filter for logged in users.'); + } // END - if + + // Remmeber login failures if available + if (isExtensionInstalledAndNewer('sql_patches') >= '0.6.1') { + // Reset login failures + SQL_QUERY_ESC("UPDATE + `{?_MYSQL_PREFIX?}_user_data` +SET + `login_failures`=0, + `last_failure`='0000-00-00 00:00:00' +WHERE + `userid`=%s +LIMIT 1", + array(getMemberId()), __FILE__, __LINE__); + + // Store it in session + setSession('mxchange_member_failures' , getUserData('login_failures')); + setSession('mxchange_member_last_fail', getUserData('last_failure')); + } // END - if +} + // [EOF] ?>