X-Git-Url: https://git.mxchange.org/?p=mailer.git;a=blobdiff_plain;f=inc%2Fmodules%2Fguest%2Fwhat-top10.php;h=60a4bd24d058d0388fdc3877d2d17b80323b6bbf;hp=8536854d676fb762afc3da15f528636253c34556;hb=7b0f17cd637e388049d2167811e4332cec1e979b;hpb=b7a1b50bec9d45efcf037db83b7e7c58ba2846dd diff --git a/inc/modules/guest/what-top10.php b/inc/modules/guest/what-top10.php index 8536854d67..60a4bd24d0 100644 --- a/inc/modules/guest/what-top10.php +++ b/inc/modules/guest/what-top10.php @@ -10,7 +10,12 @@ * -------------------------------------------------------------------- * * Kurzbeschreibung : TOP-Logins / Bestverdiener usw. * * -------------------------------------------------------------------- * - * * + * $Revision:: $ * + * $Date:: $ * + * $Tag:: 0.2.1-FINAL $ * + * $Author:: $ * + * Needs to be in all Files and every File needs "svn propset * + * svn:keywords Date Revision" (autoprobset!) at least!!!!!! * * -------------------------------------------------------------------- * * Copyright (c) 2003 - 2008 by Roland Haeder * * For more information visit: http://www.mxchange.org * @@ -33,39 +38,48 @@ // Some security stuff... if (!defined('__SECURITY')) { - $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); -} elseif (!EXT_IS_ACTIVE("top10")) { - ADD_FATAL(EXTENSION_PROBLEM_EXT_INACTIVE, "top10"); +} elseif ((!EXT_IS_ACTIVE('top10')) && (!IS_ADMIN())) { + addFatalMessage(__FILE__, __LINE__, sprintf(getMessage('EXTENSION_PROBLEM_EXT_INACTIVE'), 'top10')); return; } // Add description as navigation point -ADD_DESCR("guest", __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__); - -$OUT = ""; $SW = 2; $cnt = 1; -while(list($uid, $nick, $logins, $last) = SQL_FETCHROW($result)) -{ - $nick2 = "---"; - if (($nick != $uid) && (!empty($nick))) $nick2 = $nick; +$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 ($content = SQL_FETCHARRAY($result)) { + // Init nickname + $content['nickname'] = '---'; + + // Get nickname + if (EXT_IS_ACTIVE('nickname')) $content['nickname'] = NICKNAME_GET_NICK($content['userid']); // Prepare data for template + // @TODO Rewritings: uid->userid,nick->nickname,logins->total_logins in template $content = array( 'sw' => $SW, 'cnt' => $cnt, - 'uid' => $uid, - 'nick' => $nick2, - 'logins' => $logins, - 'points' => TRANSLATE_COMMA(GET_TOTAL_DATA($uid, "user_points", "points")), - 'last' => MAKE_DATETIME($last, "3"), + 'uid' => $content['userid'], + 'nick' => $content['nickname'], + 'logins' => $content['total_logins'], + 'points' => translateComma(GET_TOTAL_DATA($content['userid'], "user_points", "points")), + 'last' => generateDateTime($content['last_online'], "3"), ); // Load row template @@ -73,12 +87,11 @@ while(list($uid, $nick, $logins, $last) = SQL_FETCHROW($result)) // Switch colors and count one up $SW = 3 - $SW; $cnt++; -} -if ($cnt < $_CONFIG['top10_max']) -{ +} // END - while + +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, @@ -88,35 +101,55 @@ if ($cnt < $_CONFIG['top10_max']) // Load row template $OUT .= LOAD_TEMPLATE("guest_top10_empty5", true, $content); $SW = 3 - $SW; - } -} + } // END - for +} // END - if + +// @TODO Rewrite this constant 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)) -{ - $nick2 = "---"; - if (($nick != $uid) && (!empty($nick))) $nick2 = $nick; +$OUT = ''; $SW = 2; $cnt = 1; +while ($content = SQL_FETCHARRAY($result)) { + // Init nickname + $content['nickname'] = '---'; + + // Get nickname + if (EXT_IS_ACTIVE('nickname')) $content['nickname'] = NICKNAME_GET_NICK($content['userid']); // Prepare data for template + // @TODO Rewritings: nick->nickname,uid->userid in template $content = array( 'sw' => $SW, 'cnt' => $cnt, - 'uid' => bigintval($uid), - 'nick' => $nick2, - 'points' => TRANSLATE_COMMA($points), - 'last' => MAKE_DATETIME($last, "3") + 'uid' => $content['userid'], + 'nick' => $content['nickname'], + 'points' => translateComma($content['points']), + 'last' => generateDateTime($content['last_online'], "3") ); // Load row template @@ -124,12 +157,11 @@ while(list($uid, $nick, $points, $last) = SQL_FETCHROW($result)) // Switch colors and count one up $SW = 3 - $SW; $cnt++; -} -if ($cnt < $_CONFIG['top10_max']) -{ +} // END - while + +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, @@ -139,36 +171,56 @@ if ($cnt < $_CONFIG['top10_max']) // Load row template $OUT .= LOAD_TEMPLATE("guest_top10_empty4", true, $content); $SW = 3 - $SW; - } -} + } // END - for +} // END - if + +// @TODO Rewrite this constant define('__TOP_POINTS_ROWS', $OUT); +// Free result +SQL_FREERESULT($result); + //// TOP referal "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 +$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 ($content = SQL_FETCHARRAY($result)) { + // Init nickname + $content['nickname'] = '---'; -$OUT = ""; $SW = 2; $cnt = 1; -while(list($uid, $nick, $refs, $last) = SQL_FETCHROW($result)) -{ - $nick2 = "---"; - if (($nick != $uid) && (!empty($nick))) $nick2 = $nick; + // Get nickname + if (EXT_IS_ACTIVE('nickname')) $content['nickname'] = NICKNAME_GET_NICK($content['userid']); // Prepare data for template + // @TODO Rewritings: nick->nickname,uid->userid in template $content = array( 'sw' => $SW, 'cnt' => $cnt, - 'uid' => bigintval($uid), - 'refs' => $refs, - 'nick' => $nick2, - 'points' => TRANSLATE_COMMA(GET_TOTAL_DATA($uid, "user_points", "points")), - 'last' => MAKE_DATETIME($last, "3") + 'uid' => $content['userid'], + 'refs' => $content['refs'], + 'nick' => $content['nickname'], + 'points' => translateComma(GET_TOTAL_DATA($content['userid'], "user_points", "points")), + 'last' => generateDateTime($content['last_online'], "3") ); // Load row template @@ -176,12 +228,11 @@ while(list($uid, $nick, $refs, $last) = SQL_FETCHROW($result)) // Switch colors and count one up $SW = 3 - $SW; $cnt++; -} -if ($cnt < $_CONFIG['top10_max']) -{ +} // END - while + +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, @@ -191,12 +242,18 @@ if ($cnt < $_CONFIG['top10_max']) // Load row template $OUT .= LOAD_TEMPLATE("guest_top10_empty5", true, $content); $SW = 3 - $SW; - } -} + } // END - for +} // END - if + +// @TODO Rewrite this constant define('__TOP_REFERRAL_ROWS', $OUT); +// Free result +SQL_FREERESULT($result); + // Remember other values in constants -define('__TOP10_MAX', $_CONFIG['top10_max']); +// @TODO Rewrite this constant +define('__TOP10_MAX', getConfig('top10_max')); // Load final template LOAD_TEMPLATE("guest_top10");