summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.htaccess2
-rw-r--r--ajax/challenges.ajax.php35
2 files changed, 37 insertions, 0 deletions
diff --git a/.htaccess b/.htaccess
index 30b2ace..e85e1f5 100644
--- a/.htaccess
+++ b/.htaccess
@@ -19,6 +19,8 @@ RewriteRule ^([a-z]+)$ /index\.php?page=$1 [QSA,NC]
# GetMap Re-write
RewriteRule ^map/(.*)$ /ajax/maps\.ajax\.php?mapid=$1 [QSA,NC]
+RewriteRule ^challenge/(.*)$ /ajax/challenges\.ajax\.php?challengeid=$1 [QSA,NC]
+
# CSS and JS cache for 480 weeks
<filesMatch "\.(css|js)$">
diff --git a/ajax/challenges.ajax.php b/ajax/challenges.ajax.php
new file mode 100644
index 0000000..68d6ae3
--- /dev/null
+++ b/ajax/challenges.ajax.php
@@ -0,0 +1,35 @@
+<?
+ob_start("ob_gzhandler");
+
+include('../includes/mapclass.php');
+include('../includes/maps.php');
+
+//Remove the ending .js
+$tmp = explode(".", $_GET['challengeid']);
+$challengeID = $tmp[0] * 1;
+if (!is_int($challengeID)) exit;
+
+$map = new map(getChallengeCode($challengeID), $challengeID);
+
+
+function getChallengeCode($challengeID) {
+ include_once('../includes/sqlEmbedded.php');
+ $sql = "SELECT `code`
+ FROM `challengeMaps`
+ WHERE `ID` = '$challengeID'
+ ";
+ $result = mysql_query($sql);
+ if (mysql_num_rows($result) > 0) {
+ list($map) = mysql_fetch_row($result);
+ return $map;
+ }
+}
+
+//62 days
+$expires = 62*24*60*60;
+// header("Cache-Control: public, maxage=".$expires);
+// header('Expires: ' . gmdate('D, d M Y H:i:s', time()+$expires) . ' GMT');
+// header("Content-type: text/javascript");
+echo json_encode($map);
+
+?> \ No newline at end of file