]> git.mxchange.org Git - mailer.git/blobdiff - inc/modules/admin/what-list_user.php
Mailer project continued:
[mailer.git] / inc / modules / admin / what-list_user.php
index d721f6f0f03ce092ab0799c09a3400d253398630..9fa32e59f105ccb9c5cc8e5457185e97ebbe7ffd 100644 (file)
@@ -44,29 +44,26 @@ if ((!defined('__SECURITY')) || (!isAdmin())) {
 addYouAreHereLink('admin', __FILE__);
 
 // Init variables
-$MORE = '';
+$moreColumns = '';
 
 // Add lock reason?
 if (isExtensionInstalledAndNewer('user', '0.3.5')) {
        // Add them...
-       $MORE .= ', UNIX_TIMESTAMP(`lock_timestamp`) AS `lock_timestamp`';
+       $moreColumns .= ', UNIX_TIMESTAMP(`lock_timestamp`) AS `lock_timestamp`';
 } // END - if
 
 // Is the extension 'country' installed?
 if (isExtensionActive('country')) {
        // Add country code
-       $MORE .= ',`country_code`';
-} else {
-       // Add direct value
-       $MORE .= ',`country`';
-}
+       $moreColumns .= ',`country_code`';
+} // END - if
 
 // Init unset data
 if (!isGetRequestElementSet('letter')) { setGetRequestElement('letter', '');       }
 if (!isGetRequestElementSet('sortby')) { setGetRequestElement('sortby', 'userid'); }
 if (!isGetRequestElementSet('page'))   { setGetRequestElement('page'  , 1);        }
 
-// Set base URL
+// Set base HTML
 $base = '[<a href="{%url=modules.php?module=admin';
 
 if (isGetRequestElementSet('userid')) {
@@ -74,7 +71,7 @@ if (isGetRequestElementSet('userid')) {
        $userid = bigintval(getRequestElement('userid'));
 
        // Does the account exists?
-       $result_user = SQL_QUERY_ESC("SELECT
+       $result_user = SQL_QUERY_ESC('SELECT
        `userid`,
        `country`,
        `email`,
@@ -90,12 +87,12 @@ if (isGetRequestElementSet('userid')) {
        `notified`,
        `emails_received`,
        `mails_confirmed`
-       ".$MORE."
+       ' . $moreColumns . '
 FROM
        `{?_MYSQL_PREFIX?}_user_data`
 WHERE
        `userid`=%s
-LIMIT 1",
+LIMIT 1',
                array($userid), __FILE__, __LINE__);
 
        // User found?
@@ -104,6 +101,7 @@ LIMIT 1",
                $content  = SQL_FETCHARRAY($result_user);
 
                // Get count/sum of refs, selected categories, unconfirmed mails
+               // @TODO Refacture these old link generation to functions
                $content['refs']  = countSumTotalData($userid, 'refsystem', 'counter');
                $content['cats']  = countSumTotalData($userid, 'user_cats', 'id', 'userid', true);
                $content['links'] = getTotalUnconfirmedMails($userid);
@@ -120,6 +118,7 @@ LIMIT 1",
                } // END - if
 
                // Calculate timestamp for birthday
+               // @TODO Refacture birth_foo to avoid uni* timetstamps as older members cannot be greeded correctly
                $stamp = mktime(0, 0, 0, $content['birth_month'], $content['birth_day'], $content['birth_year']);
 
                // Is this above zero?
@@ -196,11 +195,14 @@ LIMIT 1",
                // Is a WHERE statement already there?
                if (!empty($whereStatement)) {
                        // Then append the status column
-                       $whereStatement .= sprintf(" AND `status`='%s'", SQL_ESCAPE(secureString(strtoupper(getRequestElement('status')))));
+                       $whereStatement .= sprintf(" AND `status`='%s'", SQL_ESCAPE(strtoupper(getRequestElement('status'))));
                } else {
                        // Start a new one
-                       $whereStatement = sprintf(" WHERE `status`='%s'", SQL_ESCAPE(secureString(strtoupper(getRequestElement('status')))));
+                       $whereStatement = sprintf(" WHERE `status`='%s'", SQL_ESCAPE(strtoupper(getRequestElement('status'))));
                }
+
+               // Exclude other users
+               $whereStatement = runFilterChain('user_exclusion_sql', $whereStatement);
        } elseif (isGetRequestElementSet('do')) {
                // Choose what we need to list
                switch (getRequestElement('do')) {
@@ -230,7 +232,7 @@ LIMIT 1",
                                break;
 
                        default: // Invalid list mode
-                               reportBug(__FILE__, __LINE__, sprintf("Invalid do %s detected.", SQL_ESCAPE(secureString(getRequestElement('do')))));
+                               reportBug(__FILE__, __LINE__, sprintf('Invalid do %s detected.', SQL_ESCAPE(secureString(getRequestElement('do')))));
                                break;
                } // END - switch
 
@@ -242,18 +244,18 @@ LIMIT 1",
        } // END - if
 
        // Generate master query string
-       $sql = sprintf("SELECT
+       $sql = sprintf('SELECT
        `userid`,
        `email`,
        `emails_sent`,
        `mails_confirmed`,
        `emails_received`
-       " . $MORE . "
+       ' . $moreColumns . '
 FROM
        `{?_MYSQL_PREFIX?}_user_data`
-" . $whereStatement . "
+' . $whereStatement . '
 ORDER BY
-       `%s` ASC",
+       `%s` ASC',
                getRequestElement('sortby')
        );