]> git.mxchange.org Git - mailer.git/blobdiff - inc/libs/rallye_functions.php
Referal system refactured (and some parts fixed), wrapper function introduced:
[mailer.git] / inc / libs / rallye_functions.php
index 795a5bc5c28940bfce9b0a3456c252afd5bddd70..c301b593e0761d68cf37d554d1f9362675dfe158 100644 (file)
@@ -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 *
@@ -108,7 +108,7 @@ LIMIT 1",
 
                        // Add userid and his ref count to table
                        $result_ref = SQL_QUERY_ESC("SELECT 
-       SUM(p.points) AS points
+       SUM(p.points) AS `points`
 FROM
        `{?_MYSQL_PREFIX?}_user_points` AS p
 LEFT JOIN
@@ -117,11 +117,11 @@ ON
        p.userid=d.userid
 WHERE
        d.`status`='CONFIRMED' AND
-       d.max_mails > 0 AND
-       d.mails_confirmed >= {?ref_payout?} AND
-       p.ref_depth=1 AND
-       p.points > 0 AND
-       d.userid=%s",
+       d.`max_mails` > 0 AND
+       d.`mails_confirmed` >= {?ref_payout?} AND
+       p.`ref_depth`=1 AND
+       p.`points` > 0 AND
+       d.`userid`=%s",
                                array(bigintval($content['userid'])), __FUNCTION__, __LINE__);
 
                        // Get points
@@ -157,7 +157,7 @@ WHERE
                if (($notify == 'Y') && ($un)) {
                        // Load email template and send it to the user
                        $message = loadEmailTemplate('member_rallye_notify', $content, $content['userid']);
-                       sendEmail($content['userid'], getMaskedMessage('RALLYE_MEMBER_NOTIFY', $title), $message);
+                       sendEmail($content['userid'], '{%message,RALLYE_MEMBER_NOTIFY=' . $title . '%}', $message);
                } // END - if
        } // END - while
 
@@ -166,7 +166,7 @@ WHERE
        if ($notify == 'Y') $templ = 'admin_rallye_notify';
 
        // Send email to admin
-       sendAdminNotification(getMaskedMessage('RALLYE_ADMIN_NOTIFY', $title), $templ, $prices);
+       sendAdminNotification('{%message,RALLYE_ADMIN_NOTIFY=' . $title . '%}', $templ, $prices);
 
        // Free memory
        SQL_FREERESULT($result_user);
@@ -211,7 +211,7 @@ ORDER BY
                SQL_FREERESULT($result_prices);
        } else {
                // No prices???
-               $prices = getMaskedMessage('RALLYE_MEMBER_NO_PRICES', $mode);
+               $prices = '{%message,RALLYE_MEMBER_NO_PRICES=' . $mode . '%}';
        }
 
        // Add last line for email mode
@@ -398,7 +398,7 @@ LIMIT 1", __FUNCTION__, __LINE__);
 
                        // Send notification to member
                        $message = loadEmailTemplate('member_rallye_notify', $content, $userid);
-                       sendEmail($userid, getMaskedMessage('RALLYE_MEMBER_NOTIFY', $title), $message);
+                       sendEmail($userid, '{%message,RALLYE_MEMBER_NOTIFY=' . $title . '%}', $message);
                } // END - if
 
                // Check if line is already included...
