function twitterCallback2(twitters) {
    var statusHTML = [];
    for (var i=0; i<twitters.length; i++){
        var username = twitters[i].user.screen_name;
        var status = twitters[i].text.replace(/((https?|s?ftp|ssh)\:\/\/[^"\s\<\>]*[^.,;'">\:\s\<\>\)\]\!])/g, function(url) {
            return '<a href="'+url+'">'+url+'</a>';
        }).replace(/\B@([_a-z0-9]+)/ig, function(reply) {
            return  reply.charAt(0)+'<a href="http://twitter.com/'+reply.substring(1)+'">'+reply.substring(1)+'</a>';
        });
        if(status.charAt(0) == "@") {
            continue;
        }
        statusHTML.push('<li><div class="news_data">'+relative_time(twitters[i].created_at)+'</div><span>'+status+'</span> <a style="font-size:85%" href="http://twitter.com/'+username+'/statuses/'+twitters[i].id+'">#</a></li>');
        // statusHTML.push('<li><div class="news_data">'+(twitters[i].created_at)+'</div><span>'+status+'</span> <a style="font-size:85%" href="http://twitter.com/'+username+'/statuses/'+twitters[i].id+'">#</a></li>');
    }
    document.getElementById('twitter_update_list').innerHTML = statusHTML.join('');
}

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 dt = new Date(parsed_date);
    var mm = dt.getMonth()+1;
    return dt.getDate()+"-"+((mm > 9)?mm:("0"+mm))+"-"+dt.getFullYear();

}

(function($) {
    $.fn.getTwitter = function(options) {
        var o = $.extend({}, $.fn.getTwitter.defaults, options);
        $(this).hide();
        if (o.showHeading) {
            $(this).append('<h2>'+o.headingText+'</h2>');
        }
        $(this).append('<ul id="twitter_update_list"><li></li></ul>');
        $("ul#twitter_update_list").hide();
        var pl = $('<p id="'+o.preloaderId+'">'+o.loaderText+'</p>');
        $(this).append(pl);
        if (o.showProfileLink) {
            $(this).append('<a id="profileLink" href="http://twitter.com/'+o.userName+'"><img src="/media/gfx/twitter2.png" alt="Twitter"/></a>');
        }
        $(this).show();
        $.getScript("http://twitter.com/statuses/user_timeline/"+o.userName+".json?callback=twitterCallback2&count="+o.numTweets, function() {
            $(pl).remove();
            if (o.slideIn) {
                $("ul#twitter_update_list").slideDown(1000);
            }
            else {
                $("ul#twitter_update_list").show();
            }
            $("ul#twitter_update_list li:first").addClass("firstTweet");
            $("ul#twitter_update_list li:last").addClass("lastTweet");
        });
    };

    // plugin defaults
    $.fn.getTwitter.defaults = {
        userName: null,
        numTweets: 5,
        preloaderId: "preloader",
        loaderText: "Loading tweets...",
        slideIn: false,
        showHeading: false,
        headingText: "Latest Tweets",
        showProfileLink: true
    };
})(jQuery);
