X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;ds=sidebyside;f=inc%2Flibs%2Frefback_functions.php;h=dcd553bf1724a546d801a1ae7ec7dfc672f689ec;hb=76fd13e5938a334f08e43893eb9a4ff49f72bf07;hp=820be36d6bc3e1813663ab9b1bc2633927b98db2;hpb=5f2dc5ad7c29069b55f17400e6c1c63bb89f7286;p=mailer.git diff --git a/inc/libs/refback_functions.php b/inc/libs/refback_functions.php index 820be36d6b..dcd553bf17 100644 --- a/inc/libs/refback_functions.php +++ b/inc/libs/refback_functions.php @@ -1,7 +1,7 @@ 0 ORDER BY `level` ASC", + $result_refs = SQL_QUERY('SELECT `level`, `percents` FROM `{?_MYSQL_PREFIX?}_refdepths` WHERE `level` > 0 ORDER BY `level` ASC', __FUNCTION__, __LINE__); // "Walk" through all level @@ -61,35 +62,35 @@ function addRefbackPoints ($userid, $ref, $points, $ref_points) { unset($GLOBALS['ref_level']); // "Walk" through all refids - //* DEBUG: */ print(__FUNCTION__."(".__LINE__."):userid={$userid},ref={$ref},level={$content['level']},points={$points}
"); + //* DEBUG: */ print(__FUNCTION__ . '(' . __LINE__."):userid={$userid},ref={$ref},level={$content['level']},points={$points}
"); foreach (getArrayFromRefbackLevel($userid, $content['level']) as $refid) { // Skip level zero or if both are the same if ($userid == $refid) continue; // Get refback percents $percents = getRefbackPercents($userid, $refid); - //* DEBUG: */ print(__FUNCTION__."(".__LINE__."):userid={$userid},ref={$ref},refid={$refid},points={$points},percents={$percents}
"); + //* DEBUG: */ print(__FUNCTION__ . '(' . __LINE__."):userid={$userid},ref={$ref},refid={$refid},points={$points},percents={$percents}
"); // Some percents given? if ($percents > 0) { - //* DEBUG: */ print(__FUNCTION__."(".__LINE__."):points={$points},perc={$content['percents']},percents={$percents},level={$content['level']}
"); + //* DEBUG: */ print(__FUNCTION__ . '(' . __LINE__."):points={$points},perc={$content['percents']},percents={$percents},level={$content['level']}
"); // Calculate points for refback $refback = $points * ($content['percents'] / 100) * ($percents / 100); - // Update refback table ("refid" and "userid" must be exchanged!) + // Update refback table ('refid' and 'userid' must be exchanged!) SQL_QUERY_ESC("UPDATE `{?_MYSQL_PREFIX?}_user_refs` SET `points`=`points`+%s WHERE `userid`=%s AND `refid`=%s LIMIT 1", array($refback, $refid, $userid), __FUNCTION__, __LINE__); - //* DEBUG: */ print(__FUNCTION__."(".__LINE__."):refback={$refback},userid={$userid},refid={$refid} - UPDATE! (".SQL_AFFECTEDROWS().")
"); + //* DEBUG: */ print(__FUNCTION__ . '(' . __LINE__."):refback={$refback},userid={$userid},refid={$refid} - UPDATE! (".SQL_AFFECTEDROWS().")
"); // Add points again, but only directly - //* DEBUG: */ print(__FUNCTION__."(".__LINE__."):refback={$refback}
"); + //* DEBUG: */ print(__FUNCTION__ . '(' . __LINE__."):refback={$refback}
"); addPointsDirectly(sprintf("refback:%s", $refid), $userid, $refback); // Reduce points if refid is found if ($refid == $ref) { // Reduce points here! $return = $points * ($content['percents'] / 100) - $refback; - //* DEBUG: */ print(__FUNCTION__."(".__LINE__."):points={$return} - REDUCED
"); + //* DEBUG: */ print(__FUNCTION__ . '(' . __LINE__."):points={$return} - REDUCED
"); } // END - if } // END - if } // END foreach @@ -109,40 +110,43 @@ function addRefbackPoints ($userid, $ref, $points, $ref_points) { // "Getter" for refback percents function getRefbackPercents ($userid, $ref) { //* DEBUG: */ print("----------------------- ".__FUNCTION__." - ENTRY ----------------------------------------------- ".__FUNCTION__." - EXIT ------------------------
"); - return $percents; + return $GLOBALS['refback_percents'][$userid][$ref]; } // "Getter" for userid array which will return only one entry function getArrayFromRefbackLevel ($rid, $level) { //* DEBUG: */ print("----------------------- ".__FUNCTION__." - ENTRY ----------------------------------------------- ".__FUNCTION__." - EXIT ------------------------
"); return $userIds; } @@ -181,18 +185,18 @@ function updateRefbackTable ($userid) { //* DEBUG: */ print("----------------------- ".__FUNCTION__." - ENTRY ----------------------------------------------- ".__FUNCTION__." - EXIT ------------------------
"); } @@ -288,7 +292,9 @@ function getArrayFromRefbackUserRefs ($userid, $level) { r.refid, r.refback, r.points, - d.status".$add." + d.status".$add.", + d.joined, + d.refid AS level_refid FROM `{?_MYSQL_PREFIX?}_user_refs` AS r LEFT JOIN @@ -328,8 +334,8 @@ function getArrayFromUserRefbackData ($id) { $id = bigintval($id); // Get entry from database - $result = SQL_QUERY_ESC("SELECT `id`, `refid`, `refback`, `level` FROM `{?_MYSQL_PREFIX?}_user_refs` WHERE `id`=%s AND `userid`=%s LIMIT 1", - array($id, getUserId()), __FUNCTION__, __LINE__); + $result = SQL_QUERY_ESC("SELECT `id`, `userid`, `refid`, `refback`, `level`, `points` FROM `{?_MYSQL_PREFIX?}_user_refs` WHERE `id`=%s AND `userid`=%s LIMIT 1", + array($id, getMemberId()), __FUNCTION__, __LINE__); // Is there an entry? if (SQL_NUMROWS($result) == 1) { @@ -371,7 +377,7 @@ function updateMemberRefbackPercents ($id, $percents) { // Is this valid? if (count($dummy) == 0) { - // ID does not belong to user! + // id does not belong to user! $status['message'] = getMessage('MEMBER_REFBACK_ERROR_ID_MISMATCH'); return $status; } // END - if @@ -381,7 +387,7 @@ function updateMemberRefbackPercents ($id, $percents) { // Update entry SQL_QUERY_ESC("UPDATE `{?_MYSQL_PREFIX?}_user_refs` SET `refback`='%s' WHERE `id`=%s AND `userid`=%s LIMIT 1", - array($percents, $id, getUserId()), __FUNCTION__, __LINE__); + array($percents, $id, getMemberId()), __FUNCTION__, __LINE__); // Entry updated? if (SQL_AFFECTEDROWS() < 1) { @@ -391,20 +397,16 @@ function updateMemberRefbackPercents ($id, $percents) { } // END - if // Prepare email content - $content = array( - 'percents' => translateComma($percents), - 'refid' => $dummy['refid'], - 'level' => $dummy['level'] - ); + $dummy['percents'] = $percents; // Load member email template - $mail = loadEmailTemplate('member_refback', $content, getUserId()); + $mail = loadEmailTemplate('member_refback', $dummy, $dummy['refid']); // Send email to user sendEmail($dummy['refid'], getMessage('MEMBER_REFBACK_SUBJECT'), $mail); // Send admin notification - sendAdminNotification(getMessage('ADMIN_REFBACK_SUBJECT'), 'admin_refback', $content, getUserId()); + sendAdminNotification(getMessage('ADMIN_REFBACK_SUBJECT'), 'admin_refback', $dummy, getMemberId()); // All fine! $status['ok'] = true; @@ -413,5 +415,6 @@ function updateMemberRefbackPercents ($id, $percents) { //* DEBUG: */ print("----------------------- ".__FUNCTION__." - EXIT ------------------------
"); return $status; } -// + +// [EOF] ?>