/**
 *
 **/

var waitChain;

function wait(message, subText, chainFunc){
  var waitDiv = document.getElementById('waitDiv');
  var waitiFrame = document.getElementById('waitiFrame');
  var waitMessage = document.getElementById('waitMessage');
  var waitMessageText = document.getElementById('waitMessageText');
  var waitMessageSubText = document.getElementById('waitMessageSubText');

  //  newWinHeight = document.documentElement.clientHeight;
  //newWinWidth = document.documentElement.clientWidth;
  if (subText == undefined) subText = '';

  if (message != ''){
    waitMessageText.innerHTML = message;
  }
  waitMessageSubText.innerHTML = subText;
  waitMessage.style.top = getScrollY(window) + 100 + 'px';

  waitDiv.style.height = document.body.offsetHeight + 'px';
  waitDiv.style.visibility = 'visible';
  waitiFrame.style.height = document.body.offsetHeight + 'px';
  waitiFrame.style.visibility = 'visible';
  

  //  alert(document.body.clientHeight);


  waitMessage.style.visibility = 'visible';

  // keep a reference to a function to call after activate
  if (chainFunc instanceof Function){
      waitChain = chainFunc;
  }

}

function customAlert(text){
    wait('<div style="color: #c00">' + text + "</div>", '<div style="text-align: right; padding: 10px"><input type="button" value="Ok" onclick="activate()" /></div>');

}


function activate(focusElement){
  var waitDiv = document.getElementById('waitDiv');
  var waitiFrame = document.getElementById('waitiFrame');
  var waitMessage = document.getElementById('waitMessage');
  var waitMessageText = document.getElementById('waitMessageText');

  waitDiv.style.visibility = 'hidden';
  waitiFrame.style.visibility = 'hidden';
  waitMessage.style.visibility = 'hidden';
  waitMessageText.innerHTML = "";

  if (focusElement && focusElement.focus) focusElement.focus();

  if (waitChain instanceof Function){
      waitChain.call();
  }

      
}
