//
// de menu functies
//
// (c 2001, van Ovost Automatisering, Welsum, NL.
//

function laad_menu() {
	frames[menuframe].location.reload(); //location="menu.html";
}
	
function goToURL(url,target,menu) {
//	eval("frames['" + menuframe + "'].location='menu.html?lvl=" + menu + "'");
	eval("frames['" + target + "'].location='" + url + "'");
//	maak_menu(menu,menuframe);
	menulevel=menu;
}

function plusmin(plus, link) {
//	return "<a href=\"menu.html?lvl=" + link + "\"><img src=\"" + plus + ".gif\" border=\"0\"></a>";
	return "<a href=\"menu.html\" onClick=\"parent.menulevel='" + link + "'; return true\"><img src=\"" + plus + ".gif\" alt=\"knop\" border=\"0\" hspace=\"0\"></a>";
}

function naamzonder(naam,oms,url,target) {
	return "<a href=\"" + url + "\" target=\"" + target + "\" title=\"" + oms + "\">" + naam + "</a>";
}

function naammet(naam,oms,url,target,menu) {
//	return "<a href=\"" + url + "\" target=\"" + target + "\" title=\"" + oms + "\" onClick=\"parent.goToURL('" + url + "?lvl=" + menu + "','" + target + "', '" + menu + "'); return false\">" + naam + "</a>";
	return "<a href=\"" + url + "\" target=\"" + target + "\" title=\"" + oms + "\" onClick=\"parent.menulevel='" + menu + "'; parent.menuurl='"+ url + "'; return true\">" + naam + "</a>";
}

