X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fmodules%2Fguest%2Fwhat-top10.php;h=04d240b152c84d0e3bb35f4f2de452d6bbb5c7d5;hp=56ef74b37d5a04da1dd70eb597d2fd4bf546d27c;hb=c78089215285d52d483760699d07a96dfbbe0671;hpb=963e55ca1ea79e255f235e359cde9f7862191dc5 diff --git a/inc/modules/guest/what-top10.php b/inc/modules/guest/what-top10.php index 56ef74b37d..04d240b152 100644 --- a/inc/modules/guest/what-top10.php +++ b/inc/modules/guest/what-top10.php @@ -36,26 +36,33 @@ if (!defined('__SECURITY')) { $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php"; require($INC); } elseif ((!EXT_IS_ACTIVE("top10")) && (!IS_ADMIN())) { - ADD_FATAL(EXTENSION_PROBLEM_EXT_INACTIVE, "top10"); + addFatalMessage(__FILE__, __LINE__, getMessage('EXTENSION_PROBLEM_EXT_INACTIVE'), "top10"); return; } // Add description as navigation point -ADD_DESCR("guest", basename(__FILE__)); +ADD_DESCR("guest", __FILE__); //// TOP logins -$ADD = "userid"; -if (EXT_IS_ACTIVE("nickname")) $ADD = "nickname"; -$result = SQL_QUERY_ESC("SELECT userid, ".$ADD.", total_logins, last_online -FROM "._MYSQL_PREFIX."_user_data -WHERE total_logins>0 AND status='CONFIRMED' ORDER BY total_logins DESC LIMIT %s", - array($_CONFIG['top10_max']), __FILE__, __LINE__); +$result = SQL_QUERY_ESC(" +SELECT + userid, total_logins, last_online +FROM + {!_MYSQL_PREFIX!}_user_data +WHERE + total_logins > 0 AND + `status`='CONFIRMED' +ORDER BY + total_logins DESC +LIMIT %s", + array(getConfig('top10_max')), __FILE__, __LINE__); $OUT = ""; $SW = 2; $cnt = 1; -while(list($uid, $nick, $logins, $last) = SQL_FETCHROW($result)) -{ +while (list($uid, $logins, $last) = SQL_FETCHROW($result)) { $nick2 = "---"; - if (($nick != $uid) && (!empty($nick))) $nick2 = $nick; + + // Get nickname + if (EXT_IS_ACTIVE("nickname")) $nick2 = NICKNAME_GET_NICK($uid); // Prepare data for template $content = array( @@ -74,11 +81,10 @@ while(list($uid, $nick, $logins, $last) = SQL_FETCHROW($result)) // Switch colors and count one up $SW = 3 - $SW; $cnt++; } -if ($cnt < $_CONFIG['top10_max']) -{ + +if ($cnt < getConfig('top10_max')) { // Add more "blank" rows - for ($i = $cnt; $i <= $_CONFIG['top10_max']; $i++) - { + for ($i = $cnt; $i <= getConfig('top10_max'); $i++) { // Prepare data for template $content = array( 'sw' => $SW, @@ -92,22 +98,38 @@ if ($cnt < $_CONFIG['top10_max']) } define('__TOP_LOGINS_ROWS', $OUT); +// Free result +SQL_FREERESULT($result); + //// TOP earners -$result = SQL_QUERY_ESC("SELECT DISTINCT p.userid, d.".$ADD.", (SUM(p.points) - d.used_points) AS tpoints, d.last_online -FROM "._MYSQL_PREFIX."_user_points AS p -LEFT JOIN "._MYSQL_PREFIX."_user_data AS d -ON p.userid=d.userid -WHERE p.points > 0 AND d.status='CONFIRMED' -GROUP BY p.userid -ORDER BY tpoints DESC, d.last_online DESC +$result = SQL_QUERY_ESC(" +SELECT DISTINCT + d.userid, + (SUM(p.points) - d.used_points) AS tpoints, + d.last_online +FROM + `{!_MYSQL_PREFIX!}_user_data` AS d +LEFT JOIN + {!_MYSQL_PREFIX!}_user_points AS p +ON + p.userid=d.userid +WHERE + p.points > 0 AND + d.`status`='CONFIRMED' +GROUP BY + p.userid +ORDER BY + tpoints DESC, + d.last_online DESC LIMIT %s", - array($_CONFIG['top10_max']), __FILE__, __LINE__); + array(getConfig('top10_max')), __FILE__, __LINE__); $OUT = ""; $SW = 2; $cnt = 1; -while(list($uid, $nick, $points, $last) = SQL_FETCHROW($result)) -{ +while (list($uid, $points, $last) = SQL_FETCHROW($result)) { $nick2 = "---"; - if (($nick != $uid) && (!empty($nick))) $nick2 = $nick; + + // Get nickname + if (EXT_IS_ACTIVE("nickname")) $nick2 = NICKNAME_GET_NICK($uid); // Prepare data for template $content = array( @@ -125,11 +147,10 @@ while(list($uid, $nick, $points, $last) = SQL_FETCHROW($result)) // Switch colors and count one up $SW = 3 - $SW; $cnt++; } -if ($cnt < $_CONFIG['top10_max']) -{ + +if ($cnt < getConfig('top10_max')) { // Add more "blank" rows - for ($i = $cnt; $i <= $_CONFIG['top10_max']; $i++) - { + for ($i = $cnt; $i <= getConfig('top10_max'); $i++) { // Prepare data for template $content = array( 'sw' => $SW, @@ -143,22 +164,38 @@ if ($cnt < $_CONFIG['top10_max']) } define('__TOP_POINTS_ROWS', $OUT); -//// TOP referral "hunter" -$result = SQL_QUERY_ESC("SELECT DISTINCT r.userid, d.".$ADD.", SUM(r.counter) AS refs, d.last_online -FROM "._MYSQL_PREFIX."_refsystem AS r -LEFT JOIN "._MYSQL_PREFIX."_user_data AS d -ON r.userid=d.userid -WHERE r.counter > 0 AND d.status='CONFIRMED' -GROUP BY r.userid -ORDER BY refs DESC, d.last_online DESC +// Free result +SQL_FREERESULT($result); + +//// TOP referal "hunter" +$result = SQL_QUERY_ESC(" +SELECT DISTINCT + d.userid, + SUM(r.counter) AS refs, + d.last_online +FROM + `{!_MYSQL_PREFIX!}_user_data` AS d +LEFT JOIN + {!_MYSQL_PREFIX!}_refsystem AS r +ON + r.userid=d.userid +WHERE + r.counter > 0 AND + d.`status`='CONFIRMED' +GROUP BY + r.userid +ORDER BY + refs DESC, + d.last_online DESC LIMIT %s", - array($_CONFIG['top10_max']), __FILE__, __LINE__); + array(getConfig('top10_max')), __FILE__, __LINE__); $OUT = ""; $SW = 2; $cnt = 1; -while(list($uid, $nick, $refs, $last) = SQL_FETCHROW($result)) -{ +while (list($uid, $refs, $last) = SQL_FETCHROW($result)) { $nick2 = "---"; - if (($nick != $uid) && (!empty($nick))) $nick2 = $nick; + + // Get nickname + if (EXT_IS_ACTIVE("nickname")) $nick2 = NICKNAME_GET_NICK($uid); // Prepare data for template $content = array( @@ -177,11 +214,10 @@ while(list($uid, $nick, $refs, $last) = SQL_FETCHROW($result)) // Switch colors and count one up $SW = 3 - $SW; $cnt++; } -if ($cnt < $_CONFIG['top10_max']) -{ + +if ($cnt < getConfig('top10_max')) { // Add more "blank" rows - for ($i = $cnt; $i <= $_CONFIG['top10_max']; $i++) - { + for ($i = $cnt; $i <= getConfig('top10_max'); $i++) { // Prepare data for template $content = array( 'sw' => $SW, @@ -195,8 +231,11 @@ if ($cnt < $_CONFIG['top10_max']) } define('__TOP_REFERRAL_ROWS', $OUT); +// Free result +SQL_FREERESULT($result); + // Remember other values in constants -define('__TOP10_MAX', $_CONFIG['top10_max']); +define('__TOP10_MAX', getConfig('top10_max')); // Load final template LOAD_TEMPLATE("guest_top10");