X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=inc%2Fmonthly%2Fmonthly_beg.php;h=62d017396f93445259f05d156e38cae40ab6ed27;hb=84dd2fecd5b013cf6f4c4e7dee8b0d470b6a5f5c;hp=237c5917b6f979797ae962e3df1b2a9037f9500c;hpb=f9a9c09e1ae257449bfd98f8854e321efba1dc3c;p=mailer.git diff --git a/inc/monthly/monthly_beg.php b/inc/monthly/monthly_beg.php index 237c5917b6..62d017396f 100644 --- a/inc/monthly/monthly_beg.php +++ b/inc/monthly/monthly_beg.php @@ -1,7 +1,7 @@ \n"; - -// Get current month (2 digits) -$curr = date("m", time()); +// Debug line +//* DEBUG: */ logDebugMessage(__FILE__, __LINE__, 'Monthly reset started.'); // Check if month is done -if (($curr != getConfig('last_month')) && (getConfig('last_month') > 0) && (getConfig('beg_ranks') > 0) && ($CSS != 1)) { - // Extension "autopurge" is inactive or purging of inactive accounts is deactivated - $whereStatement1 = ""; - $whereStatement2 = bigintval(getConfig('beg_ranks')); +if ((getBegRanks() > 0) && (!isCssOutputMode())) { + // Extension 'autopurge' is inactive or purging of inactive accounts is deactivated + $whereStatement = ''; // Shall we exclude webmaster's own userid? - if ((getConfig('beg_include_own') == "N") && (getConfig('beg_uid') > 0)) { + if ((!isBegIncludeOwnEnabled()) && (isValidId(getBegUserid()))) { // Exclude it - $whereStatement1 = sprintf(" AND userid != %s", bigintval(getConfig('beg_uid'))); + $whereStatement .= ' AND `userid` != {?beg_userid?}'; } // END - if - // Let's check if there are some points left we can "pay"... - if (EXT_IS_ACTIVE("autopurge")) { - // Use last online stamp only when autopurge for inactive members is activated - if ((getConfig('ap_inactive_since') > 0) && (getConfig('beg_active') == "Y")) { - // Okay, include last online timestamp - $whereStatement1 .= sprintf(" AND last_online >= (UNIX_TIMESTAMP() - %s)", bigintval(getConfig('ap_inactive_since')));; - } // END - if + // Let's check if there are some points left we can pay... + if ((isExtensionActive('autopurge')) && (isBegActiveEnabled()) && ((getApInactiveSince() > 0))) { + // Okay, include last online timestamp + $whereStatement .= ' AND (UNIX_TIMESTAMP() - `last_online`) < {?ap_inactive_since?}'; } // END - if // SQL string to check for accounts - $result_main = SQL_QUERY_ESC("SELECT userid, email, gender, surname, family, beg_points AS points -FROM "._MYSQL_PREFIX."_user_data -WHERE status='CONFIRMED'".$whereStatement1." AND beg_points > 0 -ORDER BY beg_points DESC, userid -LIMIT %s", - array($whereStatement2), __FILE__, __LINE__); + $result_main = SQL_QUERY("SELECT + `userid`, + `beg_points` +FROM + `{?_MYSQL_PREFIX?}_user_data` +WHERE + `status`='CONFIRMED' + " . $whereStatement . " + " . runFilterChain('user_exclusion_sql', ' ') . " AND + `beg_points` > 0 +ORDER BY + `beg_points` DESC, + `userid` ASC +LIMIT {?beg_ranks?}", __FILE__, __LINE__); - if (SQL_NUMROWS($result_main) > 0) { + if (!SQL_HASZERONUMS($result_main)) { // Load our winners... while ($content = SQL_FETCHARRAY($result_main)) { // Add points to user's account directly - ADD_POINTS_REFSYSTEM("monthly_beg", $content['userid'], $content['points'], false, "0", false, "direct"); - - // Translate gender/points - $content['gender'] = TRANSLATE_GENDER($content['gender']); - $content['points'] = TRANSLATE_COMMA($content['points']); + initReferralSystem(); + addPointsThroughReferralSystem('monthly_beg', $content['userid'], $content['beg_points']); // Load email template and email it away - $msg = LOAD_EMAIL_TEMPLATE("member_beg", $content, bigintval($content['userid'])); - SEND_EMAIL($content['email'], BEG_MONTHLY_RALLYE, $msg); + $message = loadEmailTemplate('member_beg', $content, bigintval($content['userid'])); + sendEmail($content['userid'], '{--BEG_MONTHLY_RALLYE--}', $message); } // END - while // Reset accounts - $result = SQL_QUERY("UPDATE `"._MYSQL_PREFIX."_user_data` SET beg_points=0.00000 WHERE beg_points > 0", __FILE__, __LINE__); + $result = SQL_QUERY('UPDATE `{?_MYSQL_PREFIX?}_user_data` SET `beg_points`=0.00000 WHERE `beg_points` > 0', __FILE__, __LINE__); } // END - if // Free memory SQL_FREERESULT($result_main); } // END - if -// +// Debug line +//* DEBUG: */ logDebugMessage(__FILE__, __LINE__, 'Monthly reset ended.'); + +// [EOF] ?>