// JavaScript Document

function Loading(id){
	document.getElementById(id).innerHTML = '<div class="loading"><img src="img/icon_spinner.gif" alt="" /></div>'
}

function GetHttpRequest() { // Functie die http_request vult met een XmlHttp object, geeft false terug als er een fout optreedt.
	var http_request = false;
	if (window.XMLHttpRequest) { // Mozilla, Safari, ...
		http_request = new XMLHttpRequest();
		if (http_request.overrideMimeType) {
			http_request.overrideMimeType('text/xml');
			// See note below about this line
		}
	} else if (window.ActiveXObject) { // IE
		try {
			http_request = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
				http_request = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e) {}
		}
	}
	
	if (!http_request) {
		alert('Giving up :( Cannot create an XMLHTTP instance');
		return false;
	}
	return http_request
}

// JavaScript Document

function GetHttpRequest() { // Functie die http_request vult met een XmlHttp object, geeft false terug als er een fout optreedt.
	var http_request = false;
	if (window.XMLHttpRequest) { // Mozilla, Safari, ...
		http_request = new XMLHttpRequest();
		if (http_request.overrideMimeType) {
			http_request.overrideMimeType('text/xml');
			// See note below about this line
		}
	} else if (window.ActiveXObject) { // IE
		try {
			http_request = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
				http_request = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e) {}
		}
	}
	
	if (!http_request) {
		alert('Giving up :( Cannot create an XMLHTTP instance');
		return false;
	}
	return http_request
}

function GetMMItem(type,id,showorder) {
	var http_request = GetHttpRequest();
	if(!http_request) return false; // Kan geen ajax component aanmaken.

	var url = ""
	if(type!=''){
		url = "xml/getMMItem.xml.asp?type=" + type + "&mmId=" + id
	} else {
		url = "xml/getMMItem.xml.asp?id=" + id + "&show=" + showorder 
	}
	//window.open(url)
	http_request.onreadystatechange = function() { GetMMItemResult(http_request); };
	http_request.open('GET', url, true);
	http_request.send(null);
}

function GetMMItemResult(http_request){
	if (http_request.readyState == 4)	{
		if (http_request.status == 200) {
			var xmldoc = http_request.responseXML;
			var type_node = xmldoc.getElementsByTagName('type').item(0);
			var content_node = xmldoc.getElementsByTagName('content').item(0);

			if(content_node.firstChild){
				if(type_node.firstChild){
					if(!IE){
						document.getElementById('bigcontent').innerHTML = xmldoc.getElementsByTagName("content")[0].textContent
					}else{
						document.getElementById('bigcontent').innerHTML = content_node.firstChild.data
					}
				}else{
					if(!IE){
						document.getElementById('moreimages').innerHTML = xmldoc.getElementsByTagName("content")[0].textContent
					}else{
						document.getElementById('moreimages').innerHTML = content_node.firstChild.data
					}
				}
			}

		}	
	}
}

//page : nummer van de pagina 
//type : parentKey
//pagesize : aantal items per pagina
//container : id van container waar result in geplaatst moet worden
//url : url van de pagina
//excludeid : id die niet getoond moeten worden
//openfirst : 1 of 0 om 1e item te tonen
//paging : 1 of 0 om paginasering te tonen
function GetListingDetail(page,type,pagesize,container,pageurl,excludeid,openFirst,paging) {
	var http_request = GetHttpRequest();
	if(!http_request) return false; // Kan geen ajax component aanmaken.

	Loading(container);

	var url = ""
	url = "xml/listingdetail.xml.asp?type="+ type +"&page="+ page +"&pagesize="+ pagesize +"&container="+ container +"&pageurl="+ pageurl +"&excludeid="+ excludeid +"&openFirst="+ openFirst + "&paging="+ paging
	//window.open(url)
	http_request.onreadystatechange = function() { GetListingDetailResult(http_request); };
	http_request.open('GET', url, true);
	http_request.send(null);
}

function GetListingDetailResult(http_request){
	if (http_request.readyState == 4)	{
		if (http_request.status == 200) {
			if(!IE) http_request.responseXML.normalize() 

			var xmldoc = http_request.responseXML;
			var container_node = xmldoc.getElementsByTagName('container').item(0);
			var content_node = xmldoc.getElementsByTagName('content').item(0);

			if(content_node.firstChild){
				if(!IE){
					document.getElementById(container_node.firstChild.data).innerHTML = xmldoc.getElementsByTagName("content")[0].textContent
				}else{
					document.getElementById(container_node.firstChild.data).innerHTML = content_node.firstChild.data
				}
			}

			
		}	
	}
}


