]> git.mxchange.org Git - mailer.git/blobdiff - inc/modules/admin/what-list_refs.php
Rewrote 'we' word a little, rewrote mail order to use SQL_INSERTID() instead of anoth...
[mailer.git] / inc / modules / admin / what-list_refs.php
index 77912df4965568d679556de2e5329a3cfaa7d7c3..7c4d99b46210c35ce8adb71bff4bb467ec8592e1 100644 (file)
@@ -1,25 +1,18 @@
 <?php
 /************************************************************************
- * MXChange v0.2.1                                    Start: 01/28/2004 *
- * ================                             Last change: 06/10/2004 *
+ * Mailer v0.2.1-FINAL                                Start: 01/28/2004 *
+ * ===================                          Last change: 06/10/2004 *
  *                                                                      *
  * -------------------------------------------------------------------- *
  * File              : what-list_refs.php                               *
  * -------------------------------------------------------------------- *
- * Short description : Show all referals made by a member               *
+ * Short description : Show all referrals made by a member              *
  * -------------------------------------------------------------------- *
  * Kurzbeschreibung  : Alle generierten Refs eines Mitgliedes anzeigen  *
  * -------------------------------------------------------------------- *
- *                                                                      *
- *    Mod created by : Lars Moehlenbruch ( http://www.surfo.net )       *
- *                                                                      *
- * -------------------------------------------------------------------- *
- *                                                                      *
- *                 Highly modified by Roland Haeder                     *
- *                                                                      *
- * -------------------------------------------------------------------- *
- * Copyright (c) 2003 - 2008 by Roland Haeder                           *
- * For more information visit: http://www.mxchange.org                  *
+ * Copyright (c) 2003 - 2009 by Roland Haeder                           *
+ * Copyright (c) 2009 - 2012 by Mailer Developer Team                   *
+ * For more information visit: http://mxchange.org                      *
  *                                                                      *
  * This program is free software; you can redistribute it and/or modify *
  * it under the terms of the GNU General Public License as published by *
  ************************************************************************/
 
 // Some security stuff...
-if ((!defined('__SECURITY')) || (!IS_ADMIN())) {
-       $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), '/inc') + 4) . '/security.php';
-       require($INC);
-}
+if ((!defined('__SECURITY')) || (!isAdmin())) {
+       die();
+} // END - if
 
 // Add description as navigation point
-ADD_DESCR('admin', __FILE__);
+addYouAreHereLink('admin', __FILE__);
 
