0) && ($_CONFIG['beg_uid'] != $uid)) { // Update counter $result = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_user_data SET beg_clicks=beg_clicks+1 WHERE userid=%d AND status='CONFIRMED' LIMIT 1", array($uid), __FILE__, __LINE__); // Check for last entry for userid w/o IP number $result = SQL_QUERY_ESC("SELECT id FROM "._MYSQL_PREFIX."_beg_ips WHERE (timeout > ".(time() - $_CONFIG['beg_timeout'])." OR (timeout > ".(time() - $_CONFIG['beg_uid_timeout'])." AND userid=%d)) AND remote_ip='%s' LIMIT 1", array($uid, getenv('REMOTE_ADDR')), __FILE__, __LINE__); if ((SQL_NUMROWS($result) == 0) && ($points > 0) && (!$login)) { // Free memory SQL_FREERESULT($result); if (!IS_ADMIN()) { // Remember remote address, userid and timestamp for next click // but only when there is no admin begging. // Admins shall be able to test it! $result = SQL_QUERY_ESC("INSERT INTO "._MYSQL_PREFIX."_beg_ips (userid, remote_ip, timeout) VALUES('%s', '%s', UNIX_TIMESTAMP())", array($uid, getenv('REMOTE_ADDR')), __FILE__, __LINE__); } // Set mode depending on how many mails the member has to confirm $locked = false; if (($ref_payout > 0) && ($_CONFIG['allow_direct_pay'] == 'N')) $locked = true; // Is begging rallye active? if ($_CONFIG['beg_rallye'] == 'Y') { // Add points to rallye account $result = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_user_data SET beg_points=beg_points+%s WHERE userid=%d LIMIT 1", array($points, $uid), __FILE__, __LINE__); } else { // Add points to account $DEPTH = 0; ADD_POINTS_REFSYSTEM($uid, $points, false, "0", $locked, strtolower($_CONFIG['beg_mode'])); } // Subtract begged points from member account if the admin has selected one if ($_CONFIG['beg_uid'] > 0) { // Subtract from this account $result = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_user_data SET used_points=used_points+%s WHERE userid=%d LIMIT 1", array($points, bigintval($_CONFIG['beg_uid'])), __FILE__, __LINE__); // Update mediadata as well if (GET_EXT_VERSION("mediadata") >= "0.0.4") { // Update database MEDIA_UPDATE_ENTRY(array("total_points"), "sub", $points); } } // Set message define('__BEG_MSG', LOAD_TEMPLATE("beg_done", true)); } elseif ($login) { // Logged in user found! define('__BEG_MSG', LOAD_TEMPLATE("beg_login", true)); // Free memory SQL_FREERESULT($result); } else { // Free memory SQL_FREERESULT($result); // Clicked received while reload lock is active define('__BEG_MSG', LOAD_TEMPLATE("beg_failed", true)); } // Include header require_once(PATH."inc/header.php"); // Load final template LOAD_TEMPLATE("beg_link"); // Include footer require_once(PATH."inc/footer.php"); } elseif (($status != "CONFIRMED") && ($status != "failed")) { // Maybe locked/unconfirmed account? switch ($status) { case "LOCKED" : $msg = CODE_ID_LOCKED ; break; // Locked account case "UNCONFIRMED": $msg = CODE_ID_UNCONFIRMED; break; // Unconfirmed account } } elseif (($uid == "0") || ($status == "failed")) { // Inalid or locked account, so let's find out $result = SQL_QUERY_ESC("SELECT userid FROM "._MYSQL_PREFIX."_user_data WHERE nickname='%s' LIMIT 1", array($_GET['uid']), __FILE__, __LINE__); if (SQL_NUMROWS($result) == 1) { // Locked account $msg = CODE_ACCOUNT_LOCKED; } else { // Invalid nickname! (404) $msg = CODE_USER_404; } // Free memory SQL_FREERESULT($result); } elseif ($uid == $_CONFIG['beg_uid']) { // Webmaster's ID cannot beg for points! $msg = CODE_BEG_SAME_AS_OWN; } // Reload to index module die("-".$msg."-"); if ((!empty($msg)) && (!empty($msg))) LOAD_URL("modules.php?module=index&msg=".$msg); } else { // No userid entered LOAD_URL("modules.php?module=index"); } } else { // You have to configure first! LOAD_URL("install.php"); } // Really all done here... ;-) ?>