function maak_menu() {
	//
	// een menu opmaken volgens de gevraagde levels.
	//
	lvls=menulevel.split(",");
	hoofd = Array();
	vreg = Array();
	streepjes = Array();
	m_naam = 0;
	m_oms = 1;
	m_url = 2;
	m_target = 3;
	m_regels = 4;
	
	doc = frames[menuframe].document;
	
	doc.open("text/html","replace");	
	doc.write(menukop);

	//
	//
	level = 0; 
	hoofd[0]=0;
	streepjes[0] = "";
	while (hoofd[0] < regels.length) {
		
		//
		// hoofd level plus of min
		//
		vreg = regels;
		for (i = 0; i < level; i++) {
			//
			// pointer uitwerken
			vreg = vreg[hoofd[i]][m_regels];
		}
		// level voor het omlaag minnetje
		if (level == 0)
			levelt = "0";
		else {
			levelt = ""
			for (i = 0; i < level; i++) {
				if (i != 0)
					levelt = levelt + ",";
				levelt = levelt + (hoofd[i]+1);
			}
		}
		// level van het detail
		leveld = ""
		for (i = 0; i <= level; i++) {
			if (i != 0)
				leveld = leveld + ",";
			leveld = leveld + (hoofd[i]+1);
		}
		if (vreg[hoofd[level]][m_regels] == null || vreg[hoofd[level]][m_regels].length <= 0) {
			//
			// blaadjes
			//
			if ((hoofd[level]+1) == lvls[level])
				doc.writeln("<p class=\"menuselregel\">");
			else
				doc.writeln("<p class=\"menuregel\">");
			if (level == 0 && hoofd[level] == 0)
			{
				doc.writeln("<img src=\"lboven.gif\" border=\"0\" hspace=\"0\">");
			}	
			else
			{
				doc.write(streepjes[level]);
				doc.writeln((hoofd[level] < vreg.length - 1) ? "<img src=\"midden.gif\" border=\"0\" hspace=\"0\">" : "<img src=\"onder.gif\" border=\"0\" hspace=\"0\">");
			}
//			doc.writeln("<img src=\"streep.gif\" border=\"0\" hspace=\"0\">");
 			doc.writeln(naammet(vreg[hoofd[level]][m_naam],vreg[hoofd[level]][m_oms],vreg[hoofd[level]][m_url],vreg[hoofd[level]][m_target],leveld) + "<\p>");
			while (++hoofd[level] >= vreg.length && level > 0) {
				level--;
				vreg = regels;
				for (i = 0; i < level; i++) {
					//
					// pointer uitwerken
					vreg = vreg[hoofd[i]][m_regels];
				}
			}
		}
		else {
			if ((hoofd[level]+1) == lvls[level]) {
				//
				// dit niveau is geopend.
				//
				doc.write("<p class=\"menuopen\">"+ streepjes[level] + plusmin("min",levelt));
				doc.write("<img src=\"boven.gif\" border=\"0\" hspace=\"0\">");
//				doc.writeln("<img src=\"streep.gif\" border=\"0\" hspace=\"0\">");
	 			doc.writeln(naammet(vreg[hoofd[level]][m_naam],vreg[hoofd[level]][m_oms],vreg[hoofd[level]][m_url],vreg[hoofd[level]][m_target],leveld) + "</p>");
				if (hoofd[level] + 1 < vreg.length) 
					streepjes[level+1] = streepjes[level] + "<img src=\"vstreep.gif\" border=\"0\" hspace=\"0\">";
				else
					streepjes[level+1] = streepjes[level] + "<img src=\"vniks.gif\" border=\"0\" hspace=\"0\">";
				level++;
				hoofd[level]=0;
			}
			else
			{	//
				// dit niveau gesloten
				//
				doc.writeln("<p class=\"menudicht\">"+ streepjes[level] + plusmin("plus",leveld)); 
//				doc.writeln("<img src=\"streep.gif\" border=\"0\" hspace=\"0\">");
				doc.writeln(naammet(vreg[hoofd[level]][m_naam],vreg[hoofd[level]][m_oms],vreg[hoofd[level]][m_url],vreg[hoofd[level]][m_target],leveld) + "</p>");
				while (++hoofd[level] >= vreg.length && level > 0) {
					level--;
					vreg = regels;
					for (i = 0; i < level; i++) {
						//
						// pointer uitwerken
						vreg = vreg[hoofd[i]][m_regels];
					}
				}
			}
		}
	}
	// sitemap e.d.		
//	doc.writeln("<center><br><br><a href=\"sitemap.html\" target=\"" + parent.smframe + "\" title=\"Overzicht van alle aanwezige pagina's\" onClick=\"parent.sitemap(); return false\">Site Overzicht</a><br>");
	doc.writeln("<center><br><br><a href=\"sitemap.html\" target=\"" + parent.smframe + "\" title=\"Overzicht van alle aanwezige pagina's\" >Site Overzicht</a><br>");
	zoek_vorige(menulevel);
	if (vorigrg != null)
		doc.write(naammet("&lt;vorige-","Vorige pagina : " + vorigrg[m_oms],vorigrg[m_url],vorigrg[m_target],voriglevel));
	doc.write("   ");
	zoek_volgende(menulevel);
	if (volgenderg != null)
		doc.writeln(naammet("-volgende&gt","Volgende pagina : " + volgenderg[m_oms],volgenderg[m_url],volgenderg[m_target],volgendelevel));
	doc.writeln("<br>");
	// einde menu .. nu de plaatjes/banners
	i = Math.floor(Math.random() * butban.length);
	doc.writeln("<br><table class=\"butban\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\"><tr><td align=\"right\" valign=\"bottom\"><a href=\"" + butban[i][1] + "\" border=\"0\" target=\"" + banframe + "\" title=\"" + butban[i][2] + "\"><img src=\"" + butban[i][0] + "\" border=\"0\"></a></td>");
	doc.writeln("<td valign=\"bottom\"><img src=\"plaatjes/arb.jpg\" border=\"0\"></td></tr>");
	doc.writeln("<tr><td align=\"right\"><img src=\"plaatjes/alo.jpg\" border=\"0\"></td><td><img src=\"plaatjes/aro.jpg\" border=\"0\"></td></tr></table>");
	// fotogalerij.		
//	doc.writeln("<br><a href=\"menu.html\" target=\"" + parent.smframe + "\" title=\"Fotogalerij\" onClick=\"parent.fotogalerij('Fotogalerij',parent.butban,5,parent.smframe); return false\">Fotogalerij</a><br>");
	doc.writeln("<br><a href=\"fotogalerij.html\" target=\"" + parent.smframe + "\" title=\"Fotogalerij\">Fotogalerij</a><br>");
	// ook nog het nieuws
	doc.writeln("<br>Nieuw op de site:<br><br>");
	for (j = 0; j < nwreg.length; j++) {
		leveln = zoek_url(nwreg[j][m_url]);
		doc.writeln("<p class=\"nieuw\">" + naammet(nwreg[j][m_naam],nwreg[j][m_oms],nwreg[j][m_url],nwreg[j][m_target],leveln) + "</p>");
	}	
	// afsluiten met de voetregels
	doc.write(menuvoet);
	doc.close();
}	


