X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fmodules%2Fadmin%2Fwhat-list_refs.php;h=f9fd9e142dda1365a93da9569c632fcedb46144f;hp=83b1760ceda9d482c048b26ac55c90a120ee923f;hb=6586600d8020147192e5f28ca2a3a0153f774d3c;hpb=f7f6e55ee0d90558ad773ce6168767c0af816696 diff --git a/inc/modules/admin/what-list_refs.php b/inc/modules/admin/what-list_refs.php index 83b1760ced..f9fd9e142d 100644 --- a/inc/modules/admin/what-list_refs.php +++ b/inc/modules/admin/what-list_refs.php @@ -6,7 +6,7 @@ * -------------------------------------------------------------------- * * File : what-list_refs.php * * -------------------------------------------------------------------- * - * Short description : Show all referrals made by a member * + * Short description : Show all referals made by a member * * -------------------------------------------------------------------- * * Kurzbeschreibung : Alle generierten Refs eines Mitgliedes anzeigen * * -------------------------------------------------------------------- * @@ -44,39 +44,175 @@ if ((!defined('__SECURITY')) || (!IS_ADMIN())) { } // Add description as navigation point -ADD_DESCR("admin", basename(__FILE__)); +ADD_DESCR("admin", __FILE__); if (!empty($_GET['u_id'])) { + // Secure userid + $uid = bigintval($_GET['u_id']); + // Check if the user already exists - $result = SQL_QUERY_ESC("SELECT userid FROM "._MYSQL_PREFIX."_user_data WHERE userid=%s LIMIT 1", - array(bigintval($_GET['u_id'])), __FILE__, __LINE__); - if (SQL_NUMROWS($result) == 1) { - // Load all referal levels - $result_levels = SQL_QUERY_ESC("SELECT d.level, d.percents, r.counter -FROM "._MYSQL_PREFIX."_refdepths AS d -LEFT JOIN "._MYSQL_PREFIX."_refsystem AS r -ON d.level=r.level -WHERE r.userid=%s -ORDER BY d.level ASC", - array(bigintval($_GET['u_id'])), __FILE__, __LINE__); + $result_user = SQL_QUERY_ESC("SELECT userid FROM "._MYSQL_PREFIX."_user_data WHERE userid=%s LIMIT 1", + array($uid), __FILE__, __LINE__); + + // User found? + if (SQL_NUMROWS($result_user) == 1) { + // Is the refback extension installed? + if (EXT_IS_ACTIVE("refback")) { + // Load all referal levels + $result_levels = SQL_QUERY("SELECT level, percents +FROM "._MYSQL_PREFIX."_refdepths +WHERE level > 0 +ORDER BY level ASC", __FILE__, __LINE__); + } else { + // Loads surname, family's name and the email address + $result = SQL_QUERY_ESC("SELECT COUNT(*) FROM "._MYSQL_PREFIX."_user_data WHERE refid=%s", + array($uid), __FILE__, __LINE__); + $result_lck = SQL_QUERY_ESC("SELECT COUNT(*) FROM "._MYSQL_PREFIX."_user_data WHERE refid=%s AND status != 'CONFIRMED' ORDER BY userid", + array($uid), __FILE__, __LINE__); + $menge = SQL_RESULT($result , 0, 0); + $menge_lck = SQL_RESULT($result_lck, 0, 0); + + // Free memory + SQL_FREERESULT($result); + SQL_FREERESULT($result_lck); + + // Query for refs + $result_levels = SQL_QUERY_ESC("SELECT userid, gender, surname, family, email, status, joined FROM "._MYSQL_PREFIX."_user_data WHERE refid=%s ORDER BY userid ASC", + array($uid), __FILE__, __LINE__); + + // Output info message + OUTPUT_HTML(ADMIN_TOTAL_REFS_1."".ADMIN_USER_PROFILE_LINK($_GET['u_id'])."".ADMIN_TOTAL_REFS_2.$menge.ADMIN_TOTAL_REFS_3.$menge_lck.ADMIN_TOTAL_REFS_4."

