X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fmodules%2Fmember%2Fwhat-bonus.php;h=df6251fa0959d9abdbcdb7465c92dd4d674688df;hp=66ae60cb37ccf939fee6f73912e285e226bf802c;hb=7618bd22d09e9bddab2ca39308f6523c06dd1521;hpb=e521a48cf5d2a3090bd8d7a9cb21dfbc2dfda257 diff --git a/inc/modules/member/what-bonus.php b/inc/modules/member/what-bonus.php index 66ae60cb37..df6251fa09 100644 --- a/inc/modules/member/what-bonus.php +++ b/inc/modules/member/what-bonus.php @@ -1,7 +1,7 @@ = "0.6.9") -{ +if (isExtensionInstalledAndNewer('bonus', '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 -{ + // @TODO Rewrite this to a filter + $USE = '(0'; + if (getConfig('bonus_click_yn') == 'Y') $USE .= ' + `turbo_bonus`'; + if (getConfig('bonus_login_yn') == 'Y') $USE .= ' + `login_bonus`'; + if (getConfig('bonus_order_yn') == 'Y') $USE .= ' + `bonus_order`'; + if (getConfig('bonus_stats_yn') == 'Y') $USE .= ' + `bonus_stats`'; + if (getConfig('bonus_ref_yn') == 'Y') $USE .= ' + `bonus_ref`'; + $USE .= ')'; +} else { // Old version ??? - $USE = "turbo_bonus"; + $USE = '`turbo_bonus`'; } // Autopurge installed? -$LAST = "%s"; $ONLINE = ""; -if (EXT_IS_ACTIVE("autopurge")) -{ +$lastOnline = '%s'; $ONLINE = ''; +if (isExtensionActive('autopurge')) { // Use last online timestamp to keep inactive members away from here - $LAST = " AND last_online >= %s"; - $ONLINE = bigintval(time() - $_CONFIG['ap_inactive_since']); -} + $lastOnline = " AND `last_online` >= (UNIX_TIMESTAMP() - {?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 active_bonus, last_online FROM "._MYSQL_PREFIX."_user_data -WHERE ".$USE." > 0 AND status='CONFIRMED'".$LAST." -ORDER BY active_bonus 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 = SQL_QUERY_ESC("SELECT + `userid`, ".$USE." AS points, `last_online` +FROM + `{?_MYSQL_PREFIX?}_user_data` +WHERE + " . $USE . " > 0 AND + `status`='CONFIRMED' + " . $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 (SQL_NUMROWS($result) > 0) { // Load our winners... $SW = 2; $cnt = 1; - while(list($uid, $turbo, $last) = SQL_FETCHROW($result)) - { + while ($content = SQL_FETCHARRAY($result)) { // Prepare data for the template $content = array( - 'sw' => $SW, - 'cnt' => $cnt, - 'uid' => bigintval($uid), - 'points' => TRANSLATE_COMMA($turbo), - 'last' => MAKE_DATETIME($last, "2"), + 'sw' => $SW, + 'cnt' => $cnt, + 'userid' => $content['userid'], + 'points' => $content['points'], + '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; - } -} - else -{ + $cnt++; $SW = 3 - $SW; + } // 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); -// 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] ?>