 
var interval;
 
$(document).ready(function() {
    
    //récupère et affiche le temps
    getTime();
    //rafraichi l'heure régulièrement pour palier à l'imprécision de l'horloge du client
    setInterval(getTime, 120000);
 
});
 
function getTime(){
    clearInterval(interval);
    //enregistrement du temps de départ (pour le calcul de la latence)
    start = new Date().getTime();
    
    //on va chercher la date du serveur par une requête ajax
    $.ajax({
      type: "GET",
      url: "/scripts/php/2011/utc/getTime.php?timeStamp="+start, //le timeStamp en get sert uniquement à feinter le cache
      dataType: 'json',
      success: function(data){
      
        //calcul de la latence en fonction de l'heure de départ et de l'heure du succès
        latence = Math.round((new Date().getTime() - start)/1000);
        
        server_heu = parseInt(data.h);
        server_min = parseInt(data.m);
        server_sec = parseInt(data.s);
        
        //addition de la latence arrondie à la seconde (on part du principe que la latence < 1 minute)
        server_sec = server_sec + latence;
        if(server_sec >= 60){
        	server_sec = server_sec-60;
        }
        
        
        //affichage de l'heure
        server_calc();
        
        //chaque seconde, on incrémente l'heure d'une seconde :)
        interval = setInterval(server_calc, 1000);
      },
    });
}
 
//fonction de calcul de l'heure
function server_calc(){
 
    if (server_sec < 10)
    	server_sec = "0"+Math.round(server_sec);
    else if(server_sec >= 60)
    	{
    	server_sec = "00";
    	server_min++;
    	}
    if (server_min < 10)
    	server_min = "0"+Math.round(server_min);
    else if(server_min >= 60)
    	{
    	server_min = "00";
    	server_heu++;
    	}
    if (server_heu < 10)
    	server_heu = "0"+Math.round(server_heu);

    else if(server_heu >= 24)
    	{
    	server_heu = "00";
    	}
    server_texte = server_heu + ":" + server_min + ":" + server_sec + " UTC";
    $('#ServerTime').text(server_texte);
    server_sec++;
}
