summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPatrick Davison <snapwilliam@gmail.com>2013-02-17 03:08:22 -0800
committerPatrick Davison <snapwilliam@gmail.com>2013-02-17 03:08:22 -0800
commit1ca6e18e28e8f87e3c77e824034d186aff1686aa (patch)
treea525ac527483d53e2c539b6c4ea97c0ae5ecf3a3
parente6ecd5ae507731050d7281f2a2a192849f41912b (diff)
downloadpathery-1ca6e18e28e8f87e3c77e824034d186aff1686aa.tar.xz
Challenge maps can be accessed with domain/challenge/ID.js
-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