-if (REQUEST_ISSET_GET('uid')) {
+if (isGetRequestElementSet('userid')) {
        // Secure userid
-       $uid = bigintval(REQUEST_GET('uid'));
+       $userid = bigintval(getRequestElement('userid'));
 
-       // Check if the user already exists
-       $result_user = SQL_QUERY_ESC("SELECT userid FROM `{!_MYSQL_PREFIX!}_user_data` WHERE userid=%s LIMIT 1",
-               array($uid), __FILE__, __LINE__);
+       // Fix missing variable
+       $result_levels = false;
 
        // 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` ASC",
-                               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
-                       LOAD_TEMPLATE('admin_settings_saved', false, sprintf(getMessage('ADMIN_USER_TOTAL_REFS'), generateUserProfileLink(REQUEST_GET('uid')), $menge, $menge_lck));
-               }
+       if (fetchUserData($userid)) {
+               // Get total refs
+               $totalReferrals       = getUsersTotalReferrals($userid);
+               $totalLockedReferrals = getUsersTotalLockedReferrals($userid);
+
+               // Output info message
+               displayMessage(sprintf(getMessage('ADMIN_USER_TOTAL_REFS'), generateUserProfileLink(getRequestElement('userid')), $totalReferrals, $totalLockedReferrals));
+
+               // Load all referral levels
+               $result_levels = SQL_QUERY("SELECT
+       `level`,
+       `percents`
+FROM
+       `{?_MYSQL_PREFIX?}_refdepths`
+WHERE
+       `level` > 0
+ORDER BY
+       `level` ASC", __FILE__, __LINE__);
 
                // Are there some levels (VERY BAD IF NONE!)
-               if (SQL_NUMROWS($result_levels) > 0) {
+               if (!SQL_HASZERONUMS($result_levels)) {
                        // List all ref levels or entries if no refback is installed
-                       $OUT = ''; $SW = 2;
+                       $OUT = '';
                        while ($levels = SQL_FETCHARRAY($result_levels)) {
-                               // Insert more data
-                               $levels['sw']    = $SW;
-
-                               // 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)."<br />\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` ASC",
-                                                       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'] = sprintf(getMessage('ADMIN_USER_TOTAL_REFS'), generateUserProfileLink($uid), $menge, $menge_lck);
-
-                                               // Init variables
-                                               $OUT_REFS = ''; $SW = 2;
-
-                                               // Load all refs
-                                               while ($content = SQL_FETCHARRAY($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($content['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($content['refid']), __FILE__, __LINE__);
-
-                                                               // Load refs
-                                                               $refs_cnt = SQL_RESULT($result_cnt, 0, 0);
-
-                                                               // Free result
-                                                               SQL_FREERESULT($result_cnt);
-
-                                                               // Prepare data for the template
-                                                               $content = array(
-                                                                       'sw'         => $SW,
-                                                                       'u_link'     => generateUserProfileLink($data['userid']),
-                                                                       'gender'     => translateGender($data['gender']),
-                                                                       'refs_link'  => '0',
-                                                                       'surname'    => $data['surname'],
-                                                                       'family'     => $data['family'],
-                                                                       'email'      => "[<a href=\"".generateMemberEmailLink($data['email'], "user_data")."\">".$data['email']."</a>]",
-                                                                       'status'     => translateUserStatus($data['status']),
-                                                                       'registered' => generateDateTime($data['joined'], "3"),
-                                                               );
-
-                                                               // Check if referal count is larger 0 and update link
-                                                               if ($refs_cnt > 0) $content['refs_link'] = generateUserProfileLink($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, $content['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'] = sprintf(getMessage('ADMIN_USER_TOTAL_REFS'), generateUserProfileLink($uid), '0', '0');
-
-                                               // 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);
+                               // 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(
+                                               $userid,
+                                               $levels['level']
+                                       ), __FILE__, __LINE__);
+                               //* DEBUG: */ debugOutput($userid.'/'.$levels['level'].'/'.SQL_NUMROWS($result_refs));
+
+                               // Is there levels?
+                               if (!SQL_HASZERONUMS($result_refs)) {
+                                       // Count entries
+                                       $totalReferrals       = getUsersTotalReferrals($userid, $levels['level']);
+                                       $totalLockedReferrals = getUsersTotalLockedReferrals($userid, $levels['level']);
+
+                                       // Output info message
+                                       $levels['info'] = sprintf(getMessage('ADMIN_USER_TOTAL_REFS'), generateUserProfileLink($userid), $totalReferrals, $totalLockedReferrals);
+
+                                       // Init variables
+                                       $OUT_REFS = '';
+
+                                       // Load all refs
+                                       while ($content = SQL_FETCHARRAY($result_refs)) {
+                                               // Is the data there?
+                                               if (fetchUserData($content['refid'])) {
+                                                       // Check for referrals
+                                                       $refs_cnt = countSumTotalData(getUserData('userid'), 'user_refs', 'id', 'userid', true);
+
+                                                       // Prepare data for the template
+                                                       // @TODO Try to rewrite some to EL
+                                                       $content = array(
+                                                               'userid'     => getUserData('userid'),
+                                                               'refs_link'  => '0',
+                                                               'email'      => '[<a href="' . generateEmailLink(getUserData('email'), 'user_data') . '">' . getUserData('email') . '</a>]',
+                                                               'registered' => generateDateTime(getUserData('joined'), 3),
+                                                       );
+
+                                                       // Check if referral count is larger 0 and update link
+                                                       if ($refs_cnt > 0) {
+                                                               $content['refs_link'] = generateUserProfileLink(getUserData('userid'), $refs_cnt, 'list_refs');
+                                                       } // END - if
+
+                                                       // Load template for level one
+                                                       $OUT_REFS .= loadTemplate('admin_list_refs_row', true, $content);
+                                               } else {
+                                                       // No refs found
+                                                       $OUT_REFS = loadTemplate('admin_list_refs_nodata', true, $content);
+                                               }
+
+                                               // Add content
+                                               $levels['rows'] = $OUT_REFS;
+                                       } // END - while
                                } 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'     => generateUserProfileLink($levels['userid']),
-                                               'gender'     => translateGender($levels['gender']),
-                                               'refs_link'  => '0',
-                                               'surname'    => $levels['surname'],
-                                               'family'     => $levels['family'],
-                                               'email'      => "[<a href=\"".generateMemberEmailLink($levels['email'], "user_data")."\">".$levels['email']."</a>]",
-                                               'status'     => translateUserStatus($levels['status']),
-                                               'registered' => generateDateTime($levels['joined'], "3"),
-                                       );
-
-                                       // Check if referal count is larger 0 and update link
-                                       if ($refs_cnt > 0) $content['refs_link'] = generateUserProfileLink($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;
+                                       // Output info message
+                                       $levels['info'] = sprintf(getMessage('ADMIN_USER_TOTAL_REFS'), generateUserProfileLink($userid), 0, 0);
+
+                                       // No refs found
+                                       $levels['rows'] = loadTemplate('admin_list_refs_norefs', true, array('userid' => $userid));
                                }
+
+                               // Free result
+                               SQL_FREERESULT($result_refs);
+
+                               // Load level template
+                               $OUT .= loadTemplate('admin_list_refs_level', true, $levels);
                        } // END - while
 
                        // Prepare content
                        $content = array(
-                               'rows' => $OUT,
-                               'uid'  => generateUserProfileLink(REQUEST_GET('uid'))
+                               'rows'   => $OUT,
+                               'userid' => getRequestElement('userid')
                        );
 
                        // 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, getMessage('ADMIN_NO_REF_LEVELS'));
+                       loadTemplate('admin_list_refs', false, $content);
                } else {
                        // No refs made so far
-                       LOAD_TEMPLATE('admin_settings_saved', false, getMessage('USER_REF_404'));
+                       displayMessage('{--USER_REFERRAL_404--}');
                }
 
                // Free result
                SQL_FREERESULT($result_levels);
        } else {
                // User not found
-               LOAD_TEMPLATE('admin_settings_saved', false, sprintf(getMessage('ADMIN_MEMBER_404'), REQUEST_GET('uid')));
+               displayMessage('{%message,ADMIN_MEMBER_404=' . getRequestElement('userid') . '%}');
        }
-
-       // Free memory
-       SQL_FREERESULT($result_user);
 } else {
        // Output selection form with all confirmed user accounts listed
-       ADD_MEMBER_SELECTION_BOX();
+       addMemberSelectionBox();
 }
 
-//
+// [EOF]
 ?>