X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fmodules%2Fmember%2Fwhat-bonus.php;h=bfc486f5bc438e13b750deba84663fc1363e0ea0;hp=8d84a59412adb76a3fbf5b85c83db6c414d8e9d2;hb=49acdb7a7adbcf25a8e8683b5581bfcec72b23bd;hpb=0715fa7aa8e5e70bcf1d957fb09ae655c3896c4e diff --git a/inc/modules/member/what-bonus.php b/inc/modules/member/what-bonus.php index 8d84a59412..bfc486f5bc 100644 --- a/inc/modules/member/what-bonus.php +++ b/inc/modules/member/what-bonus.php @@ -14,12 +14,10 @@ * $Date:: $ * * $Tag:: 0.2.1-FINAL $ * * $Author:: $ * - * Needs to be in all Files and every File needs "svn propset * - * svn:keywords Date Revision" (autoprobset!) at least!!!!!! * * -------------------------------------------------------------------- * * Copyright (c) 2003 - 2009 by Roland Haeder * - * Copyright (c) 2009, 2010 by Mailer Developer Team * - * For more information visit: http://www.mxchange.org * + * Copyright (c) 2009 - 2015 by Mailer Developer Team * + * For more information visit: http://mxchange.org * * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * @@ -39,93 +37,86 @@ // Some security stuff... if (!defined('__SECURITY')) { - die(); + exit(); } elseif (!isMember()) { redirectToIndexMemberOnlyModule(); } // Add description as navigation point -addMenuDescription('member', __FILE__); +addYouAreHereLink('member', __FILE__); if ((!isExtensionActive('bonus')) && (!isAdmin())) { - loadTemplate('admin_settings_saved', false, generateExtensionInactiveNotInstalledMessage('bonus')); + displayMessage('{%pipe,generateExtensionInactiveNotInstalledMessage=bonus%}'); return; } // END - if -if (isExtensionInstalledAndNewer('bonus', '0.6.9')) { - // Add more bonus points here - // @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`'; -} +// 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? -$lastOnline = "%s"; $ONLINE = ''; -if (isExtensionActive('autopurge')) { +if ((isExtensionActive('autopurge')) && ((getApInactiveSince() > 0))) { // Use last online timestamp to keep inactive members away from here - $lastOnline = " AND `last_online` >= (UNIX_TIMESTAMP() - %s)"; - $ONLINE = getConfig('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` +$result = sqlQueryEscaped("SELECT + `userid`, + ".$pointsColumns." AS `points`, + `last_online` FROM `{?_MYSQL_PREFIX?}_user_data` WHERE - " . $USE . " > 0 AND `status`='CONFIRMED'" . $lastOnline . " + " . $pointsColumns . " > 0 AND + `status`='CONFIRMED' + " . runFilterChain('user_exclusion_sql', ' ') . " + " . $lastOnline . " ORDER BY `points` DESC, - last_online DESC, - userid ASC -LIMIT %s", + `last_online` DESC, + `userid` ASC +LIMIT {?bonus_ranks?}", array( - $ONLINE, - getConfig('bonus_ranks') + $ONLINE ), __FILE__, __LINE__); // Reset temporary variable and check for users $OUT = ''; -if (SQL_NUMROWS($result) > 0) { +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( - 'sw' => $SW, - 'cnt' => $cnt, - 'userid' => bigintval($content['userid']), - 'points' => translateComma($content['points']), - 'last_online' => generateDateTime($content['last_online'], 2) - ); + $content['count'] = $count; + $content['last_online'] = generateDateTime($content['last_online'], '2'); // Load row template - $OUT .= loadTemplate('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 = loadTemplate('member_bonus_404', true); + $OUT = loadTemplate('member_bonus_404', TRUE); } // Free memory -SQL_FREERESULT($result); +sqlFreeResult($result); // Prepare content array $content['rows'] = $OUT; // Load final template -loadTemplate('member_bonus', false, $content); +loadTemplate('member_bonus', FALSE, $content); // [EOF] ?>