jQuery(document).ready(function()
{
    var url = "http://twitter.com/status/user_timeline/degonz.json?count=3&callback=?";
    jQuery.getJSON(url,
    function(data)
    {
        jQuery.each(data, function(i, item)
        {
            jQuery("img.profile").attr("src", item.user["profile_image_url"]);
            jQuery(".tweets ul").append("<li><a href=\"http://twitter.com/degonz\">degonz</a> " + item.text.linkify() + " <span class='created_at'>" + relative_time(item.created_at) + " gepost</span></li>");
            // via " + item.source
        });
    });
});

String.prototype.linkify = function()
{
    return this.replace(/[A-Za-z]+:\/\/[A-Za-z0-9-_]+\.[A-Za-z0-9-_:%&\?\/.=]+/, function(m)
    {
        return m.link(m);
    });
};
function relative_time(time_value)
{
    var values = time_value.split(" ");
    time_value = values[1] + " " + values[2] + ", " + values[5] + " " + values[3];
    var parsed_date = Date.parse(time_value);
    var relative_to = (arguments.length > 1) ? arguments[1] : new Date();
    var delta = parseInt((relative_to.getTime() - parsed_date) / 1000);
    delta = delta + (relative_to.getTimezoneOffset() * 60);

    var r = '';
    if (delta < 60)
    {
        r = 'Een minuut geleden';
    } else if (delta < 120)
    {
        r = 'Enkele minuten geleden';
    } else if (delta < (45 * 60))
    {
        r = (parseInt(delta / 60)).toString() + ' minuten geleden';
    } else if (delta < (90 * 60))
    {
        r = 'an hour ago';
    } else if (delta < (24 * 60 * 60))
    {
        r = '' + (parseInt(delta / 3600)).toString() + ' uur geleden';
    } else if (delta < (48 * 60 * 60))
    {
        r = '1 dag geleden';
    } else
    {
        r = (parseInt(delta / 86400)).toString() + ' dagen geleden';
    }

    return r;
}
function twitter_callback()
{
    return true;
}
