]> git.mxchange.org Git - mailer.git/blobdiff - inc/libs/bonus_functions.php
More queries now depends on UNIX_TIMESTAMP() SQL function, wrong index in autopurge...
[mailer.git] / inc / libs / bonus_functions.php
index 888ecab50391bb7b4cb94539cc9a09aa68f29bc5..14041197537088410364f5bdf19f86569af48595 100644 (file)
  ************************************************************************/
 
 // Some security stuff...
-if (ereg(basename(__FILE__), $_SERVER['PHP_SELF']))
-{
+if (!defined('__SECURITY')) {
        $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php";
        require($INC);
 }
+
 // This function must be run *BEFORE* a link is removed from table 'mxchange_user_links' !
 function BONUS_ADD_TURBO_POINTS($mid, $uid, $type)
 {
-       global $CONFIG;
+       global $_CONFIG;
 
        // Shall we add bonus points?
-       if ($CONFIG['bonus_active'] == "N") return;
+       if ($_CONFIG['bonus_active'] == "N") return;
 
        // Select SQL command
        $SQL = "";
        switch ($type)
        {
        case "bonusid":
-               $result = SQL_QUERY_ESC("SELECT clicks FROM "._MYSQL_PREFIX."_bonus WHERE id=%d LIMIT 1",
+               $result = SQL_QUERY_ESC("SELECT clicks FROM "._MYSQL_PREFIX."_bonus WHERE id=%s LIMIT 1",
                 array($mid), __FILE__, __LINE__);
-               $bonus = $mid; $mail = "0";
+               $bonus = $mid; $mail = 0;
                break;
 
        case "mailid" :
-               $result = SQL_QUERY_ESC("SELECT clicks FROM "._MYSQL_PREFIX."_user_stats WHERE id=%d LIMIT 1",
+               $result = SQL_QUERY_ESC("SELECT clicks FROM "._MYSQL_PREFIX."_user_stats WHERE id=%s LIMIT 1",
                 array($mid), __FILE__, __LINE__);
-               $bonus = "0"; $mail = $mid;
+               $bonus = 0; $mail = $mid;
                break;
        }
 
@@ -69,12 +69,12 @@ function BONUS_ADD_TURBO_POINTS($mid, $uid, $type)
        {
                // First rank!
                $rank = 1;
-               $points = $CONFIG['turbo_bonus'];
+               $points = $_CONFIG['turbo_bonus'];
        }
         else
        {
                // Anything else so let's explode all entered rank points
-               $test = explode(";", $CONFIG['bonus_rates']);
+               $test = explode(";", $_CONFIG['bonus_ranks']);
                if (!empty($test[$rank - 2]))
                {
                        // Level found
@@ -88,26 +88,26 @@ function BONUS_ADD_TURBO_POINTS($mid, $uid, $type)
        }
 
        // Add points to his account directly
-       $result = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_user_data SET turbo_bonus=turbo_bonus+".$points." WHERE userid=%d LIMIT 1",
+       $result = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_user_data SET turbo_bonus=turbo_bonus+".$points." WHERE userid=%s LIMIT 1",
         array(bigintval($uid)), __FILE__, __LINE__);
 
        // Rember this whole data for displaying ranking list
        $result = SQL_QUERY_ESC("INSERT INTO "._MYSQL_PREFIX."_bonus_turbo (userid, mail_id, bonus_id, level, points, timemark) VALUES ('%s', '%s', '%s', '".$rank."', '".$points."', UNIX_TIMESTAMP())",
         array(bigintval($uid), bigintval($mail), bigintval($bonus)), __FILE__, __LINE__);
 
-       if ((GET_EXT_VERSION("bonus") >= "0.3.5") && ($CONFIG['bonus_mode'] != "ADD") && ($points > 0)) BONUS_POINTS_HANDLER($points);
+       if ((GET_EXT_VERSION("bonus") >= "0.3.5") && ($_CONFIG['bonus_mode'] != "ADD") && ($points > 0)) BONUS_POINTS_HANDLER($points);
 }
 //
 function BONUS_MAKE_RANK_ROWS($data, $type, $uid)
 {
-       global $CONFIG;
+       global $_CONFIG;
        $self = false; $OUT = "";
 
        // How many ranks do we have?
-       $ranks = sizeof(explode(";", $CONFIG['bonus_rates'])) + 1;
+       $ranks = sizeof(explode(";", $_CONFIG['bonus_ranks'])) + 1;
 
        // Load current user's data
-       $result = SQL_QUERY_ESC("SELECT level, points, timemark FROM "._MYSQL_PREFIX."_bonus_turbo WHERE %s=%s AND userid=%d LIMIT 1",
+       $result = SQL_QUERY_ESC("SELECT level, points, timemark FROM "._MYSQL_PREFIX."_bonus_turbo WHERE %s=%s AND userid=%s LIMIT 1",
         array($type, $data, $uid), __FILE__, __LINE__);
        if (SQL_NUMROWS($result) == 1)
        {
@@ -128,7 +128,7 @@ function BONUS_MAKE_RANK_ROWS($data, $type, $uid)
 
        // Load rankings
        $result = SQL_QUERY_ESC("SELECT id FROM "._MYSQL_PREFIX."_bonus_turbo WHERE %s=%s ORDER BY level LIMIT %s",
-        array($type, $data, $CONFIG['bonus_lines']), __FILE__, __LINE__);
+        array($type, $data, $_CONFIG['bonus_lines']), __FILE__, __LINE__);
        if (SQL_NUMROWS($result) > 0)
        {
                // Start generating the ranking list
@@ -183,69 +183,53 @@ function BONUS_MAKE_RANK_ROWS($data, $type, $uid)
 //
 function BONUS_POINTS_HANDLER($MODE)
 {
-       global $CONFIG;
+       global $_CONFIG;
 
        // Shall we add bonus points?
-       if ($CONFIG['bonus_active'] == "N") return;
+       if ($_CONFIG['bonus_active'] == "N") return;
 
        // Switch to jackpot-mode when no UID is supplied but userid-mode is selected
-       if (($CONFIG['bonus_mode'] == "UID") && ($CONFIG['bonus_uid'] == "0")) $CONFIG['bonus_mode'] = "JACKPOT";
+       if (($_CONFIG['bonus_mode'] == "UID") && ($_CONFIG['bonus_uid'] == "0")) $_CONFIG['bonus_mode'] = "JACKPOT";
 
        if ($MODE == "login_bonus")
        {
                // Login bonus detected
-               $POINTS = $CONFIG['login_bonus'];
+               $points = $_CONFIG['login_bonus'];
        }
         else
        {
                // Direct points supplied
-               $POINTS = $MODE;
+               $points = $MODE;
        }
 
        // Subtract points from...
-       switch ($CONFIG['bonus_mode'])
+       switch ($_CONFIG['bonus_mode'])
        {
        case "JACKPOT": // ... jackpot
-               if ((SUB_JACKPOT($POINTS) == -1) && ($CONFIG['bonus_uid'] > 0))
+               if ((SUB_JACKPOT($points) == -1) && ($_CONFIG['bonus_uid'] > 0))
                {
                        // Check points amount first...
-                       $TOTAL = GET_TOTAL_DATA($CONFIG['bonus_uid'], "user_points", "points") - GET_TOTAL_DATA($CONFIG['bonus_uid'], "user_data", "used_points");
-                       if ($TOTAL >= $POINTS)
+                       $TOTAL = GET_TOTAL_DATA($_CONFIG['bonus_uid'], "user_points", "points") - GET_TOTAL_DATA($_CONFIG['bonus_uid'], "user_data", "used_points");
+                       if ($TOTAL >= $points)
                        {
                                // Subtract points from userid's account
-                               $result = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_user_data SET used_points=used_points+%s WHERE userid=%d LIMIT 1",
-                                array(bigintval($POINTS), bigintval($CONFIG['bonus_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);
-                               }
+                               SUB_POINTS($_CONFIG['bonus_uid'], $points);
                        }
                }
                break;
 
        case "UID": // ... userid's account
                // Check his amount first
-               $TOTAL = GET_TOTAL_DATA($CONFIG['bonus_uid'], "user_points", "points") - GET_TOTAL_DATA($CONFIG['bonus_uid'], "user_data", "used_points");
-               if ($TOTAL >= $POINTS)
+               $TOTAL = GET_TOTAL_DATA($_CONFIG['bonus_uid'], "user_points", "points") - GET_TOTAL_DATA($_CONFIG['bonus_uid'], "user_data", "used_points");
+               if ($TOTAL >= $points)
                {
                        // Subtract points from userid's account
-                       $result = SQL_QUERY_ESC("UPDATE "._MYSQL_PREFIX."_user_data SET used_points=used_points+%s WHERE userid=%d LIMIT 1",
-                        array(bigintval($POINTS), bigintval($CONFIG['bonus_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);
-                       }
+                       SUB_POINTS($_CONFIG['bonus_uid'], $points);
                }
                 else
                {
                        // Try to subtract from jackpot
-                       $DUMMY = SUB_JACKPOT($POINTS);
+                       $dummy = SUB_JACKPOT($points);
                }
                break;
        }
@@ -253,22 +237,12 @@ function BONUS_POINTS_HANDLER($MODE)
 //
 function BONUS_PURGE_EXPIRED_TURBO_BONUS()
 {
-       global $CONFIG;
+       global $_CONFIG;
        // Remove entries
-       $result = SQL_QUERY("DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_bonus_turbo WHERE timemark < ".(time() - $CONFIG['bonus_timeout']), __FILE__, __LINE__);
-       $DELETED = SQL_AFFECTEDROWS($result);
-       if ($DELETED > 0)
-       {
+       $result = SQL_QUERY("DELETE LOW_PRIORITY FROM "._MYSQL_PREFIX."_bonus_turbo WHERE timemark < (UNIX_TIMESTAMP() - ".$_CONFIG['bonus_timeout'].")", __FILE__, __LINE__);
+       if (SQL_AFFECTEDROWS() > 0) {
                // Send out email to admin
-               if (GET_EXT_VERSION("admins") >= "0.4.1")
-               {
-                       SEND_ADMIN_EMAILS_PRO(AUTOPURGE_ADMIN_TURBO_SUBJECT, "admin_autopurge_turbo", $DELETED, "");
-               }
-                else
-               {
-                       $msg = LOAD_EMAIL_TEMPLATE("admin_autopurge_turbo", $DELETED, "");
-                       SEND_ADMIN_EMAILS(AUTOPURGE_ADMIN_TURBO_SUBJECT, $msg);
-               }
+               SEND_ADMIN_NOTIFICATION(AUTOPURGE_ADMIN_TURBO_SUBJECT, "admin_autopurge_turbo", $DELETED, "");
        }
 }
 //