﻿
$(document).ready(function () {

    // Gallery
    var g_delay = 5000;

    var g_count = $('.viewer ul li').length;
    var g_counter = g_count - 1;

    setInterval(function () {
        if (g_counter == 0) {
            $('.viewer ul li').eq(g_count - 1).fadeIn(1000, function () {
                $('.viewer ul li').fadeIn(10);
            });
        } else {
            $('.viewer ul li').eq(g_counter).fadeOut(1000);
        }

        if (g_counter === 0) {
            g_counter = g_count - 1;
        } else {
            g_counter--;
        }
    }, g_delay);

    // Get tweets
    var twitter_api = 'https://twitter.com/status/user_timeline/danjackson10095.json?count=3&callback=?';

    // Convert Twitter API Timestamp to "Time Ago"
    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 = 'a minute ago';
        } else if(delta < 120) {
            r = 'couple of minutes ago';
        } else if(delta < (45*60)) {
            r = (parseInt(delta / 60)).toString() + ' minutes ago';
        } else if(delta < (90*60)) {
            r = 'an hour ago';
        } else if(delta < (24*60*60)) {
            r = '' + (parseInt(delta / 3600)).toString() + ' hours ago';
        } else if(delta < (48*60*60)) {
            r = '1 day ago';
        } else {
            r = (parseInt(delta / 86400)).toString() + ' days ago';
        }

        return r;
    }

    $.getJSON(twitter_api, function (data) {
        $.each(data, function (i, item) {
            $('#tweet_list').append('<p>' + item.text + '<br />'
                                + '<span>' + relative_time(item.created_at) + '</span></p>'
            
            );
             
        });
    });

});
