/*
Author: Robert Hashemian
http://www.hashemian.com/

You can use this code in any manner so long as the author's
name, Web address and this disclaimer is kept intact.
********************************************************

*/

function modalcalcage(secs, num1, num2) {
  s = ((Math.floor(secs/num1))%num2).toString();
  if (modalLeadingZero && s.length < 2)
    s = "0" + s;
  return "<b>" + s + "</b>";
}

function modalCountBack(secs) {
  if (secs < 0) {
      document.getElementById("modalcntdwn").innerHTML = FinishMessage;
    return;
  }
  //DisplayStr = DisplayFormat.replace(/%%D%%/g, calcage(secs,86400,100000));
  var modalDisplayStr = modalDisplayFormat.replace(/%%H%%/g, modalcalcage(secs, 3600, 1000));
  modalDisplayStr = modalDisplayStr.replace(/%%M%%/g, modalcalcage(secs, 60, 60));
  modalDisplayStr = modalDisplayStr.replace(/%%S%%/g, modalcalcage(secs, 1, 60));

  document.getElementById("modalcntdwn").innerHTML = modalDisplayStr;
  if (modalCountActive)
      setTimeout("modalCountBack(" + (secs + modalCountStepper) + ")", modalSetTimeOutPeriod);
}

function modalputspan(backcolor, forecolor) {
    document.write("<span id='modalcntdwn' style='background-color:" + backcolor + 
                "; color:" + forecolor + "'></span>");
}

if (typeof (modalBackColor) == "undefined")
    modalBackColor = "white";
if (typeof (modalForeColor) == "undefined")
    modalForeColor = "black";
if (typeof (modalTargetDate) == "undefined")
    modalTargetDate = "12/31/2020 5:00 AM";
if (typeof (modalDisplayFormat) == "undefined")
    modalDisplayFormat = "%%H%% hr, %%M%% min, %%S%% sec";
if (typeof (modalCountActive) == "undefined")
    modalCountActive = true;
if (typeof (modalFinishMessage) == "undefined")
    modalFinishMessage = "";
if (typeof (modalCountStepper) != "number")
    modalCountStepper = -1;
if (typeof (modalLeadingZero) == "undefined")
    modalLeadingZero = true;


modalCountStepper = Math.ceil(modalCountStepper);
if (modalCountStepper == 0)
    modalCountActive = false;
var modalSetTimeOutPeriod = (Math.abs(modalCountStepper) - 1) * 1000 + 990;
modalputspan(modalBackColor, modalForeColor);
var modaldthen = new Date(modalTargetDate);
var modaldnow = new Date();
if (modalCountStepper > 0)
    modalddiff = new Date(modaldnow - modaldthen);
else
    modalddiff = new Date(modaldthen - modaldnow);
modalgsecs = Math.floor(modalddiff.valueOf() / 1000);
modalCountBack(modalgsecs);

