var userName = 'dienteazul';
var count = 6;

$(document).ready(function()
{
    getTweets(userName, count);
});

function getTweets(userName, count)
{
    $.getJSON(
        'http://api.twitter.com/1/statuses/user_timeline.json?screen_name=' + userName + '&callback=?',
        {},
        showTweets,
        'jsonp'
    );
}

function showTweets(tweets)
{
    var str = '<ul>';
    var i = 0;
    $.each(tweets, function(index,value)
    {
        if(i == count)  return;
        if (i%2 == 0) 
        {
          if (i == 0) { str+= '<li class="even first"><p>'; }
          else { str+= '<li class="even"><p>'; }
        }
        else
        {
          str+= '<li><p>';
        }
        str+= urlToLink(value.text);
        str+='<span>';
        str+= relTime(value.created_at);
        str+= ' vía ' + value.source;
        str+= '</span></p></li>';
        i++;
    });
    str+= '</ul>';
    $('#tweets').html(str);
}

function urlToLink(text)
{
  var exp = /(\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/ig;
  return text.replace(exp,"<a href='$1'>$1</a>");
}

function relTime(time_value)
{
  time_value = time_value.replace(/(\+[0-9]{4}\s)/ig,"");
  var parsed_date = Date.parse(time_value);
  var relative_to = (arguments.length > 1) ? arguments[1] : new Date();
  var timeago = parseInt((relative_to.getTime() - parsed_date) / 1000);
  if (timeago < 60) return 'hace menos de un minuto';
  else if(timeago < 120) return 'hace un minuto';
  else if(timeago < (45*60)) return 'hace ' + (parseInt(timeago / 60)).toString() + ' minutos';
  else if(timeago < (90*60)) return 'hace menos de una hora';
  else if(timeago < (24*60*60)) return 'hace ' + (parseInt(timeago / 3600)).toString() + ' hora(s)';
  else if(timeago < (48*60*60)) return 'hace un día';
  else return 'hace ' + (parseInt(timeago / 86400)).toString() + ' días';
}