function GetReactions(page,id,pagesize,container) {
	var http_request = GetHttpRequest();
	if(!http_request) return false; // Kan geen ajax component aanmaken.

	Loading(container);

	var url = ""
	url = "xml/reactions.xml.asp?page="+ page +"&id="+ id +"&pagesize="+ pagesize +"&container="+ container
	//window.open(url)
	http_request.onreadystatechange = function() { GetReactionsResult(http_request); };
	http_request.open('GET', url, true);
	http_request.send(null);
}

function GetReactionsResult(http_request){
	if (http_request.readyState == 4)	{
		if (http_request.status == 200) {
			if(!IE) http_request.responseXML.normalize() 

			var xmldoc = http_request.responseXML;
			var container_node = xmldoc.getElementsByTagName('container').item(0);
			var content_node = xmldoc.getElementsByTagName('content').item(0);

			if(content_node.firstChild){
				if(!IE){
					document.getElementById(container_node.firstChild.data).innerHTML = xmldoc.getElementsByTagName("content")[0].textContent
				}else{
					document.getElementById(container_node.firstChild.data).innerHTML = content_node.firstChild.data
				}
			}

		}	
	}
}

function GetListing(page,key,pagesize,container,url) {
	var http_request = GetHttpRequest();
	if(!http_request) return false; // Kan geen ajax component aanmaken.

	Loading(container);

	var url = ""
	url = "xml/listing.xml.asp?key="+ key +"&page="+ page +"&pagesize="+ pagesize +"&container="+ container +"&url="+ url
	//window.open(url)
	http_request.onreadystatechange = function() { GetListingResult(http_request); };
	http_request.open('GET', url, true);
	http_request.send(null);
}

function GetListingRoute(page,key,pagesize,container,url,parentId) {
	var http_request = GetHttpRequest();
	if(!http_request) return false; // Kan geen ajax component aanmaken.

	Loading(container);

	var url = ""
	url = "xml/listingRoute.xml.asp?key="+ key +"&page="+ page +"&pagesize="+ pagesize +"&container="+ container +"&url="+ url + "&parentId="+ parentId
	//window.open(url)
	http_request.onreadystatechange = function() { GetListingResult(http_request); };
	http_request.open('GET', url, true);
	http_request.send(null);
}

function GetListingResult(http_request){
	if (http_request.readyState == 4)	{
		if (http_request.status == 200) {
			if(!IE) http_request.responseXML.normalize() 

			var xmldoc = http_request.responseXML;
			var container_node = xmldoc.getElementsByTagName('container').item(0);
			var content_node = xmldoc.getElementsByTagName('content').item(0);

			if(content_node.firstChild){
				if(!IE){
					document.getElementById(container_node.firstChild.data).innerHTML = xmldoc.getElementsByTagName("content")[0].textContent
				}else{
					document.getElementById(container_node.firstChild.data).innerHTML = content_node.firstChild.data
				}
			}

		}	
	}
}

function GetRanking(container,stage,year) {
	var http_request = GetHttpRequest();
	if(!http_request) return false; // Kan geen ajax component aanmaken.

	Loading(container);

	var url = ""
	url = "xml/ranking.xml.asp?container="+ container + "&stage=" + stage + "&year="+ year
	//window.open(url)
	http_request.onreadystatechange = function() { GetRankingResult(http_request); };
	http_request.open('GET', url, true);
	http_request.send(null);
}


function GetRankingResult(http_request){
	if (http_request.readyState == 4)	{
		if (http_request.status == 200) {
			if(!IE) http_request.responseXML.normalize() 

			var xmldoc = http_request.responseXML;
			var container_node = xmldoc.getElementsByTagName('container').item(0);
			var content_node = xmldoc.getElementsByTagName('content').item(0);

			if(content_node.firstChild){
				if(!IE){
					document.getElementById(container_node.firstChild.data).innerHTML = xmldoc.getElementsByTagName("content")[0].textContent
				}else{
					document.getElementById(container_node.firstChild.data).innerHTML = content_node.firstChild.data
				}
			}

		}	
	}
}

function playVideo(container,videoId) {
	var http_request = GetHttpRequest();
	if(!http_request) return false; // Kan geen ajax component aanmaken.

	Loading(container);

	var url = ""
	url = "xml/video.xml.asp?container=" + container + "&videoId=" + videoId
	//window.open(url)
	http_request.onreadystatechange = function() { playVideoResult(http_request); };
	http_request.open('GET', url, true);
	http_request.send(null);
}

