var GtnOldDoPostBack;
var GtnBusyPaneDisabled = false;
var GtnBusyPaneactive = false;
var GtnLoaded = true;

var IdInterval = null;
var FrameInterval

//firefox eventhandler om aan te geven dat een pagina geladen is
if (document.addEventListener) 
{    
	document.addEventListener("DOMContentLoaded", GtnSetLoad, false);
}
function GtnSetLoad()
{
	GtnLoaded = true;
}
function GtnDisableBusyPane()
{
	GtnBusyPaneDisabled = true;
}
function GtnCreateBusyPane()
{
	var div;
	var table;
	var row;
	var cell;
	var text;

	div = document.createElement("div");
	div.id = "GtnBusyPaneDiv";
	div.className = "BusyPane";
	div.style.position = "absolute";
	div.style.zIndex = Number.MAX_VALUE;
	div.style.top    = "0px";
	div.style.left   = "0px";
	div.style.width  = "100%";
	div.style.height = "100%";

	table = document.createElement("table");
	table.height = "100%";
	table.width  = "100%";
	table.border = 0;
		
	row = table.insertRow(0);
	row.vAlign = "middle";
	row.align  = "center";

	if ((typeof(GtnBusyMessageText) == "object"))
	{
		text = GtnBusyMessageText[0];
	}
	else
	{
		text = "Een ogenblik geduld alstublieft";
	}

	cell = row.insertCell(0);
	
	var iframe = document.createElement("iframe")
	var div2 = document.createElement("div");
	
	div2.id="GtnBusyMessageSpan"
	div2.innerHTML = text
	div2.className = "BusyMessage";
	div2.style.zindex="2";
	div2.style.border = "none";
		
	iframe.id = "iframe";
	iframe.style.zindex="3";
	iframe.className="iFrameBusyMessage"
	iframe.frameborder = 0;
	iframe.border = 0;
	iframe.scrolling="no";
	iframe.src="./DummyIFramePagina.htm";
		
	cell.appendChild(iframe)
	cell.appendChild(div2)
	
	div.appendChild(table);
	return div;
}
function GtnToggleVisibility(divId, frameId)
{
	var elementDiv;
	var elementFrame;

	elementDiv = document.getElementById(divId);
	elementFrame = document.getElementById(frameId);
		
	if ((elementDiv != null) && (elementFrame != null))
	{
		//Kijken voor IE of de pagina al geladen is.
		//Firefox pollt niet maar heeft een eventlistener
		GtnPollIELoading()
		//Alleen zolang het nieuwe document geladen wordt moet de melding zichtbaar zijn.
		if ((elementDiv.style.visibility == "hidden") && !GtnLoaded)
		{
			elementDiv.style.visibility = "visible";
			elementFrame.style.visibility = "visible";
		}
		else
		{
			elementDiv.style.visibility = "hidden";
			elementFrame.style.visibility = "hidden";
		}
		
		GtnBusyPaneactive = true;

	}

	if (GtnLoaded != null)
	{
		if (GtnLoaded == true)
		{
			//Het laden van het document is klaar. We komen hier indien de gebruiker de stopbutton
			//van de browser geklikt heeft.
			clearInterval(IdInterval);
			//clearInterval(FrameInterval);
			GtnDisableBusyPane();
			//Zet hieronder de actie die uitgevoerd moet worden indien de gebruiker op de stopbutton
			//van de browser geklikt heeft. In dit geval wordt een verwijzing naar de huidige pagina
			//(is default.aspx) gemaakt. Hierdoor wordt het selectiescherm getoond.
			document.location.href = document.location.href;
		}
	}

}

function GtnDisplayBusyMessage(id, ifrm)
{
	var element;
	
	GtnLoaded = false;

	IdInterval = setInterval("GtnToggleVisibility('" + id + "','" + ifrm +"');", 650);
}

function GtnDisplayBusyPane()
{
	var pane;
	
	if (GtnBusyPaneDisabled)
	{
		GtnBusyPaneDisabled = false;
	}
	else if (IdInterval == null)
	{
		pane = GtnCreateBusyPane();
		document.body.appendChild(pane);
		IdInterval = setTimeout("GtnDisplayBusyMessage('GtnBusyMessageSpan', 'iframe')", 1350);
	}
}

/* FrT Begin Hack double Postback */
var GtnCheckDoublePostback = false;
/* FrT End Hack double Postback */
function GtnPageOnSubmit()
{
    /* FrT Begin Hack double Postback */
    if (GtnCheckDoublePostback) return false;
    GtnCheckDoublePostback = true;
    /* FrT End Hack double Postback */
    if ((typeof(Page_BlockSubmit) == "undefined") || !Page_BlockSubmit)
    {
        GtnDisplayBusyPane();
    }
    return true;
}

function GtnDoPostBack(eventTarget, eventArgument)
{
	if (typeof(GtnOldDoPostBack) == "function")
	{
		GtnDisplayBusyPane();
		GtnOldDoPostBack(eventTarget, eventArgument);
	}
}
if (typeof(__doPostBack) == "function")
{
	GtnOldDoPostBack = __doPostBack;
	__doPostBack = GtnDoPostBack;
}
//kijk of een pagina al is geladen
function GtnPollIELoading()
{
	//check voor ie
	if (document.readyState && !document.addEventListener)
	{
		if (document.readyState=="complete")
		{
			GtnLoaded = true;
		}
	}
}