"); + } // Are there some levels (VERY BAD IF NONE!) if (SQL_NUMROWS($result_levels) > 0) { - // List all ref levels + // List all ref levels or entries if no refback is installed $OUT = ""; $SW = 2; while ($levels = SQL_FETCHARRAY($result_levels)) { // Insert more data $levels['sw'] = $SW; - $levels['level'] = ($levels['level'] + 1); - // Load all refs of this user - //$result_refs = SQL_QUERY_ESC("SELECT - // Load level template - $OUT .= LOAD_TEMPLATE("admin_list_refs_level", true, $levels); + // Is the refback still active? ;-) + if (EXT_IS_ACTIVE("refback")) { + // Load all refs of this user + $result_refs = SQL_QUERY_ESC("SELECT refid FROM "._MYSQL_PREFIX."_user_refs WHERE userid=%s AND level='%s' ORDER BY refid ASC", + array($uid, $levels['level']), __FILE__, __LINE__); + //* DEBUG: */ echo $uid."/".$levels['level']."/".SQL_NUMROWS($result_refs)."
\n"; + + // Do we have levels? + if (SQL_NUMROWS($result_refs) > 0) { + // Loads surname, family's name and the email address + $result = SQL_QUERY_ESC("SELECT COUNT(*) FROM "._MYSQL_PREFIX."_user_data WHERE refid=%s", + array($uid), __FILE__, __LINE__); + $result_lck = SQL_QUERY_ESC("SELECT COUNT(*) FROM "._MYSQL_PREFIX."_user_data WHERE refid=%s AND status != 'CONFIRMED' ORDER BY userid", + array($uid), __FILE__, __LINE__); + $menge = SQL_RESULT($result , 0, 0); + $menge_lck = SQL_RESULT($result_lck, 0, 0); + + // Free memory + SQL_FREERESULT($result); + SQL_FREERESULT($result_lck); + + // Output info message + $levels['info'] = ADMIN_TOTAL_REFS_1."".ADMIN_USER_PROFILE_LINK($uid)."".ADMIN_TOTAL_REFS_2.$menge.ADMIN_TOTAL_REFS_3.$menge_lck.ADMIN_TOTAL_REFS_4; + + // Load all refs + $OUT_REFS = ""; $SW = 2; + while (list($refid) = SQL_FETCHROW($result_refs)) { + // Query for data + $result_user = SQL_QUERY_ESC("SELECT userid, gender, surname, family, email, status, joined FROM "._MYSQL_PREFIX."_user_data WHERE userid=%s LIMIT 1", + array($refid), __FILE__, __LINE__); + + // Is the data there? + if (SQL_NUMROWS($result_user) == 1) { + // Load data + $data = SQL_FETCHARRAY($result_user); + + // Check for referals + $result_cnt = SQL_QUERY_ESC("SELECT COUNT(userid) FROM "._MYSQL_PREFIX."_user_data WHERE refid=%s", + array($refid), __FILE__, __LINE__); + + // Load refs + $refs_cnt = SQL_RESULT($result_cnt, 0, 0); + + // Free result + SQL_FREERESULT($result_cnt); - // Switch colors - $SW = 3 - $SW; - } // END - if + // Prepare data for the template + $content = array( + 'sw' => $SW, + 'u_link' => ADMIN_USER_PROFILE_LINK($data['userid']), + 'gender' => TRANSLATE_GENDER($data['gender']), + 'refs_link' => "0", + 'surname' => $data['surname'], + 'family' => $data['family'], + 'email' => "[".$data['email']."]", + 'status' => TRANSLATE_STATUS($data['status']), + 'registered' => MAKE_DATETIME($data['joined'], "3"), + ); + + // Check if referal count is larger 0 and update link + if ($refs_cnt > 0) $content['refs_link'] = ADMIN_USER_PROFILE_LINK($data['userid'], $refs_cnt, "list_refs"); + + // Load template for level one + $OUT_REFS .= LOAD_TEMPLATE("admin_list_refs_row", true, $content); + } else { + // No refs found + $OUT_REFS = LOAD_TEMPLATE("admin_list_refs_nodata", true, $refid); + } + + // Free result + SQL_FREERESULT($result_user); + + // Add content + $levels['rows'] = $OUT_REFS; + + // Switch colors + $SW = 3 - $SW; + } // END - while + } else { + // Output info message + $levels['info'] = ADMIN_TOTAL_REFS_1."".ADMIN_USER_PROFILE_LINK($uid)."".ADMIN_TOTAL_REFS_2."0".ADMIN_TOTAL_REFS_3."0".ADMIN_TOTAL_REFS_4; + + // No refs found + $levels['rows'] = LOAD_TEMPLATE("admin_list_refs_norefs", true, array('uid' => $uid)); + } + + // Free result + SQL_FREERESULT($result_refs); + + // Load level template + $OUT .= LOAD_TEMPLATE("admin_list_refs_level", true, $levels); + } else { + // Check for referals + $result_refs = SQL_QUERY_ESC("SELECT COUNT(userid) FROM "._MYSQL_PREFIX."_user_data WHERE refid=%s", + array(bigintval($levels['userid'])), __FILE__, __LINE__); + $refs_cnt = SQL_RESULT($result_refs, 0, 0); + SQL_FREERESULT($result_refs); + + // Prepare data for the template + $content = array( + 'sw' => $SW, + 'u_link' => ADMIN_USER_PROFILE_LINK($levels['userid']), + 'gender' => TRANSLATE_GENDER($levels['gender']), + 'refs_link' => "0", + 'surname' => $levels['surname'], + 'family' => $levels['family'], + 'email' => "[".$levels['email']."]", + 'status' => TRANSLATE_STATUS($levels['status']), + 'registered' => MAKE_DATETIME($levels['joined'], "3"), + ); + + // Check if referal count is larger 0 and update link + if ($refs_cnt > 0) $content['refs_link'] = ADMIN_USER_PROFILE_LINK($levels['userid'], $refs_cnt, "list_refs"); + + // Load template for level one + $OUT .= LOAD_TEMPLATE("admin_list_refs_row", true, $content); + + // Switch colors + $SW = 3 - $SW; + } + } // END - while // Prepare content $content = array( @@ -84,11 +220,18 @@ ORDER BY d.level ASC", 'uid' => ADMIN_USER_PROFILE_LINK($_GET['u_id']) ); - // Load mein template - LOAD_TEMPLATE("admin_list_refs", false, $content); - } else { + // Load main template + if (EXT_IS_ACTIVE("refback")) { + LOAD_TEMPLATE("admin_list_refs2", false, $content); + } else { + LOAD_TEMPLATE("admin_list_refs", false, $content); + } + } elseif (EXT_IS_ACTIVE("refback")) { // No levels found, very bad! LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_NO_REF_LEVELS); + } else { + // No refs made so far + LOAD_TEMPLATE("admin_settings_saved", false, USER_REF_404); } // Free result @@ -99,7 +242,7 @@ ORDER BY d.level ASC", } // Free memory - SQL_FREERESULT($result); + SQL_FREERESULT($result_user); } else { // Output selection form with all confirmed user accounts listed ADD_MEMBER_SELECTION_BOX();