function initWaitDiv()
{
	var pleasewaitdiv 	= document.getElementById("pleasewaitdiv");
	var popupwaitdiv 	= document.getElementById("popupwaitdiv");
	
	if(pleasewaitdiv == null || popupwaitdiv == null)
	{
		var div 						= document.createElement("div");
			div.className				= "waitdiv";

		var table						= document.createElement("table");	
			table.style.width			= "100%";
			table.style.height			= "100%";
			table.style.backgroundColor	= "#ffffff";
			table.align					= "center";

		var tbody						= document.createElement("tbody");
		var tr							= document.createElement("tr");
		var td							= document.createElement("td");
			td.align					= "center";
			td.valign					= "middle";

		if(pleasewaitdiv == null)
		{
			div.id 						= "pleasewaitdiv";

			var img						= document.createElement("img");
				img.src					= "/images/waiting_1.gif";
				img.width				= "30";
				img.height				= "30";


			td.appendChild(img);

			tr.appendChild(td);
			tbody.appendChild(tr);
			table.appendChild(tbody);
			div.appendChild(table);
			document.body.appendChild(div);
		}

		if(popupwaitdiv == null)
		{
			var divClone = div.cloneNode(true);
				divClone.id = "popupwaitdiv";
				
			document.body.appendChild(divClone);
		}
	}
	
	hidewaitdiv();
	hidepopdiv();
}

var waitDivHandler = 
{
	m_refCount: 0,
	
	addRef: function()
	{
		waitDivHandler.m_refCount++;
	},
	
	release: function()
	{
		if(waitDivHandler.m_refCount > 0)
			waitDivHandler.m_refCount--;
	},
	
	count: function()
	{
		return waitDivHandler.m_refCount;
	},

	show: function()
	{
		if(waitDivHandler.count() == 0)
			_showwaitdiv("pleasewaitdiv");
			
		waitDivHandler.addRef();
	},
	
	hide: function()
	{
		waitDivHandler.release();
			
		if(waitDivHandler.count() == 0)
			_hidewaitdiv("pleasewaitdiv");
	}
}

function showwaitdiv()
{
	waitDivHandler.show();
}

function hidewaitdiv()
{
	waitDivHandler.hide();
}

function showpopupdiv()
{
	_showwaitdiv("popupwaitdiv");
}

function hidepopdiv()
{
	_hidewaitdiv("popupwaitdiv");
}

function is_waitdiv_hidden()
{
	return _is_waitdiv_hidden("pleasewaitdiv");
}

function is_popdiv_hidden()
{
	return _is_waitdiv_hidden("popupwaitdiv");
}

function _showwaitdiv(id)
{
	var elm=document.getElementById(id);

	if(elm != null)
	{
		// 1. positionieren, falls runtergescrollt muss das div auch geschoben werden

		if (typeof window.pageYOffset == "number")
		{
			if (document.layers)
			{
				elm.top = window.pageYOffset;
			}
			else
			{
				elm.style.top = window.pageYOffset;
			}
		} 
		else
		{
			if (typeof document.body.scrollTop == "number")
				elm.style.top = document.body.scrollTop;
		}

		// und in den vordergrund bringen
		elm.style.display = '';
		elm.style.zIndex=1000;
	}
}

function _hidewaitdiv(id)
{
	var elm=document.getElementById(id);
	
	if(elm != null)
	{
		elm.style.display = 'None';
		elm.style.zIndex=0;
	}
}

function _is_waitdiv_hidden(id)
{
	var ret	= true;

	var elm = document.getElementById(id);
	
	if(elm != null)
		ret = (elm.style.display.toLowerCase() == 'none');

	return ret;
}

function ___onloadWaitDivHandler___()
{
	initWaitDiv();
	showwaitdiv();
	hidewaitdiv();
}

addLoadEvent(___onloadWaitDivHandler___);