﻿    
// Die Funktionen addGesamt und chkbox wird nur benötigt, wenn Checkboxen benötigt werden
	//
	function addGesamt(id,chk,nodeid) {
		var n = d.getnode(nodeid);
		if (n)
		   d.checkAllUnder(n, chk,document.Form1.hierarchie.checked);
		
	}
	
	var glHinzuTimout = null;
	function hinzu(id,chk) {
		/*if (chk == true) {
				// id hinzufügen
				document.Form1.firmen.value = (document.Form1.firmen.value) + "|" + id ;
				// doppelte löschen
				var myAr;
				var myAr2;
				myAr = String(document.Form1.firmen.value).split("|");
				myAr2 = unique(myAr);
				document.Form1.firmen.value = "";
				document.Form1.firmen.value = String(myAr2).replace(/,/g,"|");
				
				//Einblenden
				if (glMark[id]) {
				    map.removeOverlay(glMark[id]);		
				    map.addOverlay(glMark[id]);		
				}
			}
			else {
				//ID löschen
				var myStr = document.Form1.firmen.value;
				if (myStr.length > 0) {
										
					myStr = myStr.replace(new RegExp("^"+id+"$"),"");	
					myStr = myStr.replace(new RegExp("^"+id+"\|"),"");	
					myStr = myStr.replace("|"+id+"|","|");						
					myStr = myStr.replace(new RegExp("\\|"+id+"$"),"");	
									
					document.Form1.firmen.value = myStr;
					
				}		
				
				//Ausblenden
				 if (glMark[id]) {
				    map.removeOverlay(glMark[id]);					
				    map.closeInfoWindow();
				 }
			} */
			
			
			if (chk == true) {
				// id hinzufügen
				if (glHinzuTimout != null) clearTimeout(glHinzuTimout);
				
				var hd = document.Form1.firmen;
				hd.value = (hd.value) + "|" + id ;
				// doppelte löschen
				
				//var myAr2;
				var myAr = String(hd.value).split("|");
				//myAr2 = unique(myAr);
				hd.value = "";
				hd.value = String(myAr).replace(/,/g,"|");
				
				glHinzuTimout = setTimeout("setUnique()",100);
				
				//Einblenden
				if (glMark[id]) {
				    map.removeOverlay(glMark[id]);		
				    map.addOverlay(glMark[id]);		
				}
			}
			else {
				//ID löschen
				var hd = document.Form1.firmen;
				var myStr = hd.value;
				if (myStr.length > 0) {
					//ID mit RegEx entfernen
					myStr = myStr.replace(new RegExp("^"+id+"$"),"");	
					myStr = myStr.replace(new RegExp("^"+id+"\|"),"");	
					myStr = myStr.replace("|"+id+"|","|");						
					myStr = myStr.replace(new RegExp("\\|"+id+"$"),"");	
					hd.value = myStr;
				}	
				
				//Ausblenden
				 if (glMark[id]) {
				    map.removeOverlay(glMark[id]);					
				    map.closeInfoWindow();
				 }		
			}
			
	}
	
	function setUnique() {
       var hd = document.Form1.firmen;
       var myAr = String(hd.value).split("|");
       var myAr2 = unique(myAr);
       
       hd.value = "";
	   hd.value = String(myAr).replace(/,/g,"|");	       
	}
	
	function unique(a) {
			tmp = new Array(0);
			for(i=0;i<a.length;i++){
				if(!contains(tmp, a[i])){
					tmp.length+=1;
					tmp[tmp.length-1]=a[i];
				}
			}
			return tmp;
		}

		function contains(a, e) {
			for(j=0;j<a.length;j++)if(a[j]==e)return true;
			return false;
		}
	
	function chkbox() {
		chkboxChecked(document.Form1.firmen.value);
		//einen String der einzelnen IDs durch | getrennt übergeben 
	}
	
		
	function openAll() {
		d.openAll();
	}
	
	/* 
		Cookie für die Hierarchie setzen und auslesen 
		#############################################	
	*/
	var never = new Date()
	never.setTime(never.getTime() + 2000*24*60*60*1000);
	 
	function SetCookie() {
	var name = "Firmen_Hierarchie_QReports";
	var value;
	if (document.Form1.hierarchie.checked == true) {
		value = "1";
	} else {
	    value = "0";
	}
	 	var expString = "; expires=" + never.toGMTString();
		document.cookie = name + "=" + escape(value) + expString;
	}
	
	
	function GetCookie() {
		var name;
		name = "Firmen_Hierarchie_QReports";
		var result = null;
		var myCookie = " " + document.cookie + ";";
		var searchName = " " + name + "=";
		var startOfCookie = myCookie.indexOf(searchName);
		var endOfCookie;
		if (startOfCookie != -1) {
		    startOfCookie += searchName.length; // skip past name of cookie
		    endOfCookie = myCookie.indexOf(";", startOfCookie);
		    result = unescape(myCookie.substring(startOfCookie, endOfCookie));
		} else {
			result = "1";
		}
		return result;
	}
	
	
	function setChkdd() {
	    var val = GetCookie();
		if (val == "1") document.Form1.hierarchie.checked=true;
	}
	
	function chkSelect(t) {
	    SetCookie();
	}
	
	var myIncludePath = "";
    