test/emission_fichiers/fc_widget_twitter.js
branchnew-model
changeset 882 61c384dda19e
parent 881 f11b234497f7
child 883 d35ad8111c5e
equal deleted inserted replaced
881:f11b234497f7 882:61c384dda19e
     1 function twitterCallback2(twitters) {
       
     2   var statusHTML = [];
       
     3   var username = "";
       
     4   for (var i=0; i<twitters.length; i++){  
       
     5 	username = twitters[i].user.screen_name;
       
     6     var status = twitters[i].text.replace(/((https?|s?ftp|ssh)\:\/\/[^"\s\<\>]*[^.,;'">\:\s\<\>\)\]\!])/g, function(url) {
       
     7       return '<a href="'+url+'">'+url+'</a>';
       
     8     }).replace(/\B@([_a-z0-9]+)/ig, function(reply) {
       
     9       return  reply.charAt(0)+'<a href="http://twitter.com/'+reply.substring(1)+'">'+reply.substring(1)+'</a>';
       
    10     });
       
    11     statusHTML.push('<li><span>'+status+'</span><a style="font-size:85%" href="http://twitter.com/'+username+'/statuses/'+twitters[i].id+'">'+relative_time(twitters[i].created_at)+'</a></li>');
       
    12   }
       
    13   document.getElementById('twitter_update_list_'+username).innerHTML = statusHTML.join('');
       
    14 }
       
    15 
       
    16 function relative_time(time_value) {
       
    17 	  var values = time_value.split(" ");
       
    18 	  time_value = values[1] + " " + values[2] + ", " + values[5] + " " + values[3];
       
    19 	  var parsed_date = Date.parse(time_value);
       
    20 	  var relative_to = (arguments.length > 1) ? arguments[1] : new Date();
       
    21 	  var delta = parseInt((relative_to.getTime() - parsed_date) / 1000);
       
    22 	  delta = delta + (relative_to.getTimezoneOffset() * 60);
       
    23 
       
    24 	  if (delta < 60) {
       
    25 	    return " il y a moins d'une minute";
       
    26 	  } else if(delta < 120) {
       
    27 	    return ' il y a une minute';
       
    28 	  } else if(delta < (60*60)) {
       
    29 	    return ' il y a '+(parseInt(delta / 60)).toString() + ' minutes ';
       
    30 	  } else if(delta < (120*60)) {
       
    31 	    return ' il y a une heure';
       
    32 	  } else if(delta < (24*60*60)) {
       
    33 	    return ' il y a ' + (parseInt(delta / 3600)).toString() + ' heures';
       
    34 	  } else if(delta < (48*60*60)) {
       
    35 	    return ' il y a un jour';
       
    36 	  } else {
       
    37 	    return ' il y a '+(parseInt(delta / 86400)).toString() + ' jours';
       
    38 	  }
       
    39 	}