Add _embed page for embedding, clean up style to match. Reviewed in http://codereview.appspot.com/5668045/
diff --git a/samples/api-python-client-doc/main.py b/samples/api-python-client-doc/main.py
index 888c32e..40c3ffc 100755
--- a/samples/api-python-client-doc/main.py
+++ b/samples/api-python-client-doc/main.py
@@ -30,13 +30,13 @@
import pydoc
import re
-from apiclient.anyjson import simplejson
from apiclient import discovery
from apiclient.errors import HttpError
from google.appengine.api import memcache
from google.appengine.ext import webapp
from google.appengine.ext.webapp import template
from google.appengine.ext.webapp import util
+from oauth2client.anyjson import simplejson
DISCOVERY_URI = 'https://www.googleapis.com/discovery/v1/apis?preferred=true'
@@ -69,8 +69,7 @@
class GadgetHandler(webapp.RequestHandler):
- """Handles serving the Google Gadget.
- """
+ """Handles serving the Google Gadget."""
def get(self):
directory = get_directory_doc()
@@ -84,6 +83,20 @@
self.response.headers.add_header('Content-Type', 'application/xml')
+class EmbedHandler(webapp.RequestHandler):
+ """Handles serving a front page suitable for embedding."""
+
+ def get(self):
+ directory = get_directory_doc()
+ for item in directory:
+ item['title'] = item.get('title', item.get('description', ''))
+ path = os.path.join(os.path.dirname(__file__), 'embed.html')
+ self.response.out.write(
+ template.render(
+ path, {'directory': directory,
+ }))
+
+
def _render(resource):
"""Use pydoc helpers on an instance to generate the help documentation.
"""
@@ -140,6 +153,7 @@
[
(r'/', MainHandler),
(r'/_gadget/', GadgetHandler),
+ (r'/_embed/', EmbedHandler),
(r'/([^\/]*)/([^\/]*)(?:/(.*))?', ResourceHandler),
],
debug=False)