0) && ($CSS != 1)) { // Extension "autopurge" is inactive or purging of inactive accounts is deactivated $WHERE1 = "WHERE status='CONFIRMED'"; $WHERE2 = 0; $WHERE3 = bigintval($CONFIG['bonus_ranks']); // Shall I keep inactive members away from here? (mostly wanted in an "active-rallye" ...) if (EXT_IS_ACTIVE("autopurge")) { // Use last online stamp only when autopurge for inactive members is activated if ($CONFIG['ap_in_since'] > 0) { // Okay, include last online timestamp $WHERE1 = "WHERE status='CONFIRMED' AND last_online >="; $WHERE2 = bigintval(time() - $CONFIG['ap_in_since']); $WHERE3 = bigintval($CONFIG['bonus_ranks']); } } // Add more bonus points here $ADD = " AND (0"; if ($CONFIG['bonus_click_yn'] == 'Y') $ADD .= " + turbo_bonus"; if ($CONFIG['bonus_login_yn'] == 'Y') $ADD .= " + login_bonus"; if ($CONFIG['bonus_order_yn'] == 'Y') $ADD .= " + bonus_order"; if ($CONFIG['bonus_stats_yn'] == 'Y') $ADD .= " + bonus_stats"; if ($CONFIG['bonus_ref_yn'] == 'Y') $ADD .= " + bonus_ref"; $ADD .= ") > 0"; // SQL string to check for accounts $result_main = SQL_QUERY_ESC("SELECT userid, email, (turbo_bonus + login_bonus + bonus_order + bonus_stats + bonus_ref) AS active_bonus FROM "._MYSQL_PREFIX."_user_data ".$WHERE1." %s".$ADD." ORDER BY active_bonus DESC, userid LIMIT %s", array($WHERE2, $WHERE3), __FILE__, __LINE__); if (SQL_NUMROWS($result_main) > 0) { // Load our winners... $UIDs = ""; while(list($uid, $email, $points) = SQL_FETCHROW($result_main)) { // Add userids in a row $UIDs .= ",'".$uid."'"; // Add points to user's account directly $result_data = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_user_points SET points=points+%s WHERE ref_depth='0' AND userid=%d LIMIT 1", array($points, bigintval($uid)), __FILE__, __LINE__); // Update mediadata as well if (GET_EXT_VERSION("mediadata") >= "0.0.4") { // Update database MEDIA_UPDATE_ENTRY(array("total_points"), "add", $points); } // Load email template and email it away $msg = LOAD_EMAIL_TEMPLATE("member_bonus", $points, bigintval($uid)); SEND_EMAIL($email, BONUS_MONTHLY_ONLINE_BONUS, $msg); } // Remove first commata $UIDs = substr($UIDs, 1); // Get current month $curr = date("m", time()); if (strlen($curr) == 1) $curr = "0".$curr; if ($curr == "00") $curr = "12"; // Reset accounts $result = SQL_QUERY("UPDATE "._MYSQL_PREFIX."_user_data SET turbo_bonus=0, login_bonus=0, bonus_order=0, bonus_stats=0, bonus_ref=0", __FILE__, __LINE__); } // Free memory SQL_FREERESULT($result_main); // Finally update database and config array $CONFIG['bonus_month'] = $curr; $result_update = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_config SET last_bonus_month='%s' WHERE config='0' LIMIT 1", array($curr), __FILE__, __LINE__); // Destroy cache } // ?>