function ShowWorkingMessage(message, align)
{
    if (document.getElementById('DIV_WorkingMessage') == null)
    {
		var div = document.createElement('DIV');
		div.id = 'DIV_WorkingMessage';
		div.style.visibility = 'hidden';
		document.body.appendChild(div);
    }
    
    if (message)
        lastWorkingMessage = message;
    else
        message = lastWorkingMessage;

    var divMsg = document.getElementById('DIV_WorkingMessage');
	divMsg.style.border = '1px solid black';
	divMsg.style.padding= '5px';
	divMsg.style.backgroundColor = 'whitesmoke';
    divMsg.style.position = 'absolute';
    divMsg.style.textAlign= 'center';
    divMsg.style.verticalAlign='middle';
	
    if (align == null || align == 'middle')
    {
        divMsg.style.left = ((getWindowDimensions()[0] - 200)/2 ) + 'px';
        divMsg.style.top = ((getWindowDimensions()[1] - 50)/2 + getScrollXY()[1]) + 'px';
    }
    else
    {
        divMsg.style.left = (getWindowDimensions()[0] - 220) + 'px';
        divMsg.style.top  = (getWindowDimensions()[1] + getScrollXY()[1] - 70 ) + 'px';
    }
    
    divMsg.style.height= '35px';
    divMsg.style.width = '180px';
    divMsg.style.zIndex= 100001;
    divMsg.style.visibility = 'visible';

    divMsg.innerHTML = '<img src="images/loading.gif" align=center><br>' + message;
}

function RemoveWorkingMessage()
{
    var div = document.getElementById('DIV_WorkingMessage');
    if (! div)
        return;
    
    div.innerHTML = '';
    div.style.visibility = 'hidden';
}

function getWindowDimensions() 
{
  var myWidth = 0, myHeight = 0;
  if( typeof( window.innerWidth ) == 'number' ) {
    //Non-IE
    myWidth = window.innerWidth;
    myHeight = window.innerHeight;
  } else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
    //IE 6+ in 'standards compliant mode'
    myWidth = document.documentElement.clientWidth;
    myHeight = document.documentElement.clientHeight;
  } else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
    //IE 4 compatible
    myWidth = document.body.clientWidth;
    myHeight = document.body.clientHeight;
  }
  return [myWidth, myHeight];
}

function getScrollXY() {
  var scrOfX = 0, scrOfY = 0;
  if( typeof( window.pageYOffset ) == 'number' ) {
    //Netscape compliant
    scrOfY = window.pageYOffset;
    scrOfX = window.pageXOffset;
  } else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
    //DOM compliant
    scrOfY = document.body.scrollTop;
    scrOfX = document.body.scrollLeft;
  } else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
    //IE6 standards compliant mode
    scrOfY = document.documentElement.scrollTop;
    scrOfX = document.documentElement.scrollLeft;
  }
  return [ scrOfX, scrOfY ];
}

