<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -20,7 +20,7 @@
 # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 
 application: the-cloud-player
-version: 2
+version: 3
 runtime: python
 api_version: 1
 
@@ -34,9 +34,6 @@ handlers:
 - url: /images
   static_dir: images
 
-- url: .*
-  script: the-cloud-player.py
-
 - url: /favicon.ico
   static_files: images/favicon.ico
   upload: images/favicon.ico
@@ -44,3 +41,7 @@ handlers:
 - url: /robots.txt
   static_files: robots.txt
   upload: robots.txt
+
+- url: .*
+  script: the-cloud-player.py
+</diff>
      <filename>app.yaml</filename>
    </modified>
    <modified>
      <diff>@@ -25,6 +25,7 @@ import wsgiref.handlers
 
 import random
 import logging
+import urllib
 
 from google.appengine.ext import db
 
@@ -56,7 +57,8 @@ class User(webapp.RequestHandler):
 
 class API(webapp.RequestHandler):
   def get(self):
-    sc_api_url = &quot;http://api.soundcloud.com/&quot;
+    
+    sc_api_url = &quot;http://api.soundcloud.com&quot;
     callback = self.request.get('callback')
     api_parameters = utils.extract_parameters(self.request.uri)
     if api_parameters:
@@ -66,14 +68,13 @@ class API(webapp.RequestHandler):
       hit = memcache.get(parameters_hash)
       if hit is None:
         try:
-          response = urlfetch.fetch(url = sc_api_url + api_parameters,method=urlfetch.GET, headers={'Content-Type': 'text/javascript; charset=utf-8'})
+          response = urlfetch.fetch(url = sc_api_url + urllib.quote_plus(api_parameters),method=urlfetch.GET, headers={'Content-Type': 'text/javascript; charset=utf-8'})
           memcache.set(parameters_hash, response.content, 10800)
-          utils.print_with_callback(callback, response.content. self.response)
+          utils.print_with_callback(callback, response.content, self.response)
         except:
           utils.print_with_callback(callback, utils.status_code_json(408), self.response)
       else:
-        utils.print_with_callback(callback, hit, self.response)
-        
+        utils.print_with_callback(callback, hit, self.response)        
       
 class PlayerPage(webapp.RequestHandler):
   def get(self):</diff>
      <filename>the-cloud-player.py</filename>
    </modified>
    <modified>
      <diff>@@ -158,10 +158,13 @@ def extract_parameters(url):
     return None
 
 def print_with_callback(callback, content, response):
-  response.out.write(callback)
-  response.out.write(&quot;(&quot;)
-  response.out.write(content)
-  response.out.write(&quot;)&quot;)
+  if len(str(callback)) &gt; 0:
+    response.out.write(callback)
+    response.out.write(&quot;(&quot;)
+    response.out.write(content)
+    response.out.write(&quot;)&quot;)
+  else:
+    response.out.write(content)
 
 def strip_named_parameter(parameter_to_remove, url):
   p = re.compile('&amp;'+parameter_to_remove+'[^&amp;]*')</diff>
      <filename>utils.py</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>93e7973492c3167e435a80e4f6ac30b371e43f2d</id>
    </parent>
  </parents>
  <author>
    <name>Henrik Berggren</name>
    <email>hinke@hinkeb.com</email>
  </author>
  <url>http://github.com/hinke/the-cloud-player/commit/0537513e693e53b38c8b98dd3b8aaeabead3a659</url>
  <id>0537513e693e53b38c8b98dd3b8aaeabead3a659</id>
  <committed-date>2009-05-05T05:40:27-07:00</committed-date>
  <authored-date>2009-05-05T05:40:27-07:00</authored-date>
  <message>Fixed strange api bug</message>
  <tree>6c97a3fb6913072c249d47aaf58ba1c3c1cae38a</tree>
  <committer>
    <name>Henrik Berggren</name>
    <email>hinke@hinkeb.com</email>
  </committer>
</commit>
