function replaceURLWithHTMLLinks(text) {
var exp = /(\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/i;
return text.replace(exp,"$1");
}
function tweetagCallback(json)
{
html = "";
html += "
";
html += "";
html += "";
html += ""+json.user.screen_name+"";
html += "";
html += "
";
html += ""+time_since(Date.parse(json.created_at))+"";
html += "View on Twitter";
document.write("");
}
function time_since(original) {
var foo = new Date; // Generic JS date object
var unixtime_ms = foo.getTime(); // Returns milliseconds since the epoch
var today = Math.floor(unixtime_ms / 1000); /* Current unix time */
// original = original - 12*3600;
original = original.toString().substr(0,10);
// console.info("unix time: %i tweet time: %i - difference: %i",today,original,(today-original));
var since = today - original;
//console.debug(since);
if(window.console)
console.info("epoch: %s - %s = %s",today,original,since);
var toprint="",days,hours,minutes;
if(since>(24*3600))
{
days = Math.floor(since/(3600*24));
toprint += days+" day";
if(days>1)
toprint += "s";
toprint += " ";
since = since%(24*3600);
}
if(since>3600)
{
hours = Math.floor(since/3600);
toprint += hours+" hour";
if(hours>1)
toprint += "s";
toprint += " ";
since = since%3600;
}
if(since>60)
{
minutes = Math.floor(since/60);
toprint += minutes+" minute";
if(minutes>1)
toprint += "s";
toprint += " ";
since = since%60;
}
else
toprint = "less than a minute";
// toprint += since+" seconds";
toprint += " ago";
return toprint;
}
tweetagCallback({"in_reply_to_status_id":null,"created_at":"Wed Jul 01 23:35:27 +0000 2009","geo":null,"coordinates":null,"in_reply_to_screen_name":null,"truncated":false,"retweeted":false,"source":"Twitter for iPhone","favorited":false,"contributors":null,"place":null,"in_reply_to_user_id":null,"user":{"description":"Co-auteur, co-r\u00e9alisateur et producteur de la s\u00e9rie ON L\u00c2CHE RIEN ! Parce qu'il faut en rire, c'est plus sain...","lang":"fr","profile_background_tile":false,"created_at":"Tue Jul 03 07:35:16 +0000 2007","profile_link_color":"088253","location":"Paris, France","listed_count":607,"followers_count":8238,"statuses_count":7186,"notifications":null,"profile_sidebar_fill_color":"E3E2DE","show_all_inline_media":false,"following":null,"friends_count":1306,"profile_image_url":"http://a2.twimg.com/profile_images/638983522/VinvinChapeau_rouge_normal.jpg","contributors_enabled":false,"profile_sidebar_border_color":"D3D2CF","favourites_count":0,"screen_name":"Vinvin","protected":false,"geo_enabled":false,"profile_use_background_image":true,"time_zone":"Paris","profile_background_color":"EDECE9","name":"Vinvin","follow_request_sent":null,"id":7223522,"verified":false,"profile_background_image_url":"http://s.twimg.com/a/1282351897/images/themes/theme3/bg.gif","utc_offset":3600,"profile_text_color":"634047","url":"http://www.onlacherien.fr"},"retweet_count":null,"id":2428224645,"text":"To open a Mobile phone contract in the US you need a Social Security number. in France you need a proof of living somewhere. Thinking......."});