function getFullMonth(shortMonth) {
  switch(shortMonth) {
    case 'Jan':
      return 'January';
    case 'Feb':
      return 'February';
    case 'Mar':
      return 'March';  
    case 'Apr':
      return 'April';          
    case 'May':
      return 'May';    
    case 'Jun':
      return 'June';                                  
    case 'Jul':
      return 'July';
    case 'Aug':
      return 'August';     
    case 'Sep':
      return 'September';       
    case 'Oct':
      return 'October';           
    case 'Nov':
      return 'November';                 
    case 'Dec':
      return 'December';
    default: 
      return '';
  }
}

function twitterForWebsiteUpdates(twitterJSON) {
  tweets = twitterJSON.results;
  var outputHTML = [];
  outputHTML.push('<ul class="twitterWebsiteUpdates">');
  for (var i=0; i<tweets.length; i++){
    var websiteUpdateAddress = '';
    var status = tweets[i].text;
    if ( status.match(/https?\:\/\/[^"\s\<\>]*[^.,;'">\:\s\<\>\)\]\!]/g) && (status.match(/https?\:\/\/[^"\s\<\>]*[^.,;'">\:\s\<\>\)\]\!]/g).length == 1) ) {
      status = status.replace(/(https?\:\/\/[^"\s\<\>]*[^.,;'">\:\s\<\>\)\]\!])/g, function(url) {
        websiteUpdateAddress = url;
        return '';
      });
    } 
    status = status.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>';
    }).replace(/#websiteupdate/ig, '').replace(/ #/g, ' ').replace(/^#/g, '').replace(/^#/g, ' ').replace(/^\s*/, '').replace(/\s*$/, '');
    if (websiteUpdateAddress) {
      status = '<a href="' + websiteUpdateAddress + '">' + status + '</a>';
    }
    var date_array = tweets[i].created_at.split(' ');
    outputHTML.push('<li><span class="twitterCreatedDate">' + date_array[1].replace(/^0/, '') + ' ' + getFullMonth(date_array[2]) + ' ' + date_array[3] + ': </span>' + '<span class="twitterText">' + status + '</span> </li>');
  }
  if (outputHTML.length == 1) {
    outputHTML.push('<li><i>No recent updates.</i></li>');
  }
  outputHTML.push('</ul>');
  document.getElementById('twitterForWebsiteUpdatesList').innerHTML = outputHTML.join('');
}

