/*
    Author:        Robert Hashemian (http://www.hashemian.com/)
    Modified by:    Munsifali Rashid (http://www.munit.co.uk/)
*/


function countdown(obj)
{
    this.obj            = obj;
    this.Div            = "clock";
    this.BackColor      = "white";
    this.ForeColor      = "black";
    this.TargetDate     = "";
    this.DisplayFormat  = "%%D%% Days, %%H%% Hours, %%M%% Minutes, %%S%% Seconds.";
    this.CountActive    = true;
    this.countStepper   = -1;
    
    this.DisplayStr;

    this.Calcage        = cd_Calcage;
    this.CountBack      = cd_CountBack;
    this.Setup          = cd_Setup;
}

function cd_Calcage(secs, num1, num2)
{
  s = ((Math.floor(secs/num1))%num2).toString();
  if (s.length < 2) s = "0" + s;
  return (s);
}
function cd_CountBack(secs)
{
  this.DisplayStr = this.DisplayFormat.replace(/%%D%%/g,    this.Calcage(secs,86400,100000));
  this.DisplayStr = this.DisplayStr.replace(/%%H%%/g,        this.Calcage(secs,3600,24));
  this.DisplayStr = this.DisplayStr.replace(/%%M%%/g,        this.Calcage(secs,60,60));
  this.DisplayStr = this.DisplayStr.replace(/%%S%%/g,        this.Calcage(secs,1,60));
  this.countStepper = Math.ceil(this.countStepper);
  if (this.countStepper == 0) this.CountActive = false;
  document.getElementById(this.Div).innerHTML = this.DisplayStr;
  if (this.CountActive) setTimeout(this.obj +".CountBack(" + (secs+this.countStepper) + ")", 1000);
}
function cd_Setup()
{
    var dthen    = new Date(this.TargetDate);
    var dnow    = new Date();
    //alert(dnow);
    if(this.countStepper>0)
      ddiff = new Date(this.TargetDate);//new Date(dnow-dthen);
    else
      ddiff = new Date(dthen-dnow);    
    //ddiff        = new Date(dthen-dnow);
    //alert(ddiff);
    gsecs        = Math.floor(ddiff.valueOf()/1000);
    this.CountBack(gsecs);
}
