function startFlickr() {
    // calculate GMT date
    now = new Date();
    // get timezone offset
    tz = now.getTimezoneOffset();
    // calculate gmt
    gmt = new Date(now.getTime() + (tz * 60 * 1000) - (24 * 60 * 60 * 1000));    // subtract one day
    // debug
    // make date tag
    m = new String(gmt.getMonth() + 1);
    if (m.length == 1) m = "0" + m;
    d = new String(gmt.getDate());
    if (d.length == 1) d = "0" + d;
    dt = new String(m + d);
    //alert(dt);
    //alert(now.toGMTString());
    //alert(gmt.toLocaleString());
    
    // debug
    //dt = "0101";
    
    // get and show tags
    url = "./api.php?f=tm/" + dt + ".json";
    $.getJSON(url, function(data) {
       // get island list
       lst = data.Islands;
       // loop through each
       for (i = 0; i < lst.length; i++) {
            item = lst[i];
            // match to node
            switch (item.Name) {
                case "Maui": $('#tm1').text(item.PhotoCount); break;
                case "Molokai": $('#tm2').text(item.PhotoCount); break;
                case "Lanai": $('#tm3').text(item.PhotoCount); break;
            }
       }
    });

    // get and show geotags
    url = "./api.php?f=tmg/" + dt + ".json";
    $.getJSON(url, function(data) {
       // get island list
       lst = data.Islands;
       // loop through each
       for (i = 0; i < lst.length; i++) {
            item = lst[i];
            // match to node
            switch (item.Name) {
                case "Maui": $('#tmg1').text(item.PhotoCount); break;
                case "Molokai": $('#tmg2').text(item.PhotoCount); break;
                case "Lanai": $('#tmg3').text(item.PhotoCount); break;
            }
       }
    });
    
}

function showFlickrStats(cal) {
    $.ajax({
        url: "/json/flickr/" + cal,
        dataType: "json",
        success: function(data, textStatus, request){
            // todo: check status
            bindFlickrStats(data);
        }
    });
}

function bindFlickrStats(data) {
    //alert(data.views);
    if (data == undefined || data == null) return;
    
    // build link
    var $lnk = $('<a>View on Flickr</a>');
    $lnk.attr('href', 'http://www.flickr.com/photos/' + data.userid + '/' + data.photoid + '/');
    
    
    var $aside = $('<aside></aside>');
    $aside.addClass('flickr');
    $aside.append('<h3>Flickr Stats</h3>');
    // start list
    var $ul = $('<ul></ul>');
    $ul.append($('<li>Views: </li>').append(data.views));
    $ul.append($('<li>Favorites: </li>').append(data.favs));
    $ul.append($('<li>Comments: </li>').append(data.comments));
    $ul.append($('<li></li>').append($lnk));
    $aside.append($ul);
    
    // add to article.post
    //var $post = $('article.post');
    //$post.append($aside);
    
    // after div.fblike
    $aside.insertAfter('div.fblike');
    
    //document.createElement('aside');
}
