From 5db227c26f898abcfe0d332add7dca8fb6dba821 Mon Sep 17 00:00:00 2001 From: Simon Tokumine Date: Mon, 5 Sep 2011 00:17:39 +0100 Subject: [PATCH] update readme and make interactivity settable --- README.md | 48 +++++++++++++++++++++++++++++++++++ lib/cartodb/server_options.js | 4 +-- 2 files changed, 50 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index cf4c3c29..72724eab 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,51 @@ Windshaft-CartoDB ================== +This is the CartoDB map tiler. + +Look at lob/cartodb/server_options to see how we configure windshaft + + +Install +------- +``` +git clone +npm install +node app.js [development | production] +``` + + +Core features +------------- +* reads dbname from subdomain and cartodb redis for pretty tile urls +* configures windshaft to publish cartodb_id as the interactivity layer +* gets the default geometry type from the cartodb redis store +* provides an ultra basic infowindow endpoint for windshaft + + +URLs +---- + +**TILES** +[GET] subdomain.cartodb.com/tiles/:table_name/:z/:x/:y.[png|png8|grid.json] + +Args: +* sql - plain SQL arguments +* interactivity - specify the column to use in UTFGrid +* cache_buster - if needed you can add a cachebuster to make sure you're rendering new +* geom_type - override the cartodb default + +**STYLE** +[GET/POST] subdomain.cartodb.com/tiles/:table_name/style + +Args: +* style - the style in CartoCSS you want to set + +**INFOWINDOW** +[GET] subdomain.cartodb.com/tiles/:table_name/infowindow + +Args: +* infowindow - returns contents of infowindow from CartoDB. + + +All GET requests are wrappable with JSONp using callback argument, including the UTFGrid map tile call. \ No newline at end of file diff --git a/lib/cartodb/server_options.js b/lib/cartodb/server_options.js index d0589140..89187b55 100644 --- a/lib/cartodb/server_options.js +++ b/lib/cartodb/server_options.js @@ -27,8 +27,8 @@ me.req2params = function(req, callback){ // bring all query values onto req.params object _.extend(req.params, req.query); - // for cartodb, ensure interactivity is cartodb_id - req.params.interactivity = 'cartodb_id'; + // for cartodb, ensure interactivity is cartodb_id or user specified + req.params.interactivity = req.params.interactivity || 'cartodb_id'; Step( function getDatabase(){