X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fmodules%2Fmember%2Fwhat-bonus.php;h=bfc486f5bc438e13b750deba84663fc1363e0ea0;hp=9d340d18e7a50bffe9ced1f003742e3fa6e82254;hb=49acdb7a7adbcf25a8e8683b5581bfcec72b23bd;hpb=b7a1b50bec9d45efcf037db83b7e7c58ba2846dd diff --git a/inc/modules/member/what-bonus.php b/inc/modules/member/what-bonus.php index 9d340d18e7..bfc486f5bc 100644 --- a/inc/modules/member/what-bonus.php +++ b/inc/modules/member/what-bonus.php @@ -1,7 +1,7 @@ = "0.6.9") -{ - // Add more bonus points here - $USE = "(0"; - if ($_CONFIG['bonus_click_yn'] == "Y") $USE .= " + turbo_bonus"; - if ($_CONFIG['bonus_login_yn'] == "Y") $USE .= " + login_bonus"; - if ($_CONFIG['bonus_order_yn'] == "Y") $USE .= " + bonus_order"; - if ($_CONFIG['bonus_stats_yn'] == "Y") $USE .= " + bonus_stats"; - if ($_CONFIG['bonus_ref_yn'] == "Y") $USE .= " + bonus_ref"; - $USE .= ")"; -} - else -{ - // Old version ??? - $USE = "turbo_bonus"; -} +if ((!isExtensionActive('bonus')) && (!isAdmin())) { + displayMessage('{%pipe,generateExtensionInactiveNotInstalledMessage=bonus%}'); + return; +} // END - if + +// Add more bonus points here +$add = runFilterChain('add_bonus_points_user_columns', ''); +$pointsColumns = '`turbo_bunus`'; +if (!empty($add)) { + $pointsColumns = '(0' . $add . ')'; +} // END - if + +// Init variables +$lastOnline = '%s'; +$ONLINE = ''; // Autopurge installed? -$LAST = "%s"; $ONLINE = ""; -if (EXT_IS_ACTIVE("autopurge")) { +if ((isExtensionActive('autopurge')) && ((getApInactiveSince() > 0))) { // Use last online timestamp to keep inactive members away from here - $LAST = " AND last_online >= (UNIX_TIMESTAMP() - %s)"; - $ONLINE = $_CONFIG['ap_inactive_since']; -} + $lastOnline = ' AND (UNIX_TIMESTAMP() - `last_online`) < {?ap_inactive_since?}'; +} // END - if -// Let's check if there are some points left we can "pay"... -$result = SQL_QUERY_ESC("SELECT userid, ".$USE." AS points, last_online FROM "._MYSQL_PREFIX."_user_data -WHERE ".$USE." > 0 AND status='CONFIRMED'".$LAST." -ORDER BY points DESC, last_online DESC, userid -LIMIT %s", - array($ONLINE, $_CONFIG['bonus_ranks']), __FILE__, __LINE__); +// Let's check if there are some points left we can 'pay'... +$result = sqlQueryEscaped("SELECT + `userid`, + ".$pointsColumns." AS `points`, + `last_online` +FROM + `{?_MYSQL_PREFIX?}_user_data` +WHERE + " . $pointsColumns . " > 0 AND + `status`='CONFIRMED' + " . runFilterChain('user_exclusion_sql', ' ') . " + " . $lastOnline . " +ORDER BY + `points` DESC, + `last_online` DESC, + `userid` ASC +LIMIT {?bonus_ranks?}", + array( + $ONLINE + ), __FILE__, __LINE__); // Reset temporary variable and check for users -$OUT = ""; -if (SQL_NUMROWS($result) > 0) { +$OUT = ''; +if (!ifSqlHasZeroNumRows($result)) { // Load our winners... - $SW = 2; $cnt = 1; - while ($content = SQL_FETCHARRAY($result)) { + $count = 1; + while ($content = sqlFetchArray($result)) { // Prepare data for the template - $content = array( - $content['sw'] = $SW; - $content['cnt'] = $cnt; - $content['uid'] = bigintval($content['uid']); - $content['points'] = TRANSLATE_COMMA($content['points']); - $content['last'] = MAKE_DATETIME($content['last'], "2"); + $content['count'] = $count; + $content['last_online'] = generateDateTime($content['last_online'], '2'); // Load row template - $OUT .= LOAD_TEMPLATE("member_bonus_row", true, $content); + $OUT .= loadTemplate('member_bonus_row', TRUE, $content); - // Count one up and switch colors - $cnt++;$SW = 3 - $SW; - } + // Count one up + $count++; + } // END - while } else { // No one is interested in our "active rallye" ! :-( - $OUT = LOAD_TEMPLATE("member_bonus_404", true); + $OUT = loadTemplate('member_bonus_404', TRUE); } // Free memory -SQL_FREERESULT($result); +sqlFreeResult($result); -// Remeber row(s) for the template -define('__BONUS_ROWS', $OUT); +// Prepare content array +$content['rows'] = $OUT; // Load final template -LOAD_TEMPLATE("member_bonus"); +loadTemplate('member_bonus', FALSE, $content); -// +// [EOF] ?>