//==============================================================================
// Program: Javascript for www.ivrietspel.org
// File: javascript.js
//==============================================================================


//==============================================================================
// Utilities
//==============================================================================
function OnEnterKeyBrowseTo(e, url)
{
	try
	{
		var keynum;

		if (window.event) // IE
		{
			keynum = e.keyCode
		}
		else if (e.which) // Netscape/Firefox/Opera
		{
			keynum = e.which
		}
		if (keynum == 13)
		{
			self.location = url;
		}
	}
	catch (ex)
	{
		MyError("Fout 1: " + ex.description);
	}
}

function OnEnterKeyCallFunction(e, func)
{
    ClearMsg();
	try
	{
		var keynum;

		if (window.event) // IE
		{
			keynum = e.keyCode
		}
		else if (e.which) // Netscape/Firefox/Opera
		{
			keynum = e.which
		}
		if (keynum == 13)
		{
			func();
		}
	}
	catch (ex)
	{
		MyError("Fout 1: " + ex.description);
	}
}

function OnSpaceBarBrowseTo(e, url)
{
	try
	{
		var keynum;

		if (window.event) // IE
		{
			keynum = e.keyCode
		}
		else if (e.which) // Netscape/Firefox/Opera
		{
			keynum = e.which
		}
		if (keynum == 32)
		{
			self.location = url;
		}
	}
	catch (ex)
	{
		MyError("Fout 1: " + ex.description);
	}
}

function SetFocusOnID(id)
{
	var ctrl = document.getElementById("" + id);

	if (ctrl != null)
	{
		self.focus();
		ctrl.focus();
	}
}

function Normalize(inputstr)
{
	var str = MyTrim(inputstr);

	if (str != null && str.length)
	{
		var strarr = (""+str).split("\"");
		var s = strarr.join("");

		strarr = s.split("'");

		return strarr.join("");
	}
	return "";
}

function MyTrim(str)
{
	if (str != null && str.length)
	{
		var strarr = (""+str).split(" ");
		var arr = new Array();
		var i, j, l = strarr.length;

		for (i = j = 0; i < l; i++)
		{
			if (strarr[i] != null && strarr[i].length)
			{
				arr[j++] = strarr[i];
			}
		}
		return arr.join(" ");
	}
	return "";
}

function MyError(str, element)
{
	var debugctrl = document.getElementById("debugmsg");
    
	// alert("" + str);
	if (debugctrl != null)
	{
		debugctrl.innerHTML = "" + str;
	}
}
function MyError1(str, element) {
    var debugctrl = document.getElementById("debugmsg1"); 
    if (debugctrl != null) {
        debugctrl.innerHTML = "" + str;
    }
}
function MyError2(str, element) {
    var debugctrl = document.getElementById("debugmsg2"); 
    if (debugctrl != null) {
        debugctrl.innerHTML = "" + str;
    }
}
function ClearMsg() {
    var v = document.getElementById("debugmsg1"); 
    if (v != null)  
        v.innerHTML = "" ;
    v = document.getElementById("debugmsg2"); 
    if (v != null)  
        v.innerHTML = "" ;
    v = document.getElementById("debugmsg"); 
    if (v != null)  
        v.innerHTML = "" ;
}
function SetCtrlEnable(ctrlName, val)
{
	var ctrl = document.getElementById("" + ctrlName);

	// alert("" + str);
	if (ctrl != null)
	{
		ctrl.disabled = !val;
	}
}

function FullscreenPopUp(url, windowname)
{
	var newWin;
	var w = screen.width;
	var h = screen.height;
	var params="scrolling=no,scroll=no,scrollbars=no,resizable=yes,toolbar=no,status=yes,menubar=no,location=no,top=0,left=0";
	var isIE = (navigator.appName == 'Microsoft Internet Explorer');

	if (screen.availWidth)
	{
		w = screen.availWidth
		if (isIE)
		{
			w = w - 12;
		}
	}
	if (screen.availHeight)
	{
		h = screen.availHeight;
		if (isIE)
		{
			h = h - 58;
		}
	}
	params = params + ",width=" + w + ",height="+h;
	newWin = window.open(url,windowname,params);
	newWin.focus();
}

function PopUp920x740s(url, windowname) {
    var newWin;
    var w = 920;
    var h = 740;
    var params = "resizable=yes, status=yes,  top=0,left=0";
    alert(url);
    params = params + ",width=" + w + ",height=" + h;
    newWin = window.open(url, windowname, params);
    newWin.focus();
}

function PopUp920x740(url, windowname)
{
	var newWin;
	var w = 920;
	var h = 740;
	var params="scrolling=no,scroll=no,scrollbars=no,resizable=yes,toolbar=no,status=yes,menubar=no,location=no,top=0,left=0";

	params = params + ",width=" + w + ",height="+h;
	newWin = window.open(url,windowname,params);
	newWin.focus();
}
function PopUp920x624(url, windowname)
{
	var newWin;
	var w = 920;
	var h = 624;
	var params="scrolling=no,scroll=no,scrollbars=no,resizable=yes,toolbar=no,status=yes,menubar=no,location=no,top=0,left=0";

	params = params + ",width=" + w + ",height="+h;
	newWin = window.open(url,windowname,params);
	newWin.focus();
}

//==============================================================================================
// AjaxCall(url, func, index, param)
//==============================================================================================
function AjaxCall(url, func, nexturl, param)
{
	var _this = this;

	this.xmlHtml = null;
	this.url = url;
	this.func = func;
	this.nexturl = nexturl;
	this.param = param;
	this.start = this.finish = new Date();
	this.Exec = function() {
	    try {
	        var url = _this.url;

	        _this.xmlHtml = _this.GetXmlHttpObject();
	        if (_this.xmlHtml == null) {
	            MyError("HTTP Request wordt niet door de browser ondersteund");
	            return;
	        }
	        _this.xmlHtml.onreadystatechange = function() { _this.ResponseFunc(); };
	        _this.start = _this.finish = new Date();
	        _this.xmlHtml.open("GET", url, true);
	        MyError("bezig");
	        _this.xmlHtml.send(null);
	    }
	    catch (e) {
	        MyError("AjaxCall 1: " + e.description);
	    }
	}
	this.ResponseFunc = function()
	{
		try
		{
			if (_this.xmlHtml.readyState == 4 || _this.xmlHtml.readyState == "complete") {
			    MyError("");
				var txt = "" + _this.xmlHtml.responseText;

				_this.finish = new Date();
				_this.func(txt, _this);
			}
		}
		catch (e)
		{
			MyError("AjaxCall 2: " + e.description);
		}
	}
	this.GetXmlHttpObject = function()
	{ 
		var XMLHttp = null;

		try
		{
			XMLHttp = new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch(e)
		{
			try
			{
				XMLHttp = new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch(e)
			{
			}
		}
		if (XMLHttp == null)
		{
			XMLHttp = new XMLHttpRequest();
		}
		return XMLHttp;
	}
}

