X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=inc%2Flibs%2Fbonus_functions.php;h=25a7974dde0fc8f4fb6b8007c8b8fff5e5325da5;hb=bb3448dff42d948cc9752f81047ada54d69e80bd;hp=8570debddff4212e612b400c22f323179dddd851;hpb=ffe213c8e3f85119ddd5544214d0de9ecb833d98;p=mailer.git diff --git a/inc/libs/bonus_functions.php b/inc/libs/bonus_functions.php index 8570debddf..25a7974dde 100644 --- a/inc/libs/bonus_functions.php +++ b/inc/libs/bonus_functions.php @@ -151,7 +151,7 @@ function addBonusRanks ($data, $type, $userid) { // Load rankings $result = SQL_QUERY_ESC("SELECT `id` FROM `{?_MYSQL_PREFIX?}_bonus_turbo` WHERE `%s`=%s ORDER BY `level` ASC LIMIT {?bonus_lines?}", array($type, $data), __FUNCTION__, __LINE__); - if (SQL_NUMROWS($result) > 0) { + if (!SQL_HASZERONUMS($result)) { // Start generating the ranking list $max = SQL_NUMROWS($result); @@ -221,7 +221,7 @@ function handleBonusPoints ($mode) { if (!isBonusRallyeActive()) return; // Switch to jackpot-mode when no UID is supplied but userid-mode is selected - if ((getConfig('bonus_mode') == 'UID') && (getConfig('bonus_userid') == '0') && (isExtensionActive('jackpot'))) { + if ((getConfig('bonus_mode') == 'UID') && (getBonusUserId() == '0') && (isExtensionActive('jackpot'))) { // Update database & config updateConfiguration('bonus_mode', 'JACKPOT'); } // END - if @@ -235,15 +235,15 @@ function handleBonusPoints ($mode) { } // Check his amount first - $total = countSumTotalData(getConfig('bonus_userid'), 'user_points', 'points') - countSumTotalData(getConfig('bonus_userid'), 'user_data', 'used_points'); + $total = getTotalPoints(getBonusUserId()); // Subtract points from... switch (getConfig('bonus_mode')) { case 'JACKPOT': // ... jackpot - if ((isExtensionActive('jackpot')) && (subtractPointsFromJackpot($points) == -1) && (getConfig('bonus_userid') > 0)) { + if ((isExtensionActive('jackpot')) && (subtractPointsFromJackpot($points) == -1) && (isValidUserId(getBonusUserId()))) { if ($total >= $points) { // Subtract points from userid's account - subtractPointsFromJackpot('bonus_payout_jackpot', getConfig('bonus_userid'), $points); + subtractPointsFromJackpot('bonus_payout_jackpot', getBonusUserId(), $points); } // END - if } // END - if break; @@ -251,7 +251,7 @@ function handleBonusPoints ($mode) { case 'UID': // ... userid's account if ($total >= $points) { // Subtract points from userid's account - subtractPoints('bonus_payout_userid', getConfig('bonus_userid'), $points); + subtractPoints('bonus_payout_userid', getBonusUserId(), $points); } elseif (isExtensionActive('jackpot')) { // Try to subtract from jackpot $dummy = subtractPointsFromJackpot($points); @@ -285,7 +285,7 @@ function FILTER_ADD_LOGIN_BONUS () { // Bonus is not given by default ;-) $bonus = false; - if ((isExtensionInstalledAndNewer('sql_patches', '0.2.8')) && (ifBonusRallyeActive()) && (getConfig('bonus_login_yn') == 'Y')) { + if ((isExtensionInstalledAndNewer('sql_patches', '0.2.8')) && (isBonusRallyeActive()) && (getConfig('bonus_login_yn') == 'Y')) { // Update last login if far enougth away // @TODO This query isn't right, it will only update if the user was for a longer time away! SQL_QUERY_ESC('UPDATE