var http = require('http');
var url = require('url');

var receive = function(dataUrl, dataReady) {
    var urlp = url.parse(dataUrl);
    var service = http.createClient(urlp.port ? urlp.port : 80, urlp.hostname);
    var req = service.request('GET', urlp.pathname + urlp.search,
        {'host': urlp.hostname});

    var data = null, status = null, finished = false;

    req.on('response', function (res) {
        var body = "";
        status = res.statusCode;

        res.on('data', function (chunk) {
            body += chunk;
        });

        res.on('end', function () {
            data = JSON.parse(body);
            if (!finished) {
                finished = true;
                dataReady(data);
            }
        });
    });

    req.end();

    setTimeout(function() {
        if (!finished) {
            finished = true;
            dataReady(null);
        }
    }, 2000);
};

console.log(process.cwd());
var ft = require(process.cwd() + '/lib/feed-tables.js');

receive("https://spreadsheets.google.com/feeds/cells/0AoooUkEfVrhldEpRekRVakVYWmJ2U2Z4SFBVZ0M1Nnc/od6/public/basic?alt=json",
 function(data) {
        if (data) {
            var table = new ft.CellsFeed(data);            
            for (var r = 0; r < table.length; r++) {
                var row = table.getRow(r);
                console.log("name: " + row.name + ", street: " + row.street, " city: " + row.city + "\n");
            }
        } else
            console.log("Timeout while fetching the Google Spreadsheet data.");
    });