// @package jquery-1.3.2.min.js

/***********************************************
 * Dynamic Countdown script- � Dynamic Drive (http://www.dynamicdrive.com)
 * This notice MUST stay intact for legal use
 * Visit http://www.dynamicdrive.com/ for this script and 100s more.
 ***********************************************/

function cdtime(container, targetdate){
    if (!document.getElementById || !document.getElementById(container)) return
    this.container=document.getElementById(container)
    this.currentTime=new Date()
    this.targetdate=new Date(targetdate)
    this.timesup=false
    this.updateTime()
}

cdtime.prototype.updateTime=function(){
    var thisobj=this
    this.currentTime.setSeconds(this.currentTime.getSeconds()+1)
    setTimeout(function(){thisobj.updateTime()}, 1000) //update time every second
}

cdtime.prototype.displaycountdown=function(baseunit, functionref){
    this.baseunit=baseunit
    this.formatresults=functionref
    this.showresults()
}

cdtime.prototype.showresults=function(){
    var thisobj=this


    var timediff=(this.targetdate-this.currentTime)/1000 //difference btw target date and current date, in seconds
    if (timediff<0){ //if time is up
        this.timesup=true
        this.container.innerHTML=this.formatresults()
        return
    }
    var oneMinute=60 //minute unit in seconds
    var oneHour=60*60 //hour unit in seconds
    var oneDay=60*60*24 //day unit in seconds
    var dayfield=Math.floor(timediff/oneDay)
    var hourfield=Math.floor((timediff-dayfield*oneDay)/oneHour)
    var minutefield=Math.floor((timediff-dayfield*oneDay-hourfield*oneHour)/oneMinute)
    var secondfield=Math.floor((timediff-dayfield*oneDay-hourfield*oneHour-minutefield*oneMinute))
    if (this.baseunit=="hours"){ //if base unit is hours, set "hourfield" to be topmost level
        hourfield=dayfield*24+hourfield
        dayfield="n/a"
    }
    else if (this.baseunit=="minutes"){ //if base unit is minutes, set "minutefield" to be topmost level
        minutefield=dayfield*24*60+hourfield*60+minutefield
        dayfield=hourfield="n/a"
    }
    else if (this.baseunit=="seconds"){ //if base unit is seconds, set "secondfield" to be topmost level
        var secondfield=timediff
        dayfield=hourfield=minutefield="n/a"
    }

    this.container.innerHTML=this.formatresults(dayfield, hourfield, minutefield, secondfield)


    
    setTimeout(function(){thisobj.showresults()}, 1000) //update results every second
}

/////CUSTOM FORMAT OUTPUT FUNCTIONS BELOW//////////////////////////////

//Create your own custom format function to pass into cdtime.displaycountdown()
//Use arguments[0] to access "Days" left
//Use arguments[1] to access "Hours" left
//Use arguments[2] to access "Minutes" left
//Use arguments[3] to access "Seconds" left

//The values of these arguments may change depending on the "baseunit" parameter of cdtime.displaycountdown()
//For example, if "baseunit" is set to "hours", arguments[0] becomes meaningless and contains "n/a"
//For example, if "baseunit" is set to "minutes", arguments[0] and arguments[1] become meaningless etc


function displayCountDown(){
    var displaystring
    if (this.timesup == false){ //if target date/time not yet met
	var label = Array();
        label[0] = "j";
        label[1] = "h";
        label[2] = "m";
        label[3] = "s";

        displaystring="<div class='count_down'>";

        for(i=0;i<4;i++) {
            var newArguments = Array();
            if(arguments[i]>=10) {
                newArguments[0] = Math.floor(arguments[i]/10);
                newArguments[1] = arguments[i]-(newArguments[0]*10);
            } else {
                newArguments[0] = 0;
                newArguments[1] = arguments[i];
            }
            for(j=0;j<2;j++) {
                displaystring += "<div id=\"nbr"+i+"\" class=\"number\" rel=\""+newArguments[j]+"\">"+afficheChiffre("nbr"+i,newArguments[j])+"</div>";
            }
            displaystring += "<div class=\"number withoutBack\">"+label[i]+"</div>";
        }
    } else { //else if target date/time met
        displaystring="" //Don't display any text
    }
    return displaystring
}

function afficheChiffre(id, nouveauChiffre) {
    return "<img src=\"/img/COUNT/count_"+nouveauChiffre+".png\" width=\"30px\" height=\"49px\" />";
}
