$points = $mode;
}
+ // Check his amount first
+ $total = countSumTotalData(getConfig('bonus_userid'), 'user_points', 'points') - countSumTotalData(getConfig('bonus_userid'), 'user_data', 'used_points');
+
// Subtract points from...
switch (getConfig('bonus_mode')) {
case 'JACKPOT': // ... jackpot
if ((isExtensionActive('jackpot')) && (subtractPointsFromJackpot($points) == -1) && (getConfig('bonus_userid') > 0)) {
- // Check points amount first...
- $total = countSumTotalData(getConfig('bonus_userid'), 'user_points', 'points') - countSumTotalData(getConfig('bonus_userid'), 'user_data', 'used_points');
if ($total >= $points) {
// Subtract points from userid's account
- subtractPoints('bonus_payout_jackpot', getConfig('bonus_userid'), $points);
+ subtractPointsFromJackpot('bonus_payout_jackpot', getConfig('bonus_userid'), $points);
} // END - if
} // END - if
break;
case 'UID': // ... userid's account
- // Check his amount first
- $total = countSumTotalData(getConfig('bonus_userid'), 'user_points', 'points') - countSumTotalData(getConfig('bonus_userid'), 'user_data', 'used_points');
if ($total >= $points) {
// Subtract points from userid's account
subtractPoints('bonus_payout_userid', getConfig('bonus_userid'), $points);
if (($curr != getConfig('last_month')) && (getConfig('bonus_ranks') > 0) && (getOutputMode() != 1)) {
// Extension 'autopurge' is inactive or purging of inactive accounts is deactivated
$whereStatement1 = "WHERE `status`='CONFIRMED'";
- $whereStatement2 = getConfig('bonus_ranks');
// Shall I keep inactive members away from here? (mostly wanted in an "active-rallye" ...)
if (isExtensionActive('autopurge')) {
if (getConfig('ap_inactive_since') > 0) {
// Okay, include last online timestamp
$whereStatement1 = "WHERE `status`='CONFIRMED' AND `last_online` >= (UNIX_TIMESTAMP() - {?ap_inactive_since?})";
- $whereStatement2 = getConfig('bonus_ranks');
} // END - if
} // END - if
// Add more bonus points here
$add = '';
// @TODO Rewrite this to a filter
- if (getConfig('bonus_click_yn') == 'Y') $add .= " + `turbo_bonus`";
- if (getConfig('bonus_login_yn') == 'Y') $add .= " + `login_bonus`";
- if (getConfig('bonus_order_yn') == 'Y') $add .= " + `bonus_order`";
- if (getConfig('bonus_stats_yn') == 'Y') $add .= " + `bonus_stats`";
- if (getConfig('bonus_ref_yn') == 'Y') $add .= " + `bonus_ref`";
+ if (getConfig('bonus_click_yn') == 'Y') $add .= ' + `turbo_bonus`';
+ if (getConfig('bonus_login_yn') == 'Y') $add .= ' + `login_bonus`';
+ if (getConfig('bonus_order_yn') == 'Y') $add .= ' + `bonus_order`';
+ if (getConfig('bonus_stats_yn') == 'Y') $add .= ' + `bonus_stats`';
+ if (getConfig('bonus_ref_yn') == 'Y') $add .= ' + `bonus_ref`';
// Shall we add some entries?
if (!empty($add)) {
- $whereStatement1 .= " AND (0" . $add . ") > 0";
+ $whereStatement1 .= ' AND (0' . $add . ') > 0';
} // END - if
// Run SQL string to check for accounts
- $result_main = SQL_QUERY_ESC("SELECT `userid`, `email`, `gender`, `surname`, `family`, (0".$add.") AS points
+ $result_main = SQL_QUERY("SELECT
+ `userid`, `email`, `gender`, `surname`, `family`, (0" . $add . ") AS points
FROM
`{?_MYSQL_PREFIX?}_user_data`
-".$whereStatement1."".$add."
+" . $whereStatement1 . "
ORDER BY
`points` DESC,
`userid` ASC
-LIMIT %s",
- array($whereStatement2), __FILE__, __LINE__);
+LIMIT {?bonus_ranks?}", __FILE__, __LINE__);
// Some entries were found?
if (SQL_NUMROWS($result_main) > 0) {
$content['points'] = translateComma($content['points']);
// Load email template and email it away
- $message = loadEmailTemplate('member_bonus', $content['points'], bigintval($content['userid']));
+ $message = loadEmailTemplate('member_bonus', $content, bigintval($content['userid']));
sendEmail($content['email'], getMessage('BONUS_MONTHLY_ONLINE_BONUS'), $message);
} // END - if
} // END - while
- // Reset accounts
+ // Reset all accounts
$result = SQL_QUERY('UPDATE `{?_MYSQL_PREFIX?}_user_data`
SET
`turbo_bonus`=0,
} // END - if
//* DEBUG: */ print(__FUNCTION__.':'.$admin.'/'.$passCookie.'<br />');
- // Search in array for entry
- if (isset($GLOBALS['admin_hash'])) {
- // Use cached string
- $valPass = $GLOBALS['admin_hash'];
- } elseif ((!empty($passCookie)) && (isAdminHashSet($admin) === true) && (!empty($admin))) {
- // Login data is valid or not?
- $valPass = generatePassString(getAdminHash($admin));
-
- // Cache it away
- $GLOBALS['admin_hash'] = $valPass;
-
- // Count cache hits
- incrementStatsEntry('cache_hits');
- } elseif ((!empty($admin)) && ((!isExtensionActive('cache'))) || (isAdminHashSet($admin) === false)) {
- // Search for admin
- $result = SQL_QUERY_ESC("SELECT HIGH_PRIORITY `password` FROM `{?_MYSQL_PREFIX?}_admins` WHERE `login`='%s' LIMIT 1",
- array($admin), __FUNCTION__, __LINE__);
+ // Do we have cache?
+ if (!isset($GLOBALS['is_admin'][$admin]
+ // Search in array for entry
+ if (isset($GLOBALS['admin_hash'])) {
+ // Use cached string
+ $valPass = $GLOBALS['admin_hash'];
+ } elseif ((!empty($passCookie)) && (isAdminHashSet($admin) === true) && (!empty($admin))) {
+ // Login data is valid or not?
+ $valPass = generatePassString(getAdminHash($admin));
+
+ // Cache it away
+ $GLOBALS['admin_hash'] = $valPass;
+
+ // Count cache hits
+ incrementStatsEntry('cache_hits');
+ } elseif ((!empty($admin)) && ((!isExtensionActive('cache'))) || (isAdminHashSet($admin) === false)) {
+ // Search for admin
+ $result = SQL_QUERY_ESC("SELECT HIGH_PRIORITY `password` FROM `{?_MYSQL_PREFIX?}_admins` WHERE `login`='%s' LIMIT 1",
+ array($admin), __FUNCTION__, __LINE__);
- // Is he admin?
- $passDB = '';
- if (SQL_NUMROWS($result) == 1) {
- // Admin login was found so let's load password from DB
- list($passDB) = SQL_FETCHROW($result);
+ // Is he admin?
+ $passDB = '';
+ if (SQL_NUMROWS($result) == 1) {
+ // Admin login was found so let's load password from DB
+ list($passDB) = SQL_FETCHROW($result);
- // Temporary cache it
- setAdminHash($admin, $passDB);
+ // Temporary cache it
+ setAdminHash($admin, $passDB);
- // Generate password hash
- $valPass = generatePassString($passDB);
- } // END - if
+ // Generate password hash
+ $valPass = generatePassString($passDB);
+ } // END - if
- // Free memory
- SQL_FREERESULT($result);
- }
+ // Free memory
+ SQL_FREERESULT($result);
+ }
- if (!empty($valPass)) {
- // Check if password is valid
- //* DEBUG: */ print(__FUNCTION__ . ':(' . $valPass . '==' . $passCookie . ')='.intval($valPass == $passCookie).'<br />');
- $ret = (($valPass == $passCookie) || ((strlen($valPass) == 32) && ($valPass == md5($passCookie))) || (($valPass == '*FAILED*') && (!isExtensionActive('cache'))));
+ if (!empty($valPass)) {
+ // Check if password is valid
+ //* DEBUG: */ print(__FUNCTION__ . ':(' . $valPass . '==' . $passCookie . ')='.intval($valPass == $passCookie).'<br />');
+ $GLOBALS['is_admin'][$admin] = (($valPass == $passCookie) || ((strlen($valPass) == 32) && ($valPass == md5($passCookie))) || (($valPass == '*FAILED*') && (!isExtensionActive('cache'))));
+ } // END - if
} // END - if
// Return result of comparision
- return $ret;
+ return $GLOBALS['is_admin'][$admin];
}
// Generates a list of "max receiveable emails per day"