ADD_DESCR("guest", __FILE__);
// Derterminate which stats we want and set mode and title for the link below stats block
-if (!isset($_GET['mode'])) $_GET['mode'] = strtolower(getConfig('guest_stats'));
-switch ($_GET['mode']) {
- case "members" : $_CONFIG['guest_stats'] = "MEMBERS"; $lmode = "modules"; $ltitle = GUEST_STATS_MODULES; break;
- case "modules" : $_CONFIG['guest_stats'] = "MODULES"; $lmode = "members"; $ltitle = GUEST_STATS_MEMBERS; break;
- case "inactive": $_CONFIG['guest_stats'] = "INACTIVE"; $lmode = "inactive"; $ltitle = GUEST_STATS_INACTIVE; break;
+if (!REQUEST_ISSET_GET(('mode'))) REQUEST_SET_GET('mode', strtolower(getConfig('guest_stats')));
+
+switch (REQUEST_GET('mode')) {
+ case "members" :
+ setConfigEntry('guest_stats', "MEMBERS");
+ $lmode = "modules";
+ $ltitle = getMessage('GUEST_STATS_MODULES');
+ break;
+
+ case "modules" :
+ setConfigEntry('guest_stats', "MODULES");
+ $lmode = "members";
+ $ltitle = getMessage('GUEST_STATS_MEMBERS');
+ break;
+
+ case "inactive":
+ setConfigEntry('guest_stats', "INACTIVE");
+ $lmode = "inactive";
+ $ltitle = getMessage('GUEST_STATS_INACTIVE');
+ break;
}
switch (getConfig('guest_stats'))
{
case "MEMBERS": // Statistics about your members
// Members yesterday / today online
- $ymem = SQL_NUMROWS(SQL_QUERY("SELECT userid FROM `"._MYSQL_PREFIX."_user_data` WHERE last_online >= ".START_YDAY." AND last_online < ".START_TDAY." AND status='CONFIRMED'", __FILE__, __LINE__));
- $tmem = SQL_NUMROWS(SQL_QUERY("SELECT userid FROM `"._MYSQL_PREFIX."_user_data` WHERE last_online >= ".START_TDAY." AND status='CONFIRMED'", __FILE__, __LINE__));
+ $ymem = SQL_NUMROWS(SQL_QUERY("SELECT userid FROM `{!_MYSQL_PREFIX!}_user_data` WHERE last_online >= ".constant('START_YDAY')." AND last_online < ".constant('START_TDAY')." AND `status`='CONFIRMED'", __FILE__, __LINE__));
+ $tmem = SQL_NUMROWS(SQL_QUERY("SELECT userid FROM `{!_MYSQL_PREFIX!}_user_data` WHERE last_online >= ".constant('START_TDAY')." AND `status`='CONFIRMED'", __FILE__, __LINE__));
// Yesterday / today registered
- $yreg = SQL_NUMROWS(SQL_QUERY("SELECT userid FROM `"._MYSQL_PREFIX."_user_data` WHERE joined >= ".START_YDAY." AND joined < ".START_TDAY, __FILE__, __LINE__));
- $treg = SQL_NUMROWS(SQL_QUERY("SELECT userid FROM `"._MYSQL_PREFIX."_user_data` WHERE joined >= ".START_TDAY, __FILE__, __LINE__));
+ $yreg = SQL_NUMROWS(SQL_QUERY("SELECT userid FROM `{!_MYSQL_PREFIX!}_user_data` WHERE joined >= ".constant('START_YDAY')." AND joined < ".constant('START_TDAY'), __FILE__, __LINE__));
+ $treg = SQL_NUMROWS(SQL_QUERY("SELECT userid FROM `{!_MYSQL_PREFIX!}_user_data` WHERE joined >= ".constant('START_TDAY'), __FILE__, __LINE__));
// Only males / females
- $male = SQL_NUMROWS(SQL_QUERY("SELECT userid FROM `"._MYSQL_PREFIX."_user_data` WHERE gender='M' AND status='CONFIRMED'", __FILE__, __LINE__));
- $female = SQL_NUMROWS(SQL_QUERY("SELECT userid FROM `"._MYSQL_PREFIX."_user_data` WHERE gender='F' AND status='CONFIRMED'", __FILE__, __LINE__));
+ $male = GET_TOTAL_DATA("M", "user_data", "userid", "gender", true, " AND `status`='CONFIRMED'");
+ $female = GET_TOTAL_DATA("F", "user_data", "userid", "gender", true, " AND `status`='CONFIRMED'");
// Unconfirmed accounts
- $unconfirmed = SQL_NUMROWS(SQL_QUERY("SELECT userid FROM `"._MYSQL_PREFIX."_user_data` WHERE status != 'CONFIRMED'", __FILE__, __LINE__));
+ $unconfirmed = SQL_NUMROWS(SQL_QUERY("SELECT userid FROM `{!_MYSQL_PREFIX!}_user_data` WHERE status != 'CONFIRMED'", __FILE__, __LINE__));
// Total members
$total = $male + $female;
// List every month
$months = array();
- for ($idx = 1; $idx < 13; $idx++)
- {
- $month = $idx; if ($idx < 10) $month = "0".$idx;
- $months[$month] = SQL_NUMROWS(SQL_QUERY_ESC("SELECT userid FROM `"._MYSQL_PREFIX."_user_data` WHERE birth_month=%s AND status='CONFIRMED'",
- array(bigintval($month)), __FILE__, __LINE__));
+ for ($idx = 1; $idx < 13; $idx++) {
+ // Copy it so we don't touch the for() loop index
+ $month = $idx;
+
+ // Append leading zero
+ if ($idx < 10) $month = "0".$idx;
+
+ // Count months
+ $months[$month] = GET_TOTAL_DATA(bigintval($month), "user_data", "userid", "birth_month", true, " AND `status`='CONFIRMED'");
}
// Members in categories
- $result = SQL_QUERY("SELECT id, cat FROM "._MYSQL_PREFIX."_cats WHERE visible='Y' ORDER BY id", __FILE__, __LINE__);
+ $result = SQL_QUERY("SELECT id, cat FROM `{!_MYSQL_PREFIX!}_cats` WHERE `visible`='Y' ORDER BY `id`", __FILE__, __LINE__);
// Load categories first
$cats = array(); $cat_cnt = array();
- while (list($id, $cat) = SQL_FETCHROW($result))
- {
+ // @TODO This can be somehow rewritten
+ while ($content = SQL_FETCHARRAY($result)) {
// Simple...
- $cats[$id] = $cat;
+ $cats[$content['id']] = $content['cat'];
}
// Now we have all categories loaded, count members
- foreach ($cats as $id => $dummy)
- {
+ foreach ($cats as $id => $dummy) {
// We only need id and nothing more to count...
- $cat_cnt[$id] = SQL_NUMROWS(SQL_QUERY_ESC("SELECT id FROM "._MYSQL_PREFIX."_user_cats WHERE cat_id=%s",
- array(bigintval($id)), __FILE__, __LINE__));
+ $cat_cnt[$id] = GET_TOTAL_DATA(bigintval($id), "user_cats", "id", "cat_id", true);
}
// Prepare data for the template
+ // @TODO Rewrite all these constants
define('__TOTAL_USERS' , $total);
define('__UNCONFIRMED' , $unconfirmed);
define('__MALE_COUNT' , $male);
// Generate monthly stats
$SW = 2; $r2 = " right2"; $l = "ll"; $r = "lr"; $OUT = "";
- foreach ($months as $month => $cnt)
- {
- if ($SW == 2) $OUT .= "<TR>\n";
+ foreach ($months as $month => $cnt) {
+ if ($SW == 2) $OUT .= "<tr>\n";
// Prepare data for template
$content = array(
'l_class' => $l,
- 'm_descr' => $MONTH_DESCR[$month],
+ 'm_descr' => $GLOBALS['month_descr'][$month],
'r_class' => $r,
'r2_class' => $r2,
'cnt' => $cnt
// Load row template
$OUT .= LOAD_TEMPLATE("guest_stats_month_row", true, $content);
- if ($SW == 2)
- {
+ if ($SW == 2) {
$r2 = "";
$l = "rl"; $r = "rr";
- }
- else
- {
- $OUT .= "</TR>\n";
+ } else {
+ $OUT .= "</tr>\n";
$r2 = " right2";
$l = "ll"; $r = "lr";
}
define('__MONTH_STATS_ROWS', $OUT);
// Generate category stats
- $SW = 2; $OUT = "";
- foreach ($cat_cnt as $id => $cnt)
- {
+ $OUT = ""; $SW = 2;
+ foreach ($cat_cnt as $id => $cnt) {
// Prepare data for the template
$content = array(
'sw' => $SW,
case "MODULES": // TOP10 module clicks
$AND = "";
- if (!IS_ADMIN()) $AND = " AND locked='N' AND visible='Y'";
- $guest_t10 = SQL_QUERY("SELECT counter, title FROM `"._MYSQL_PREFIX."_guest_menu` WHERE counter > 0".$AND." ORDER BY counter DESC LIMIT 0,10", __FILE__, __LINE__);
- $mem_t10 = SQL_QUERY("SELECT counter, title FROM `"._MYSQL_PREFIX."_member_menu` WHERE counter > 0".$AND." ORDER BY counter DESC LIMIT 0,10", __FILE__, __LINE__);
- if ((SQL_NUMROWS($guest_t10) > 0) || (SQL_NUMROWS($mem_t10) > 0))
- {
+ if (!IS_ADMIN()) $AND = " AND `locked`='N' AND `visible`='Y'";
+ $guest_t10 = SQL_QUERY("SELECT counter, title FROM `{!_MYSQL_PREFIX!}_guest_menu` WHERE counter > 0".$AND." ORDER BY counter DESC LIMIT 0,10", __FILE__, __LINE__);
+ $mem_t10 = SQL_QUERY("SELECT counter, title FROM `{!_MYSQL_PREFIX!}_member_menu` WHERE counter > 0".$AND." ORDER BY counter DESC LIMIT 0,10", __FILE__, __LINE__);
+ $OUT = "";
+ if ((SQL_NUMROWS($guest_t10) > 0) || (SQL_NUMROWS($mem_t10) > 0)) {
// Output header
- OUTPUT_HTML("<TABLE border=\"0\" cellspacing=\"0\" cellpadding=\"0\" class=\"guest_table dashed\" width=\"310\">
-<TR>
- <TD align=\"center\" class=\"guest_stats_title bottom2\" colspan=\"2\"><STRONG>".GUEST_TOPTEN_STATS."</STRONG></TD>
-</TR>");
+ // @TODO Rewrite this to one template and $OUT .= ....
+ OUTPUT_HTML("<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\" class=\"guest_table dashed\" width=\"310\">
+<tr>
+ <td align=\"center\" class=\"guest_stats_title bottom2\" colspan=\"2\"><strong>{--GUEST_TOPTEN_STATS--}</strong></td>
+</tr>");
}
- if (SQL_NUMROWS($guest_t10) > 0)
- {
+ if (SQL_NUMROWS($guest_t10) > 0) {
// Guest clicks
- OUTPUT_HTML("<TR>
- <TD align=\"center\" class=\"guest_title2 bottom2\" colspan=\"2\">".GUEST_TOP_GUEST_STATS."</TD>
-</TR>");
+ OUTPUT_HTML("<tr>
+ <td align=\"center\" class=\"guest_title2 bottom2\" colspan=\"2\">{--GUEST_TOP_GUEST_STATS--}</td>
+</tr>");
$SW = 2;
- while (list($clicks, $title) = SQL_FETCHROW($guest_t10))
- {
- OUTPUT_HTML("<TR>
- <TD class=\"switch_sw".$SW." bottom2 right2\" align=\"right\" width=\"250\">".$title." </TD>
- <TD class=\"switch_sw".$SW." bottom2\" width=\"50\"> ".$clicks."</TD>
-</TR>");
+ while ($content = SQL_FETCHARRAY($guest_t10)) {
+ OUTPUT_HTML("<tr>
+ <td class=\"switch_sw".$SW." bottom2 right2\" align=\"right\" width=\"250\">".$content['title']." </td>
+ <td class=\"switch_sw".$SW." bottom2\" width=\"50\"> ".$content['counter']."</td>
+</tr>");
$SW = 3 - $SW;
}
}
- if (SQL_NUMROWS($guest_t10) > 0)
- {
+
+ if (SQL_NUMROWS($guest_t10) > 0) {
// Guest clicks
- OUTPUT_HTML("<TR>
- <TD align=\"center\" class=\"guest_title2 bottom2\" colspan=\"2\">".GUEST_TOP_MEMBER_STATS."</TD>
-</TR>");
+ OUTPUT_HTML("<tr>
+ <td align=\"center\" class=\"guest_title2 bottom2\" colspan=\"2\">{--GUEST_TOP_MEMBER_STATS--}</td>
+</tr>");
$SW = 2;
- while (list($clicks, $title) = SQL_FETCHROW($mem_t10))
- {
- OUTPUT_HTML("<TR>
- <TD class=\"switch_sw".$SW." bottom2 right2\" align=\"right\" width=\"250\">".$title." </TD>
- <TD class=\"switch_sw".$SW." bottom2\" width=\"50\"> ".$clicks."</TD>
-</TR>");
+ while ($content = SQL_FETCHARRAY($mem_t10)) {
+ OUTPUT_HTML("<tr>
+ <td class=\"switch_sw".$SW." bottom2 right2\" align=\"right\" width=\"250\">".$content['title']." </td>
+ <td class=\"switch_sw".$SW." bottom2\" width=\"50\"> ".$content['counter']."</td>
+</tr>");
$SW = 3 - $SW;
}
}
- if ((SQL_NUMROWS($guest_t10) > 0) || (SQL_NUMROWS($mem_t10) > 0))
- {
+
+ if ((SQL_NUMROWS($guest_t10) > 0) || (SQL_NUMROWS($mem_t10) > 0)) {
// Output footer
- OUTPUT_HTML("<TR>
- <TD align=\"center\" class=\"guest_stats_footer\" colspan=\"2\"><A href=\"".URL."/modules.php?module=index&what=stats&mode=".$lmode."\">".$ltitle."</A></TD>
-</TR>
-</TABLE>");
+ OUTPUT_HTML("<tr>
+ <td align=\"center\" class=\"guest_stats_footer\" colspan=\"2\">
+ <a href=\"{!URL!}/modules.php?module=index&what=stats&mode=".$lmode."\">".$ltitle."</a>
+ </td>
+</tr>
+</table>");
}
break;
case "INACTIVE": // Deactivated stats
- LOAD_TEMPLATE("admin_settings_saved", false, "<STRONG>".GUEST_STATS_DEACTIVATED."</STRONG>");
+ LOAD_TEMPLATE("admin_settings_saved", false, "<strong>{--GUEST_STATS_DEACTIVATED--}</strong>");
break;
}