diff --git a/votestats.php b/votestats.php
index 2a19fd9..573253e 100644
--- a/votestats.php
+++ b/votestats.php
@@ -2,15 +2,146 @@
include("path.php");
include(BASE."include/"."incl.php");
+require(BASE."include/"."category.php");
-apidb_header("Vote Stats - Top 25 Applications");
+/* default to 25 apps, main categories */
+$topNumber = 25;
+$categoryId = "any"; /* default to all categories */
+/* process the post variables to override the default settings */
+if($HTTP_POST_VARS)
+{
+ if(isset($_POST['topNumber'])) $topNumber = $_POST['topNumber'];
+ if(isset($_POST['categoryId'])) $categoryId = $_POST['categoryId'];
+}
-$voteQuery = "SELECT appVotes.appId, appName, count(userId) as count ".
- "FROM appVotes, appFamily ".
- "WHERE appVotes.appId = appFamily.appId ".
- "GROUP BY appId ORDER BY count DESC LIMIT 25";
+apidb_header("Vote Stats - Top $topNumber Applications");
+/* display the selection for the top number of apps to view */
+echo "
";
+
+echo "
";
+echo "
";
+
+/***************************************************/
+/* build a list of the apps in the chosen category */
+if(strcasecmp($categoryId, "any") == 0)
+{
+ /* leave out the appFamily.catId = '$categoryId' */
+ $voteQuery = "SELECT appVotes.appId, appName, count(userId) as count ".
+ "FROM appVotes, appFamily ".
+ "WHERE appVotes.appId = appFamily.appId ".
+ "GROUP BY appId ORDER BY count DESC LIMIT $topNumber";
+} else
+{
+ $voteQuery = "SELECT appVotes.appId, appName, count(userId) as count ".
+ "FROM appVotes, appFamily, appCategory ".
+ "WHERE appVotes.appId = appFamily.appId AND ".
+ "(appFamily.catId = '$categoryId' OR ".
+ "(appFamily.catId = appCategory.catId AND appCategory.catParent = '$categoryId')) ".
+ "GROUP BY appId ORDER BY count DESC LIMIT $topNumber";
+}
$result = mysql_query($voteQuery);
@@ -29,9 +160,17 @@ if($result)
echo "| $c. $link | $row->count |
\n";
$c++;
}
+
echo html_table_end();
echo html_frame_end();
-
+
+ /* Make sure we tell the user here are no apps, otherwise they might */
+ /* think that something went wrong with the server */
+ if($c == 1)
+ {
+ echo "No apps found in this category
";
+ }
+
echo "What does this screen mean?\n";
}