@@ -444,9 +444,6 @@ function markReferalRallyesAsExpired ($result) {
        // Free result
        SQL_FREERESULT($result);
 
-       // Load users array (!) with assigned prices
-       $prices = getArrayFromReferalRallyeUsers($id);
-
        // Init array
        $DATA = array();
        $count = '0';
@@ -456,13 +453,16 @@ function markReferalRallyesAsExpired ($result) {
        $DATA['end']    = generateDateTime($end  , 1);
        $DATA['now_t']  = generateDateTime(time(), 1);
 
+       // Load users array (!) with assigned prices
+       $prices = getArrayFromReferalRallyeUsers($id);
+
        // Just count...
        $total = '0';
        foreach ($prices['userid'] as $key => $userid) {
                // Check status
                //   active = 1: account is still confirmed
                //   active = 0: account is deleted or locked
-               $active = countSumTotalData($DATA['userid'][$idx], 'user_data', 'userid', 'userid', true, " AND `status`='CONFIRMED'");
+               $active = countSumTotalData($userid, 'user_data', 'userid', 'userid', true, " AND `status`='CONFIRMED'");
 
                $prices['active'][$key] = $active;
 
@@ -498,18 +498,18 @@ function markReferalRallyesAsExpired ($result) {
                        // Determine winner level
                        if ($DATA['level'] == 1) {
                                // The winner!
-                               $winnerLevel = '_gold';
+                               $winnerLevel = 'gold';
                        } elseif ($DATA['level'] == 2) {
                                // The vice winner!
-                               $winnerLevel = '_silver';
+                               $winnerLevel = 'silver';
                        } elseif ($DATA['level'] == 3) {
                                // The bronce winner
-                               $winnerLevel = '_bronce';
+                               $winnerLevel = 'bronce';
                        }
 
                        if ($DATA['points'] > 0) {
                                // Add points directly to user's account
-                               addPointsDirectly('rallye_winner' . $winnerLevel, $userid, $DATA['points']);
+                               addPointsThroughReferalSystem('rallye_winner:' . $winnerLevel, $userid, $DATA['points']);
                        } // END - if
 
                        if ($notify == 'Y') {
@@ -527,7 +527,7 @@ function markReferalRallyesAsExpired ($result) {
 
                                // Load template
                                $message = loadEmailTemplate($template, $DATA, $userid);
-                               sendEmail($userid, getMaskedMessage('RALLYE_MEMBER_EXPIRED_SUBJECT', $DATA['level']), $message);
+                               sendEmail($userid, '{%message,RALLYE_MEMBER_EXPIRED_SUBJECT=' . $DATA['level'] . '%}', $message);
                        } // END - if
 
                        // Count userid
@@ -546,7 +546,7 @@ function markReferalRallyesAsExpired ($result) {
        }
 
        // Send mail to admin
-       sendAdminNotification(getMaskedMessage('RALLYE_ADMIN_EXPIRED_SUBJECT', $title), $templ, $count);
+       sendAdminNotification('{%message,RALLYE_ADMIN_EXPIRED_SUBJECT=' . $title . '%}', $templ, $count);
 
        // Add task (we ignore the task id here)
        createNewTask('{--RALLYE_ADMIN_EXPIRED--}: ' . $title, '{--RALLYE_ADMIN_EXPIRED_TEXT--}', 'RALLYE_EXPIRED');
@@ -577,8 +577,8 @@ LIMIT %s",
                ), __FUNCTION__, __LINE__);
        while ($content = SQL_FETCHARRAY($result)) {
                // Construct the message masked and add it
-               $ret .= sprintf("%s %s %s (%s) - %s\n",
-                       translateGender($content['gender']),
+               $ret .= sprintf("{%%pipe,translateGender=%s%} %s %s (%s) - %s\n",
+                       $content['gender'],
                        $content['surname'],
                        $content['family'],
                        $content['email'],
@@ -645,7 +645,7 @@ function getArrayFromReferalRallyeUsers ($rallye) {
 
                // Points of ref's
                $result_ref = SQL_QUERY_ESC("SELECT
-       SUM(p.points) AS points
+       SUM(p.points) AS `points`
 FROM
        `{?_MYSQL_PREFIX?}_user_points` AS p
 LEFT JOIN
@@ -771,7 +771,7 @@ function purgeExpiredReferalRallyes () {
 FROM
        `{?_MYSQL_PREFIX?}_rallye_data`
 WHERE
-       `end_time` <= (UNIX_TIMESTAMP() - {?ONE_DAY?} - %s) AND
+       (UNIX_TIMESTAMP() - `end_time`) > ({?ONE_DAY?} * %s) AND
        `expired`='Y'",
                array($EXPIRE), __FUNCTION__, __LINE__);
 
@@ -782,12 +782,12 @@ WHERE
                // Expire found rallyes and notify admin
                while ($content = SQL_FETCHARRAY($result_rallye)) {
                        // Prepare data for mail template
-                       $content['start_time']  = generateDateTime($content['start_time'], 1);
-                       $content['end_time']    = generateDateTime($content['end_time']  , 1);
-                       $content['now_time']    = generateDateTime(time(), 1);
+                       $content['start_time'] = generateDateTime($content['start_time'], 1);
+                       $content['end_time']   = generateDateTime($content['end_time']  , 1);
+                       $content['now_time']   = generateDateTime(time(), 1);
 
                        // Send mail to admin
-                       sendAdminNotification(getMaskedMessage('RALLYE_ADMIN_PURGED_SUBJECT', $content['title']), 'admin_rallye_purged', $content);
+                       sendAdminNotification('{%message,RALLYE_ADMIN_PURGED_SUBJECT=' . $content['title'] . '%}', 'admin_rallye_purged', $content);
 
                        // Purge whole rallye
                        addSql(SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_rallye_data` WHERE `id`=%s LIMIT 1",
@@ -828,7 +828,7 @@ function addReferalRallyeTemplateSelection ($name = 'template', $default = '') {
 
                // Accept only template names between 1 and 255 chars length
                if ((strlen($read) < 256) && (!empty($read))) {
-                       // Valid entry found!
+                       // Valid entry found
                        $ral[$read] = $read;
                } else {
                        // Log invalid
@@ -931,7 +931,7 @@ function determineReferalRallyeMinimumUsers ($min_users) {
 
        if ($min_users > 0) {
                // Rallye ends when X members are totally in your exchange
-               $return = getMaskedMessage('RALLYE_END_USERS', $min_users);
+               $return = '{%message,RALLYE_END_USERS=' . $min_users . '%}';
        } // END - if
 
        // Return
@@ -945,18 +945,12 @@ function determineReferalRallyeMinimumPrices ($min_prices) {
 
        if ($min_prices > 0) {
                // Rallye ends when X members are totally in your exchange
-               $return = getMaskedMessage('RALLYE_END_PRICES', $min_prices);
+               $return = '{%message,RALLYE_END_PRICES=' . $min_prices . '%}';
        } // END - if
 
        // Return
        return $return;
 }
 
-// Filter for extra-autpurge
-function FILTER_RALLYE_EXTRA_AUTOPURGE () {
-       // Check expired rallyes (hard-coded 3 days limit for displaying expired rallyes!)
-       purgeExpiredReferalRallyes();
-}
-
 // [EOF]
 ?>