function zoek_vorige(menu) {
	levels = "";

	vreg = Array();
	lvls = Array();
	lvls = menu.split(",");

	vreg = regels;
	level = 0;
	vorigrg = null;
	// huidig level bepalen.	
	while (lvls[level] > 0 && // is ingevuld
			lvls[level]-1 <= vreg.length && // bestaat
			vreg[lvls[level]-1][m_regels] != null && // heeft regels
			lvls[level+1] > 0 && // heeft hogere
			lvls[level+1]-1 <= vreg[lvls[level]-1][m_regels].length) { // hogere bestaat ook nog 
		vreg = vreg[lvls[level]-1][m_regels];
		level++;
	}
	//
	lvls[level]--;
	if (lvls[level] <= 0) {
		level--;
	}
	else
	{
		// pointer uitwerken
		vreg = regels;
		for (i = 0; i < level; i++) {
			vreg = vreg[lvls[i]-1][m_regels];
		}
		// kijken of we de diepte inkunnen
		while (vreg[lvls[level]-1][m_regels] != null && vreg[lvls[level]-1][m_regels].length > 0) {
			level++;
			lvls[level] = vreg[lvls[level-1]-1][m_regels].length;
			vreg = vreg[lvls[level-1]-1][m_regels];
		}
	}
	// level van het detail
	voriglevel = ""
	for (i = 0; i <= level; i++) {
		if (i != 0)
			voriglevel = voriglevel + ",";
		voriglevel = voriglevel + (lvls[i]);
	}
	// pointer uitwerken
	vreg = regels;
	for (i = 0; i < level; i++) {
		vreg = vreg[lvls[i]-1][m_regels];
	}
	if (lvls[level] > 0)
		vorigrg=vreg[lvls[level]-1];
}

function zoek_volgende(menu) {
	levels = "";

	vreg = Array();
	lvls = Array()
	lvls = menu.split(",");

	vreg = regels;
	level = 0;
	if (lvls[level] <= 0) lvls[level] = 1;
	volgenderg = null;
	// huidig level bepalen.	
	while (lvls[level] > 0 && // is ingevuld
			lvls[level]-1 <= vreg.length && // bestaat
			vreg[lvls[level]-1][m_regels] != null && // heeft regels
			lvls[level+1] > 0 && // heeft hogere
			lvls[level+1]-1 <= vreg[lvls[level]-1][m_regels].length) { // hogere bestaat ook nog 
		vreg = vreg[lvls[level]-1][m_regels];
		level++;
	}
	// kijken of we de diepte inkunnen
	if (vreg[lvls[level]-1][m_regels] != null && vreg[lvls[level]-1][m_regels].length > 0) {
		level++;
		lvls[level] = 1;
		vreg = vreg[lvls[level-1]-1][m_regels];
	}
	else {
		while (++lvls[level] >= vreg.length+1 && level > 0) {
			level--;
			vreg = regels;
			for (i = 0; i < level; i++) {
				//
				// pointer uitwerken
				vreg = vreg[lvls[i]-1][m_regels];
			}
		}
	}
	// level van het detail
	volgendelevel = ""
	for (i = 0; i <= level; i++) {
		if (i != 0)
			volgendelevel = volgendelevel + ",";
		volgendelevel = volgendelevel + (lvls[i]);
	}
	// pointer uitwerken
	vreg = regels;
	for (i = 0; i < level; i++) {
		vreg = vreg[lvls[i]-1][m_regels];
	}
	if (lvls[level] > 0)
		volgenderg=vreg[lvls[level]-1];
}

