Add razer forge specific category renderings
[stouyapi.git] / www / .htaccess
index e12ed602306866a52509369e10a55e41172d79a6..8f2efe3a07ff0592b324ca8605211b9e822d81b7 100644 (file)
@@ -1,4 +1,18 @@
+#no iso-2022-cn charset for "com.cis.ouya.oth.htm"
+#"RemoveCharset" does not work, so we have to override with AddCharset
+AddCharset UTF-8 .iso2022-cn .cis
+#Fix game/art.var.pgo.htm
+AddHandler default-handler .var
+
+DirectorySlash Off
+
 RewriteEngine on
+RewriteBase /
+
+<Files "firmware_builds">
+    ExpiresActive On
+    ExpiresDefault "access plus 1 day"
+</Files>
 
 #rewrite details GET parameter
 RewriteCond %{QUERY_STRING} ^app=([^&]+)
@@ -16,9 +30,45 @@ RewriteCond %{QUERY_STRING} &only=([^&]+)
 RewriteCond %{DOCUMENT_ROOT}/api/v1/developers/$1/products/%1.json -f
 RewriteRule ^api/v1/developers/(.+)/products/ /api/v1/developers/$1/products/%1.json? [END]
 
+#discover homepage
+RewriteCond %{HTTP_USER_AGENT} "Forge"
+RewriteRule ^api/v1/discover/?$ /api/v1/discover-data/discover.forge.json [END]
+
 RewriteRule ^api/v1/discover/?$ /api/v1/discover-data/discover.json [END]
+
+#discover category
+RewriteCond %{HTTP_USER_AGENT} "Forge"
+RewriteCond %{REQUEST_URI} ^/api/v1/discover/(.+)$
+RewriteCond %{DOCUMENT_ROOT}/api/v1/discover-data/$1.forge.json -f
+RewriteRule ^api/v1/discover/(.+)$ /api/v1/discover-data/$1.forge.json [END]
+
 RewriteRule ^api/v1/discover/(.+)$ /api/v1/discover-data/$1.json [END]
 
+#if directoryslash is on, gamers gets redirected to gamers/ (dir index)
+# the ouya registration does not support redirects there
+#TODO: Use that only for the api/v1/gamers path, not for all
+ErrorDocument 400 /api/v1/gamers/register-error.json
+RewriteRule ^api/v1/gamers$ /api/v1/gamers/register-error.json [R=400,END]
+RewriteRule ^api/razer/gamer$ /api/v1/gamers/register-error.json [R=400,END]
+
+#prevent redirect from gamers/me to gamers/me/
+<Files "me">
+    DirectorySlash Off
+</Files>
+
+#Disable the next three lines to have static usernames only
+RewriteRule ^api/razer/session$ /api/razer/session.php [END]
+RewriteRule ^api/v1/gamers/me$ /api/v1/gamers/me.php [END]
+RewriteRule ^api/v1/sessions$ /api/v1/sessions.php [END]
+
+RewriteRule ^api/v1/gamers/me$ /api/v1/gamers/me.json [END]
+
+#partner builds
+RewriteCond %{HTTP_USER_AGENT} "razer/pearlyn/pearlyn"
+RewriteRule ^api/v1/partner_builds$ /api/v1/partner_builds.razer-forge-tv.json [END]
+
+RewriteRule ^api/v1/partner_builds$ /api/v1/partner_builds.json [END]
+
 #purchased games/products
 # active buy requests
 RewriteCond %{REQUEST_METHOD} POST
@@ -37,6 +87,9 @@ RewriteCond %{QUERY_STRING} &q=([^&]+)
 RewriteCond %{DOCUMENT_ROOT}/api/v1/search-data/%1.json -f
 RewriteRule ^api/v1/search /api/v1/search-data/%1.json? [END]
 
+# for http://clients3.google.com/generate_204
+RewriteRule ^generate_204$ /api/v1/status
+
 #this one wants a 204 status code
 RewriteRule ^api/v1/status$ - [R=204,L]