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

function CountBack(secs,id,SetTimeOutPeriod) {
  if (secs <= 0) {
	window.location.href=window.location.href;  
    document.getElementById('counter'+id).innerHTML = FinishMessage;
    return;
  }
//  DisplayStr = DisplayFormat.replace(/%%D%%/g, calcage(secs,86400,100000));
 // DisplayStr = DisplayStr.replace(/%%H%%/g, calcage(secs,3600,24));
  DisplayStr =  DisplayFormat.replace(/%%M%%/g, calcage(secs,60,400000000));
  DisplayStr = DisplayStr.replace(/%%S%%/g, calcage(secs,1,60));

  var countId= 'counter'+id;
  document.getElementById('counter'+id).innerHTML = DisplayStr;
  if (CountActive)
    setTimeout("CountBack(" + (secs+CountStepper) + ", " + id + " , " + SetTimeOutPeriod + ")", SetTimeOutPeriod);
}

var endtime;
function dynamic_counter(endtime,id, dnow1)
 {	 
		if (typeof(BackColor)=="undefined")
		  BackColor = "white";
		if (typeof(ForeColor)=="undefined")
		  ForeColor= "black";

		if (typeof(endtime)=="undefined")
		  TargetDate = "10/29/2010 1:00 PM";
        else
          TargetDate = endtime;

		if (typeof(DisplayFormat)=="undefined")
		  DisplayFormat = "Min <span style='color:#F00'>%%M%%</span> Sec <span style='color:#F00'>%%S%%</span> ";
		  //DisplayFormat = "%%D%% Days, %%H%% Hours, %%M%% Minutes, %%S%% Seconds.";

		if (typeof(CountActive)=="undefined")
		  CountActive = true;
		if (typeof(FinishMessage)=="undefined")
		{
			//window.location.href=window.location.href;
		  FinishMessage = "<span class=\"countdown\">Expired</span>";
		}
		if (typeof(CountStepper)!="number")
		  CountStepper = -1;
		if (typeof(LeadingZero)=="undefined")
		  LeadingZero = true;
		
		
		CountStepper 			= Math.ceil(CountStepper);
		if (CountStepper == 0)
		  CountActive = false;
		var SetTimeOutPeriod 	= (Math.abs(CountStepper)-1)*1000 + 990;
				
		var dthen 				= new Date(TargetDate);
		var dnow 				= new Date(dnow1);
		
		
		if(CountStepper>0)
		  ddiff = new Date(dnow-dthen);
		else
		  ddiff = new Date(dthen-dnow);
		  
		gsecs = Math.floor(ddiff.valueOf()/1000);
		//alert(id);
		CountBack(gsecs,id,SetTimeOutPeriod); // call of timer function

 }
