// XML

var plaats;
function importXML(waar,XMLBestand){
	plaats=waar;
	if (navigator.userAgent.indexOf("MSIE")!=-1)
	{
		parseIE(XMLBestand)
	}else if ((navigator.appName=='Netscape')&&(navigator.userAgent.indexOf("Opera")==-1))
	{
		parseFF(XMLBestand)
	}else
	{
		//Browsers als Opera ondersteunen het parsen en lezen van XML niet, hiermee wordt de gebruiker ervan verwittigd.
		//opera 9 wel XML
		if (navigator.userAgent.indexOf("Opera/9")!=-1)
		{
			parseFF(XMLBestand)
		}else
		{
		alert("Onze excuses,\nuw webbrowser ondersteunt het lezen van XML niet.\nWilt u toch op de hoogte zijn van het laatste nieuws,\nbekijk deze pagina dan met Internet Explorer of FireFox.\nAls u toch verder surft met deze browser, zullen de pagina's nieuws en de onthaalpagina, blanco zijn. De rest van de site is zichtbaar zoals in alle andere browsers.\nBedankt voor uw begrip,\n\nDe webmaster")
		}
	}
}
/***************************************************************************************
	PARSEN
***************************************************************************************/
function parseIE(sFileName) 
{
	//0.escaped fileName herstellen
	sFileName=unescape(sFileName) 
	
	//1. instantie van  DOM aanmaken in geheugen  
	oDomDoc =  new ActiveXObject("Microsoft.XMLDOM");
	oDomDoc.async = false;				// volledig opladen 
	oDomDoc.validateOnParse=true		//default : true
	
	//2. DOM opladen met XML
	var loaded=oDomDoc.load(sFileName);
	
	documentLoaded('IE',oDomDoc)


}

function parseFF(sFileName) 
{
	oDomDoc = document.implementation.createDocument("Nspace", "RootElmnt", null);
	oDomDoc.async = false;
	oDomDoc.validateOnParse=true;
	var loaded = oDomDoc.load(sFileName);

	documentLoaded('FF',oDomDoc)
		
}
/***************************************************************************************
	CONTROLEREN OP FOUTEN
		fouten op dtd enkel IE
***************************************************************************************/
function documentLoaded(browser,doc) {
	
	if (browser=='IE')
	{
	var oErrorXML = doc.parseError;
		if (oErrorXML.errorCode != 0 ) 
		{
			alert( oErrorXML.reason + '\n Fout op lijn: ' + oErrorXML.line ) ;
		} else{
			if (plaats=="nieuws")
			{
				maakArtikels(doc);
			}else
			{
				maakKrantekoppen(doc);
			}
		}
	}
	else if (browser=='FF')
	{
		if (oDomDoc.documentElement.nodeName=="parsererror")
		{
			var s=new XMLSerializer();
			var str=s.serializeToString(doc)
			alert(str);
		}else{
			if (plaats=="nieuws")
				{
					maakArtikels(doc);
				}else
				{	
					maakKrantekoppen(doc);
				}
			}	
	}
	
}
//-----------------------------------------------------------------------------------------------

String.prototype.wegMetSpaties = function( exp ){ return this.replace(exp?exp:/\s/g,""); };
function maakKrantekoppen(xmlDom)
{
	var bericht = xmlDom.getElementsByTagName('bericht');
	var aantalBerichten = xmlDom.getElementsByTagName('bericht').length;
	
	var kop = xmlDom.getElementsByTagName('kop');
	
	var textDiv=document.getElementById("koppen")
		
	for (i=0;i<aantalBerichten;i++)
	{
		var divke = document.createElement("div");
		divke.setAttribute('class','nieuwsKop');
		textDiv.appendChild(divke);
		textDiv.appendChild(document.createElement("p"));
		
		var kopTekst="";
		
		if (bericht[i].childNodes[0].nodeType != 1){
			krantenkop = document.createTextNode("" + bericht[i].childNodes[1].firstChild.nodeValue);
			kopTekst="" + bericht[i].childNodes[1].firstChild.nodeValue
			datum = document.createTextNode("gepost op: " + bericht[i].childNodes[3].lastChild.nodeValue);
			samenvat = document.createTextNode("" + bericht[i].childNodes[5].lastChild.nodeValue);
		}else{
			krantenkop = document.createTextNode("" + bericht[i].childNodes[0].firstChild.nodeValue);
			kopTekst="" + bericht[i].childNodes[0].firstChild.nodeValue;
			datum = document.createTextNode("gepost op: " + bericht[i].childNodes[1].lastChild.nodeValue);
			samenvat = document.createTextNode("" + bericht[i].childNodes[2].lastChild.nodeValue);
		}
		
		//verwijdert alle spaties			
		sAnchor=kopTekst.wegMetSpaties();
			
		vetteKop=document.createElement("div");
		vetteKop.style.fontWeight='bold'
		vetteKop.style.fontSize='15px'
		
		spanDat=document.createElement("span");
		spanDat.appendChild(datum);		
		spanDat.style.fontStyle='italic';
		
		vetteKop.appendChild(krantenkop)
		vetteKop.style.backgroundColor='gray'
		vetteKop.style.color='white'
		vetteKop.style.marginLeft=-10+"px"
		vetteKop.style.marginRight=-10+"px"
		vetteKop.style.paddingLeft=10+"px"
		divke.appendChild(vetteKop)
		
		divke.appendChild(spanDat);
		
		divke.appendChild(document.createElement("p"));
		
		divke.appendChild(samenvat);
					
		rmLink=document.createElement("a");
		rmLink.setAttribute('href','nieuws/index.htm#'+sAnchor);//nieuws/index.htm#'+sAnchor
						
		rmLink.appendChild(document.createTextNode("Read more..."))
		
		divke.appendChild(document.createElement("br"));
		divke.appendChild(rmLink);
		
		divke.style.border="1px solid gray";
		divke.style.paddingTop="0px"
		divke.style.paddingLeft="10px"
		divke.style.paddingRight="10px"
		divke.style.paddingBottom="10px"
		
		
	}
	
}