function playVideoResult(http_request){
	if (http_request.readyState == 4)	{
		if (http_request.status == 200) {
			if(!IE) http_request.responseXML.normalize() 

			var xmldoc = http_request.responseXML;
			var container_node = xmldoc.getElementsByTagName('container').item(0);
			var content_node = xmldoc.getElementsByTagName('content').item(0);

			if(content_node.firstChild){
				if(!IE){
					document.getElementById(container_node.firstChild.data).innerHTML = xmldoc.getElementsByTagName("content")[0].textContent
				}else{
					document.getElementById(container_node.firstChild.data).innerHTML = content_node.firstChild.data
				}
			}

		}	
	}
}

var xmlDoc
function checkUsername(obj,edit){
	var http_request = GetHttpRequest();
	if(!http_request) return false; // Kan geen ajax component aanmaken.

	var url = "xml/validateUser.xml.asp?str="+obj.value+"&edit="+edit
	document.getElementById('actionresult').innerHTML =''
	document.getElementById('username_block').style.display = 'none'
//	window.open(url)
	if(obj.value.length != 0){
		http_request.onreadystatechange = function() { ResultValidationUsername(http_request); };
		http_request.open('GET', url, true);
		http_request.send(null);
	}
}
function ResultValidationUsername(http_request){
	if (http_request.readyState == 4)	{
		if (http_request.status == 200) {
			var xmldoc = http_request.responseXML;
			var action_node = xmldoc.getElementsByTagName('actionResult').item(0);

			if(action_node.firstChild.data != '0'){
				document.getElementById('actionresult').innerHTML = action_node.firstChild.data
				document.getElementById('username_block').style.display = 'block'
				UserOK = false
			}else{
				document.getElementById('actionresult').innerHTML = ""
				document.getElementById('username_block').style.display = 'none'
				UserOK = true
			}
		}	
	}else{
		document.getElementById('actionresult').innerHTML = ""
		document.getElementById('username_block').style.display = 'none'
		UserOK = true
	}
}

var xmlDoc2
function checkPressUsername(obj,edit){
	var http_request = GetHttpRequest();
	if(!http_request) return false; // Kan geen ajax component aanmaken.

	var url = "xml/validatePressUser.xml.asp?str="+obj.value+"&edit="+edit
	document.getElementById('actionresult').innerHTML =''
	document.getElementById('username_block').style.display = 'none'
//	window.open(url)
	if(obj.value.length != 0){
		http_request.onreadystatechange = function() { checkPressUsernameResult(http_request); };
		http_request.open('GET', url, true);
		http_request.send(null);
	}
}
function checkPressUsernameResult(http_request){
	if (http_request.readyState == 4)	{
		if (http_request.status == 200) {
			var xmldoc = http_request.responseXML;
			var action_node = xmldoc.getElementsByTagName('actionResult').item(0);

			if(action_node.firstChild.data != '0'){
				document.getElementById('actionresult').innerHTML = action_node.firstChild.data
				document.getElementById('username_block').style.display = 'block'
				UserOK = false
			}else{
				document.getElementById('actionresult').innerHTML = ""
				document.getElementById('username_block').style.display = 'none'
				UserOK = true
			}
		}	
	}else{
		document.getElementById('actionresult').innerHTML = ""
		document.getElementById('username_block').style.display = 'none'
		UserOK = true
	}
}


function GetAJAX(url, container, gets, values, debug) {
	var http_request = GetHttpRequest();
	if(!http_request) return false; // Kan geen ajax component aanmaken.

	if(container=='container_menu'){LoadingMenu(container)}else{Loading(container)}
	
	url = 'xml/' + url + '?container='+ container + '&'	
	for (i = 0; i < gets.length; i++) {
		if(i>0) url += '&';
		url += gets[i] +'='+ values[i];
	}
	if(debug) window.open(url)
	http_request.onreadystatechange = function() { GetAJAXResult(http_request,container); };
	http_request.open('GET', url, true);
	http_request.send(null);
}

function GetAJAXResult(http_request, container){
	if (http_request.readyState == 4)	{
		if (http_request.status == 200) {

			var content = http_request.responseText;
			if(container!='') {
				if(document.getElementById(container)) document.getElementById(container).innerHTML = content;
			}

		}	
	}
}