
function calcage(secs, num1, num2) {
  s = ((Math.floor(secs/num1))%num2).toString();
  if (s.length < 2) s = "0" + s;
  return s;
}

function CountBack(secs, CountStepper) {
  var SetTimeOutPeriod = (Math.abs(CountStepper)-1)*1000 + 990;
  
  if (secs < 0) {
    $("#cntdwn").html("--:--:--");
    return;
  }
  DisplayFormat = "%%D%%d %%H%%:%%M%%:%%S%%";
  
  DisplayStr = DisplayFormat.replace(/%%D%%/g, calcage(secs,86400,100000));
  DisplayStr = DisplayStr.replace(/%%H%%/g, calcage(secs,3600,24));
  DisplayStr = DisplayStr.replace(/%%M%%/g, calcage(secs,60,60));
  DisplayStr = DisplayStr.replace(/%%S%%/g, calcage(secs,1,60));
  
  $("#cntdwn").html(DisplayStr);

  setTimeout("CountBack(" + (secs+CountStepper) + ", " + (CountStepper) + ")", SetTimeOutPeriod);
}

//This is the tribute
function final_countdown(TargetDate)
{

CountStepper = -1;
var SetTimeOutPeriod = (Math.abs(CountStepper)-1)*1000 + 990;
//var TargetDate ="07/15/2010 16:05:00";

var dthen = new Date(TargetDate);
var dnow = new Date();
if(CountStepper>0)
  ddiff = new Date(dnow-dthen);
else
  ddiff = new Date(dthen-dnow);
gsecs = Math.floor(ddiff.valueOf()/1000);

CountBack(gsecs, CountStepper);
}

$(document).ready(function(){
  final_countdown($("input#cntdwn_start").val());
});

