/* twitter stream
  by Jared Cole */

//set up global vars
var username = "HWMI_churches"
//var stream_url = "http://api.twitter.com/1/statuses/user_timeline.json?screen_name=HWMI_churches&count=5&callback=?";
var stream_url = "../../caches/twitter/twitter_cache.json";
function twitterStream() {
    $.getJSON(stream_url, function(data){
        $.each(data, function(i, items){
            $("ul#tweets").append("<li><img src='" + items.user.profile_image_url + "'/>"
                                + "<div class='tweet'><p>" + items.text.linkify().atify()
                                + "</p><span>by <strong><a href='http://www.twitter.com/" + items.user.screen_name + "'>" + items.user.screen_name + "</a></strong> on </span> "
                                + "<em>" + formatDate(items.created_at) + "</em></div><div class='clearfix'></div></li>");
            return (i != 4);
        });    
    });
}

String.prototype.linkify = function() {
  return this.replace(/[A-Za-z]+:\/\/[A-Za-z0-9-_]+\.[A-Za-z0-9-_:% \?\/.=]+[^\.,\)\s*$]/g, function(m) {
    return m.link(m);
  });
};

String.prototype.atify = function() {
    return this.replace(/@[\w]+/g, function(m) {
        return "<strong><a href='http://www.twitter.com/"+m.replace('@','')+"'>"+m+"</a></strong>";
    });
};

function formatDate(date) {
    var m_names = new Array(
        "January", "February", "March", "April", "May", "June", "July", "August", "September", "November", "December"
    );
    
    var d = new Date(date);
    var curr_date = d.getDate();
    var curr_month = d.getMonth();
    var curr_year = d.getFullYear();
    return m_names[curr_month] + " " + curr_date + ", " + curr_year;
}
