var backColor = "transparent";
var foreColor = "#3A414C";
var countActive = true;
var countStepper = -1;
var setTimeOutPeriod = 0;
var leadingZero = true;
var displayFormat = "%%D%% D, %%H%% H, %%M%% M, %%S%% S";
var finishMessage = "This special deal has expired!";

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) {
  var 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));

  document.getElementById("cntdwn").innerHTML = displayStr;
  if (countActive)
    setTimeout("countBack(" + (secs + countStepper) + ")", setTimeOutPeriod);
}

function putspan(backColor, foreColor) {
 document.write("<span id='cntdwn' style='background-color:" + backColor + 
                "; color:" + foreColor + "'></span>");
}

if (typeof(backColor)=="undefined")
  backColor = "white";
if (typeof(foreColor)=="undefined")
  foreColor= "black";
if (typeof(TargetDate)=="undefined") {
  var d = new Date("12/31/2020 5:00 AM");
  TargetDate = d.valueOf();
}
if (typeof(displayFormat)=="undefined")
  displayFormat = "%%D%% D, %%H%% H, %%M%% M, %%S%% S";
if (typeof(countActive)=="undefined")
  countActive = true;
if (typeof(finishMessage)=="undefined")
  finishMessage = "";
if (typeof(countStepper)!="number")
  countStepper = -1;
if (typeof(leadingZero)=="undefined")
  leadingZero = true;

countStepper = Math.ceil(countStepper);
if (countStepper == 0)
  countActive = false;

setTimeOutPeriod = (Math.abs(countStepper)-1) * 1000 + 990;

putspan(backColor, foreColor);

var dthen = TargetDate;
var dnow = NowDate;
var expired;
if (countStepper > 0) {
  expired = dthen > dnow;
  ddiff = dnow - dthen;
} else {
  expired = dnow > dthen;
  ddiff = dthen - dnow;
}

if (expired) {
  document.getElementById("cntdwn").innerHTML = finishMessage;
} else {
  countBack(Math.floor(ddiff / 1000));
}


