]> git.mxchange.org Git - mailer.git/blobdiff - inc/libs/rallye_functions.php
Extension ext-forced continued:
[mailer.git] / inc / libs / rallye_functions.php
index c301b593e0761d68cf37d554d1f9362675dfe158..5a0cfde17fb54d87f028579488d45bb9807093f4 100644 (file)
@@ -135,7 +135,7 @@ WHERE
                        // Add info line
                        SQL_QUERY_ESC("INSERT INTO
        `{?_MYSQL_PREFIX?}_rallye_users`
-(`rallye_id`, `userid`, `refs`, `curr_points`)
+(`rallye_id`,`userid`,`refs`,`curr_points`)
        VALUES
 (%s, %s, %s, %s)",
                                array(
@@ -182,7 +182,7 @@ function addReferalRallyePrices ($rallye, $mode = 'email') {
 
        // Load prices
        $result_prices = SQL_QUERY_ESC("SELECT
-       `price_level`, `points`, `info`
+       `price_level`,`points`,`info`
 FROM
        `{?_MYSQL_PREFIX?}_rallye_prices`
 WHERE
@@ -222,7 +222,7 @@ ORDER BY
 }
 
 //
-function addReferalRallyeTopUsers ($rallye, $default=0) {
+function addReferalRallyeTopUsers ($mode, $rallye, $default=0) {
        // Init variables
        $min_users = 0; $min_prices = 0;
 
@@ -250,7 +250,7 @@ ORDER BY
                array(bigintval($rallye)), __FUNCTION__, __LINE__);
 
        // Load users
-       $DATA = array(
+       $content = array(
                'userid'  => array(),
                'ref'     => array(),
                'cpoints' => array()
@@ -299,9 +299,9 @@ LIMIT 1",
                }
 
                // Save values to array
-               $DATA['userid'][]   = $userid;
-               $DATA['ref'][]      = $count;
-               $DATA['cpoints'][]  = $content['curr_points'];
+               $content['userid'][]   = $userid;
+               $content['ref'][]      = $count;
+               $content['cpoints'][]  = $content['curr_points'];
                $min_users  = $content['min_users'];
                $min_prices = $content['min_prices'];
        } // END - while
@@ -310,30 +310,30 @@ LIMIT 1",
        SQL_FREERESULT($result);
 
        // Sort whole array
-       array_pk_sort($DATA, array('ref', 'cpoints'), 0, 1, true);
+       array_pk_sort($content, array('ref', 'cpoints'), 0, 1, true);
 
        // Generate table
        $OUT = '';
        for ($idx = '0'; $idx < $prices; $idx++) {
                // Prepare marking of default (maybe current user's) id
                $start = ''; $end = '';
-               if (($DATA['userid'][$idx] == $default) && ($default > 0)) {
+               if (($content['userid'][$idx] == $default) && ($default > 0)) {
                        $start = '<strong>';
                        $end   = '</strong>';
                } // END - if
 
                // Prepare content
-               $content = array(
+               $row = array(
                        'idx'    => ($idx + 1),
                        'start'  => $start,
                        'end'    => $end,
-                       'userid' => $DATA['userid'][$idx],
-                       'ref'    => $DATA['ref'][$idx],
+                       'userid' => $content['userid'][$idx],
+                       'ref'    => $content['ref'][$idx],
                        'infos'  => ''
                );
 
                // Load row template and switch color
-               $OUT .= loadTemplate('guest_rallye_row', true, $content);
+               $OUT .= loadTemplate($mode . '_list_rallye_row', true, $row);
        } // END - for
 
        // Add min_prices/users
@@ -342,7 +342,7 @@ LIMIT 1",
        $content['min_users']  = bigintval($min_users);
 
        // And finnally return the output
-       return loadTemplate('guest_rallye', true, $content);
+       return loadTemplate($mode . '_list_rallye', true, $content);
 }
 
 // Run this function only when a new member has confirmed his email address!
@@ -351,12 +351,12 @@ function addUserToReferalRallye ($userid, $content = array()) {
 
        // Updated extension?
        if (isExtensionInstalledAndNewer('rallye', '0.2.0')) {
-               $add .= ', `min_users`, `min_prices`';
+               $add .= ', `min_users`,`min_prices`';
        } // END - if
 
        // Check for an auto-add rallye
        $result = SQL_QUERY("SELECT
-       `id`, `title`, `start_time`, `end_time`, `send_notify`".$add."
+       `id`,`title`,`start_time`,`end_time`,`send_notify`".$add."
 FROM
        `{?_MYSQL_PREFIX?}_rallye_data`
 WHERE
@@ -420,7 +420,7 @@ LIMIT 1",
                        // Add userid and his ref count to table
                        SQL_QUERY_ESC("INSERT INTO
        `{?_MYSQL_PREFIX?}_rallye_users`
-(`rallye_id`, `userid`, `refs`)
+(`rallye_id`,`userid`,`refs`)
        VALUES
 (%s,%s,0)",
                                array(
@@ -436,8 +436,6 @@ LIMIT 1",
 
 //
 function markReferalRallyesAsExpired ($result) {
-       global $DATA;
-
        // Load rallye data
        list($id, $title, $start, $end, $notify, $min_users, $min_prices) = SQL_FETCHROW($result);
 
@@ -445,13 +443,13 @@ function markReferalRallyesAsExpired ($result) {
        SQL_FREERESULT($result);
 
        // Init array
-       $DATA = array();
+       $content = array();
        $count = '0';
        $users = array();
-       $DATA['title']  = $title;
-       $DATA['start']  = generateDateTime($start, 1);
-       $DATA['end']    = generateDateTime($end  , 1);
-       $DATA['now_t']  = generateDateTime(time(), 1);
+       $content['title']  = $title;
+       $content['start']  = generateDateTime($start, 1);
+       $content['end']    = generateDateTime($end  , 1);
+       $content['now_t']  = generateDateTime(time(), 1);
 
        // Load users array (!) with assigned prices
        $prices = getArrayFromReferalRallyeUsers($id);
@@ -474,7 +472,7 @@ function markReferalRallyesAsExpired ($result) {
 
        if (($total < $min_prices) || ($total == '0')) {
                // Do not end this rallye!
-               unset($DATA);
+               unset($content);
                return;
        } // END - if
 
@@ -487,53 +485,54 @@ function markReferalRallyesAsExpired ($result) {
                // Allow valid and active users with at least one ref to get points
                if ((isValidUserId($userid)) && ($prices['ref'][$key] > 0) && ($prices['active'][$key] == 1) && ($prices['cpoints'][$key] > 0)) {
                        // Transfer data to array for the mail template
-                       $DATA['level']  = $prices['level'][$key];
-                       $DATA['points'] = $prices['points'][$key];
-                       $DATA['info']   = $prices['info'][$key];
-                       $DATA['ref']    = $prices['ref'][$key];
+                       $content['level']  = $prices['level'][$key];
+                       $content['points'] = $prices['points'][$key];
+                       $content['info']   = $prices['info'][$key];
+                       $content['ref']    = $prices['ref'][$key];
 
                        // Default is other
                        $winnerLevel = 'other';
 
                        // Determine winner level
-                       if ($DATA['level'] == 1) {
+                       if ($content['level'] == 1) {
                                // The winner!
                                $winnerLevel = 'gold';
-                       } elseif ($DATA['level'] == 2) {
+                       } elseif ($content['level'] == 2) {
                                // The vice winner!
                                $winnerLevel = 'silver';
-                       } elseif ($DATA['level'] == 3) {
+                       } elseif ($content['level'] == 3) {
                                // The bronce winner
                                $winnerLevel = 'bronce';
                        }
 
-                       if ($DATA['points'] > 0) {
+                       if ($content['points'] > 0) {
                                // Add points directly to user's account
-                               addPointsThroughReferalSystem('rallye_winner:' . $winnerLevel, $userid, $DATA['points']);
+                               initReferalSystem();
+                               addPointsThroughReferalSystem('rallye_winner:' . $winnerLevel, $userid, $content['points']);
                        } // END - if
 
                        if ($notify == 'Y') {
                                // Prepare infos for the mail template
-                               if (!empty($DATA['info'])) {
+                               if (!empty($content['info'])) {
                                        // Take direct infos
-                                       $DATA['infos'] = $DATA['info'];
+                                       $content['infos'] = $content['info'];
                                } else {
                                        // Take points
-                                       $DATA['infos'] = $DATA['points'] . ' {?POINTS?}';
+                                       $content['infos'] = $content['points'] . ' {?POINTS?}';
                                }
 
                                // Add suffix to template name
-                               $template = 'member_rallye_expired' . $winnerLevel;
+                               $template = 'member_rallye_expired_' . $winnerLevel;
 
                                // Load template
-                               $message = loadEmailTemplate($template, $DATA, $userid);
-                               sendEmail($userid, '{%message,RALLYE_MEMBER_EXPIRED_SUBJECT=' . $DATA['level'] . '%}', $message);
+                               $message = loadEmailTemplate($template, $content, $userid);
+                               sendEmail($userid, '{%message,RALLYE_MEMBER_EXPIRED_SUBJECT=' . $content['level'] . '%}', $message);
                        } // END - if
 
                        // Count userid
                        $count++;
                        $users['userid'][$userid] = $userid;
-                       $users['poi'][$userid] = $DATA['infos'];
+                       $users['poi'][$userid] = $content['infos'];
                } // END - if
        } // END - foreach
 
@@ -545,8 +544,11 @@ function markReferalRallyesAsExpired ($result) {
                $count = getReferalRallyeUserDataFromArray($users);
        }
 
+       // Add count
+       $content['count'] = $count;
+
        // Send mail to admin
-       sendAdminNotification('{%message,RALLYE_ADMIN_EXPIRED_SUBJECT=' . $title . '%}', $templ, $count);
+       sendAdminNotification('{%message,RALLYE_ADMIN_EXPIRED_SUBJECT=' . $title . '%}', $templ, $content);
 
        // Add task (we ignore the task id here)
        createNewTask('{--RALLYE_ADMIN_EXPIRED--}: ' . $title, '{--RALLYE_ADMIN_EXPIRED_TEXT--}', 'RALLYE_EXPIRED');
@@ -562,7 +564,7 @@ function getReferalRallyeUserDataFromArray ($userIds) {
 
        // Load users
        $result = SQL_QUERY_ESC("SELECT
-       `userid`, `gender`, `surname`, `family`, `email`
+       `userid`,`gender`,`surname`,`family`,`email`
 FROM
        `{?_MYSQL_PREFIX?}_user_data`
 WHERE
@@ -601,7 +603,7 @@ function getArrayFromReferalRallyePrices ($rallye) {
 
        // Load prices
        $result = SQL_QUERY_ESC("SELECT
-       `price_level`, `points`, `info`
+       `price_level`,`points`,`info`
 FROM
        `{?_MYSQL_PREFIX?}_rallye_prices`
 WHERE
@@ -637,7 +639,7 @@ function getArrayFromReferalRallyeUsers ($rallye) {
        );
 
        // Load users                          userid    old   points earned
-       $result_user = SQL_QUERY_ESC("SELECT `userid`, `refs`, `curr_points` FROM `{?_MYSQL_PREFIX?}_rallye_users` WHERE `rallye_id`=%s ORDER BY `userid` ASC",
+       $result_user = SQL_QUERY_ESC("SELECT `userid`,`refs`,`curr_points` FROM `{?_MYSQL_PREFIX?}_rallye_users` WHERE `rallye_id`=%s ORDER BY `userid` ASC",
                array(bigintval($rallye)), __FUNCTION__, __LINE__);
        while ($content = SQL_FETCHARRAY($result_user)) {
                // Load current ref count
@@ -701,12 +703,12 @@ LIMIT 1",
 }
 
 // @TODO This function does not load min_users, min_prices, please encapsulate loading rallye data with e.g. getRallyeDataFromId()
-function addReferalRallyeWinners ($rallye, $default=0) {
+function addReferalRallyeWinners ($mode, $rallye, $default=0) {
        // First check how many prices are set
        $prices = countSumTotalData(bigintval($rallye), 'rallye_prices', 'id', 'rallye_id', true);
 
        // Load data
-       $DATA = getArrayFromReferalRallyeUsers($rallye);
+       $content = getArrayFromReferalRallyeUsers($rallye);
 
        // Generate table
        $OUT = '';
@@ -714,41 +716,41 @@ function addReferalRallyeWinners ($rallye, $default=0) {
                // 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($content['userid'][$idx], 'user_data', 'userid', 'userid', true, " AND `status`='CONFIRMED'");
 
-               if ((empty($DATA['ref'][$idx])) || ($DATA['ref'][$idx] == '0') || ($active == '0') || ('' . round($DATA['cpoints'][$idx]) . '' == '0') || (empty($DATA['cpoints'][$idx]))) {
+               if ((empty($content['ref'][$idx])) || ($content['ref'][$idx] == '0') || ($active == '0') || ('' . round($content['cpoints'][$idx]) . '' == '0') || (empty($content['cpoints'][$idx]))) {
                        // Allow valid and active users with at least one ref to get points
-                       $DATA['ref'][$idx]   = '---';
-                       $DATA['userid'][$idx]   = '---';
+                       $content['ref'][$idx]   = '---';
+                       $content['userid'][$idx]   = '---';
                } // END - if
 
-               if (!empty($DATA['info'][$idx])) {
+               if (!empty($content['info'][$idx])) {
                        // Take direct infos
-                       $DATA['infos'][$idx] = $DATA['info'][$idx];
+                       $content['infos'][$idx] = $content['info'][$idx];
                } else {
                        // Take ppints
-                       $DATA['infos'][$idx] = $DATA['points'][$idx] . ' {?POINTS?}';
+                       $content['infos'][$idx] = $content['points'][$idx] . ' {?POINTS?}';
                }
 
                // Prepare marking of default (maybe current user's) id
                $start = ''; $end = '';
-               if (($DATA['userid'][$idx] == $default) && ($default > 0)) {
+               if (($content['userid'][$idx] == $default) && ($default > 0)) {
                        $start = '<strong>';
                        $end   = '</strong>';
                } // END - if
 
                // Prepare content
-               $content = array(
+               $row = array(
                        'idx'    => ($idx + 1),
-                       'userid' => $DATA['userid'][$idx],
-                       'ref'    => $DATA['ref'][$idx],
-                       'infos'  => $DATA['infos'][$idx],
+                       'userid' => $content['userid'][$idx],
+                       'ref'    => $content['ref'][$idx],
+                       'infos'  => $content['infos'][$idx],
                        'start'  => $start,
                        'end'    => $end
                );
 
                // Load row template
-               $OUT .= loadTemplate('guest_rallye_row', true, $content);
+               $OUT .= loadTemplate($mode . '_list_rallye_row', true, $row);
        } // END - for
 
        // Prepare content
@@ -759,7 +761,7 @@ function addReferalRallyeWinners ($rallye, $default=0) {
        );
 
        // Load main template and finnally return the output
-       return loadTemplate('guest_rallye', true, $content);
+       return loadTemplate($mode . '_list_rallye', true, $content);
 }
 
 //
@@ -767,7 +769,7 @@ function purgeExpiredReferalRallyes () {
        // Check for expired rallyes
        $EXPIRE = 3; // @TODO The hard-coded value...
        $result_rallye = SQL_QUERY_ESC("SELECT
-       `id`, `title`, `start_time`, `end_time`
+       `id`,`title`,`start_time`,`end_time`
 FROM
        `{?_MYSQL_PREFIX?}_rallye_data`
 WHERE