summaryrefslogtreecommitdiffstats
path: root/pages/challengelist.php
diff options
context:
space:
mode:
authorPatrick Davison <snapwilliam@gmail.com>2012-10-11 23:27:37 -0700
committerPatrick Davison <snapwilliam@gmail.com>2012-10-11 23:27:37 -0700
commit77eb9c05f30d39439635f2274d102e1b3cc7aa87 (patch)
tree5dc6a362895e1c3323dc481b0a41ebeee19a918b /pages/challengelist.php
parentbc456f1ef6a74a74e821304df1a08a5aeb341f7a (diff)
parent6b490faf136fedaee9759a1b6164a90dcdb0f408 (diff)
downloadpathery-77eb9c05f30d39439635f2274d102e1b3cc7aa87.tar.xz
Merge branch 'HEAD' of ssh://git@git.raylu.net/pathery
Diffstat (limited to 'pages/challengelist.php')
-rw-r--r--pages/challengelist.php103
1 files changed, 103 insertions, 0 deletions
diff --git a/pages/challengelist.php b/pages/challengelist.php
new file mode 100644
index 0000000..e3f057a
--- /dev/null
+++ b/pages/challengelist.php
@@ -0,0 +1,103 @@
+<?php
+ob_start("ob_gzhandler");
+htmlHeader(
+ array('tutorial', 'challenge'), 'Pathery Challenges',
+ 'Challenges', array('scores', 'dateformat')
+);
+
+include_once ('./includes/maps.php');
+include_once ('./includes/mapoftheday.php');
+include_once ('./includes/db.inc.php');
+include_once ('./includes/datas.php');
+
+topbar($Links);
+?>
+
+<div id="challengelist_wrapper" class="wrapper">
+
+<?
+
+//Check that the user is allowed to do the challenges
+if (!$accepted) {
+ echo "<center>Please <a href='login'>login</a> to do the challenges!</div>";
+ htmlFooter();
+ return;
+}
+$userID = $_SESSION['userID'];
+
+//TODO: Uncomment
+//if (!hasCompletedTutorial($userID)) {
+// echo "<center>Please <a href='tutorial'>complete the tutorial</a> to unlock Challenge mode!</div>";
+// htmlFooter();
+// return;
+//}
+
+?>
+ <noscript>Sorry, this game requires scripts to run. Please enable javascript and <a href='home'>Reload this site</a>
+ <br />This game is best viewed in <a href='http://www.google.com/chrome'>Google Chrome</a>
+ </noscript>
+<?
+
+//Display the actual challenge list
+$challengeListResultset = loadChallengeListing($userID);
+displayChallengeList($challengeListResultset);
+
+?>
+</div>
+
+<div id="copy" style='width:100%;clear: both'>
+ Copyright &copy; 2011-2012 pathery.com
+</div>
+
+<?php
+htmlFooter();
+?>
+
+<?php
+/**
+ * Outputs the list of all challenges to the page
+ */
+function displayChallengeList($challengeListResultset)
+{
+ echo '<div id="challengelist">';
+ $currentTier = -1;
+ $currentMap = -1;
+ while($challenge = mysql_fetch_array($challengeListResultset))
+ {
+ //Each challenge gets its own header/table
+ if($challenge["challengeTier"] != $currentTier)
+ {
+ if($currentTier >= 0)
+ {
+ echo '</table>';
+ }
+ $currentTier = $challenge["challengeTier"];
+ echo "<div class='challengelist_tier'>Tier $currentTier</div>";
+ echo "<table class='challengelist_table'>";
+ }
+
+ //Each map gets it own row
+ if($challenge["mapID"] != $currentMap)
+ {
+ if($currentMap >= 0)
+ {
+ echo '</td></tr>';
+ }
+ $currentMap = $challenge["mapID"];
+ $mapName = $challenge["challengeName"];
+ if($mapName == NULL || $mapName == "")
+ $mapName = "(unknown)";
+ echo "<tr><td class='challengelist_link'><a href='challenge?mapID=$currentMap'>$mapName</a></td>";
+ echo "<td class='challengelist_stars'>";
+ }
+
+ //Each challenge gets its own star
+ if($challenge["dateSolved"] !== NULL)
+ $cssClass = "challengelist_complete";
+ else
+ $cssClass = "challengelist_incomplete";
+ echo "<div class='$cssClass'></div>";
+ }
+ echo "</td></tr></table>";
+}
+?> \ No newline at end of file