More misc fixes and rewrites (sorry, lame description)
[mailer.git] / inc / modules / admin / what-list_refs.php
index 9abdf004802e055a60e78ef35d57d3b8ffe79bd7..8bfb68fe4b984454da7325f1ecb73ba0563a59f2 100644 (file)
 
 // Some security stuff...
 if ((!defined('__SECURITY')) || (!IS_ADMIN())) {
-       $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php";
+       $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), '/inc') + 4) . '/security.php';
        require($INC);
 }
 
 // Add description as navigation point
-ADD_DESCR("admin", __FILE__);
+ADD_DESCR('admin', __FILE__);
 
-if (!empty($_GET['u_id'])) {
+if (REQUEST_ISSET_GET('uid')) {
        // Secure userid
-       $uid = bigintval($_GET['u_id']);
+       $uid = bigintval(REQUEST_GET('uid'));
 
        // Check if the user already exists
-       $result_user = SQL_QUERY_ESC("SELECT userid FROM `"._MYSQL_PREFIX."_user_data` WHERE userid=%s LIMIT 1",
+       $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",
-                               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."<br /><br />");
-               }
+               // Get total refs
+               $menge =     GET_TOTAL_DATA($uid, 'user_data', 'userid', 'refid', true);
+               $menge_lck = GET_TOTAL_DATA($uid, 'user_data', 'userid', 'refid', true, " AND `status` != 'CONFIRMED'");
+
+               // Output info message
+               LOAD_TEMPLATE('admin_settings_saved', false, sprintf(getMessage('ADMIN_USER_TOTAL_REFS'), generateUserProfileLink(REQUEST_GET('uid')), $menge, $menge_lck));
+
+               // Load all referal 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) {
                        // List all ref levels or entries if no refback is installed
-                       $OUT = ""; $SW = 2;
+                       $OUT = ''; $SW = 2;
                        while ($levels = SQL_FETCHARRAY($result_levels)) {
                                // Insert more data
                                $levels['sw']    = $SW;
 
                                // Is the refback still active? ;-)
-                               if (EXT_IS_ACTIVE("refback")) {
+                               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",
+                                       $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";
+                                       //* 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",
-                                                       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);
+                                               // Count entries
+                                               $menge =     GET_TOTAL_DATA($uid, 'user_data', 'userid', 'refid', true);
+                                               $menge_lck = GET_TOTAL_DATA($uid, 'user_data', 'userid', 'refid', true, " AND `status` != 'CONFIRMED'");
 
                                                // 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;
+                                               $levels['info'] = sprintf(getMessage('ADMIN_USER_TOTAL_REFS'), generateUserProfileLink($uid), $menge, $menge_lck);
+
+                                               // Init variables
+                                               $OUT_REFS = ''; $SW = 2;
 
                                                // Load all refs
-                                               $OUT_REFS = ""; $SW = 2;
-                                               while (list($refid) = SQL_FETCHROW($result_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($refid), __FILE__, __LINE__);
+                                                       $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) {
@@ -129,36 +115,29 @@ ORDER BY level ASC", __FILE__, __LINE__);
                                                                $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);
+                                                               $refs_cnt = GET_TOTAL_DATA($data['userid'], 'refsystem', 'counter');
 
                                                                // 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",
+                                                                       'u_link'     => generateUserProfileLink($data['userid']),
+                                                                       'gender'     => translateGender($data['gender']),
+                                                                       'refs_link'  => '0',
                                                                        'surname'    => $data['surname'],
                                                                        'family'     => $data['family'],
-                                                                       'email'      => "[<a href=\"".CREATE_EMAIL_LINK($data['email'], "user_data")."\">".$data['email']."</a>]",
-                                                                       'status'     => TRANSLATE_STATUS($data['status']),
-                                                                       'registered' => MAKE_DATETIME($data['joined'], "3"),
+                                                                       'email'      => "[<a href=\"".generateEmailLink($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'] = ADMIN_USER_PROFILE_LINK($data['userid'], $refs_cnt, "list_refs");
+                                                               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);
+                                                               $OUT_REFS .= LOAD_TEMPLATE('admin_list_refs_row', true, $content);
                                                        } else {
                                                                // No refs found
-                                                               $OUT_REFS = LOAD_TEMPLATE("admin_list_refs_nodata", true, $refid);
+                                                               $OUT_REFS = LOAD_TEMPLATE('admin_list_refs_nodata', true, $content['refid']);
                                                        }
 
                                                        // Free result
@@ -172,42 +151,39 @@ ORDER BY level ASC", __FILE__, __LINE__);
                                                } // 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;
