var isNS = 0;

function doMenu(e) {

	isNS = 0;

	var txt =	"appCodeName    = " + navigator.appCodeName + "\n" +
				"appName        = " + navigator.appName + "\n" +
				"appVersion     = " + navigator.appVersion + "\n";

	// alert(txt);

	if (!document.all && !document.getElementById) {
		return;
	}

	if (!document.all && document.getElementById) {
		isNS = 1;
	}

	var source = '';
	if (isNS == 1) {
		source = e.target;
		if (source.className == null) {
			source = source.parentNode;
		}
	} else {
		source = event.srcElement;
	} 

	if (source.className.substring(1,10) == "_iconmenu") {

		toggleMenuIcon(source, "false");

	} else if (source.className.substring(1,11) == "_entrymenu") {

		var subs = source.parentNode.childNodes;
		var found = 0;
		for (i=0; found == 0 && i < subs.length; i++) {
			if (subs[i].className != null &&
				subs[i].className.substring(1,12) == "_iconmenu") {
				found = 1;
				toggleMenuIcon(subs[i], "true");
			}
		}

		toggleMenuItems(source, "true");

	}

	if (source.className.substring(0,9) == "cornerimg") {
    	refreshIcons(window.parent.frames["menu"].document);
//    	dump(window.parent.frames["menu"].document.embeds[0]);
//    	clear(window.parent.frames["menu"].document.images[0]);
	}

	
	if (source.className.substring(1,7) == "_entry") {
		clearIcons(source);
		fillIcon(source);
	}
}

function toggleMenuIcon(source, show) {

	var nr = source.className.substring(0,1);

	if (source.src.indexOf("plus") >= 0 || show == "true") {
		if (source.src.indexOf("valgt") >= 0) {
			source.src = "images/menuvalgtminus" + nr + ".gif";
		} else {
			source.src = "images/menuminus" + nr + ".gif";
		}
	} else if (source.src.indexOf("valgt") >= 0) {
		source.src = "images/menuvalgtplus" + nr + ".gif";
	} else {
		source.src = "images/menuplus" + nr + ".gif";
	}

	toggleMenuItems(source, "false");
}


function toggleMenuItems(source, show) {

	var subs = source.parentNode.childNodes;

	for (i=0; i < subs.length; i++) {
		if (subs[i].className != null && subs[i].className == "entry") {
			var mis = subs[i].childNodes;
			for (j=0; j < mis.length; j++) {
				setDisplay(mis[j], show);
			}
		}
	}
}

function setDisplay(source, show) {
	if (source.style != null) {
		if (source.style.display == "none" || show == "true") {
			source.style.display = '';
		} else {
			source.style.display = "none";
		}
	}

}

function fillIcon(source) {
	var subs = source.parentNode.childNodes;
	for (i=0; i < subs.length; i++) {
		if (subs[i].className != null) {
			var nr = subs[i].className.substring(0,1);
			if (subs[i].className.substring(1,10) == "_iconmenu") {
				subs[i].src = "images/menuvalgtminus" + nr + ".gif";
			} else if (subs[i].className.substring(1,6) == "_icon") {
				subs[i].src = "images/menuvalgtblank" + nr + ".gif";
			}
		}
	}
}

function dump(source) {

	var subs = source.parentNode.childNodes;
	var txt = "";
	for (i=0; i < subs.length; i++) {
		txt += i + ": " + subs[i].className + " \\ " + subs[i].name + "\n";
	}
	alert(txt); 
}

function dump(doc, text) {
    
    var subs = doc.images
	var txt = "";
	for (i=0; i < subs.length; i++) {
		txt += i + ": " + subs[i].className + " \\ " + subs[i].name + "\n";
	}
	alert(txt);
}


function refreshIcons(doc) {
    
    var subs = doc.images;
    
	for (j=0; j < subs.length; j++) {
		if (subs[j].className != null) {
			if (subs[j].className == "0_icon") {
    			subs[j].src = "images/menublank0.gif"
			} else if (subs[j].className == "1_icon") {
    			subs[j].src = "images/menublank1.gif"
    			clearSubMenu(subs[j]);
			} else if (subs[j].className == "0_iconmenu") {
      			subs[j].src = "images/menuplus0.gif";
			}
	    }
    }
}

function clearSubMenu(source) {
    
    var subs = source.parentNode.childNodes;
    
	for (i=0; i < subs.length; i++) {
    	if (subs[i].style != null) {
       		subs[i].style.display = "none";
		}
	}
    
}



function clearIcons(source) {
	var found = 0;
	var mother = source;

	for (i=0; found == 0 && i < 20; i++) {
		mother = mother.parentNode;
		if (mother.className == "menupage") {
			found = 1;
		}
	}

	if (found == 1) {
		clear(mother);	
	}
}

function clear(source) {

	var subs = source.childNodes;
	
	for (i=0; i < subs.length; i++) {
		if (subs[i].className != null) {
			if (subs[i].className == "entry") {
				clearEntry(subs[i]);
			} else if (subs[i].className == "menu") {
				clearMenu(subs[i]);
			}
		}
	}
}

function clearEntry(source) {

	var subs = source.childNodes;

	for (j=0; j < subs.length; j++) {
		if (subs[j].className != null) {
			if (subs[j].className.substring(1,6) == "_icon") {
				if (subs[j].src.indexOf("valgt") >= 0) {
					var nr = subs[j].className.substring(0,1); 
					if (subs[j].className.substring(1,10) == "_iconmenu") {
						if (subs[j].src.indexOf("plus") >= 0) {
							subs[j].src = "images/menuplus" + nr + ".gif";
						} else {
							subs[j].src = "images/menuminus" + nr + ".gif";
						}
					} else {
						subs[j].src = "images/menublank" + nr + ".gif";
					}
				}
			}
		}
	}
}

function clearMenu(source) {
	var subs = source.childNodes;

	for (k=0; k < subs.length; k++) {
		if (subs[k].className != null) {
			var nr = subs[k].className.substring(0,1); 
			if (subs[k].className.substring(1,10) == "_iconmenu") {
				if (subs[k].src.indexOf("valgt") >= 0) {
					if (subs[k].src.indexOf("plus") >= 0) {
						subs[k].src = "images/menuplus" + nr + ".gif";
					} else {
						subs[k].src = "images/menuminus" + nr + ".gif";
					}
				}// else
				//		subs[k].src = "images/menuplus" + nr + ".gif";
			} else if (subs[k].className == "entry") {
				clearEntry(subs[k]);
			}
		}
	}
}

document.onclick=doMenu


