Extension 'ext-coupon' moved to branch, SQLs improved:
[mailer.git] / inc / modules / guest / what-top10.php
index b2c8104d52bf64bdd2938014561aaccf01330d1b..a5ad5e61faac792850edddcf981b50a5fe52f9e2 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 /************************************************************************
- * MXChange v0.2.1                                    Start: 11/24/2004 *
- * ================                             Last change: 11/26/2004 *
+ * Mailer v0.2.1-FINAL                                Start: 11/24/2004 *
+ * ===================                          Last change: 11/26/2004 *
  *                                                                      *
  * -------------------------------------------------------------------- *
  * File              : what-top10.php                                   *
  * -------------------------------------------------------------------- *
  * Kurzbeschreibung  : TOP-Logins / Bestverdiener usw.                  *
  * -------------------------------------------------------------------- *
- *                                                                      *
+ * $Revision::                                                        $ *
+ * $Date::                                                            $ *
+ * $Tag:: 0.2.1-FINAL                                                 $ *
+ * $Author::                                                          $ *
  * -------------------------------------------------------------------- *
- * Copyright (c) 2003 - 2008 by Roland Haeder                           *
+ * Copyright (c) 2003 - 2009 by Roland Haeder                           *
+ * Copyright (c) 2009 - 2011 by Mailer Developer Team                   *
  * For more information visit: http://www.mxchange.org                  *
  *                                                                      *
  * This program is free software; you can redistribute it and/or modify *
 
 // Some security stuff...
 if (!defined('__SECURITY')) {
-       $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php";
-       require($INC);
-} elseif ((!EXT_IS_ACTIVE("top10")) && (!IS_ADMIN())) {
-       addFatalMessage(EXTENSION_PROBLEM_EXT_INACTIVE, "top10");
-       return;
-}
+       die();
+} // END - if
 
 // Add description as navigation point
-ADD_DESCR("guest", __FILE__);
+addYouAreHereLink('guest', __FILE__);
+
+if ((!isExtensionActive('top10')) && (!isAdmin())) {
+       displayMessage(generateExtensionInactiveNotInstalledMessage('top10'));
+       return;
+} // END - if
+
+// Init array
+$rows = array();
 
 //// TOP logins
-$result = SQL_QUERY_ESC("
-SELECT
-       userid, total_logins, last_online
+$result = SQL_QUERY("SELECT
+       `userid`, `total_logins`, `last_online`
 FROM
-       {!_MYSQL_PREFIX!}_user_data
+       `{?_MYSQL_PREFIX?}_user_data`
 WHERE
-       total_logins > 0 AND
+       `total_logins` > 0 AND
        `status`='CONFIRMED'
 ORDER BY
-       total_logins DESC
-LIMIT %s",
-       array(getConfig('top10_max')), __FILE__, __LINE__);
+       `total_logins` DESC
+LIMIT {?top10_max?}", __FILE__, __LINE__);
 
-$OUT = ""; $SW = 2; $cnt = 1;
-while (list($uid, $logins, $last) = SQL_FETCHROW($result)) {
-       $nick2 = "---";
+$OUT = ''; $count = 1;
+while ($content = SQL_FETCHARRAY($result)) {
+       // Init nickname
+       $content['nickname'] = '';
 
        // Get nickname
-       if (EXT_IS_ACTIVE("nickname")) $nick2 = NICKNAME_GET_NICK($uid);
+       if (isExtensionActive('nickname')) $content['nickname'] = getNickname($content['userid']);
 
        // Prepare data for 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"),
+               'cnt'          => $count,
+               'userid'       => $content['userid'],
+               'nickname'     => $content['nickname'],
+               'total_logins' => $content['total_logins'],
+               'points'       => getTotalPoints($content['userid']),
+               'last_online'  => generateDateTime($content['last_online'], 3),
        );
 
        // Load row template
-       $OUT .= LOAD_TEMPLATE("guest_top10_row_login", true, $content);
+       $OUT .= loadTemplate('guest_top10_row_login', true, $content);
 
-       // Switch colors and count one up
-       $SW = 3 - $SW; $cnt++;
-}
+       // Count one up
+       $count++;
+} // END - while
 
-if ($cnt < getConfig('top10_max')) {
+if ($count < getConfig('top10_max')) {
        // Add more "blank" rows
-       for ($i = $cnt; $i <= getConfig('top10_max'); $i++) {
+       for ($i = $count; $i <= getConfig('top10_max'); $i++) {
                // Prepare data for template
                $content = array(
-                       'sw'  => $SW,
-                       'idx' => $i
+                       'index' => $i
                );
 
                // Load row template
-               $OUT .= LOAD_TEMPLATE("guest_top10_empty5", true, $content);
-               $SW = 3 - $SW;
-       }
-}
-define('__TOP_LOGINS_ROWS', $OUT);
+               $OUT .= loadTemplate('guest_top10_empty5', true, $content);
+       } // END - for
+} // END - if
+
+// Remember the rows in array
+$rows['logins_out'] = $OUT;
 
 // Free result
 SQL_FREERESULT($result);
 
 //// TOP earners
-$result = SQL_QUERY_ESC("
-SELECT DISTINCT
+$result = SQL_QUERY("SELECT
        d.userid,
-       (SUM(p.points) - d.used_points) AS tpoints,
+       (SUM(p.points) - d.used_points) AS `points`,
        d.last_online
 FROM
-       `{!_MYSQL_PREFIX!}_user_data` AS d
+       `{?_MYSQL_PREFIX?}_user_data` AS d
 LEFT JOIN
-       {!MYSQL_PREFIX!}_user_points AS p
+       {?_MYSQL_PREFIX?}_user_points AS p
 ON
        p.userid=d.userid
 WHERE
@@ -119,64 +124,62 @@ WHERE
 GROUP BY
        p.userid
 ORDER BY
-       tpoints DESC,
+       points DESC,
        d.last_online DESC
-LIMIT %s",
-       array(getConfig('top10_max')), __FILE__, __LINE__);
+LIMIT {?top10_max?}", __FILE__, __LINE__);
 
-$OUT = ""; $SW = 2; $cnt = 1;
-while (list($uid, $points, $last) = SQL_FETCHROW($result)) {
-       $nick2 = "---";
+$OUT = ''; $count = 1;
+while ($content = SQL_FETCHARRAY($result)) {
+       // Init nickname
+       $content['nickname'] = '';
 
        // Get nickname
-       if (EXT_IS_ACTIVE("nickname")) $nick2 = NICKNAME_GET_NICK($uid);
+       if (isExtensionActive('nickname')) $content['nickname'] = getNickname($content['userid']);
 
        // Prepare data for template
        $content = array(
-               'sw'     => $SW,
-               'cnt'    => $cnt,
-               'uid'    => bigintval($uid),
-               'nick'   => $nick2,
-               'points' => TRANSLATE_COMMA($points),
-               'last'   => MAKE_DATETIME($last, "3")
+               'cnt'         => $count,
+               'userid'      => $content['userid'],
+               'nickname'    => $content['nickname'],
+               'points'      => $content['points'],
+               'last_online' => generateDateTime($content['last_online'], 3)
        );
 
        // Load row template
-       $OUT .= LOAD_TEMPLATE("guest_top10_row_earner", true, $content);
+       $OUT .= loadTemplate('guest_top10_row_earner', true, $content);
 
-       // Switch colors and count one up
-       $SW = 3 - $SW; $cnt++;
-}
+       // Count one up
+       $count++;
+} // END - while
 
-if ($cnt < getConfig('top10_max')) {
+if ($count < getConfig('top10_max')) {
        // Add more "blank" rows
-       for ($i = $cnt; $i <= getConfig('top10_max'); $i++) {
+       for ($i = $count; $i <= getConfig('top10_max'); $i++) {
                // Prepare data for template
                $content = array(
-                       'sw'  => $SW,
-                       'idx' => $i
+                       'index' => $i
                );
 
                // Load row template
-               $OUT .= LOAD_TEMPLATE("guest_top10_empty4", true, $content);
-               $SW = 3 - $SW;
-       }
-}
-define('__TOP_POINTS_ROWS', $OUT);
+               $OUT .= loadTemplate('guest_top10_empty4', true, $content);
+       } // END - for
+} // END - if
+
+// Remember the rows in array
+$rows['points_out'] = $OUT;
 
 // Free result
 SQL_FREERESULT($result);
 
 //// TOP referal "hunter"
-$result = SQL_QUERY_ESC("
-SELECT DISTINCT
+$result = SQL_QUERY("SELECT
        d.userid,
        SUM(r.counter) AS refs,
        d.last_online
 FROM
-       `{!_MYSQL_PREFIX!}_user_data` AS d
+       `{?_MYSQL_PREFIX?}_user_data` AS d
 LEFT JOIN
-       {!MYSQL_PREFIX!}_refsystem AS r
+       {?_MYSQL_PREFIX?}_refsystem AS r
 ON
        r.userid=d.userid
 WHERE
@@ -187,58 +190,54 @@ GROUP BY
 ORDER BY
        refs DESC,
        d.last_online DESC
-LIMIT %s",
-       array(getConfig('top10_max')), __FILE__, __LINE__);
+LIMIT {?top10_max?}", __FILE__, __LINE__);
 
-$OUT = ""; $SW = 2; $cnt = 1;
-while (list($uid, $refs, $last) = SQL_FETCHROW($result)) {
-       $nick2 = "---";
+$OUT = ''; $count = 1;
+while ($content = SQL_FETCHARRAY($result)) {
+       // Init nickname
+       $content['nickname'] = '';
 
        // Get nickname
-       if (EXT_IS_ACTIVE("nickname")) $nick2 = NICKNAME_GET_NICK($uid);
+       if (isExtensionActive('nickname')) $content['nickname'] = getNickname($content['userid']);
 
        // Prepare data for 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")
+               'cnt'         => $count,
+               'userid'      => $content['userid'],
+               'refs'        => $content['refs'],
+               'nickname'    => $content['nickname'],
+               'points'      => getTotalPoints($content['userid']),
+               'last_online' => generateDateTime($content['last_online'], 3)
        );
 
        // Load row template
-       $OUT .= LOAD_TEMPLATE("guest_top10_row_refs", true, $content);
+       $OUT .= loadTemplate('guest_top10_row_refs', true, $content);
 
-       // Switch colors and count one up
-       $SW = 3 - $SW; $cnt++;
-}
+       // Count one up
+       $count++;
+} // END - while
 
-if ($cnt < getConfig('top10_max')) {
+if ($count < getConfig('top10_max')) {
        // Add more "blank" rows
-       for ($i = $cnt; $i <= getConfig('top10_max'); $i++) {
+       for ($i = $count; $i <= getConfig('top10_max'); $i++) {
                // Prepare data for template
                $content = array(
-                       'sw'  => $SW,
-                       'idx' => $i
+                       'index' => $i
                );
 
                // Load row template
-               $OUT .= LOAD_TEMPLATE("guest_top10_empty5", true, $content);
-               $SW = 3 - $SW;
-       }
-}
-define('__TOP_REFERRAL_ROWS', $OUT);
+               $OUT .= loadTemplate('guest_top10_empty5', true, $content);
+       } // END - for
+} // END - if
+
+// Remember the rows in array
+$rows['referals_out'] = $OUT;
 
 // Free result
 SQL_FREERESULT($result);
 
-// Remember other values in constants
-define('__TOP10_MAX', getConfig('top10_max'));
-
 // Load final template
-LOAD_TEMPLATE("guest_top10");
+loadTemplate('guest_top10', false, $rows);
 
-//
+// [EOF]
 ?>