function zoek_url(url) {
	//
	// een url in het menu zoeken.
	//
	hoofd = Array();
	vreg = Array();
	m_naam = 0;
	m_oms = 1;
	m_url = 2;
	m_target = 3;
	m_regels = 4;
	levels = ""
	//
	//
	level = 0; 
	hoofd[0]=0;
	while (hoofd[0] < regels.length && levels == "") {
		
		//
		// hoofd level plus of min
		//
		vreg = regels;
		for (i = 0; i < level; i++) {
			//
			// pointer uitwerken
			vreg = vreg[hoofd[i]][m_regels];
		}
		//
		// blaadjes
		//
		if (url == vreg[hoofd[level]][m_url]) {
			for (i = 0; i <= level; i++) {
				if (i != 0)
					levels = levels + ",";
				levels = levels + (hoofd[i]+1);
			}
		}
		if (vreg[hoofd[level]][m_regels] != null && vreg[hoofd[level]][m_regels].length > 0) {
				level++;
				hoofd[level]=0;
		}
		else
		{
			while (++hoofd[level] >= vreg.length && level > 0) {
				level--;
				vreg = regels;
				for (i = 0; i < level; i++) {
					//
					// pointer uitwerken
					vreg = vreg[hoofd[i]][m_regels];
				}
			}
		}
	}
	return levels;
}	
		
		
function sitemap() {
	//
	// een sitemap afdrukken.
	//
	hoofd = Array();
	vreg = Array();
	m_naam = 0;
	m_oms = 1;
	m_url = 2;
	m_target = 3;
	m_regels = 4;

	doc = frames[smframe].document;
	//
	//
	doc.open("text/html","replace");	
	doc.write("<html><head><title>Sitemap</title><LINK REL=StyleSheet HREF=\"ovost.css\" TYPE=\"text/css\" TITLE=\"Algemene Style Sheet\"></head><body>");	
	doc.write("<p class=\"sitemap\">");	
	level = 0; 
	hoofd[0]=0;
	while (hoofd[0] < regels.length) {
		
		//
		// hoofd level plus of min
		//
		vreg = regels;
		for (i = 0; i < level; i++) {
			//
			// pointer uitwerken
			vreg = vreg[hoofd[i]][m_regels];
		}
		//
		// blaadjes
		//
		levels = ""
		for (i = 0; i < level; i++) {
				levels = levels + "---";
		}
		// level van het detail
		leveld = ""
		for (i = 0; i <= level; i++) {
			if (i != 0)
				leveld = leveld + ",";
			leveld = leveld + (hoofd[i]+1);
		}
   		doc.writeln(levels+naammet(vreg[hoofd[level]][m_oms],vreg[hoofd[level]][m_oms],vreg[hoofd[level]][m_url],vreg[hoofd[level]][m_target],leveld) +"<br>");
   		if (vreg[hoofd[level]][m_regels] != null && vreg[hoofd[level]][m_regels].length > 0) {
			level++;		// dieper gaan
			hoofd[level]=0;
   		}
   		else {
			while (++hoofd[level] >= vreg.length && level > 0) {
				level--;
				vreg = regels;
				for (i = 0; i < level; i++) {
					//
					// pointer uitwerken
					vreg = vreg[hoofd[i]][m_regels];
				}
			}
		}
	}
	doc.write("</p></body></html>");	
	doc.close();	
}	
		
function maak_tabel() {
	levels = "";

	vreg = Array();
	lvls = Array();
	lvls = menulevel.split(",");

	vreg = regels;
	level = 0;
	vorigrg = null;
	tekst="";
	// huidig level bepalen.	
	while (lvls[level] > 0 && // is ingevuld
			lvls[level]-1 <= vreg.length && // bestaat
			vreg[lvls[level]-1][m_regels] != null && // heeft regels
			lvls[level+1] > 0 && // heeft hogere
			lvls[level+1]-1 <= vreg[lvls[level]-1][m_regels].length) { // hogere bestaat ook nog 
		vreg = vreg[lvls[level]-1][m_regels];
		level++;
	}
	//
	vreg = vreg[lvls[level]-1][m_regels];
	tekst += "<table width='95%' border='0' cellpadding='4'>";
	for (i = 0; i < vreg.length; i++) {
		tekst+="<tr><td>";
		tekst+=naammet(vreg[i][m_oms],vreg[i][m_oms],vreg[i][m_url],vreg[i][m_target],menulevel+","+ (i+1));
		tekst+="</td></tr>";
	}
	tekst+="</table>";
	return tekst;
}

function fotogalerij(titel,fotos,kolommen,frame) {
	//
	// een fotogalerij afdrukken.
	//

	doc = frames[frame].document;
	//
	//
	doc.open("text/html","replace");	
	doc.writeln("<html><head><title>Fotogalerij</title><LINK REL=StyleSheet HREF=\"ovost.css\" TYPE=\"text/css\" TITLE=\"Algemene Style Sheet\"></head><body class=\"fotogalerij\">");
	doc.writeln("<h1>" + titel + "</h1>");	
	doc.writeln("<font size=\"-1\"><table width='100%' border='0' cellpadding='1'>");	
	nr = 0;
	for (nr = 0; nr < fotos.length; nr++) {
		if (nr % kolommen == 0){
			if (nr > 0) 
				doc.write("</tr>");
			doc.write("<tr>");
		}
		//
		doc.writeln("<td class=\"fotogalerij\" valign='top'><center><a href=\"" + fotos[nr][1] + "\" border=\"0\" target=\"" + frame + "\" title=\"" + fotos[nr][2] + "\"><img src=\"" + fotos[nr][0] + "\" border=\"0\"></a><br>");
		doc.writeln(fotos[nr][2] + "</center></td>");
	}
	doc.writeln("</tr></table></body></html>");	
	doc.close();	
	return false;
}	
		
		
		
		