function maakArtikels(xmlDom)
{
	var bericht = xmlDom.getElementsByTagName('bericht');
	var aantalBerichten = xmlDom.getElementsByTagName('bericht').length;
	
	var kop = xmlDom.getElementsByTagName('kop');
	
	var textDiv=document.getElementById("koppen")
	var subnavDiv=document.getElementById("subnav");
	
	for (i=0;i<aantalBerichten;i++)
	{
		var divke = document.createElement("div");
		textDiv.appendChild(document.createElement("p"));
		

		divke.setAttribute('class','nieuwsKop');
		textDiv.appendChild(divke);
		
		var kopTekst="";
		
		if (bericht[i].childNodes[0].nodeType != 1){
			krantenkop = document.createTextNode("" + bericht[i].childNodes[1].firstChild.nodeValue);
			kopTekst="" + bericht[i].childNodes[1].firstChild.nodeValue
			datum = document.createTextNode("gepost op: " + bericht[i].childNodes[3].lastChild.nodeValue);
			artikel=document.createTextNode("" + bericht[i].childNodes[7].lastChild.nodeValue);
		}else{
			krantenkop = document.createTextNode("" + bericht[i].childNodes[0].firstChild.nodeValue);
			kopTekst="" + bericht[i].childNodes[0].firstChild.nodeValue;
			datum = document.createTextNode("gepost op: " + bericht[i].childNodes[1].lastChild.nodeValue);
			artikel=document.createTextNode("" + bericht[i].childNodes[3].lastChild.nodeValue);
		}
		//verwijdert alle spaties
		sAnchor=kopTekst.wegMetSpaties();

		kopLink=document.createElement("a");
		kopLink.setAttribute('id', ''+sAnchor)
				
		divke.appendChild(kopLink);
		
		vetteKop=document.createElement("div");
		vetteKop.style.fontWeight='bold'
		vetteKop.style.fontSize='15px'
		
		vetteKop.appendChild(krantenkop)
		vetteKop.style.backgroundColor='gray'
		vetteKop.style.color='white'
		vetteKop.style.marginLeft=-10+"px"
		vetteKop.style.marginRight=-10+"px"
		vetteKop.style.paddingLeft=10+"px"
		divke.appendChild(vetteKop)
		
		spanDat=document.createElement("span");
		spanDat.appendChild(datum);		
		spanDat.style.fontStyle='italic';
		
		divke.appendChild(spanDat);
		
		divke.appendChild(document.createElement("p"));
		divke.appendChild(artikel);
		
		subLink=document.createElement("a");
		subLink.setAttribute('href', '#'+sAnchor)
		
		snelMenu=document.createElement("span");
		snelMenu.style.fontWeight='bold'
		snelMenu.style.fontSize='12px'
		
		subnavDiv.appendChild(snelMenu)
		snelMenu.appendChild(subLink);
		
		subLink.appendChild(document.createTextNode(kopTekst));
		subnavDiv.appendChild(document.createElement("p"));
		
		divke.style.border="1px solid gray";
		divke.style.paddingTop=0+"px"
		divke.style.paddingLeft=10+"px"
		divke.style.paddingRight=10+"px"
		divke.style.paddingBottom=5+"px"
			
		
	}
	
}