+                                               $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));
+                                               $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);
+                                       $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);
+                                       $refs_cnt = GET_TOTAL_DATA($levels['userid'], 'user_data', 'userid', 'refid', true);
 
                                        // 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",
+                                               'u_link'     => generateUserProfileLink($levels['userid']),
+                                               'gender'     => translateGender($levels['gender']),
+                                               'refs_link'  => '0',
                                                'surname'    => $levels['surname'],
                                                'family'     => $levels['family'],
-                                               'email'      => "[<a href=\"".CREATE_EMAIL_LINK($levels['email'], "user_data")."\">".$levels['email']."</a>]",
-                                               'status'     => TRANSLATE_STATUS($levels['status']),
-                                               'registered' => MAKE_DATETIME($levels['joined'], "3"),
+                                               'email'      => "[<a href=\"".generateEmailLink($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'] = ADMIN_USER_PROFILE_LINK($levels['userid'], $refs_cnt, "list_refs");
+                                       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);
+                                       $OUT .= LOAD_TEMPLATE('admin_list_refs_row', true, $content);
 
                                        // Switch colors
                                        $SW = 3 - $SW;
@@ -217,28 +193,28 @@ ORDER BY level ASC", __FILE__, __LINE__);
                        // Prepare content
                        $content = array(
                                'rows' => $OUT,
-                               'uid'  => ADMIN_USER_PROFILE_LINK($_GET['u_id'])
+                               'uid'  => generateUserProfileLink(REQUEST_GET('uid'))
                        );
 
                        // Load main template
-                       if (EXT_IS_ACTIVE("refback")) {
-                               LOAD_TEMPLATE("admin_list_refs2", false, $content);
+                       if (EXT_IS_ACTIVE('refback')) {
+                               LOAD_TEMPLATE('admin_list_refs2', false, $content);
                        } else {
-                               LOAD_TEMPLATE("admin_list_refs", false, $content);
+                               LOAD_TEMPLATE('admin_list_refs', false, $content);
                        }
-               } elseif (EXT_IS_ACTIVE("refback")) {
+               } elseif (EXT_IS_ACTIVE('refback')) {
                        // No levels found, very bad!
-                       LOAD_TEMPLATE("admin_settings_saved", false, ADMIN_NO_REF_LEVELS);
+                       LOAD_TEMPLATE('admin_settings_saved', false, getMessage('ADMIN_NO_REF_LEVELS'));
                } else {
                        // No refs made so far
-                       LOAD_TEMPLATE("admin_settings_saved", false, USER_REF_404);
+                       LOAD_TEMPLATE('admin_settings_saved', false, getMessage('USER_REF_404'));
                }
 
                // Free result
                SQL_FREERESULT($result_levels);
        } else {
                // User not found
-               LOAD_TEMPLATE("admin_settings_saved", false, sprintf(ADMIN_MEMBER_404, $_GET['u_id']));
+               LOAD_TEMPLATE('admin_settings_saved', false, sprintf(getMessage('ADMIN_MEMBER_404'), REQUEST_GET('uid')));
        }
 
        // Free memory
@@ -248,5 +224,5 @@ ORDER BY level ASC", __FILE__, __LINE__);
        ADD_MEMBER_SELECTION_BOX();
 }
 
-//
+// [EOF]
 ?>