X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=inc%2Flibs%2Fbonus_functions.php;h=68269946d8e2dc80356978972bcddfbae7e07716;hb=9a60a71dde1189e5c922a6dd377b862d08ea8f51;hp=286a79e3ee117ec9ed933d41dad273967c8d1545;hpb=c8d76610eb94093d4eed4fcd8a6cb72e74c8f6d8;p=mailer.git diff --git a/inc/libs/bonus_functions.php b/inc/libs/bonus_functions.php index 286a79e3ee..68269946d8 100644 --- a/inc/libs/bonus_functions.php +++ b/inc/libs/bonus_functions.php @@ -16,7 +16,7 @@ * $Author:: $ * * -------------------------------------------------------------------- * * Copyright (c) 2003 - 2009 by Roland Haeder * - * Copyright (c) 2009, 2010 by Mailer Developer Team * + * Copyright (c) 2009 - 2011 by Mailer Developer Team * * For more information visit: http://www.mxchange.org * * * * This program is free software; you can redistribute it and/or modify * @@ -85,7 +85,7 @@ function addTurboBonus ($mid, $userid, $type) { // Level found $points = $test[$rank - 2]; } else { - // Level not found! + // Level not found $points = '0.00000'; } } @@ -107,7 +107,9 @@ function addTurboBonus ($mid, $userid, $type) { $points ), __FUNCTION__, __LINE__); - if ((isExtensionInstalledAndNewer('bonus', '0.3.5')) && (getConfig('bonus_mode') != 'ADD') && ($points > 0)) handleBonusPoints($points); + if ((isExtensionInstalledAndNewer('bonus', '0.3.5')) && (getBonusMode() != 'ADD') && ($points > 0)) { + handleBonusPoints($points); + } // END - if } // @@ -195,7 +197,7 @@ LIMIT 1", $GLOBALS['ranking_content']['rankings'] = '{--MEMBER_BONUS_RANK_YOU_ARE_404--}'; } // END - if } else { - // No entries found! + // No entries found // @TODO Move this HTML to a template $OUT = ' @@ -214,7 +216,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') && (getBonusUserId() == '0') && (isExtensionActive('jackpot'))) { + if ((getBonusMode() == 'UID') && (getBonusUserId() == '0') && (isExtensionActive('jackpot'))) { // Update database & config updateConfiguration('bonus_mode', 'JACKPOT'); } // END - if @@ -231,7 +233,11 @@ function handleBonusPoints ($mode) { $total = getTotalPoints(getBonusUserId()); // Subtract points from... - switch (getConfig('bonus_mode')) { + switch (getBonusMode()) { + case 'ADD': // Only add them (no subtraction) + // Ignored + break; + case 'JACKPOT': // ... jackpot if ((isExtensionActive('jackpot')) && (subtractPointsFromJackpot($points) == -1) && (isValidUserId(getBonusUserId()))) { if ($total >= $points) { @@ -250,6 +256,10 @@ function handleBonusPoints ($mode) { $dummy = subtractPointsFromJackpot($points); } break; + + default: // This should not happen + debug_report_bug(__FUNCTION__, __LINE__, 'Invalid bonus-mode ' . getBonusMode() . ' detected.'); + break; } // END - switch } @@ -258,7 +268,7 @@ function purgeExpiredTurboBonus() { // Remove entries $result = SQL_QUERY('DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_bonus_turbo` WHERE `timemark` < (UNIX_TIMESTAMP() - {?bonus_timeout?})', __FUNCTION__, __LINE__); - if (SQL_AFFECTEDROWS() > 0) { + if (!SQL_HASZEROAFFECTED()) { // Send out email to admin sendAdminNotification('{--ADMIN_AUTOPURGE_TURBO_SUBJECT--}', 'admin_autopurge_turbo', SQL_AFFECTEDROWS()); } // END - if @@ -295,7 +305,7 @@ LIMIT 1', ); // Updated entry? - $bonus = (SQL_AFFECTEDROWS() == 1); + $bonus = (!SQL_HASZEROAFFECTED()); } // END - if if (($bonus === true) && (getRequestParameter('mode') == 'bonus')) { @@ -347,5 +357,29 @@ function getBonusTimeout () { return $GLOBALS[__FUNCTION__]; } +// Getter for bonus_mode +function getBonusMode () { + // Do we have cache? + if (!isset($GLOBALS[__FUNCTION__])) { + // Determine it + $GLOBALS[__FUNCTION__] = getConfig('bonus_mode'); + } // END - if + + // Return cache + return $GLOBALS[__FUNCTION__]; +} + +// Getter for bonus_ranks +function getBonusRanks () { + // Do we have cache? + if (!isset($GLOBALS[__FUNCTION__])) { + // Determine it + $GLOBALS[__FUNCTION__] = getConfig('bonus_ranks'); + } // END - if + + // Return cache + return $GLOBALS[__FUNCTION__]; +} + // [EOF] ?>