    var bUnterkunft = false; 
    var bNatur = false;
    var nSucheAuswahl = 4;
    var touropen=1;
    var bRun = false;
    var bLuftBild = false;
    
    var bViewerDrag = false;
    var objViewer = null;
    var TempZIndex = 0;
    var nViewerStartX = -1;
    var nViewerStartY = -1;
    var arrViewerMin = new Array();
    var TourOrte=0;
    var bShowInfoFlaeche = false;

    var iCanvasCounter = 0;    
    //////////////////////////////////////   
    // >vorherige Route löschen im Firefox
    //////////////////////////////////////   
    // Tourdaten merken
    var tourKoordinaten = "";
    var tourKoordinatenReal = "";
    var tourfgColor = "";
    var tourbgColor = "";
    //////////////////////////////////////   
    // <vorherige Route löschen im Firefox
    //////////////////////////////////////   
    
    
    //////////////////////////////////////   
    // >Tourpoints
    //////////////////////////////////////   
    var TourpointBeschreibung = new Array();
    //////////////////////////////////////   
    // <Tourpoints
    //////////////////////////////////////   
    
     
    //  ---------------------------- Zurück-Button ein/ausblenden -------------------------        
    function setBackButton( visibleMode )
    {
        document.getElementById('btnZurueckImg').style.visibility = visibleMode;
        if( visibleMode == 'hidden')
            document.getElementById('btnZurueckImg').style.cursor = 'auto';
        else
            document.getElementById('btnZurueckImg').style.cursor = 'pointer';
    }
    
    function switchBackButton( number )
    {
        document.getElementById('btnZurueckImg').src = 'images/zurueck_' + number + '.gif';
        if(     ( document.getElementById('adresssuche').style.display == 'none' )
            &&  ( document.getElementById('ContainerTournavigation').style.display == 'none' )
            &&  ( document.getElementById('reisetagebuchUebersicht').style.visibility == 'hidden' )
          )
            
        {
            setBackButton("hidden");
        }
        else
        {
            setBackButton("visible");
        }
                
    }

    function BackButton()
    {
        if( document.getElementById('reisetagebuchUebersicht').style.visibility == 'visible' )
            OpenNaturreiseplaner();
        else{
            
            OpenTourenuebersicht();
             
            }
    }
    
    // -------------------------------- Impressum einblenden/ausblenden    
    function Impressum()
    {
        
        if( document.getElementById('Impressum').style.visibility == "visible" )
        {
            document.getElementById('Impressum').style.visibility = "hidden";
            document.getElementById('btnImpressum').innerHTML = "Impressum";
        }
        else
        {
            document.getElementById('Impressum').style.visibility = "visible";
            document.getElementById('btnImpressum').innerHTML = "Impressum<br> ausblenden";
        }
    }


    // ------------------------------ Adresssuche ein/ausblenden ----------------------------
    function switchBtnAdresssuche(number)
    {
        document.getElementById('btnAdresssucheImg').src = 'images/adress_' + number + '.png';
    }
    
    function OpenAdresssuche()  
    {
        //Die Routing Variable wird zurueckgesetz
        theMap.bRoutingRun = false;
        
        
        // if( document.getElementById('adresssuche').style.visibility == 'visible')
        if (document.getElementById('adresssuche').style.display == 'block')
        {
            OpenTourenuebersicht();
        }
        else
        {
            document.getElementById('adresssuche').style.display = 'block';
            document.getElementById('Tourbeschreibung').style.display = 'none';
            document.getElementById('ContainerTournavigation').style.display = 'none';
            ClosePoiKat();
            //switchBackButton(0);
            //document.getElementById('AdressenInput').focus(); 
            document.getElementById('id_adresssuche').style.visibility='visible';
            document.getElementById('id_ausflugsziele').style.visibility='hidden';
            document.getElementById('id_tourennavigation').style.visibility='hidden';
            
            
            
            switch (nSucheAuswahl)
            {
                case 0: sKarte = "Ort";break;
                case 1: sKarte = "PLZ";break;
                case 2: sKarte = "Reg";break;
                default: sKarte = "Voll";break;
            }
            
            if (nSucheAuswahl==0 || nSucheAuswahl==1 || nSucheAuswahl==3)
                document.getElementById("AdressenInput"+sKarte).focus();
        }
    }
    
    //Die Infooberflaeche wird geladen
    function loadInfo(nAuswahl)
    {
        closeInfo();

        if (nAuswahl == 0)
            document.getElementById("POIAuswahl").style.display = 'block';
        else if (nAuswahl == 1)
            document.getElementById("TourenAuswahl").style.display = 'block';
        else if (nAuswahl == 2)
            document.getElementById("POIInfo").style.display = 'block';
        
        document.getElementById("infoButton").style.backgroundImage = 'url(../mapcontrol/images/i3.png)';
        
        bShowInfoFlaeche = true;
    }
     
    //Die InfoFlaeche wird geschlossen
    function closeInfo()
    {
        document.getElementById("POIAuswahl").style.display = 'none';
        document.getElementById("TourenAuswahl").style.display = 'none';
        document.getElementById("POIInfo").style.display = 'none'; 
        document.getElementById('Tourgemerkt').innerHTML = "";
        
        
        document.getElementById("infoButton").style.backgroundImage = 'url(../mapcontrol/images/i2.png)';
        bShowInfoFlaeche = false;   
    }
    
    //Die verschiebung einer Flaeche wird eingeleitet
    function createViewerOpt(obj, event)
    {
        if(!event)event=window.event;
        
        objViewer = obj;
        
        //Der z-index wird geaendert
        TempZIndex = obj.style.zIndex;
        obj.style.zIndex = 999;
        var outerDiv = document.getElementById("outerDiv");
        
        //Die Mausposition auf der Flaeche wird berechnet
        nViewerStartX = event.clientX-GetOffsetLeft(outerDiv)+ScrollLeft();
        nViewerStartY = event.clientY-GetOffsetTop(outerDiv)+ScrollTop();
        
        nViewerStartX = objViewer.offsetLeft - nViewerStartX;
        nViewerStartY -= objViewer.offsetTop;
    }
    
    //Die Viewerflaeche wird verschoben
    function moveViewer(event)
    {
        //Fenster werden verschoben
		if (bViewerDrag)
		{
		    if(objViewer != null)
		    {		  
		        if(!event)event=window.event;
		        
		        var outerDiv = document.getElementById("outerDiv");		        
		        var y = event.clientY-GetOffsetTop(outerDiv)+ScrollTop();
		        var x = event.clientX-GetOffsetLeft(outerDiv)+ScrollLeft();
		      
		        objViewer.style.left = (x + nViewerStartX) + "px";
		        objViewer.style.top = (y - nViewerStartY) + "px";
		    }
		}
		else
		{
		    nViewerStartX = -1;
		    nViewerStartY = -1;
		}
    }
    
    //Diese Methode wird ausgerufen wenn das Moven des Vieweres beendet worden ist
    function stopMoveViewer(obj)
    {
        bViewerDrag=false;
        obj.style.zIndex=TempZIndex;
    }
    
    //Die Groesse des Viewers wird veraendert
    function editViewerSize(objButton)
    {
        var objViewer = objButton.parentNode.parentNode;
        
        if(existViewerInArray(objViewer.id))
            normalViewer(objButton, objViewer)
        else
            minimizeViewer(objButton, objViewer)
    
    }
    
    //Es wird ermittelt ob der Viewer schon in dem Array vorhanden ist
    function existViewerInArray(id)
    {
        //Die einzelnen Elemente werden durchlaufen
        for(var nI = 0; nI < arrViewerMin.length; nI++)
        {
            if(arrViewerMin[nI][0] == id)
                return true;
        }
        
        return false;
    }
    
    //Das Viewerfenster wird minimiert
    function minimizeViewer(objButton, objViewer)
    {
        var nMinHeight = "24";
        addArrayElement(objViewer.id, objViewer.offsetHeight);
        
        objViewer.style.left = objViewer.offsetLeft;
        objViewer.style.top = objViewer.offsetTop;
        objViewer.style.height = nMinHeight + "px";
        objButton.className = "btnNormalButton";
        
        setViewerElementsVisibility(false, objButton, objViewer)
    }
    
    
    //Die normale Groesse des Viewers wird angezeigt
    function normalViewer(objButton, objViewer)
    {
        objViewer.style.height = getArrayElementValue(objViewer.id) + "px";
        clearArrayElement(objViewer.id);
        
        objButton.className = "btnMinButton";
        
        setViewerElementsVisibility(true, objButton, objViewer)
    }
    
    
    //Die Visibility der einzelnen Elemente des Viewers werden gesetzt
    function setViewerElementsVisibility(bVisibile, objButton, objViewer)
    {
        var sVisibility = "";
        var sDisplay = "";
        var objChild = "";
        
        if(document.all)
            objChild = objViewer.children;
        else
            objChild = objViewer.childNodes;
        
        //Alle Buttons werden in der Form ausgeblendet
        for(var nI = 0; nI < objChild.length; nI++)
        {
            if(objChild[nI].className != objButton.parentNode.className)
            {
                if(bVisibile)
                {
                    sVisibility = "visible";
                    sDisplay = "block";
                }
                else
                {
                    sVisibility = "hidden";
                    sDisplay = "none";
                }
                
                if (objChild[nI].style != null)
                {
                    objChild[nI].style.visibility = sVisibility;
                    objChild[nI].style.display = sDisplay;
                }
            }
        } 
    }
    
    
    //Ein Element wird dem Array hinzugefuegt
    function addArrayElement(id, value)
    {
        var nZeile = arrViewerMin.length;
                        
        //Ein neues Array Element wird angelegt    
        arrViewerMin[nZeile] = new Object();
        arrViewerMin[nZeile][0] = id;
        arrViewerMin[nZeile][1] = value;
    }
    
    //Ein Element wird aus dem Array wieder entfernt
    function clearArrayElement(id)
    {
        var arrNeuesArray = new Array();
        
        //Die einzelnen Elemente werden durchlaufen
        for(var nI = 0; nI < arrViewerMin.length; nI++)
        {
            if(arrViewerMin[nI][0] != id)
                arrNeuesArray.push(arrViewerMin[nI]);         
        }
        
        //Abfrage wie das Array inistialisert wird
        if (arrNeuesArray.length != 0)
            arrViewerMin = arrNeuesArray;
        else
            arrViewerMin = new Array();
    }
    
    //Das Value aus einem Array Element wird gelesen
    function getArrayElementValue(id)
    {
        var sBack = "";
        
        //Die einzelnen Elemente werden durchlaufen
        for(var nI = 0; nI < arrViewerMin.length; nI++)
        {
            if(arrViewerMin[nI][0] == id)
            {
                sBack = arrViewerMin[nI][1];
                break;
            }
        }
        
        return sBack;
    
    }
    
    function LayerLuftbild()
    {
        if (bLuftBild){
                theMap.AddWMSLayer("http://www.gaia-mv.de/dienste/DOPDLM?&VERSION=1.1.1&REQUEST=GetMap&LAYERS=DOPDLM&FORMAT=image/jpeg&SRS=EPSG:31468&STYLES=&BBOX={x1},{y1},{x2},{y2}&TRANSPARENT=FALSE&EXCEPTIONS=application/vnd.ogc.se_inimage&width={w}&height={h}");
                document.getElementById('button_luftbild').style.backgroundImage='url(../mapcontrol/images/button_luftbild2.png)';
            }
        else{
                theMap.RemoveWMSLayers();
                document.getElementById('button_luftbild').style.backgroundImage='url(../mapcontrol/images/button_luftbild.png)';
            }
        
        theMap.ReloadMap();
    } 
    
    //Abfrage ob der ToolTipp fuer die Layer angezeigt werden soll
    function CheckToolTipp(MouseX, MouseY, ntp, np, bio)
    {		 
        var GeoKoord = theMap.TransformMousePosToGeoCoord(MouseX, MouseY);

        var url = "./mapcontrol/ajax/GetAreaMaps.aspx?x="+GeoKoord[0]+"&y="+GeoKoord[1]+"&mouseX="+MouseX+"&mouseY="+MouseY+"&ntp="+ntp+"&np="+np+"&bio="+bio;
        loadXMLDoc(url);
    }
    
    function showReiseplaner(bCenter)
    {
        var winW = 0, winH = 0;
        var arr = GetWindowSize();
        var nDiff = 1;
        
        if (bCenter)
            nDiff = 2;
                            
        winW = arr[0];
        winH = arr[1];

        winW = Math.max(winW,1024);
        winH = Math.max(winH,768);
                    
        var width = winW-480;
        var height = winH-255; 
                    
        var mapWidth = width-80;
        var mapHeight = height-70;
		var left =  ((mapWidth-276) / nDiff)+40;
        var top = ((mapHeight-262) / nDiff)+30;
        SetStyle("reisetagebuchUebersicht","left",left+"px");
        SetStyle("reisetagebuchUebersicht","top",top+"px");
    
    }    
    
    function isExistsFlaechenDiv(sFlaechenID)
    {
        Flaechendiv = document.getElementById(sFlaechenID);
        
        if(Flaechendiv != null)
            return true;
        
        return false;
    }

    function GetCanvasID(sString)
    {
        var sBack = "";
        var nStart;
        var nEnde; 
        var sSearch = "<canvas id='";  
        nStart = sString.indexOf(sSearch);
        if (nStart != -1)
        {
            sString = sString.substring(nStart + sSearch.length);
            nEnde = sString.indexOf("'");
            
            if (nEnde==-1)
                nEnde = sString.length;
                
           sBack = sString.substring(0, nEnde); 
        }
            
        return sBack;
    }
    
    function FlaecheOver(obj)
    {       
        var ToolTippText = document.getElementById("ToolTippText");
                
        ToolTippText.innerHTML = obj.attributes["FlaechenName"].value;
        document.getElementById("FlaechenToolTipp").style.visibility="visible";
    }
    
    function FlaecheMove(event)
    {
        if(!event)event=window.event;
        var outerDiv = document.getElementById("outerDiv");
        var MouseX = event.clientX-GetOffsetLeft(outerDiv)+ScrollLeft();
        var MouseY = event.clientY-GetOffsetTop(outerDiv)+ScrollTop();
        
        document.getElementById("FlaechenToolTipp").style.left = (MouseX + 8) + "px";
        document.getElementById("FlaechenToolTipp").style.top = (MouseY - 8) + "px";
    }
    
    function FlaecheOut()
    {
        document.getElementById("FlaechenToolTipp").style.visibility="hidden";
    }
    
    function FlaecheUp(obj)
    {   
		var url = "./GetFlaecheVisitenkarte.aspx?name=" + obj.attributes["FlaechenName"].value;
        loadXMLDoc(url);
    }
    
     function LinienUp(argName)
    {   
		var url = "./GetFlaecheVisitenkarte.aspx?name=" + argName;
        loadXMLDoc(url);
    }
    
    // ------------------------------ Naturreiseplaner ein/ausblenden ----------------------------
    function switchBtnNaturreiseplaner(number)
    {
        document.getElementById('btnNaturreiseplanerImg').src = 'images/radreise_neu_' + number + '.png';
    }
    

    
    function OpenNaturreiseplaner()
    {
        TagebuchAnzeigen();
        //switchBackButton(0);
    }
    
    function TooltippAnzeigen(){
    
        //sind eventuell durch TooltippMitId hidden
        document.getElementById('Tooltippzurueck').style.visibility='visible';
        document.getElementById('Tooltippvor').style.visibility='visible';
        
     var newState = (document.getElementById('TooltippUebersicht').style.display =='block') ? 'none' : 'block';
     document.getElementById('TooltippUebersicht').style.display = newState;
    
    }
    
    function Tooltippzurueck(){
    document.getElementById('Tooltippvor').style.visibility='visible';
    theMap.tooltippid-=1;
    if(theMap.tooltippid==0)
    document.getElementById('Tooltippzurueck').style.visibility='hidden';
    document.getElementById('Tooltippinhalt').innerHTML=theMap.Tooltipp[theMap.tooltippid];
    }
    
    function Tooltippvor(){
    document.getElementById('Tooltippzurueck').style.visibility='visible';
    theMap.tooltippid+=1;
    if(theMap.tooltippid==theMap.Tooltipp.length-1)
    document.getElementById('Tooltippvor').style.visibility='hidden';
    document.getElementById('Tooltippinhalt').innerHTML=theMap.Tooltipp[theMap.tooltippid];
    }
    
    function TooltippMitId(id){
    document.getElementById('Tooltippzurueck').style.visibility='hidden';
    document.getElementById('Tooltippvor').style.visibility='hidden';
    document.getElementById('Tooltippinhalt').innerHTML=theMap.Tooltipp[id];
    document.getElementById('TooltippUebersicht').style.display ='block';
    }
    
    
    
    // ------------------------------ Touren-Navigation (Routing) ein/ausblenden -------------
    function switchBtnTourennavigation(number)
    {
     /*   if(touropen==1)
        document.getElementById('btnTourennavigationImg').src = 'images/tourennavi_' + number + '.png';
        else 
        document.getElementById('btnTourennavigationImg').src = 'images/Unterkuenfte_' + number + '.png';
        */
    }
    
    function switchBtnGPXExport(sArt)
    {
        document.getElementById('imgGPXExport').src = 'images/TourGPX' + sArt + '.png';
        switchButtonLeiste(sArt, "R")
    }
    
    function switchBtnTourDrucken(sArt)
    {
        document.getElementById('imgTourDrucken').src = 'images/TourDrucken' + sArt + '.png';
        switchButtonLeiste(sArt, "L")
        
    }
    
    function switchBtnDruck(sArt)
    {
        document.getElementById('imgDruck').src = 'images/Druck' + sArt + '.png';
        switchButtonLeiste(sArt, "R")
    }
    
    function switchBtnMerken(sArt)
    {
        document.getElementById('imgMerken').src = 'images/Merken' + sArt + '.png';
        switchButtonLeiste(sArt, "L")
        
    }   
    
    function switchButtonLeiste(sArt, sSeite)
    {
        if (sArt == "Dunkel")
            document.getElementById('box_unten').style.backgroundImage = "url(images/box_unten" + sSeite + "Dunkel.gif)";
        else
            document.getElementById('box_unten').style.backgroundImage = "url(images/box_unten_zweiboxen.gif)";
    }
    
	function OpenTourennavigation()
	{
	if(theMap.currentTour==00)
	{
	alert('Bitte wählen Sie erst eine Tour aus, bevor Sie das Routing starten!');
	return;
	}
        
        //Die Routing Variable wird gesetzt
        theMap.bRoutingRun = true;
        if( document.getElementById('ContainerTournavigation').style.display == 'block')
        {
            OpenTourenuebersicht();
        }
        else
        {
        

            document.getElementById('TooltippTour').style.display='block';
            document.getElementById('adresssuche').style.display = 'none';
            document.getElementById('ContainerTournavigation').style.display = 'block';
            //document.getElementById('Tourbeschreibung').style.display = 'block';
            //document.getElementById('RouteDrucken').style.visibility='visible';
            //document.getElementById('TourbeschreibungDynamisch').style.visibility='visible';
            //document.getElementById('TourDrucken').style.visibility='hidden';
            //document.getElementById('TourDetailBeschreibung').style.visibility='hidden';
            ClosePoiKat();
            //switchBackButton(0);
//            document.getElementById('id_adresssuche').style.visibility='hidden';
//            document.getElementById('id_ausflugsziele').style.visibility='hidden';
//            document.getElementById('id_tourennavigation').style.visibility='visible';
            
             touropen=0;
        
        /*    
        if(touropen==1){
        document.getElementById('btnTourennavigationImg').src = 'images/tourennavi_0.png';
        }
        else{
        document.getElementById('btnTourennavigationImg').src = 'images/Unterkuenfte_0.png';
        }
        */ 
           
       
        }
	    
    }

    // ---------------------------- Touren-Übersicht ein/ausblenden ----------------------
	function OpenTourenuebersicht(){
	
        clickMode = 0;
        document.getElementById('TooltippTour').style.display='none';
        document.getElementById('adresssuche').style.display = 'none';
        //document.getElementById('PoiKatContainer').style.display = 'block';
        //document.getElementById('Tourbeschreibung').style.display = 'block';
        //document.getElementById('RouteDrucken').style.visibility='hidden';
        //document.getElementById('TourbeschreibungDynamisch').style.visibility='hidden';
        //document.getElementById('TourDrucken').style.visibility='visible';
        //document.getElementById('TourDetailBeschreibung').style.visibility='visible';
        document.getElementById('ContainerTournavigation').style.display = 'none';
//        document.getElementById('id_adresssuche').style.visibility='hidden';
//        document.getElementById('id_ausflugsziele').style.visibility='visible';
//        document.getElementById('id_tourennavigation').style.visibility='hidden';
        OpenPoiKat();
        //OpenPoiKatNatur();
        
        //switchBackButton(0);
        DeletePointer(); // Adresssuche nicht mehr aktiv
         
         touropen=1;
       
       /* 
        if(touropen==1){
        document.getElementById('btnTourennavigationImg').src = 'images/tourennavi_0.png';
        }
        else {
        document.getElementById('btnTourennavigationImg').src = 'images/Unterkuenfte_0.png';
        }
        */
	   
     

	}


    // ---------------------------- POI - Kategorien ein/ausblenden --------------------------
    function ClosePoiKat()
    {
		//document.getElementById("PoiKatContainer").style.display ="none";
    }
    
    function OpenPoiKat(){

		//document.getElementById("PoiKatContainer").style.display ="block";
    }

    function OpenPoiKatNatur()
    {
        document.getElementById("ContainerPoiKat_oben_Unterkunft").style.visibility = 'hidden';
		document.getElementById("menueInhalt_Unterkunft").style.visibility = 'hidden';

        document.getElementById("ContainerPoiKat_oben_Natur").style.visibility = 'visible';
		document.getElementById("menueInhalt_Natur").style.visibility = 'visible';
		
		loadPOIKatButton(bNatur);
    }
    
    function OpenPoiKatUnterkunft()
    {
        document.getElementById("ContainerPoiKat_oben_Unterkunft").style.visibility = 'visible';
		document.getElementById("menueInhalt_Unterkunft").style.visibility = 'visible';

        document.getElementById("ContainerPoiKat_oben_Natur").style.visibility = 'hidden';
		document.getElementById("menueInhalt_Natur").style.visibility = 'hidden';
		
		loadPOIKatButton(bUnterkunft);
    }
    
    
    //Die Regestrierkarten fuer die Suche werden bereitgestellt
    function OpenKarte(nOpen)
    {
        for(nI = 0; nI < 4; nI++)
        {       
            switch (nI)
            {
                case 0: sKarte = "Ort";break;
                case 1: sKarte = "PLZ";break;
                case 2: sKarte = "Reg";break;
                default: sKarte = "Voll";break;
            }
            
            if(nOpen==nI)
            {
                sVisi = 'visible';
                nSucheAuswahl = nI;
            }
            else
                sVisi = 'hidden';
                
            document.getElementById("adresserg_"+sKarte).style.visibility = sVisi;
            document.getElementById("adresssuche_"+sKarte).style.visibility = sVisi;
            document.getElementById("SuchergebnisAnzeige"+sKarte).style.visibility = 'hidden';
        
            if (sVisi == 'visible')
            {
                if (nI==0 || nI==1 || nI==3)
                    document.getElementById("AdressenInput"+sKarte).focus();
            }
        } 
    }
    
    function loadPOIKatButton(bVisible)
    {
        if(bVisible){
            document.getElementById("ContainerPoiKatAusschalten").style.visibility = "visible";
            document.getElementById("ContainerPoiKatEinschalten").style.visibility = "hidden";
        }
        else{
            document.getElementById("ContainerPoiKatAusschalten").style.visibility = "hidden";
            document.getElementById("ContainerPoiKatEinschalten").style.visibility = "visible";
        }
    } 
    
    
// -----------------------------------------------------------------------------------------        

     function RefreshRoutingPoints()
     {
        var actions = 0;
        if( theMap.startPoint[0] > 0 ){
            theMap.SetFixedPOIAt(theMap.startPoint[0],theMap.startPoint[1],"./images/start.gif","start.gif");
            actions++;
        }
        if( theMap.endPoint[0] > 0 ) {
            theMap.SetFixedPOIAt(theMap.endPoint[0],theMap.endPoint[1],"./images/ziel.gif","ziel.gif");
            actions++;
        }
        for (var i=0;i<theMap.zwischenpunkte.size();i++){
            theMap.SetFixedPOIAt(theMap.zwischenpunkte.getAt(i)[0],theMap.zwischenpunkte.getAt(i)[1],"./images/zwstop.gif","zwstop"+i);
        }
        if( actions >= 2 ){           
            startRouting();
        }
     }
     
     function Test()
     {
         loadXMLDoc("./CreatePoint_Network.aspx?id=master"); 
     }
     
    // Starten der Adresssuche
    function SucheStarten(){
        var strValue = "";
        var i;
        var strTmp = "";
        var strRadius = "";
        var bSuche = false;
        // Abfrage der Radiobuttons zum Auswählen POI- oder Adresssuche
        /*for(i=0; i < document.forms[0].adressselect.length; i++)
        {
          if(document.forms[0].adressselect[i].checked)
          {
             strValue = document.forms[0].adressselect[i].value;
             break;
          }
        }*/
        
        switch (nSucheAuswahl)
        {
            case 0: strTmp=document.getElementById("AdressenInputOrt").value;
                    strRadius=document.getElementById('RadiusAuswahl').options[document.getElementById('RadiusAuswahl').selectedIndex].value;
                break; 
            case 1: strTmp=document.getElementById("AdressenInputPLZ").value;
                break;
            case 2: strTmp=document.getElementById("RegAuswahl").value;
                break;
            default: strTmp=document.getElementById("AdressenInputVoll").value;
                break;
        }   

        if(strTmp!="" && strTmp!=" " && strTmp!="  "){
            strTmp = escape(strTmp);
            
            if (nSucheAuswahl == 1)
            {
                if (!isZahl(strTmp))
                    alert('Sie haben nicht nur Zahlen eingegeben!');
                else
                    bSuche = true;
            }
            else
                bSuche = true;
            
            if (bSuche)
            {
                var url = "./Adresssuche.aspx?auswahl="+nSucheAuswahl+"&name="+strTmp+"&radius="+strRadius;
                loadXMLDoc(url);
            }
        }
        else
            alert('Sie haben nichts ausgewählt/eingetragen!');
    }
    
    //Ueberpruefung ob es sich um eine Zahl handelt
    function isZahl(sWert){
        var bResult = false;
        
        if (!isNaN( parseFloat(sWert) ) )
            bResult = true;
    
        return bResult;
    }
    
    
    // Anzeige des Suchergebnisses
    function SprungZurSuchadresse(strasse,hausnr,plz,ort,koordx,koordy,name,kategorie)
    {
        setPOICategoryAlle(kategorie, visibility)
    }
    
    function ShowSuchergebnis(){
        var sAuswahl = "";
        
        
        switch (nSucheAuswahl)
        {
            case 0: sAuswahl = "Ort";break;
            case 1: sAuswahl = "PLZ";break;
            case 2: sAuswahl = "Reg";break;
            default: sAuswahl = "Voll";break;
        }
        if(arrSuche.length==0 || arrSuche.length>1)
            document.getElementById("suchergebnisse").innerHTML="<div style='padding-left: 7px;padding-top: 3px; font-size: 14px; font-weight: bold; text-align: left;color:#BE6428;font-family:Arial;'>"+ arrSuche.length+" Suchergebnisse</div>";
        else
            document.getElementById("suchergebnisse").innerHTML="<div style='padding-left: 7px;padding-top: 3px; font-size: 14px; font-weight: bold; text-align: left;color:#BE6428;font-family:Arial;'>"+ arrSuche.length+" Suchergebnis</div>";
        
        
        var divSuche = document.getElementById("SuchergebnisAnzeige" + sAuswahl);
        var strTmp = "";//<div style=\"position:absolute; top:1px; height:11px; width:11px; left:215px; background-image:url(/images/x.gif);background-repeat:no-repeat;border:solid 1px white; vertical-align:middle; text-align:left; cursor:hand; cursor:pointer; font-family:arial;\" onclick=\"document.getElementById('SuchergebnisAnzeige').style.visibility='hidden';\"></div><b>Suchergebnisse</b><br>Ihre Anfrage hat mehrere Ergebnisse zurückgeliefert<br><br>";
        var i = 0;
        var strTmpArt = "";
        var strStrasseTmp = "";
        var strKoordX = "";
        var strKoordY = "";
        var strKatTmp ="";
        var nKomma = "";
        while(i<arrSuche.length){
            // Gefundene POI
            if(nSucheAuswahl==2 && i==0){
            var regid=document.getElementById('RegAuswahl').options[document.getElementById('RegAuswahl').selectedIndex].value;
            SetCenterRegion(regid);
            
            }
            else if(i==0 ){ 
                strKoordX = arrSuche[i][4];
                strKoordY = arrSuche[i][5];
                theMap.centerSuche(strKoordX, strKoordY);
            }
            
            
            if (arrSuche[i][0] != "")
                nKomma = ", ";
            else
                nKomma = "";
                
            //Kategorie vorweg 
            if(arrSuche[i][7] != strKatTmp)
                strTmp += "<tr><span style='font-size:11px; font-weight:bold; text-align:left; padding:2px; text-decoration:underline;'>"+ arrSuche[i][7]+"</span></tr>"; 
            // Gefundene Strassen und Hausnummern
            if(arrSuche[i][6] != "")
            {
                if(i%2==0)
                    strTmp += "<li class='Adressstyle' onclick='theMap.setPoiKatBeiAdresssuche("+arrSuche[i][8]+");theMap.centerSuche(\""+arrSuche[i][4]+"\",\""+arrSuche[i][5]+"\");'>"+arrSuche[i][6]+ nKomma +arrSuche[i][0];  
                else
                    strTmp += "<li class='Adressstyle' onclick='theMap.setPoiKatBeiAdresssuche("+arrSuche[i][8]+");theMap.centerSuche(\""+arrSuche[i][4]+"\",\""+arrSuche[i][5]+"\");'>"+arrSuche[i][6]+ nKomma +arrSuche[i][0];  
            }
            
            if (arrSuche[i][9] != "")
                nKomma = ", ";
            else
                nKomma = "";
                
            
            if(arrSuche[i][1] != "")
                strTmp = strTmp + " "+arrSuche[i][1]+", "+arrSuche[i][2]+" "+arrSuche[i][3]+ nKomma + arrSuche[i][9] + "</li>";
            else
                strTmp = strTmp + " "+arrSuche[i][2]+" "+arrSuche[i][3]+ nKomma + arrSuche[i][9] + "</li>";
            strKatTmp = arrSuche[i][7];            
            i++;
        }
        strTmp += "</il>";
        divSuche.innerHTML = strTmp; // Feld füllen
        
        var divAdress = document.getElementById("adresssuche");
        divAdress.style.display = 'block';
        divAdress.style.visibility="visible";
        divSuche.style.visibility="visible";
    }
            
  // Fügt der Merkerliste einen neuen Eintrag hinzu
  function  reisetagebuchUebersichtfuellen(){
    
        var strTmpText = "";
        if(iMerkerlisteTourAnzahl>0)
        {
            
            strTmpText += "<ul><b>gemerkte Touren:</b>";
            for(var i = 0; i<iMerkerlisteTourAnzahl; i++)
            {
                strTmpText += "<li>";
                strTmpText += '<span>'+arrMerkerlisteTour[i][1]+'</span><br>';
               
                //Die TourKat wird einbelendet
                strTmpText += "<img src='Bilder.aspx?tourkat=1&id="+arrMerkerlisteTour[i][2]+"'>";
                
                strTmpText += "<br>";
                
                strTmpText += '<span class="btnMerkerliste" onclick="setTour(\''+arrMerkerlisteTour[i][0]+'\')">(in Karte zeigen</span>';
                strTmpText += " / ";
                
                //InfoAnzeige als Default
                strTmpText += '<span class="btnMerkerliste"  onclick="theMap.loadTourInfo(\''+arrMerkerlisteTour[i][0] + '\',\'' +arrMerkerlisteTour[i][1] + '\',\'' +arrMerkerlisteTour[i][2] + '\')">Info anzeigen</span>';
                
                strTmpText += " / ";
                strTmpText += '<span class="MerkerlisteLoeschen", VisitStyle" onclick="DelMerkerlisteTour(\''+arrMerkerlisteTour[i][0]+'\')">löschen)</span></li>';               
            }
            strTmpText+="</ul>";
        }
        
        if(iMerkerlisteAnzahl>0)
        {
        
            strTmpText += "<ul><b>gemerkte Ausflugsziele:</b>";
            for(var i = 0; i<iMerkerlisteAnzahl; i++)
            {                    
                strTmpText += "<li>";
                strTmpText += '<span>'+arrMerkerliste[i][0]+'</span><br>';
                
                //Die Kat Icons werden ausgelesen
                var arrPOIKats = arrMerkerliste[i][1].split(",");
                
                for(var j = 0; j < arrPOIKats.length; j++)
                    strTmpText += "<img src='Bilder.aspx?icon=1&id="+arrPOIKats[j]+"'>";
               
                strTmpText += "<br>";
                
                strTmpText += '<span class="btnMerkerliste" onclick="SetCenterPOI(\''+arrMerkerliste[i][20]+'\')">(in Karte zeigen</span>';
                strTmpText += " / ";
                

                strTmpText += '<span class="btnMerkerliste" onclick="loadPOI(\'' + arrMerkerliste[i][20]+'\')">Info anzeigen</span>';
                
                strTmpText += " / ";
                strTmpText += '<span class="MerkerlisteLoeschen", VisitStyle" onclick="DelMerkerliste(\''+arrMerkerliste[i][20]+'\')">löschen)</span></li>';
            }
            strTmpText+="</ul>";
        
        }

        
        document.getElementById('MerkerlisteInhaltScroll').innerHTML=strTmpText;
    
    }
    
    
    //Ein POI wird in die Visitenkarte geladen
    function loadPOI(POIId)
    {
        loadXMLDoc("./GetVisitenkarte.aspx?poiId=" + POIId + "&spracheId=" + strSpracheId);    
    }
        
    function AddMerkerliste(){
    
        if(isExistPOIinMerkerliste()){
            //22. Eintrag=sammelpoiid, nötig für löschen der markierung in der karte
            arrMerkerliste[iMerkerlisteAnzahl] = new Array(arrVisitenkarte[0], arrVisitenkarte[1], arrVisitenkarte[2], arrVisitenkarte[3], arrVisitenkarte[4], arrVisitenkarte[5], arrVisitenkarte[6], arrVisitenkarte[7], arrVisitenkarte[8], arrVisitenkarte[9], arrVisitenkarte[10], arrVisitenkarte[11], arrVisitenkarte[12], arrVisitenkarte[13], arrVisitenkarte[14], arrVisitenkarte[15], arrVisitenkarte[16], arrVisitenkarte[17], arrVisitenkarte[18], arrVisitenkarte[19], iPoiIdAktuell, arrVisitenkarte[21], arrVisitenkarte[20], arrVisitenkarte[23]);
            iMerkerlisteAnzahl++;
      
            

		    document.getElementById("lblMerkliste").innerHTML = "<img style='left:0px; top:0px; position:absolute; width:20px; height:20px;' src='/images/haken.gif'>"
        
        
            //Haken hinzufügen zum poi    
            
            if(arrVisitenkarte[20]!=iPoiIdAktuell){//Sammelpoi oder nicht?
            
                if(document.getElementById("m"+arrVisitenkarte[20])== null){//wenn die id noch nicht vorhanden, wurde noch nix gemerkt
                
                 if(document.getElementById(arrVisitenkarte[20])!=null){
                    div=document.getElementById(arrVisitenkarte[20]).parentNode; 
                
            		var img3 = document.createElement("img");
                    img3.src = "/mapcontrol/icons/Haken-klein.png";
				    img3.style.position = "absolute";
				    img3.style.left = document.getElementById(arrVisitenkarte[20]).style.left;
				    img3.style.top = document.getElementById(arrVisitenkarte[20]).style.top;
				    img3.style.cursor="pointer";
				    img3.style.zIndex=294;
				    img3.style.height="20px";
				    img3.style.width="22px";
				    img3.onclick=theMap.onpoiclick;
				    img3.alt=document.getElementById(arrVisitenkarte[20]).alt;
				    img3.title=document.getElementById(arrVisitenkarte[20]).title;
    				
				    img3.customId=document.getElementById(arrVisitenkarte[20]).customId;
				    img3.name=document.getElementById(arrVisitenkarte[20]).name;
				    document.getElementById(arrVisitenkarte[20]).id="m"+arrVisitenkarte[20];//Unteres bild erhält neue ID
				    img3.id=arrVisitenkarte[20]; // Oberes Bild erhält id, um anklickbar zu sein
				    div.appendChild(img3);
				 }
            }
            }else{
                
            if(document.getElementById(iPoiIdAktuell)!=null){
                div=document.getElementById(iPoiIdAktuell).parentNode; //Das elternelemnt holen 
                
                if(div!=null){
			        var img3 = document.createElement("img");
                    img3.src = "/mapcontrol/icons/Haken-klein.png";
				    img3.style.position = "absolute";
				    img3.style.left = document.getElementById(iPoiIdAktuell).style.left;
				    img3.style.top = document.getElementById(iPoiIdAktuell).style.top;
				    img3.style.cursor="pointer";
				    img3.style.zIndex=294;
				    img3.style.height="20px";
				    img3.style.width="22px";
				    img3.onclick=theMap.onpoiclick;
				    img3.alt=document.getElementById(iPoiIdAktuell).alt;
				    img3.title=document.getElementById(iPoiIdAktuell).title;
    				
				    img3.customId=document.getElementById(iPoiIdAktuell).customId;
				    img3.name=document.getElementById(iPoiIdAktuell).name;
				    document.getElementById(iPoiIdAktuell).id="m"+iPoiIdAktuell;//Unteres bild erhält neue ID
				    img3.id=iPoiIdAktuell; // Oberes Bild erhält id, um anklickbar zu sein
				    div.appendChild(img3);
            
                }
            }
        
        }
        
       
        }
        //showReiseplaner(true);
        reisetagebuchUebersichtfuellen();
        document.getElementById('spanPoiAnzahl').innerHTML = iMerkerlisteAnzahl+iMerkerlisteTourAnzahl;
     
        Merkerlistebutton();   
    }
    
    function SetCenterPOI(sPOIID)
    {
        loadXMLDoc("./mapcontrol/ajax/GetPoiUebersicht.aspx?poiId="+sPOIID+"&SpracheId=0");
    }
    
    function Merkerlistebutton(){
    
        if(iMerkerlisteTourAnzahl+iMerkerlisteAnzahl==0){
            document.getElementById('button_merkliste').style.backgroundImage='';
            document.getElementById('button_merkliste').alt='';
            document.getElementById('button_merkliste').title='';
        }else{
        document.getElementById('button_merkliste').style.backgroundImage='url(../mapcontrol/images/button_merkerliste2.png)';
        var gemerktgesamt=iMerkerlisteTourAnzahl+iMerkerlisteAnzahl;
        document.getElementById('button_merkliste').alt=gemerktgesamt+' Informationen in der Merkerliste';
        document.getElementById('button_merkliste').title=gemerktgesamt+' Informationen in der Merkerliste';
        }
        
    }
    
    function DelMerkerliste(argPoiId){
    
        var bMerkerlisteKopieren = false;
        var anzSammelpoi=0;//Sind mehrere Pois, eines Sammelpois gemerkt?
        var Sammelpoiid="";
        
        for(var i = 0; i<(iMerkerlisteAnzahl-1); i++){
            if(arrMerkerliste[i][20]==argPoiId){
                bMerkerlisteKopieren = true;
                Sammelpoiid=arrMerkerliste[i][22]; 
            }
            
            if(arrMerkerliste[i][20]!=arrMerkerliste[i][22]){//Wenn Sammelpoi
            var atmp = arrMerkerliste[i][22].split(",");
            for(var j=0;j<atmp.length;j++)
                if(atmp[j]==argPoiId){
                  anzSammelpoi++;
                  }
            }
            // Wenn die zu löschende POIId = die PoiId des Arrays ist werden alle nachfolgenden POIs des Arrays eine Position nach vorne gerückt
            if(bMerkerlisteKopieren==true){
                arrMerkerliste[i] = new Array(arrMerkerliste[(i+1)][0], arrMerkerliste[(i+1)][1], arrMerkerliste[(i+1)][2], arrMerkerliste[(i+1)][3], arrMerkerliste[(i+1)][4], arrMerkerliste[(i+1)][5], arrMerkerliste[(i+1)][6], arrMerkerliste[(i+1)][7], arrMerkerliste[(i+1)][8], arrMerkerliste[(i+1)][9], arrMerkerliste[(i+1)][10], arrMerkerliste[(i+1)][11], arrMerkerliste[(i+1)][12], arrMerkerliste[(i+1)][13], arrMerkerliste[(i+1)][14], arrMerkerliste[(i+1)][15], arrMerkerliste[(i+1)][16], arrMerkerliste[(i+1)][17], arrMerkerliste[(i+1)][18], arrMerkerliste[(i+1)][19], arrMerkerliste[(i+1)][20], arrMerkerliste[(i+1)][21], arrMerkerliste[(i+1)][22]);
            }
        }
        iMerkerlisteAnzahl--;
        document.getElementById('spanPoiAnzahl').innerHTML = iMerkerlisteAnzahl+iMerkerlisteTourAnzahl;
        
        
        
          //Merkergrafik bei den POIs löschen
           
           //Sammelpoi
           
           //Wenn gedunden und einzigstes oder wenn nciht gefunden, also am ende, und sonst keine vorhanden
           
           if( ((bMerkerlisteKopieren==true && anzSammelpoi==1 ) || (bMerkerlisteKopieren==false && anzSammelpoi==0) || iMerkerlisteAnzahl==0 )){
           
            
            if(bMerkerlisteKopieren==false | iMerkerlisteAnzahl==0)
                Sammelpoiid=arrMerkerliste[iMerkerlisteAnzahl][22];
            
            
            if(!(bMerkerlisteKopieren==true && anzSammelpoi==1 && arrMerkerliste[iMerkerlisteAnzahl-1][22]==Sammelpoiid)){ //Eventuell letztes vorgerückt
            
                if(Sammelpoiid!=argPoiId){
            
                if(document.getElementById(Sammelpoiid)!=null){
                    div=document.getElementById(Sammelpoiid).parentNode; //Das elternelemnt holen 
                    
                    if(div!=null){
                    div.removeChild(document.getElementById(Sammelpoiid));
				    if(document.getElementById("m"+Sammelpoiid)!=null)
				    document.getElementById("m"+Sammelpoiid).id=Sammelpoiid;
                    }
                }
                
               } 
            }
                       
           }
           
           //Enzelpoi
           
           
           
           if(document.getElementById(argPoiId)!=null){
                div=document.getElementById(argPoiId).parentNode; //Das elternelemnt holen 
                
                if(div!=null){
                div.removeChild(document.getElementById(argPoiId));
                if(document.getElementById("m"+argPoiId)!=null)
				document.getElementById("m"+argPoiId).id=argPoiId;
                }
            }
            
        reisetagebuchUebersichtfuellen();
        
        //
            
            Merkerlistebutton();
    }
    
    
    function isTourinMerkerliste(argTourid){
    
     var TourinMerkerliste = false;
        
         // Herausfinden ob der Eintrag schon in der Merkerliste vorhanden ist
        
        for(var i = 0; i<iMerkerlisteTourAnzahl; i++){
            if(arrMerkerlisteTour[i][0]==argTourid){
                TourinMerkerliste = true;
                //DelMerkerliste(arrMerkerliste[i][20]);
                break;
            }
        }
        
        return TourinMerkerliste;
    
    
    }
    
    
    
    function AddMerkerlisteTour(TourId, TourName, KatId){
    
    
        if(TourId>0){            
            if(!isTourinMerkerliste(TourId)){
                //22. Eintrag=sammelpoiid, nötig für löschen der markierung in der karte
                arrMerkerlisteTour[iMerkerlisteTourAnzahl] = new Array(TourId, TourName, KatId);
                iMerkerlisteTourAnzahl++;
             
	        tourgemerkt="<img style='left:0px; top:0px; position:absolute; width:20px; height:20px;' src='/images/haken.gif'>";
            document.getElementById('Tourgemerkt').innerHTML=tourgemerkt;
      
	        }
            document.getElementById('spanPoiAnzahl').innerHTML = iMerkerlisteAnzahl+iMerkerlisteTourAnzahl;
            //showReiseplaner(true);
            reisetagebuchUebersichtfuellen();
      
        }
        else
            alert("Es ist keine Tour ausgewählt.");
            
            Merkerlistebutton();
    }
    
    function DelMerkerlisteTour(argTourId){
       
        var bMerkerlisteKopieren = false;
        for(var i = 0; i<(iMerkerlisteTourAnzahl-1); i++){
            if(arrMerkerlisteTour[i][0]==argTourId){
                bMerkerlisteKopieren = true;
            }
            
            // Wenn die zu löschende TourId = die Tourid des Arrays ist werden alle nachfolgenden Tourids des Arrays eine Position nach vorne gerückt
            if(bMerkerlisteKopieren==true){
                arrMerkerlisteTour[i] = new Array(arrMerkerlisteTour[(i+1)][0], arrMerkerlisteTour[(i+1)][1]);
            }
        }
        
        if(argTourId==currentTourId){
            tourgemerkt="";
            document.getElementById('Tourgemerkt').innerHTML=tourgemerkt;
        }
        
        iMerkerlisteTourAnzahl--;
        document.getElementById('spanPoiAnzahl').innerHTML = iMerkerlisteAnzahl+iMerkerlisteTourAnzahl;
        reisetagebuchUebersichtfuellen();
        
        Merkerlistebutton();
    }
    
    
    // Zeigt die Tourkategorie in einer Selectbox an, abhängig von der tour--> wird nicht mehr verwendet
    function ShowKatNachTour(argTourId)
    {
    //debugger;
        var strKatIdTmp="";
        var strSelectKatId="";
        var strTourauswahl = "<select onchange='javascript:ShowTourNachKat(this.value);' style='width:200px;'>";
        var strSelected = "";
        strTourauswahl += "<option value='region'>--Alle Touren--</option>";
        arrTourNachRegion = bubbleSort(arrTourNachRegion, 4)
        for(var i = 0; i<arrTourNachRegion.length; i++){
            if(arrTourNachRegion[i][2]==argTourId)
                strSelectKatId=arrTourNachRegion[i][3]
        }
        for(var i = 0; i<arrTourNachRegion.length; i++){
            if(currentRegionId == arrTourNachRegion[i][1] || currentRegionId=="alle"){
                 if(strKatIdTmp!=arrTourNachRegion[i][3]){  
                    if(strSelectKatId == arrTourNachRegion[i][3]){
                        if(arrTourNachRegion[i][2]==argTourId){
                            strSelected = " selected";
                            strTourauswahl += "<option value='"+arrTourNachRegion[i][3]+"'"+strSelected+">"+arrTourNachRegion[i][4]+"</option>";
                        }
                    }
                    else{
                        strSelected = "";
                        strTourauswahl += "<option value='"+arrTourNachRegion[i][3]+"'"+strSelected+">"+arrTourNachRegion[i][4]+"</option>";
                        strKatIdTmp=arrTourNachRegion[i][3];
                    }
                }                        
            }
        }
        strTourauswahl += "</select>";
	    document.getElementById("TourKategorieAuswahlDiv").innerHTML=strTourauswahl;
	}
 
  // Zeigt die Touren in einer Selectbox an, abhängig von der tourkategorie
    function ShowTourNachKat(argKatId)
    {
        //if(argKatId=="region"){
          //  var strTourauswahl = "<select onchange='javascript:setTour(this.value);javascript:ShowKatNachTour(this.value);' style='width:300px;'>";
        //}
        //else{
            var strTourauswahl = "<select onchange='javascript:setTour(this.value);' style='width:300px;'>";
        //}
        //if(argKatId != currentKatId && argKatId!="alle" || argKatId == "region"){
          //  strTourauswahl += "<option value='leer' selected>---</option>";
        //}
        var strSelected = "";
        var bErsteTourInListe = false;
        var strSetTourId = "";
        var bKeinSetTour = false;
        arrTourNachRegion = bubbleSort(arrTourNachRegion, 0)
        
        if(argKatId == "region"){
        var strTourIdTmp="";
            for(var i = 0; i<arrTourNachRegionId.length; i++){
                if(currentRegionId == arrTourNachRegion[i][1]){
                    if(strTourIdTmp != arrTourNachRegion[i][2]){
                        strSelected = "";
                        strTourauswahl += "<option value='"+arrTourNachRegion[i][2]+"'"+strSelected+">"+arrTourNachRegion[i][0]+"</option>";
                        if(bErsteTourInListe == false)
                        {
                            strSetTourId =arrTourNachRegion[i][2];
                            bErsteTourInListe = true;
                        }
                        strTourIdTmp = arrTourNachRegion[i][2];
                    }
                }
            }    
        }
        else{
            for(var i = 0; i<arrTourNachRegion.length; i++){
                if(argKatId == arrTourNachRegion[i][3]){
                    if(currentRegionId == arrTourNachRegion[i][1]){
                        if(arrTourNachRegion[i][2]==currentTourId)
                        {
                            strSelected = " selected";
                            bKeinSetTour=true;
                        }
                        else
                        {
                            strSelected = "";
                        }
                        strTourauswahl += "<option value='"+arrTourNachRegion[i][2]+"'"+strSelected+">"+arrTourNachRegion[i][0]+"</option>";
                        if(bErsteTourInListe == false)
                        {
                            strSetTourId =arrTourNachRegion[i][2];
                            bErsteTourInListe = true;
                        }
                   }
                }
            }
        }
        strTourauswahl += "</select>";
	    document.getElementById("TourenAnzeigeDiv").innerHTML=strTourauswahl;
	    currentKatId=argKatId;
	    if(strSetTourId!="" && bKeinSetTour ==false)
	        setTour(strSetTourId);
    }
 
 
  // Zeigt die Touren in einer Selectbox an, abhängig von der tourkategorie
    function ShowKatNachRegion(argRegionId)
    {
    //debugger;
        var strKatIdTmp="";
        var strSelectKatId = "";
        if(argRegionId == "alle")
            var strTourauswahl = "<select onchange='javascript:ShowTouren(this.value);' style='width:200px;'>";
        else
            var strTourauswahl = "<select onchange='javascript:ShowTourNachKat(this.value);' style='width:200px;'>";
        if(argRegionId != currentRegionId && argRegionId!="alle"){
            strTourauswahl += "<option value='region' selected>Alle Touren</option>";
        }
        var strSelected = "";
        //for(var i = 0; i<arrTourNachRegion.length; i++){
         //   if(arrTourNachRegion[i][2]==currentTourId && arrTourNachRegion[i][1] == argRegionId)
          //      strSelectKatId=arrTourNachRegion[i][3]
       // }
        var TempArray = new Array();
        arrTourNachRegion = bubbleSort(arrTourNachRegion, 3)
        for(var i = 0; i<arrTourNachRegion.length; i++){
            if(argRegionId == arrTourNachRegion[i][1] || argRegionId=="alle"){
                if(strKatIdTmp!=arrTourNachRegion[i][3]) {   
                    TempArray.push(arrTourNachRegion[i]);
                    strKatIdTmp = arrTourNachRegion[i][3];
                }   
            }
        }
        TempArray = bubbleSort(TempArray, 4)
        for(var i = 0; i<TempArray.length; i++){
          //  if(strSelectKatId==TempArray[i][3]){
            //    strSelected = " selected";
             //   strTourauswahl += "<option value='"+TempArray[i][3]+"'"+strSelected+">"+TempArray[i][4]+"</option>";
           // }
           // else{
                strSelected = "";
                strTourauswahl += "<option value='"+TempArray[i][3]+"'"+strSelected+">"+TempArray[i][4]+"</option>";
           // }
        }

        if(argRegionId == "alle"){
            strTourauswahl += "<option value='alle' selected>Alle Touren</option>";
        }
        strTourauswahl += "</select>";
	    document.getElementById("TourKategorieAuswahlDiv").innerHTML=strTourauswahl;
	    currentRegionId=argRegionId;
    }
 
    
      
    
  // Zeigt die Touren in einer Selectbox an, abhängig von der tourkategorie
    function ShowTourenNachRegion(argRegionId)
    {
        var strTourIdTmp="";
        var bFund = false;
        var bErsteTourInListe = false;
        var strSetTourId = "";
        var bFirst = true;
        //if(argRegionId == "alle")
            var strTourauswahl = "<select onchange='javascript:setTour(this.value);' style='width:300px;'>";
       // else
         //   var strTourauswahl = "<select onchange='javascript:setTour(this.value);javascript:ShowKatNachTour(this.value);' style='width:300px;'>";
        
        var strSelected = "";
          
        arrTourNachRegion = bubbleSort(arrTourNachRegion, 0)
        

        for(var i = 0; i<arrTourNachRegionId.length; i++){
            if(argRegionId == arrTourNachRegion[i][1] || argRegionId=="alle"){
                if(strTourIdTmp != arrTourNachRegion[i][2]){
                    
                    if(bFirst){
                        bFirst = false;
                        strTourauswahl += "<option value='' selected>--Bitte wählen Sie eine Tour--</option>";
                    }
                    
                    strTourauswahl += "<option value='"+arrTourNachRegion[i][2]+"'"+strSelected+">"+arrTourNachRegion[i][0]+"</option>";
                    strTourIdTmp = arrTourNachRegion[i][2];
                    bFund = true;
                    if(bErsteTourInListe == false)
                    {
                        strSetTourId =arrTourNachRegion[i][2];
                        bErsteTourInListe = true;
                    }
                }
            }
        }
         if (!bFund){
            if( parseInt(argRegionId) > 0 )
                strTourauswahl += "<option value='' selected>---Dieser Region ist keine Tour zugeordnet</option></select>";
            else
                strTourauswahl += "<option value='' selected>---Es ist keine Region zugeordnet</option></select>";
         }
	    document.getElementById("TourenAnzeigeDiv").innerHTML=strTourauswahl;
    }
 
    
    function bubbleSort(MyArray, nDim)
    {
        var PaarSortiert;
        var temp;
        
        do
        {
            PaarSortiert = true; 
            for(var i = 0; i<MyArray.length-1; i++){
                if (MyArray[i][nDim] > MyArray[i + 1][nDim])
                { 
                    temp = MyArray[i];
                    MyArray[i] = MyArray[i + 1];
                    MyArray[i + 1] = temp;

                    PaarSortiert = false;
                }  
            }
         } while (!PaarSortiert);
         
         return MyArray;
    }

    
    //Die Karte wird auf die Region geZentert
    function SetCenterRegion(sRegionID)
    {
      var Grenzen= new Array(0,0,0,0);
        for (var nI=1; nI < arrRegionKoordId.length; nI++)
        {
            if (sRegionID == arrRegionKoordId[nI][0])
            {
            
             var max_x=parseInt(arrRegionKoordId[nI][5]);
            var max_y=parseInt(arrRegionKoordId[nI][6]);
            Grenzen[0] = arrRegionKoordId[nI][3]-500;
            Grenzen[1] = arrRegionKoordId[nI][4]-500;
            Grenzen[2] = max_x+500;
            Grenzen[3] = max_y+500;

            var nMaxW = Grenzen[2] - Grenzen[0];
            var nMaxH = Grenzen[3] - Grenzen[1];

            var nMeterX = (Grenzen[2] - Grenzen[0]) / 100;//theMap.viewportHeight;
            var nMeterY = (Grenzen[3] - Grenzen[1]) / 100;//theMap.viewportWidth;
            var MassSt=0;

            if (nMeterX > nMeterY)
                MassSt = Math.round(nMeterX / (13.229 / 50000));
            else
                MassSt = Math.round(nMeterY / (13.229 / 50000));

            var nZoom=8;
            if (MassSt < 5000000) nZoom = 8;
            if (MassSt < 3000000) nZoom = 7;
            if (MassSt < 1500000) nZoom = 6;
            if (MassSt < 750000) nZoom = 5;
            if (MassSt < 300000) nZoom = 4;
            if (MassSt < 100000) nZoom = 3;
            if (MassSt < 50000) nZoom = 2;
            if (MassSt < 25000) nZoom = 1;
            if (MassSt < 10000) nZoom = 0;
            
            
                 theMap.zoomlevel=nZoom;
                theMap.ZoomIn();
                theMap.SetCenter(arrRegionKoordId[nI][1], arrRegionKoordId[nI][2]);
                break;
            }
        }
    
    }
    
     // Zeigt die Touren in einer Selectbox an, abhängig von der tourkategorie
    function ShowTouren(argTourKategorie)
    {
        usermodified=true;
        
        var bFund = false;
        var bErsteTourInListe = false;
        var bKeinSetTour = false;
        var strTourauswahl = "<select onchange='javascript:setTour(this.value);' style='width:300px;'>";
        //if(argTourKategorie != arrTourId[currentTourId][6] && argTourKategorie!="alle")
          //  strTourauswahl += "<option value='' selected>--Bitte wählen Sie eine Tour--</option>";
        
        var strSelected = "";
        var strSetTourId = "";
        for(var i = 0; i<arrTourNurId.length; i++){
            if(argTourKategorie == arrTourId[arrTourNurId[i]][6] || argTourKategorie=="alle"){
                
                bFund = true;
                if(arrTourNurId[i]==currentTourId){
                    strSelected = " selected";
                    bKeinSetTour =true;
                }
                else
                {
                    strSelected = "";
                }
                debugger;
                strTourauswahl += "<option value='"+arrTourNurId[i]+"'"+strSelected+">"+arrTourId[arrTourNurId[i]][0]+"</option>";
                if(bErsteTourInListe == false)
                {
                    strSetTourId =arrTourNurId[i];
                    bErsteTourInListe = true;
                }
            }
        }
        if (!bFund)
            strTourauswahl += "<option value='' selected>---</option></select>";
        
	    document.getElementById("TourenAnzeigeDiv").innerHTML=strTourauswahl;
	    if(strSetTourId!="" && bKeinSetTour==false)
	        setTour(strSetTourId);
    }
    
    function AufTourZentrieren(){
        //setTour(currentTourId);
        if( currentTourId > 0 )
            theMap.SetCenter(arrTourId[currentTourId][7],arrTourId[currentTourId][8]);
        else
            alert("Es ist keine Tour ausgewählt.");
    }
    
    function setTourDetail()
    {
        usermodified=true;
        
        try{
            document.getElementById('TourDetailUeberschrift').innerHTML=splitText(arrTourId[currentTourId][0],42);
            if(arrTourId[currentTourId][1]!="")
                document.getElementById('TourDetailBeschreibung').innerHTML='<i>'+arrTourId[currentTourId][1]+'</i><br>'+arrTourId[currentTourId][2]+'<br><br>';
            else
                document.getElementById('TourDetailBeschreibung').innerHTML=arrTourId[currentTourId][2]+'<br><br>';
        }
        catch(e){}
    }
    
    
    function splitText(sText, nUmbruch)
    {
        var sTextZeile = "";
        var sTextTeile = sText.split(" ");
        var sHTMLText = "";


        for(var nI =0; nI < sTextTeile.length; nI++)
        {
            sTeil = sTextTeile[nI];
            if ((sTextZeile.length + sTeil.length) > nUmbruch)
            {
                sHTMLText += sTextZeile + "<br>";
                sTextZeile = sTeil + " ";
            }
            else
                sTextZeile += sTeil + " ";
        }

        sHTMLText += sTextZeile;
        
        return sHTMLText;
    }
    
    function TagebuchAnzeigen()
    {
        //showReiseplaner(true);
        reisetagebuchUebersichtfuellen();
        var newState = (document.getElementById('reisetagebuchUebersicht').style.visibility =='visible') ? 'hidden' : 'visible';
        var newDisplay = (document.getElementById('reisetagebuchUebersicht').style.display =='block') ? 'none' : 'block';
        
        document.getElementById('reisetagebuchUebersicht').style.visibility = newState;
        document.getElementById('reisetagebuchUebersicht').style.display = newDisplay;
    }
    
    function VCardAnzeigen()
    {
		if(document.getElementById('divVisitenkarte').style.visibility=='visible'){
			document.getElementById('divVisitenkarte').style.visibility='hidden';
			document.getElementById("poiImage").style.visibility = 'hidden';
            document.getElementById("btnBuchenImg").style.visibility = 'hidden';
            document.getElementById("btnInfosImg").style.visibility = 'hidden';
            document.getElementById("POIBeschreibung").style.visibility = 'hidden';
            document.getElementById("VisitenkartenPDF").style.visibility = 'hidden';
		}
		else{
			document.getElementById('divVisitenkarte').style.visibility='visible';
			document.getElementById("poiImage").style.visibility = 'hidden';
			document.getElementById("POIBeschreibung").style.visibility = 'hidden';
    	}
	}
    
    // Schaltet eine neue Tour als aktuelle tour
    function setTour(argTourId){
    Auswertung("TOUR",argTourId,3);
        currentTourId = argTourId;
        // Nicht jeder hat eine Checkbox zum ausblenden der tour
        try{
            document.getElementById("ladePic").style.display = "block";
            
            theMap.bZoom = true;
            
            if(document.getElementById("chkTourAusblenden").checked==true){
                document.getElementById("chkTourAusblenden").checked = false;
                if(bIsIE==true){
                    try{
                        document.getElementById("tour").style.visibility = "visible";
                    }
                    catch(Exception){}
                }
                else{
                    try{
                        document.getElementById("canvas").style.visibility = "visible";
                    }
                    catch(Exception){}
                }
            }
        }
        catch(Exception){}
        try{
            document.getElementById("route").innerHTML="";
        }
        catch(err){}
        
        // Zwischen und startpunkte löschen
        DeleteStartpoint();
        DeleteEndpoint();
        DeletePoints();
        
        setTourDetail();
//        if(document.getElementById("TourRegionAuswahl").value =="alle")
//        {
//            try
//            {
//                if(document.getElementById("TourKategorieAuswahl").value =="alle")
//                    ShowTouren("alle");
//                else
//                    ShowTouren(arrTourId[currentTourId][6]);
//            }
//            catch(Exception){}
//        }
        /*try
        {
            if(document.getElementById("TourKategorieAuswahl").value!="alle")
                ShowTouren(arrTourId[argTourId][6]);
        }
        catch(Exception){}
        */
//        updateEichung();
//        if(document.getElementById("chkTourpoiZeigen").checked==true)
        theMap.LoadTour(currentTourId);

            theMap.checkTilesPoikatChange();
            theMap.checkTilesTourChange(currentTourId);
        if( currentTourId > 0 )    
            theMap.SetCenter(arrTourId[currentTourId][7],arrTourId[currentTourId][8]);
            
            if(isTourinMerkerliste(currentTourId))
            tourgemerkt="<img style='left:0px; top:0px; position:absolute; width:20px; height:20px;' src='/images/haken.gif'>";
            else
            tourgemerkt="";
            document.getElementById('Tourgemerkt').innerHTML=tourgemerkt;
          
          closeInfo();  
    }
    
    function showScrolling(){
        var x,y;
        if (self.pageYOffset) // all except Explorer
        {
	        x = self.pageXOffset;
	        y = self.pageYOffset;
        }
        else if (document.documentElement && document.documentElement.scrollTop)
	        // Explorer 6 Strict
        {
	        x = document.documentElement.scrollLeft;
	        y = document.documentElement.scrollTop;
        }
        else if (document.body) // all other Explorers
        {
	        x = document.body.scrollLeft;
	        y = document.body.scrollTop;
        }
        var arrRetval = new Array(x, y);
        return arrRetval;
    }
    
    // visibility: boolean
    // categoryid: int
    function setPOICategoryAlle(arrCategoryId, visibility)
    {
        var theVisibility = "hidden";
        if (visibility)
            theVisibility="visible";
        for(idx = 0; idx<arrCategoryId.length; idx++){
            var test = arrCategoryId[idx];
            poiCatVisibilityMap[test]=theVisibility;
            
            var innerDiv = document.getElementById("innerDiv");
            var divs = innerDiv.getElementsByTagName("div");
            for (i = 0; i < divs.length; i++)
            {
                var images = divs[i].getElementsByTagName("img");
                for (j = 0; j < images.length; j++)
                {
                    var cat = images[j].getAttribute("cat");
                    if (cat == test)
                    {
                        images[j].style.visibility=theVisibility;
                    }
                }
            }
        }
    }        
    
    function isNumeric(sText)
    {
        var ValidChars = "0123456789.-";
        var IsNumber=true;
        var Char;

        for (i = 0; i < sText.length && IsNumber == true; i++) 
        { 
            Char = sText.charAt(i); 
            if (ValidChars.indexOf(Char) == -1) 
            {
                IsNumber = false;
            }
        }
       return IsNumber;   
   }
   
   function PoiAusdrucken(){
   		var url = "PdfMerkerListe.aspx?PoiId="+iPoiIdAktuell+"&wms="+escape(theMap.m_wmsBase)+"&lmin="+theMap.XMinLeft + " " + theMap.YMinLeft +"&lmax="+theMap.XMaxLeft + " " + theMap.YMaxLeft+"&tmin="+theMap.XMinTop + " " + theMap.YMinTop+"&tmax="+theMap.XMaxTop + " " + theMap.YMaxTop;
    	wndMerkerliste = winOpen(url,"wndMerkerliste",400,300,"status=no,toolbar=no,menubar=no,location=no,resizable=no,dependent=yes");
    }

    var wndMerkerliste = null; //Fenster für die Merkerliste
    
    function winOpen(theURL, Name, popW, popH, props)
	{
		var winleft = (screen.width - popW) / 2;
		var winUp = (screen.height - popH) / 2;
		winProp = 'width='+popW+',height='+popH+',left='+winleft+',top='+winUp+','+props
		Win = window.open(theURL, Name, winProp)
		if (parseInt(navigator.appVersion) >= 4)
		{
			if ( Win.window.focus )
				Win.window.focus();
		}
		return Win;
	}
   
    function setCopyright()
    {
        // nichts
    }


    function toggleMap(mapname, levels)
    {
        center = theMap.getCenter();
        map = mapname;
        maxZoomLevel = levels;
        zoomlevel=0;
        toggleZoom();
        updateEichung();
        updateZoomButtons();
    }
        
    
    function beginZoom()
    {
        var innerDiv = document.getElementById("innerDiv");
        var divs = innerDiv.getElementsByTagName("div");
        var i=0;
        for (i = 0; i < divs.length; i++) {
            var imgs = divs[i].getElementsByTagName("img");
            var w = stripPx(imgs[0].style.width)-15;
            var h = stripPx(imgs[0].style.height)-15;
            
            if (w > 0)
            {
                imgs[0].style.width=w+"px";
                imgs[0].style.height=h+"px";
            }
        }

        zoomTimer = zoomTimer+1;
        if (zoomTimer < 10)
        {
            setTimeout("beginZoom();",100);
        }
    }

    function toggleZoom()
    {
        updateZoomButtons();
        var innerDiv = document.getElementById("innerDiv");
        var imgs = innerDiv.getElementsByTagName("div");
        while (imgs.length > 1)
        {
            innerDiv.removeChild(imgs[0]);
        }        
    }

    function DeletePointer()
    {
        var innerDiv = document.getElementById("innerDiv");
        var imgs = innerDiv.getElementsByTagName("img");
        var i = 0;
        while (i<imgs.length)
        {
            if(imgs[i].id=="pointer.gif")
                innerDiv.removeChild(imgs[i]);
            i++;
        }        
    }
    

    function DeleteStartpoint()
    {
        theMap.startPoint = new Array(0,0);
        var innerDiv = document.getElementById("innerDiv");
        var imgs = innerDiv.getElementsByTagName("img");
        
        var i = 0;
        while (i<imgs.length)
        {
            if(imgs[i].id=="start.gif")
                innerDiv.removeChild(imgs[i]);
            i++;
        }
        
        try{
            document.getElementById("route").innerHTML="";
        }
        catch(err){}
        //document.getElementById("ContainerTournavigation").style.backgroundImage = "url('images/routing.jpg')";       
    }
    
    function DeleteZwischenpoint()
    {
        var liste = document.getElementById("zwliste");
        var idx = liste.selectedIndex;
        if (idx == 0)
            return;
        var idOfItem = "zwstop"+liste.options[idx].id;
        liste.remove(idx); 
        theMap.zwischenpunkte.removeAt(idx);

        var innerDiv = document.getElementById("innerDiv");
        var imgs = innerDiv.getElementsByTagName("img");
        var i = 0;
        while (i<imgs.length)
        {
            if(imgs[i].id==idOfItem)
                innerDiv.removeChild(imgs[i]);
            i++;
        }
    }
    
    function gotoanchor(p){
        window.location.href="#p"+p;
    }

    function DeleteEndpoint()
    {
        theMap.endPoint = new Array(0,0);
        var innerDiv = document.getElementById("innerDiv");
        var imgs = innerDiv.getElementsByTagName("img");
        var i = 0;
        while (i<imgs.length)
        {
            if(imgs[i].id=="ziel.gif")
                innerDiv.removeChild(imgs[i]);
            i++;
        }
        
        try{
            document.getElementById("route").innerHTML="";
        }
        catch(err){}
        
        //document.getElementById("ContainerTournavigation").style.backgroundImage = "url('images/routing.jpg')";     
    }
    
    function DeletePoints()
    {
        var liste = document.getElementById("zwliste");
       
        var iMax = liste.length-1;
        
        while(liste.length > 1)
        {
            liste.remove(1); 
            theMap.zwischenpunkte.removeAt(1);
        }    
        theMap.ZwpCounter = 1;
        
        var innerDiv = document.getElementById("innerDiv");
        var imgs = innerDiv.getElementsByTagName("img");
        i=0
        while(i<imgs.length)
        {
            if(imgs[i].id.match(/zwstop/))
            {
                innerDiv.removeChild(imgs[i]);
                iMax--;
                if( iMax == 0 )
                    break;
            }
            else
            {
                i++;
            }
        }    
    }
    
    function toggleOverview()
    {
        var uebersichtskarte = document.getElementById("uebersichtskarte");
        if (uebersichtskarte.style.visibility == "visible")
        {
            uebersichtskarte.style.visibility="hidden";
            ButtonKlickHintergrund("bgUebersichtskarte", "images/uebersichtskarte.gif");
            ButtonKlickText("txtUebersichtskarte", "ausklappen");
        } else {
            uebersichtskarte.style.visibility="visible";
            ButtonKlickHintergrund("bgUebersichtskarte", "images/uebersichtskarte_00.gif");
            ButtonKlickText("txtUebersichtskarte", "einklappen");
            theMap.updateUebersichtskarte();
        }
    }
    
    function measureDistanceClick(clickLeft,clickTop)
    {
        if (!event) event = window.event;

        var innerDiv = document.getElementById("innerDiv");
        var top1 = -stripPx(innerDiv.style.top);
        var left1 = -stripPx(innerDiv.style.left);

        var outerDiv = document.getElementById("outerDiv");
        var clickY = -stripPx(outerDiv.offsetTop)+clickTop;
        var clickX = -stripPx(outerDiv.offsetLeft)+clickLeft;

        var xneu = left1+clickX;
        var yneu = top1+clickY;
        
        var dist1 = document.getElementById("dist1");
        var dist2 = document.getElementById("dist2");
        
        var ptToPxFactor = 0.75;
        if (measureClickNum == 0)
        {
            dist1.from.x = xneu*ptToPxFactor;
            dist1.from.y = yneu*ptToPxFactor;
            dist2.from.x = xneu*ptToPxFactor;
            dist2.from.y = yneu*ptToPxFactor;

            dist1.to.x = xneu*ptToPxFactor;
            dist1.to.y = yneu*ptToPxFactor;
            dist2.to.x = xneu*ptToPxFactor;
            dist2.to.y = yneu*ptToPxFactor; 
            measureClickNum++;
            measureStartX = xneu;
            measureStartY = yneu;
        } else {
            dist1.to.x = xneu*ptToPxFactor;
            dist1.to.y = yneu*ptToPxFactor;
            dist2.to.x = xneu*ptToPxFactor;
            dist2.to.y = yneu*ptToPxFactor; 
            
            var distText = document.getElementById("distText");            
            var dx = xneu - stripPx(dist1.from.x)/ptToPxFactor;
            var dy = yneu - stripPx(dist1.from.y)/ptToPxFactor;
            var entf = Math.round(Math.sqrt(Math.abs(dx*meterX*dx*meterX)+Math.abs(y*meterY*dy*meterY)));
            if (entf < 1000)
            {
                distText.innerHTML = entf+" m";
            }
            if (entf >= 1000)
            {
                distText.innerHTML = Math.round(entf/10)*10/1000+" km";
            }
            distText.style.top = yneu+20;
            distText.style.left = xneu;

            var distText2 = document.getElementById("distText2");            
            distText2.innerHTML = distText.innerHTML;
            distText2.style.top = yneu+21;
            distText2.style.left = xneu+1;
            
            
            /*var distOval = document.getElementById("dist3");            
            dx = measureStartX-xneu;
            dy = measureStartY-yneu;
            distOval.style.left = measureStartX-dx;
            distOval.style.top = measureStartY-dy;
            distOval.style.width=Math.abs(dx*2)+"px";
            distOval.style.height=Math.abs(dy*2)+"px";*/
            
        }
        dist1.style.visibility="visible";        
        dist2.style.visibility="visible";        
    }
    
    function toggleMeasureDistance()
    {
        measureDistanceMode = !measureDistanceMode;
        measureClickNum=0;
    }
        
    function toggleDim()
    {
        theMap.dimmed = !theMap.dimmed;
        
        var outerDiv = document.getElementById("outerDiv");
        if (theMap.dimmed)
        {
            outerDiv.style.backgroundColor="#000000";
            //ButtonKlick('imgDimmen', 'images/lampe_00.gif');
            
        } else {
            outerDiv.style.backgroundColor="#dddddd";
            //ButtonKlick('imgDimmen', 'images/lampe.gif');
        }

        var innerDiv = document.getElementById("innerDiv");
        var divs = innerDiv.getElementsByTagName("div");
        var divNum = 0;
        while (divNum < divs.length)
        {    
            var imgs = divs[divNum].getElementsByTagName("img");
            if (imgs.length > 0)
            {
                if (!theMap.dimmed)
                {
                    imgs[0].style.filter = ""; 
                    imgs[0].style.opacity = 1; 
                }
                else
                {
                    imgs[0].style.opacity = "."+dimopacity; 
                    imgs[0].style.filter = "Alpha(opacity="+dimopacity+", style=0)"; 
                }
            }
            divNum++;
        }
    }

    function setInnerDivSize(width, height) {
        var innerDiv = document.getElementById("innerDiv")
        innerDiv.style.width = width
        innerDiv.style.height = height
    }
    
    function init() {
        
        var winW = 630, winH = 460;
        if (parseInt(navigator.appVersion)>3) {
         if (navigator.appName=="Netscape") {
          winW = window.innerWidth;
          winH = window.innerHeight;
         }
         if (navigator.appName.indexOf("Microsoft")!=-1) {
          winW = document.documentElement.offsetWidth;
          winH = document.documentElement.offsetHeight;
         }
        }

        setInnerDivSize('2000px', '1400px');
        var outerDiv = document.getElementById("outerDiv");
        outerDiv.onmousedown = startMove;
        outerDiv.onmousemove = processMove;
        outerDiv.onmouseup = stopMove;
        outerDiv.ondragstart = function() { return false; }

/*        var visitenkarte = document.getElementById("visitenkarte");
        visitenkarte.onmousedown = function() { return false; }
        visitenkarte.onmousemove = function() { return false; }
        visitenkarte.onmouseup = function() { return false; }
        visitenkarte.ondragstart = function() { return false; }*/
        

             
        window.onresize = windowResize; 
       
        
        updateEichung();
        checkTiles();
        updateServerTags();  
        updateZoomButtons();
        
        initMenue();        
        //theMap.showFlaechen();
    }
    
    function updateEichung()
    {
        loadXMLDoc("./GetKachel.aspx?getMapData=1&map="+map+"&level="+zoomlevel);

    }
    
    function stripPx(value) {
        if (isNumeric(value))
            return parseFloat(value);
        if (value == "") 
            return 0;
        return parseFloat(value.substring(0, value.length - 2));
    }

    function startMove(event) {
        // notwendig für IE
        if (!event) event = window.event;
        dragStartLeft = event.clientX;
        dragStartTop = event.clientY;
        if (!measureDistanceMode)
        {
            var innerDiv = document.getElementById("innerDiv");
            innerDiv.style.cursor = "move";
            top = stripPx(innerDiv.style.top);
            left = stripPx(innerDiv.style.left);
            dragging = true;
        } else {
            if (measureClickNum == 0)
            {
                measureDistanceClick(dragStartLeft,dragStartTop);
            }
            else
            {
                measureDistanceMode=false;
                var dist1 = document.getElementById("dist1");
                var dist2 = document.getElementById("dist2");
                var distText = document.getElementById("distText");
                distText.innerHTML="";
                var distText2 = document.getElementById("distText2");
                distText2.innerHTML="";
                dist1.style.visibility="hidden";        
                dist2.style.visibility="hidden";        
            }
        }
        return false;
    }
    
    function TestPOILoad()
    {
        loadXMLDoc("./GetVisitenkarte.aspx?poiId=35137,50696,36429,36439&spracheId=0");
    
    }
    
    function getFilteredPOI(fid){
    
        filterid=fid;
        usermodified=false;
        theMap.checkTilesPoikatChange();
    
    }
    
    function POIClick(event) {        
        if (!event) event = window.event;
        var visitenkarte = document.getElementById("divVisitenkarte");
        var srcElementId = "";
        if (!event.srcElement)
            srcElementId = event.target.id;
        else
            srcElementId = event.srcElement.id;
      
		loadXMLDoc("./GetVisitenkarte.aspx?poiId="+srcElementId+"&spracheId="+strSpracheId);

//        if (srcElementId == lastClickedItem)
//        {
//            if (visitenkarte.style.visibility == "visible")
//            {
//                visitenkarte.style.visibility="hidden";
//            } else {
//                visitenkarte.style.visibility="visible";
//            }
//        }
//        else
//        {
//            visitenkarte.style.visibility="visible";
//        } 
//        
//        iPoiIdAktuell = srcElementId;
//        
//        var outerDiv = document.getElementById("outerDiv");
//        var x = event.clientX;//-outerDiv.offsetLeft;
//        var y = event.clientY;//-outerDiv.offsetTop;
////        visitenkarte.style.left=x+"px";
////        visitenkarte.style.top=y+"px";
//        lastClickedItem = srcElementId;
//        //if (!event) event = window.event;
//        //dragStartLeft = event.clientX;
//        //dragStartTop = event.clientY;
//        //updateServerTags();
//        //document.form1.submit();
//        return false;
    }    
    
    function processMove(event) {
        
        if (!event) event = window.event; // für IE
        if (measureDistanceMode)
        {
            if (measureClickNum==1)
            {
                measureDistanceClick(event.clientX,event.clientY);
            }
        } else {
            var innerDiv = document.getElementById("innerDiv");
            if (dragging) {
               innerDiv.style.top = parseFloat(top) + (event.clientY - dragStartTop)+"px";
               innerDiv.style.left = parseFloat(left) + (event.clientX - dragStartLeft)+"px";
               checkLeftTop();
               setTimeout("checkTiles();",10);
               var uebersichtskarte = document.getElementById("uebersichtskarte");
               theMap.updateUebersichtskarte();
            }
        }        
    }
    
    function stopMove() {
        var innerDiv = document.getElementById("innerDiv");
        innerDiv.style.cursor = "";
        dragging = false;
        checkTiles();
        updateServerTags();
    }
    
    function checkTiles() {
        //var fileNames = new Array("hotel4.gif","museum4.gif","parkplatz4.gif","sehenswuerdigkeit4.gif","theater4.gif");
        window.status = "Loading Tiles..."
        var visibleTiles = getVisibleTiles();
        var innerDiv = document.getElementById("innerDiv");
        var visibleTilesMap = {};
        for (i = 0; i < visibleTiles.length; i++) {
            var tileArray = visibleTiles[i];
            var tileName = "?ky=" + tileArray[0] + "&kx=" + tileArray[1]+"&level="+zoomlevel;
            visibleTilesMap[tileName] = true;
            var div = document.getElementById(tileName);
            if (!div) {
                div = document.createElement("div");
                var img = document.createElement("img");
                img.src = "GetKachel.aspx" + tileName+"&map="+map;
                img.style.position = "absolute";
                img.style.left = (tileArray[0] * tileSize) + "px";
                img.style.top = (tileArray[1] * tileSize) + "px";
                img.style.width = tileSize + "px";
                img.style.height = tileSize + "px";   
                img.style.zindex=10;                    
                if (!dimmed)
                {
                    img.style.filter = ""; 
                    img.style.backgroundColor="#eeeeee";                
                }
                else
                {
                    img.style.opacity = "."+dimopacity; 
                    img.style.filter = "Alpha(opacity="+dimopacity+", style=0)"; 
                    img.style.backgroundColor="#000000";
                }
                div.appendChild(img);

                var mapx1 = (tileArray[0] * tileSize);
                var mapy1 = (tileArray[1] * tileSize);
                var mapx2 = (tileArray[0] * tileSize)+tileSize;
                var mapy2 = (tileArray[1] * tileSize)+tileSize;
                
                var x1 = parseInt(mapx1 * meterX + links);
                var y1 = parseInt(mapy1 * meterY + unten);

                var x2 = parseInt(mapx2 * meterX + links);
                var y2 = parseInt(mapy2 * meterY + unten);
                var url = "./GetLayer.aspx?x1="+x1+"&y1="+y1+"&x2="+x2+"&y2="+y2+"&ky=" + tileArray[0] + "&kx=" + tileArray[1]+"&level="+zoomlevel+"&mx="+parseInt(meterX)+"&poiKatIds="+strPoiKatGewaehltGesamt+"&TourId="+currentTourId;//+"&TourPoiAnzeigen="+document.getElementById("chkTourpoiZeigen").checked;
                
                if(!usermodified)
                    url+="&filter="+filterid;
                
                loadXMLDoc(url);
                
                div.setAttribute("id", tileName);
                innerDiv.appendChild(div);
            }
        }

        var imgs = innerDiv.getElementsByTagName("div");
        for (i = 0; i < imgs.length; i++) {
            var id = imgs[i].getAttribute("id");
            if (id != "tour" && id != "route" && id!="tourpoints")
            {
                if (!visibleTilesMap[id]) {
                    innerDiv.removeChild(imgs[i]);
                    i--;
                }
            }
        }
        window.status = "Finished."
    }
    
  
	// visibility: boolean
	// categoryid: int
	function setPOICategory(categoryId, visibility)
	{
		var theVisibility = "hidden";
		if (visibility==true)
			theVisibility="visible";
		
		poiCatVisibilityMap[categoryId]=theVisibility;
		
		var innerDiv = document.getElementById("innerDiv");
		var divs = innerDiv.getElementsByTagName("div");
		for (i = 0; i < divs.length; i++)
		{
			var images = divs[i].getElementsByTagName("img");
			for (j = 0; j < images.length; j++)
			{
				var cat = images[j].getAttribute("name");
				if (parseInt(cat) == parseInt(categoryId))
				{
					images[j].style.visibility=theVisibility;
				}
			}
		}
	}        
  
    // blendet sämtliche POIs aus
    function PoiKatAusblenden(){
        document.getElementById("chkPoiKatAusblenden").checked = !document.getElementById("chkPoiKatAusblenden").checked;
        if(document.getElementById("chkPoiKatAusblenden").checked==true){
            strPoiKatGewaehltGesamt = "";
        }
        else{
            for(var i = 0; i<theMap.iAnzahlKategorien; i++){
                // String für die Sammelicons zusammenfügen, aufgrund dessen die POI neu geladen werden
                if(arrMenueKat[i][4]==true){
                    if(strPoiKatGewaehltGesamt=="")
                        strPoiKatGewaehltGesamt=arrMenueKat[i][1];
                    else
                        strPoiKatGewaehltGesamt += ";"+arrMenueKat[i][1];
                }
            }
        }
            
        theMap.menueAusklappen("");
        theMap.checkTilesPoikatChange();
        return false;
    }

    function PoiNeuwaehlen(argEinAus){
        usermodified=true;
        document.getElementById("ladePic").style.display = "block";
        
        strPoiKatGewaehltGesamt = "";
        bAlleAuswaehlenSichtbar = false;
        var j = 0;
        
        
        for(var i = 0; i<theMap.iAnzahlKategorien; i++){
            arrMenueKat[i][4] = argEinAus;
            setPOICategory(arrMenueKat[i][1],argEinAus);

            
            if(argEinAus)
            {
                bAlleAuswaehlenSichtbar = argEinAus;
                if(j==0)
                    strPoiKatGewaehltGesamt = arrMenueKat[i][1];
                else
                    strPoiKatGewaehltGesamt += ";"+arrMenueKat[i][1];
            }   
            j++;
        }                        
  
        Auswertung("POIKAT",strPoiKatGewaehltGesamt,3);
        theMap.menueAusklappen("");
        theMap.checkTilesPoikatChange();
        
        //loadPOIKatButton(argEinAus);
    }
    
    

    function TourpoiAnzeigen(){
    
        usermodified=true;
        //document.getElementById("chkTourpoiZeigen").checked = !document.getElementById("chkTourpoiZeigen").checked;
        theMap.TourOrte= !theMap.TourOrte
        
        if(theMap.TourOrte==0){
            document.getElementById('tourpoi').src='mapcontrol/images/test_tour_poi_0.png';
        }else{
            document.getElementById('tourpoi').src='mapcontrol/images/test_tour_poi_1.png';        
        }
        theMap.checkTilesPoikatChange();   
        
    }

    // Blendet die Tour aus
    function TourAusblenden(){
        document.getElementById("chkTourAusblenden").checked = !document.getElementById("chkTourAusblenden").checked;
        if(bIsIE == true){
            if(document.getElementById("chkTourAusblenden").checked==true){
                bMassstabGewaehlt = false;
                try{
                    document.getElementById("tour").style.visibility="hidden";
                }
                catch(Exception) {}
            }
            else{
                try{
                    document.getElementById("tour").style.visibility="visible";
                }
                catch(Exception){}
                
                if(bMassstabGewaehlt==true){
                    center = theMap.getCenter();
                    updateEichung();
                }
            }
        }
        else{
            if(document.getElementById("chkTourAusblenden").checked==true){
                bMassstabGewaehlt = false;
                try{
                    document.getElementById("canvas").style.visibility="hidden";
                }
                catch(Exception) {}
            }
            else{
                try{
                    document.getElementById("canvas").style.visibility="visible";
                }
                catch(Exception){}
                
                if(bMassstabGewaehlt==true){
                    center = theMap.getCenter();
                    updateEichung();
                }
            }
        }
    }
    
   
    // Holt die POIs zu den gewählten Kategorien
/*    function checkTilesPoikatChange() {
        window.status = "Loading Tiles..."
        var visibleTiles = getVisibleTiles();
        var innerDiv = document.getElementById("innerDiv");
        var visibleTilesMap = {};
        for (i = 0; i < visibleTiles.length; i++) {
            var tileArray = visibleTiles[i];
            var tileName = "?ky=" + tileArray[0] + "&kx=" + tileArray[1]+"&level="+zoomlevel;
            if(strPoiKatGewaehltGesamt==""){
                var div = document.getElementById(tileName);
                if (div) {
                    var imgs = div.getElementsByTagName("img");
                    while (imgs.length > 1)
                    {
                        div.removeChild(imgs[1]);
                    }
                }
            }

            visibleTilesMap[tileName] = true;
            var mapx1 = (tileArray[0] * tileSize);
            var mapy1 = (tileArray[1] * tileSize);
            var mapx2 = (tileArray[0] * tileSize)+tileSize;
            var mapy2 = (tileArray[1] * tileSize)+tileSize;
            
            var x1 = parseInt(mapx1 * meterX + links);
            var y1 = parseInt(mapy1 * meterY + unten);

            var x2 = parseInt(mapx2 * meterX + links);
            var y2 = parseInt(mapy2 * meterY + unten);

            var url = "./GetLayer.aspx?x1="+x1+"&y1="+y1+"&x2="+x2+"&y2="+y2+"&ky=" + tileArray[0] + "&kx=" + tileArray[1]+"&level="+zoomlevel+"&mx="+parseInt(meterX)+"&poiKatIds="+strPoiKatGewaehltGesamt+"&TourId="+currentTourId;//+"&TourPoiAnzeigen="+document.getElementById("chkTourpoiZeigen").checked;
            urlAnzeigeTest = url;
            loadXMLDoc(url);
        }
        // Kann wahrscheinlich raus
        var imgs = innerDiv.getElementsByTagName("div");
        for (i = 0; i < imgs.length; i++) {
            var id = imgs[i].getAttribute("id");
            if (id != "tour" && id != "route")
            {
                if (!visibleTilesMap[id]) {
                    innerDiv.removeChild(imgs[i]);
                    i--;
                }
            }
        }
        window.status = "Finished."
    }*/

    function updateServerTags()
    {
        var innerDiv = document.getElementById("innerDiv");
        document.getElementById("y1").value=stripPx(innerDiv.style.top);
        document.getElementById("y2").value=stripPx(innerDiv.style.top)+stripPx(innerDiv.style.height);
        document.getElementById("x1").value=stripPx(innerDiv.style.left);
        document.getElementById("x2").value=stripPx(innerDiv.style.left)+stripPx(innerDiv.style.width);
    }

    function getVisibleTiles() {
        var innerDiv = document.getElementById("innerDiv");
        var mapX = stripPx(innerDiv.style.left);
        var mapY = stripPx(innerDiv.style.top);
        var startX = Math.abs(Math.floor(mapX / tileSize))-2;//-(tilesOverViewportW-1);
        var startY = Math.abs(Math.floor(mapY / tileSize))-2;//-(tilesOverViewportH);
        var tilesX = Math.ceil(viewportWidth / tileSize)+2;  (tilesOverViewportW-1)+ (tilesOverViewportW);
        var tilesY = Math.ceil(viewportHeight / tileSize)+2;  (tilesOverViewportH-1)+ (tilesOverViewportH);

        var visibleTileArray = [];
        var counter = 0;
        for (x = startX; x < (tilesX + startX); x++)
        {
            for (y = startY; y < (tilesY + startY); y++)
            {
                visibleTileArray[counter++] = [x, y];
            }
        }
        return visibleTileArray;
    }   
    
    function getPoiList()
    {
        loadXMLDoc("./GetMerkerlisteStatus.aspx");  
    }   
    
    function ButtonKlick(argBildName, argBildWert){
        document.images[argBildName].src=argBildWert;
    }

    function ButtonKlickHintergrund(argBildName, argBildWert){
        document.getElementById(argBildName).style.backgroundImage="url("+argBildWert+")";
    }

    function ButtonKlickText(argButtonName, argText){
        document.getElementById(argButtonName).innerHTML=argText;
    }
    
    function initMenue(){
//        alert("test");
        loadXMLDoc("./mapcontrol/ajax/GetMenue.aspx");
    }
    
    
    //Ueberpruefung ob der POI in der Merkerliste existiert
    function isExistPOIinMerkerliste()
    {
        var bMerkerlisteZufuegen = true;
        
         // Herausfinden ob der Eintrag schon in der Merkerliste vorhanden ist
        arrPoiIdGewaehlt = arrVisitenkarte[20].split(',');
        var iZaehler = 0;
        for(var i = 0; i<iMerkerlisteAnzahl; i++){
            if(arrMerkerliste[i][20]==iPoiIdAktuell){
                bMerkerlisteZufuegen = false;
                //DelMerkerliste(arrMerkerliste[i][20]);
                break;
            }
        }
        
        return bMerkerlisteZufuegen;
    }
    
    
    function OnTourPointKlick(){
    
        var index=this.id.replace("tourpoint","");
        
        document.getElementById("btnMerkeImg").style.visiblity = 'hidden';
        document.getElementById("btnBuchenImg").style.visiblity = 'hidden';
        document.getElementById("btnInfosImg").style.visiblity = 'hidden';

        loadInfo(2);
        
        document.getElementById("VisitKat").innerHTML = "";
        document.getElementById("VisitDescription").innerHTML = "";
        document.getElementById("VisitAdressen").innerHTML = "";
        document.getElementById("VisitSecHeader").innerHTML = "";
        
        
        document.getElementById("DefaultText").style.visibility = "hidden";
 
 
        sInnerHTML='<table cellspacing="0" cellpadding="0"><colgroup><col width="140"/><col width="20"/><col width="350"/><col width="50"/><col width="140"/><col width="30"/></colgroup><tbody><tr><td/><td/><td style="font-size: 16px; font-weight: bold; text-align: center;" class="VisitStyle">'+TourpointBeschreibung[index][0]+'</td><td/><td/><td style="font-size: 14px; right: 0px;" class="VisitStyle">1/1<br/>Treffer</td></tr></tbody></table>';
        var objHeader = document.getElementById("VisitHeader");
        var objBackground = document.getElementById("divVisitenkarte");
        objHeader.innerHTML = sInnerHTML;
            
        var objDescription = document.getElementById("VisitDescription");
            objDescription.innerHTML ='<table><tbody><tr><td class="VisitStyle">'+TourpointBeschreibung[index][1]+'</td></tr></table>';
        
        var visitenkarte = document.getElementById("divVisitenkarte");
        visitenkarte.style.visibility="visible";

    }
    
    // Visitenkartenfunktionen
    function VisitenkarteNeuFuellen()
    {   
        document.getElementById("btnMerkeImg").style.visiblity = 'hidden';
        document.getElementById("btnBuchenImg").style.visiblity = 'hidden';
        document.getElementById("btnInfosImg").style.visiblity = 'hidden';
        
        var arrPOI = arrVisitenkarte[20].split(",");
        iPoiIdAktuell = arrPOI[parseInt(arrVisitenkarte[21])];
        
        document.getElementById("divVisitenkarte").style.visibility="visible";
        createVisitHeader();
        createVisitPic();
        createVisitSecHeader();
        
        
        document.getElementById("VisitKat").innerHTML = "";
        document.getElementById("VisitDescription").innerHTML = "";
        //window.setTimeout("VisitenkarteRest()",1000);
   
        createKategroie();
        createVisitAdress();
        createDescription();
        createButtons();
    }
    
    //Diese Funktion wird gebraucht,da das Header Bild manchesmal etwas laenger braucht
    function VisitenkarteRest()
    {
        createKategroie();
        createDescription();
        createButtons();
    }
    
    //Der erste Header wird geschrieben
    function createVisitHeader()
    {
        var sInnerHTML = "";

        try
        {
            var arrPoiIdGewaehlt = arrVisitenkarte[20].split(',');
            var arrPoiNamen = arrVisitenkarte[30].split('!---!');
            
            sInnerHTML += "<table cellpadding='0' cellspacing='0'><colgroup><col width='140'><col width='20'><col width='350'><col width='50'><col width='140'><col width='30'></colgroup><tr>";
            
            //Der Linke Pfeil wird geladen
            if (parseInt(arrVisitenkarte[21]) != 0)
            {
                sInnerHTML += "<td class='VisitStyle' style='font-size:12px;cursor:pointer;' onclick='VisitenkarteLaden("+(parseInt(arrVisitenkarte[21])-1)+");'>" + arrPoiNamen[parseInt(arrVisitenkarte[21]) - 1] + "</td>";
                sInnerHTML += "<td style='cursor:pointer;' onclick='VisitenkarteLaden("+(parseInt(arrVisitenkarte[21])-1)+");'><img alt='' src='../mapcontrol/images/pfeil_links.png'/></td>";
            }
            else
                sInnerHTML += "<td></td><td></td>";
            
            
            //Der Aktuelle Name wird geladen
            sInnerHTML += "<td class='VisitStyle' style='font-size:16px;font;font-weight:bold;text-align:center;'>" + arrPoiNamen[arrVisitenkarte[21]] +"</td>";
            
            //Der Rechte Pfeil wird geladen
            if (parseInt(arrVisitenkarte[21]) != arrPoiNamen.length -1)
            { 
                sInnerHTML += "<td style='cursor:pointer;' onclick='VisitenkarteLaden("+(parseInt(arrVisitenkarte[21])+1)+");'><img alt='' src='../mapcontrol/images/pfeil_rechts.png'/></td>";
                sInnerHTML += "<td class='VisitStyle' style='font-size:12px;cursor:pointer;' onclick='VisitenkarteLaden("+(parseInt(arrVisitenkarte[21])+1)+");'>" + arrPoiNamen[parseInt(arrVisitenkarte[21]) + 1] + "</td>";
            }
            else
                sInnerHTML += "<td></td><td></td>";
            
            
            //Die Seiten Zahlen werden angezeigt
            sInnerHTML += "<td class='VisitStyle' style='font-size:14px;right:0px;'>" + (parseInt(arrVisitenkarte[21])+1) + "/" + arrPoiIdGewaehlt.length +"<br/>Treffer</td>";
            sInnerHTML += "</table></tr>";
            
            
            var objHeader = document.getElementById("VisitHeader");
            var objBackground = document.getElementById("divVisitenkarte");
            objHeader.innerHTML = sInnerHTML;
            
            //Der Header wird zentriert
            //objHeader.style.left = (stripPx(objBackground.style.width) / 2) - (stripPx(objHeader.offsetWidth) / 2);
        } 
        catch (ex){}
    }
    
    //>#########ALT POI-Visitenkarte###################
    
    //Der zweite Header wird geschrieben mit Bild
//    function createVisitSecHeader()
//    {
//        var sInnerHTML = "";

//        try
//        {
//            sInnerHTML += "<table><tr>";
//            
//            if (arrVisitenkarte[11].length > 0)
//                sInnerHTML += "<td id='VisitPic'><img src='Bilder.aspx?bild=1&id="+iPoiIdAktuell+"' align='left'></td>";
//            else
//             sInnerHTML += "<td id='VisitPic'></td>";
//		    
//		    sInnerHTML +="<td class='VisitStyle' style='font-size:15;font;font-style:italic;vertical-align:bottom;'>" + arrVisitenkarte[0] + "</td>";
//		    sInnerHTML += "</tr></table>";
//		    var objSecHeader = document.getElementById("VisitSecHeader");
//		    objSecHeader.innerHTML = sInnerHTML;
//		}
//		catch (ex){}
//    }
//    
//     //Die Kategorien werden geschrieben
//    function createKategroie()
//    {
//    
//        var sInnerHTML = "";

//        try
//        {
//            sInnerHTML += "<table>";
//            
//             sInnerHTML += "<th colspan='2' class='VisitStyle' style='font-size:10;font-weight:bold;text-align:left;'>Kategorien</th>";
//            //Abfrage ob Kats vorhanden sind
//            if (arrVisitenkarte[1].length > 0 && arrVisitenkarte[3].length > 0)
//            {
//                var arrKatId = arrVisitenkarte[1].split(',');
//                var arrKatName = arrVisitenkarte[3].split(',');
//                
//                for(var nI = 0; nI < arrKatId.length; nI++)
//                {
//                    sInnerHTML += "<tr>";
//                    sInnerHTML += "<td><img src='Bilder.aspx?icon=1&id="+arrKatId[nI]+"'></td>";
//                    sInnerHTML += "<td class='VisitStyle' style='font-size:10;'>" + arrKatName[nI] + "</td>";
//                    sInnerHTML += "</tr>";
//                }
//            }
//            
//		    sInnerHTML += "</table>";
//		    
//		    
//		    
//            //Abfrage ob Kats vorhanden sind
//          
//		    
//		    
//		    
//		    var objKat = document.getElementById("VisitKat");
//		    objKat.innerHTML = sInnerHTML;
//		}
//		catch (ex){}
//    
//    }
//    
//    
//    //Die Innen Flaeche mit Beschreibung wird geschrieben
//    function createDescription()
//    {
//        var sInnerHTML = "";

//        try
//        {
//            sInnerHTML += "<table>";
//            
//            //Der Infotext wird geschrieben
////            if (arrVisitenkarte[16].length > 0)
////                sInnerHTML +=  "<tr><td class='VisitStyle' style='font-size:10;'>" + arrVisitenkarte[16] + "</td></tr>";
////                
////            
////            if (arrVisitenkarte[16].length > 0 && arrVisitenkarte[17].length > 0)
////                sInnerHTML +=  "<tr><td><br/><br/></td></tr>";
//            
//            //Die Beschreibung wird geschrieben
//            if (arrVisitenkarte[17].length > 0)
//		        sInnerHTML +=  "<tr><td class='VisitStyle' style='font-size:10;'>" + arrVisitenkarte[17] + "</td></tr>";
//            
//            if (arrVisitenkarte[18].length > 0){
//                sInnerHTML += "<th colspan='2' class='VisitStyle' style='font-size:10;font-weight:bold;text-align:left;'>Öffnungszeiten:</th>";
//		        sInnerHTML +=  "<tr><td class='VisitStyle' style='font-size:10;'>" + arrVisitenkarte[18] + "</td></tr>";
//            }
//            //Die Adressdaten werden geschrieben
//            sInnerHTML += createVisitAdress();
//            
//		    sInnerHTML += "</table>";
//		    var objDescription = document.getElementById("VisitDescription");
//		    var objKat = document.getElementById("VisitKat");
//		    var objSecHeader = document.getElementById("VisitSecHeader");
//		    var objVistPic = document.getElementById("VisitPic");
//		    
//		    objDescription.innerHTML = sInnerHTML;
//		    
//		    var nTop = 0;
//		    //Die TOP Hoehe wird ermittelt
//		    if(stripPx(objKat.offsetHeight) > stripPx(objVistPic.offsetHeight))
//		        nTop = stripPx(objKat.offsetHeight) + stripPx(objKat.style.top) + 20;
//		    else
//		    {
//		        if (objVistPic.offsetHeight > stripPx(objSecHeader.style.height))
//		            nTop = stripPx(objSecHeader.style.height) + stripPx(objSecHeader.style.top) + 20;
//		        else
//		            nTop = stripPx(objVistPic.offsetHeight) + stripPx(objSecHeader.style.top) + 20;		    
//		    }
//		    
//		    objDescription.style.top = nTop + "px";
//		}
//		catch (ex){}
//    }
    //<#########>ALT POI-Visitenkarte###################
    
    
    
    //>#########NEU POI-Visitenkarte###################
        
    //Der zweite Header wird geschrieben mit Bild
    function createVisitSecHeader()
    {
        var sInnerHTML = "";

        try
        {
            sInnerHTML += "<table><tr>";
		    sInnerHTML +="<td class='VisitStyle' style='font-size:15;font;font-style:italic;vertical-align:bottom;'>" + arrVisitenkarte[0] + "</td>";
		    
		    if (arrVisitenkarte[33].length > 0 && arrVisitenkarte[34].length > 0 && arrVisitenkarte[37]=="2") // attribute
            {
                sInnerHTML += "<td><table>";
                    var arrKatId = arrVisitenkarte[34].split(',');
                    var arrKatName = arrVisitenkarte[33].split(',');
                        sInnerHTML += "<tr>";
                    for(var nI = 0; nI < arrKatId.length; nI++)
                    {
                        sInnerHTML += "<td><img src='Bilder.aspx?attribute="+arrKatId[nI]+"' width='16px' title='"+arrKatName[nI]+"' alt='"+arrKatName[nI]+"'></td>";
                    }
                        sInnerHTML += "</tr>";
                 sInnerHTML += "</td></table>";
            }
		    
		    sInnerHTML += "</tr></table>";
		    var objSecHeader = document.getElementById("VisitSecHeader");
		    objSecHeader.innerHTML = sInnerHTML;
		}
		catch (ex){}
    }
    
     //Die Kategorien werden geschrieben
    function createKategroie()
    {
        var sInnerHTML = "";

        try
        {
            sInnerHTML += "<table>";
            sInnerHTML += "<th colspan='2' class='VisitStyle' style='font-size:10;font-weight:bold;text-align:left;'>Kategorien</th>";
            //Abfrage ob Kats vorhanden sind
            if (arrVisitenkarte[1].length > 0 && arrVisitenkarte[3].length > 0)
            {
                var arrKatId = arrVisitenkarte[1].split(',');
                var arrKatName = arrVisitenkarte[3].split(',');
                var maxkat=-1;
                
                if(arrVisitenkarte[37]=="1")
                        maxkat=2;
                if(arrVisitenkarte[37]=="0")
                        maxkat=1;    
                
                
                for(var nI = 0; nI < arrKatId.length; nI++)
                {
                    sInnerHTML += "<tr>";
                    sInnerHTML += "<td><img src='Bilder.aspx?icon=1&id="+arrKatId[nI]+"'></td>";
                    sInnerHTML += "<td class='VisitStyle' style='font-size:10;'>" + arrKatName[nI] + "</td>";
                    sInnerHTML += "</tr>";
                    if(nI==maxkat)
                        break;
                }
            }
            
		    sInnerHTML += "</table>";
		    
		    
		    
		    
//		      if (arrVisitenkarte[33].length > 0 && arrVisitenkarte[34].length > 0)
//            {
//            
//                sInnerHTML += "<table>";
//                
//                sInnerHTML += "<th colspan='2' class='VisitStyle' style='font-size:10;font-weight:bold;text-align:left;'>Attribute</th>";
//                    var arrKatId = arrVisitenkarte[34].split(',');
//                    var arrKatName = arrVisitenkarte[33].split(',');
//                    
//                    for(var nI = 0; nI < arrKatId.length; nI++)
//                    {
//                        sInnerHTML += "<tr>";
//                        sInnerHTML += "<td><img src='Bilder.aspx?attribute="+arrKatId[nI]+"' width='16px'></td>";
//                        sInnerHTML += "<td class='VisitStyle' style='font-size:10;'>" + arrKatName[nI] + "</td>";
//                        sInnerHTML += "</tr>";
//                    }
//                    
//                 sInnerHTML += "</table>";
//            }
            
		    
		    
		    
		    
		    
		    var objKat = document.getElementById("VisitKat");
		    objKat.innerHTML = sInnerHTML;
		}
		catch (ex){}
    
    }
    
    
    //Die Innen Flaeche mit Beschreibung wird geschrieben
    function createDescription()
    {
            var sInnerHTML = "";

            try
            {
                sInnerHTML += "<table>";
                
                //Der Infotext wird geschrieben
    //            if (arrVisitenkarte[16].length > 0)
    //                sInnerHTML +=  "<tr><td class='VisitStyle' style='font-size:10;'>" + arrVisitenkarte[16] + "</td></tr>";
    //                
    //            
    //            if (arrVisitenkarte[16].length > 0 && arrVisitenkarte[17].length > 0)
    //                sInnerHTML +=  "<tr><td><br/><br/></td></tr>";
                
                //Die Beschreibung wird geschrieben
                if(arrVisitenkarte[37]=="2"){
                    if (arrVisitenkarte[17].length > 0)
		                sInnerHTML +=  "<tr><td class='VisitStyle' style='font-size:10;'>" + arrVisitenkarte[17] + "</td></tr>";
                 }
                
                if(arrVisitenkarte[37]=="1" || arrVisitenkarte[37]=="2"){  
                    if (arrVisitenkarte[18].length > 0){
                        sInnerHTML += "<th colspan='2' class='VisitStyle' style='font-size:10;font-weight:bold;text-align:left;'>Öffnungszeiten:</th>";
		                sInnerHTML +=  "<tr><td class='VisitStyle' style='font-size:10;'>" + arrVisitenkarte[18] + "</td></tr>";
                    }
                }
                if(arrVisitenkarte[37]=="1" || arrVisitenkarte[37]=="2"){  
                    if (arrVisitenkarte[35].length > 0){
                        sInnerHTML += "<th colspan='2' class='VisitStyle' style='font-size:10;font-weight:bold;text-align:left;'>Besuchsdauer:</th>";
		                sInnerHTML +=  "<tr><td class='VisitStyle' style='font-size:10;'>" + arrVisitenkarte[35] + "</td></tr>";
                    }
                }
                //Die Adressdaten werden geschrieben
              //  sInnerHTML += createVisitAdress();
                
		        sInnerHTML += "</table>";
		        var objDescription = document.getElementById("VisitDescription");
		        var objKat = document.getElementById("VisitKat");
		        var objSecHeader = document.getElementById("VisitSecHeader");
		        var objVistPic = document.getElementById("VisitPic");
    		    
		        objDescription.innerHTML = sInnerHTML;
    		    
		        /*
		        var nTop = 0;
		        //Die TOP Hoehe wird ermittelt
		        if(stripPx(objKat.offsetHeight) > stripPx(objVistPic.offsetHeight))
		            nTop = stripPx(objKat.offsetHeight) + stripPx(objKat.style.top) + 20;
		        else
		        {
		            if (objVistPic.offsetHeight > stripPx(objSecHeader.style.height))
		                nTop = stripPx(objSecHeader.style.height) + stripPx(objSecHeader.style.top) + 20;
		            else
		                nTop = stripPx(objVistPic.offsetHeight) + stripPx(objSecHeader.style.top) + 20;		    
		        }
    		    
		        objDescription.style.top = nTop + "px";
		        */
		    }
		    catch (ex){}
       
    }
    
    
    function createVisitPic(){
        
      if (arrVisitenkarte[11].length > 0 && arrVisitenkarte[37]=="2")
            document.getElementById('VisitPics').innerHTML= "<a href='Bilder.aspx?bild=1&id="+iPoiIdAktuell+"&big=1' onclick='myLightbox.start(this); return false;' rel='lightbox' target='_blank'><img src='Bilder.aspx?bild=1&id="+iPoiIdAktuell+"' align='left'  style='cursor:pointer;max-width:225px;max-height:350px;'></a>";
      else
            document.getElementById('VisitPics').innerHTML= "";
    }
    
    var bigpic = document.createElement("img");
    
    function showBigPic(poiid){
    
        var overlay =document.createElement("div");
        overlay.id="overlay";
        
        if(bIsIE)
            overlay.style.filter="alpha(opacity=80)";
        else
            overlay.style.opacity=0.8;
        overlay.onclick=closeBigPic;
        overlay.style.cursor="pointer";
        document.getElementsByTagName("body")[0].appendChild(overlay);
    
        bigpic.src="Bilder.aspx?bild=1&id="+poiid+"&big=1";
        bigpic.onload=showBigPic2;
    }
    
    
    function showBigPic2(){
        
        bigpic.onclick=closeBigPic;
        bigpic.style.cursor="pointer";
        bigpic.style.margin="auto";
        
         var pagesize = getPageSize();

            if (bigpic.width > pagesize[0] - 50) {
                var tmpwidth = bigpic.width;
                bigpic.width = pagesize[0] - 50;
                bigpic.height *= bigpic.width / tmpwidth;
            }
            if (bigpic.height > pagesize[1]-70) {
                var tmpheight = bigpic.height;
                bigpic.height = pagesize[1] - 70;
                bigpic.width *= bigpic.height / tmpheight;
            }

        bigpic.style.position="absolute";
        bigpic.style.left=(pagesize[0]/2-bigpic.width/2)+"px";        
        bigpic.style.top=(pagesize[1]/2-bigpic.height/2)+"px";
        bigpic.id="overlaypic";
        bigpic.style.zIndex=1000;
        

        document.getElementsByTagName("body")[0].appendChild(bigpic);
    
    }
    
    
    
    function closeBigPic(){
        if(document.getElementById("overlaypic")!=null)
            document.getElementById("overlaypic").parentNode.removeChild(document.getElementById("overlaypic"));
        if(document.getElementById("overlay")!=null)
            document.getElementById("overlay").parentNode.removeChild(document.getElementById("overlay"));
    }
    
    function getPageSize(){
	
	var xScroll, yScroll;
	
	if (window.innerHeight && window.scrollMaxY) {	
		xScroll = document.body.scrollWidth;
		yScroll = window.innerHeight + window.scrollMaxY;
	} else if (document.body.scrollHeight > document.body.offsetHeight){ // all but Explorer Mac
		xScroll = document.body.scrollWidth;
		yScroll = document.body.scrollHeight;
	} else { // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari
		xScroll = document.body.offsetWidth;
		yScroll = document.body.offsetHeight;
	}
	
	var windowWidth, windowHeight;
	if (self.innerHeight) {	// all except Explorer
		windowWidth = self.innerWidth;
		windowHeight = self.innerHeight;
	} else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode
		windowWidth = document.documentElement.clientWidth;
		windowHeight = document.documentElement.clientHeight;
	} else if (document.body) { // other Explorers
		windowWidth = document.body.clientWidth;
		windowHeight = document.body.clientHeight;
	}	
	
	// for small pages with total height less then height of the viewport
	if(yScroll < windowHeight){
		pageHeight = windowHeight;
	} else { 
		pageHeight = yScroll;
	}

	// for small pages with total width less then width of the viewport
	if(xScroll < windowWidth){	
		pageWidth = windowWidth;
	} else {
		pageWidth = xScroll;
	}

	arrayPageSize = new Array(pageWidth,pageHeight,windowWidth,windowHeight) 
	return arrayPageSize;
}

    
    
    //<#########NEU POI-Visitenkarte###################
    
    
    
    //Die Adressdateb werden geladen
    function createVisitAdress()
    {
        var sInnerHTML = "<table>";

        try
        {
                sInnerHTML += "<tr><td class='VisitStyle' style='font-size:10;'>";
                
                sInnerHTML += "<br/>";
                
                if(arrVisitenkarte[4].length > 0 || arrVisitenkarte[5].length > 0)
                    sInnerHTML += arrVisitenkarte[4] + " " + arrVisitenkarte[5];
            
                if((arrVisitenkarte[6].length > 0 && arrVisitenkarte[6] != "0") || arrVisitenkarte[7].length > 0)
                    sInnerHTML += "<br/>" + arrVisitenkarte[6] + " " + arrVisitenkarte[7];               
                    
                    
                if(arrVisitenkarte[37]=="2" || arrVisitenkarte[37]=="1"){
            
                if (arrVisitenkarte[9].length > 0)
			        sInnerHTML += "<br/>Tel.: "+arrVisitenkarte[9];
    			    
		        if (arrVisitenkarte[10].length > 0)
			        sInnerHTML += "<br/>Fax.: "+arrVisitenkarte[10];
    			    
		        if (arrVisitenkarte[25].length > 0)
			        sInnerHTML += "<br/>Internet: <a href='"+((arrVisitenkarte[25].indexOf("http://")==-1)?"http://":"")+arrVisitenkarte[25]+"' target=new>"+arrVisitenkarte[26]+"</a>";
    		
		        if (arrVisitenkarte[23].length > 0)
			        sInnerHTML += "<br/>Internet: <a href='"+((arrVisitenkarte[23].indexOf("http://")==-1)?"http://":"")+arrVisitenkarte[23]+"' target=new>"+arrVisitenkarte[23]+"</a>";

		        if (arrVisitenkarte[31].length > 0)
			        sInnerHTML += "<br/><br/>E-Mail:<br>" + arrVisitenkarte[31];
    			
			    if (arrVisitenkarte[32].length > 0)
			        sInnerHTML += "<br/><br/>Visitenkartenlinks:<br>" + arrVisitenkarte[32];
                
             
                
                if (arrVisitenkarte[13].length > 0){
    			    
	                 var geo=TransGKnachGeo(arrVisitenkarte[13],arrVisitenkarte[14]);
                     var gms=TransGeonachGradMinSek(geo[0],geo[1]);
                         sInnerHTML += "<br/><br/>Ortskoordinate:<br> "+gms[0]+" "+gms[1];
		            //sInnerHTML += "<br/><br/><br/>Ortskoordinate:<br> X:"+arrVisitenkarte[13]+" Y:"+arrVisitenkarte[14];
			        }
            }	   		   
		    sInnerHTML += "</td></tr></table><br>";
		}
		catch (ex){}
    
        document.getElementById('VisitAdressen').innerHTML= sInnerHTML;
    }
    
    //Die Buttons fuer die Visitenkarte wird erstellt
    function createButtons()
    {
        var sInnerHTML = "";

        try
        {
            
            var butMerken = document.getElementById("btnMerkeImg");
            var butBuchen = document.getElementById("btnBuchenImg");
            var butInfos = document.getElementById("btnInfosImg");            
            
            //Der Info Button wird geladen
		    if(arrVisitenkarte[23]!="")
		    {
		        sInnerHTML = "";
		        
		        sInnerHTML +=  "<table cellpadding='0' cellspacing='0' style='position:absolute;'>";
                sInnerHTML +=  "<tr><td class='VisitStyle' style='position:absolute;font-size:14;font-weight:bold;width:150px;text-align:center;top:7px;'>Weitere Infos</td></tr>";
                sInnerHTML +=  "<tr><td></td></tr>";
                sInnerHTML +=  "<tr><td class='VisitStyle' onclick='LinkOeffnen(\"info\");' style='position:absolute;cursor:pointer;font-size:10;width:150px;text-align:center;top:32px;'>[Link zur Website]</td></tr>";
                sInnerHTML +=  "</table>";
                butInfos.innerHTML = sInnerHTML
                
                butInfos.style.visibility = "visible";
		    }
		    
		    //Der Merke Button und Anfahrt Buttons wird geschrieben
		    if(arrVisitenkarte[29]=="true")
		    {
		        sInnerHTML = "";		        
		        
		        sInnerHTML +=  "<table cellpadding='0' cellspacing='0' style='position:absolute;'>";
                sInnerHTML +=  "<tr><td class='VisitStyle' style='position:absolute;font-size:14;font-weight:bold;width:150px;text-align:center;top:7px;'>Anfahrt</td></tr>";
                sInnerHTML +=  "<tr><td></td></tr>";
                sInnerHTML +=  "<tr><td class='VisitStyle' onclick='openDeutscheBahn();' style='position:absolute;cursor:pointer;font-size:10;width:150px;text-align:center;top:30px;'>[Bahn]</td></tr>";
                sInnerHTML +=  "<tr><td class='VisitStyle' onclick='openMap24();' style='position:absolute;cursor:pointer;font-size:10;width:150px;text-align:center;top:40px;'>[Auto/Map24]</td></tr>";
                sInnerHTML +=  "</table>";
                butBuchen.innerHTML = sInnerHTML
                
                butBuchen.style.visibility = "visible";
		    
		    
                sInnerHTML = "";                
                
                sInnerHTML +=  "<table cellpadding='0' cellspacing='0' style='position:absolute;'>";
                sInnerHTML +=  "<tr><td class='VisitStyle' style='position:absolute;font-size:14;font-weight:bold;width:150px;text-align:center;top:7px;'>Merke</td></tr>";
                sInnerHTML +=  "<tr><td></td></tr>";
                
                if(isExistPOIinMerkerliste())
                {
                    document.getElementById("lblMerkliste").innerHTML = "";
                    sInnerHTML +=  "<tr><td class='VisitStyle' onclick='AddMerkerliste();createButtons();' style='position:absolute;cursor:pointer;font-size:10;width:150px;text-align:center;top:32px;'>[einfügen]</td></tr>";
                }
                else
                {
                    document.getElementById("lblMerkliste").innerHTML = "<img style='left:0px; top:0px; position:absolute; width:20px; height:20px;' src='/images/haken.gif'>";
                    sInnerHTML +=  "<tr><td class='VisitStyle' onclick='DelMerkerliste(" + iPoiIdAktuell + ");createButtons();' style='position:absolute;cursor:pointer;font-size:10;width:150px;text-align:center;top:32px;'>[löschen]</td></tr>";
                }
                sInnerHTML +=  "</table>";
                butMerken.innerHTML = sInnerHTML
                
                butMerken.style.visibility = "visible";
		    }
		    
            //Die Buttonleiste wird zentriert
		    var objButtons = document.getElementById("VisitButtons");
		//    objButtons.style.left = (stripPx(document.getElementById("divVisitenkarte").style.width) / 2)  - (stripPx(objButtons.style.width) / 2) + "px"
		}
		catch (ex){}
    }
    
    
    
    function openDeutscheBahn(){
        var date = new Date();
        var month = date.getMonth()+1;
        var day = date.getDay();
        var year = date.getFullYear();
        var strLinkDb = "http://reiseauskunft.bahn.de/bin/query.exe/dn?searchMode=ADVANCED&start=1&S=&Z=&date=-!Datum!-&time=&timesel=depart&to=-!Ort!-";
        strLinkDb = strLinkDb.replace('-!Ort!-', arrVisitenkarte[7]);
        strLinkDb = strLinkDb.replace('-!Date!-', day+'.'+month+'.'+year);
        window.open(strLinkDb, "Db");
    }
    
    function openMap24(){
        var strLinkMap24 = "http://link2.map24.com?lid=53fe135a&maptype=CGI&width0=1500&street0=-!StrasseHausNummer!-&zip0=-!Plz!-&city0=-!Ort!-&state0=&country0=DE&logo_url0=&name0=-!Name!-&description0=-!Ort!-";
        strLinkMap24 = strLinkMap24.replace('-!Ort!-', arrVisitenkarte[7]);
        strLinkMap24 = strLinkMap24.replace('-!Plz!-',  arrVisitenkarte[6]);
        strLinkMap24 = strLinkMap24.replace('-!StrasseHausNummer!-',  arrVisitenkarte[4] + '+' + arrVisitenkarte[5]);
        strLinkMap24 = strLinkMap24.replace('-!Name!-',  arrVisitenkarte[0]);
        window.open(strLinkMap24, "map24");
    }
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
//    function VisitenkarteNeuFuellen3()
//    {
//        document.getElementById("POIAdresse").innerHTML = "";
//        document.getElementById("divVisitenkarte").style.visibility="visible";
//        ShowVisitenkarteHeader();
//        
//        
//        if (arrVisitenkarte[1].length > 0)
//        {        
//            document.getElementById("POIName").innerHTML = "<img style='left:0px; top:5px; position:absolute;' src='Bilder.aspx?icon=1&id="+arrVisitenkarte[1]+"'> <span style='font-weight:bold; font-family:Lucida Sans Typewriter; left:40px; position:absolute;'>"+arrVisitenkarte[0]+"</span>"
//                                                         +"<span style='font-size:12px;font-weight:bold; font-family:Lucida Sans Typewriter; left:40px;top:40px; position:absolute;'>Kategorie: "+arrVisitenkarte[3]+"</span>";  
//                                                         +"<span style='font-style:italic; color:3F3F40; overflow:hidden; height:33px; font-size:12px; position:absolute; left:0px; top:43px;'>"+arrVisitenkarte[17]+"</span>";
//        }
//        else
//            document.getElementById("POIName").innerHTML = "<span>"+arrVisitenkarte[0]+"</span>";
//        
//        //document.getElementById("POIAdresse").innerHTML = arrVisitenkarte[0] + "<br>";
//        if(arrVisitenkarte[4].length > 0 || arrVisitenkarte[5].length > 0)
//        document.getElementById("POIAdresse").innerHTML	+= arrVisitenkarte[4] + " "+arrVisitenkarte[5];
//        
//        if((arrVisitenkarte[6].length > 0 && arrVisitenkarte[6] != "0") || arrVisitenkarte[7].length > 0)
//        document.getElementById("POIAdresse").innerHTML	+= "<br>" + arrVisitenkarte[6] + " "+arrVisitenkarte[7];
//                
//        arrPoiIdGewaehlt = arrVisitenkarte[20].split(',');
//        iPoiIdAktuell = arrPoiIdGewaehlt[parseInt(arrVisitenkarte[21])];
//        
//        if (arrVisitenkarte[9].length > 0)
//			document.getElementById("POIAdresse").innerHTML += "<br>Tel.: "+arrVisitenkarte[9];
//		if (arrVisitenkarte[10].length > 0)
//			document.getElementById("POIAdresse").innerHTML += "<br>Fax.: "+arrVisitenkarte[10];
//		if (arrVisitenkarte[25].length > 0)
//			document.getElementById("POIAdresse").innerHTML += "<br>Internet: <a href='http://"+arrVisitenkarte[25]+"' target=new>"+arrVisitenkarte[26]+"</a>";
//		if (arrVisitenkarte[28].length > 0)
//			document.getElementById("POIAdresse").innerHTML += "<br>E-Mail: <a href='mailto:"+arrVisitenkarte[27]+"'>"+arrVisitenkarte[28]+"</a>";
////		if (arrVisitenkarte[29].length > 0)
////			document.getElementById("POIAdresse").innerHTML += "<br><br>EZ: "+arrVisitenkarte[29];
////		if (arrVisitenkarte[30].length > 0)
////			document.getElementById("POIAdresse").innerHTML += "<br>DZ: "+arrVisitenkarte[30];
//        if (arrVisitenkarte[13].length > 0)
//			document.getElementById("POIAdresse").innerHTML += "<br><br>Ortskoordinate:<br> X:"+arrVisitenkarte[13]+" Y:"+arrVisitenkarte[14];			
//		if (arrVisitenkarte[11].length > 0){
//			document.getElementById("poiImage").src = "Bilder.aspx?bild=1&id="+iPoiIdAktuell;
//			document.getElementById("poiImage").alt = arrVisitenkarte[0];
//			document.getElementById("poiImage").style.visibility = 'visible';
//			document.getElementById("poiImage").style.width = '150px';
//		}
//		else{
//			document.getElementById("poiImage").style.visibility = 'hidden';
//			document.getElementById("poiImage").style.width = '0px';
//		}
//		
//		if (arrVisitenkarte[16].length > 0){
//		    document.getElementById("POIBeschreibung").style.visibility = 'visible';
//            document.getElementById("POIBeschreibung").innerHTML = arrVisitenkarte[16];
//        }
//        if (arrVisitenkarte[17].length > 0){
//		    document.getElementById("POIBeschreibung").style.visibility = 'visible';
//            document.getElementById("POIBeschreibung").innerHTML = arrVisitenkarte[17];
//        }
//        if(arrVisitenkarte[16].length == 0 && arrVisitenkarte[17].length == 0)
//        {
//            document.getElementById("POIBeschreibung").innerHTML = "";
//            document.getElementById("POIBeschreibung").style.visibility = 'hidden';
//        }
//        
//         if (arrVisitenkarte[31].length > 0){
//            document.getElementById("VisitenkartenPDF").style.visibility = 'visible';
//            document.getElementById("VisitenkartenPDF").innerHTML = "<a href='Bilder.aspx?visitenkartenPDF=1&id="+arrVisitenkarte[20]+"' style='color:red; text-decoration:underline; cursor:pointer;' target='new'>Informationen herunterladen</a>";
//        }
//		
//		var butInfos = document.getElementById("btnInfosImg");
//		if(arrVisitenkarte[23]==""){ // Kein Infolink
//		    butInfos.style.visibility = "hidden";
//		    butInfos.style.width = "94px";
//		}
//		else{
//		    butInfos.style.width = "94px";
//		    butInfos.style.visibility = "visible";
//		}
//        
//		var butBuchen = document.getElementById("btnBuchenImg");
//		if(arrVisitenkarte[22] == ""){ // Kein Buchenlink
//		    butBuchen.style.visibility = "hidden";
//		    butBuchen.style.width = "94px";
//		}
//		else{
//		    butBuchen.style.width = "94px";
//		    butBuchen.style.visibility = "visible";
//		} 
//		
//		
//		if(!isExistPOIinMerkerliste())
//		    document.getElementById("lblMerkliste").innerHTML = "<img style='left:0px; top:0px; position:absolute; width:20px; height:20px;' src='/images/haken.gif'>"
//        else
//            document.getElementById("lblMerkliste").innerHTML = "";
//            
//            
//        //Ob gedruckt werden darf
//		var butMerken = document.getElementById("btnMerkeImg");
//		var butDrucken = document.getElementById("btnDruckenImg");
//		var visit = document.getElementById("outerTableVCard");

//		if(arrVisitenkarte[32]=="false"){
//		    butMerken.style.visibility = "hidden";
//		    butDrucken.style.visibility = "hidden";
//		    visit.style.backgroundImage = "url('images/visitenkarte/visitenkarte_neu(ohne).png')";
//		}
//		else{
//		    butMerken.style.visibility = "visible";
//		    butDrucken.style.visibility = "visible";
//		    visit.style.backgroundImage = "url('images/visitenkarte/visitenkarte_neu.png')";
//		}
//		
//		 
//		
//		
//    }
    
    // Stopp-Uhr in Millisekunden
    function getms(start, stop)
    {
        var s1 = (stop.getMinutes()*60*100) + (stop.getSeconds()*1000) + stop.getMilliseconds();
        var s2 = (start.getMinutes()*60*100) + (start.getSeconds()*1000) + start.getMilliseconds();
        return parseInt(s1-s2);
    }

    function ShowVisitenkarteHeader(){
        var arrPoiIdGewaehlt = new Array();
        try
        {
            arrPoiIdGewaehlt = arrVisitenkarte[20].split(',');
            if(arrPoiIdGewaehlt.length>1){
                if(parseInt(arrVisitenkarte[21])!=0){
                    document.getElementById("visPfeilLinks").innerHTML="<span style='cursor:pointer;' onclick='VisitenkarteLaden("+(parseInt(arrVisitenkarte[21])-1)+");'><nobr><<&nbsp;vorheriges Ziel</nobr></span>";
                }
                else{
                    document.getElementById("visPfeilLinks").innerHTML="";
                }
                
                if(parseInt(arrVisitenkarte[21])+1<arrPoiIdGewaehlt.length){
                    document.getElementById("visPfeilRechts").innerHTML = "<span style='cursor:pointer;' onclick='VisitenkarteLaden("+(parseInt(arrVisitenkarte[21])+1)+");'>nächstes Ziel&nbsp;>></span>";
                }
                else{
                    document.getElementById("visPfeilRechts").innerHTML="";
                }
                document.getElementById("visObenText").innerHTML = (parseInt(arrVisitenkarte[21])+1)+" von "+arrPoiIdGewaehlt.length;
            }
            else{
                document.getElementById("visPfeilLinks").innerHTML="";
                document.getElementById("visPfeilRechts").innerHTML="";
                document.getElementById("visObenText").innerHTML = "1 von 1";
            }
        } catch (ex)
        {
        }
    }
    // Lädt eine neue Visitenkarte
    function VisitenkarteLaden(argPoiAnzeige){
        loadXMLDoc("./GetVisitenkarte.aspx?poiId="+arrVisitenkarte[20]+"&spracheId="+strSpracheId+"&poiAnzeige="+argPoiAnzeige);
    }
    
    function PdfErstellen(){
        var strTmp = "";
        for(var i = 0; i<iMerkerlisteAnzahl; i++){
            if(i==0)
                strTmp += arrMerkerliste[i][20];
            else
                strTmp += ";"+arrMerkerliste[i][20];
        }
        var touren="";
        
        for(var i = 0; i<iMerkerlisteTourAnzahl; i++){
            if(i==0)
                touren += arrMerkerlisteTour[i][0];
            else
                touren += ";"+arrMerkerlisteTour[i][0];
        }
        
		var url = "PdfMerkerListe.aspx?PoiId="+strTmp+"&TourenId="+touren+"&wms="+escape(theMap.m_wmsBase)+"&lmin="+theMap.XMinLeft + " " + theMap.YMinLeft +"&lmax="+theMap.XMaxLeft + " " + theMap.YMaxLeft+"&tmin="+theMap.XMinTop + " " + theMap.YMinTop+"&tmax="+theMap.XMaxTop + " " + theMap.YMaxTop;
		if(strTmp=="" && touren=="")
		    alert('Keine Daten in Ihrem Reiseplaner gespeichert');
		else
    	    wndMerkerliste = winOpen(url,"wndMerkerliste",400,300,"status=no,toolbar=no,menubar=no,location=no,resizable=no,dependent=yes");
    }
    
    function GPXWaypoints(){
     var strTmp = "";
        for(var i = 0; i<iMerkerlisteAnzahl; i++){
            if(i==0)
                strTmp += arrMerkerliste[i][20];
            else
                strTmp += ","+arrMerkerliste[i][20];
        }
        
        if(strTmp=="")
		    alert('Keine Daten in Ihrem Reiseplaner gespeichert');
		else
		    winOpen("./GetGPXWaypoints.aspx?poiId="+strTmp,"wndMerkerliste",400,300,"status=no,toolbar=no,menubar=no,location=no,resizable=no,dependent=yes");
		  
		
    
    }
    
    function LinkOeffnen(argLink){
        if(argLink=="info")
            window.open(arrVisitenkarte[23], "info");
        else if(argLink=="buchen")
            window.open(arrVisitenkarte[22], "buchen");
        else if(argLink=="shop")
            window.open("http://bisshop.i-ventions.de", "shop");
    }
   
    
    ///////////////////////+++ENDE BISTOURISTIK +++++/////////////////////////////////////////////////////////////////////////////////
    ///*********************************************************************************************************************
    /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    
    function CallReturnURL()
        {
            var x = document.getElementById("kx").innerHTML;
            var y = document.getElementById("ky").innerHTML;
            location.href=returnUrl+"?SID="+sid+"&x="+x+"&y="+y;
        }
        
//      Stellt automatisch einen Layer ein der über die Hauptkarte geschoben/angezeigt wird
//      Layer Naturschutzgebiete
        function ToggleLayerNatur(checked)
        {
        
            if (checked)
            {
                //theMap.AddWMSLayer("http://onmaps.de/ggwms?version=1.1.0&request=getmap&bgcolor=0xffffe6&nowatermark=true&format=image/png&dpi=72&TRANSPARENT=true&LAYERS=viabono_flaechen_ntp&fullalpha=true&WIDTH={w}&HEIGHT={h}&SCALE={s}&BBOX={x1},{y1},{x2},{y2}&truecolor=true&copyright=false");
                ////theMap.AddWMSLayer("http://onmaps.de/ggwms?version=1.1.0&request=getmap&bgcolor=0xffffe6&VERSION=1.1.0&SERVICE=WMS&kid=8c3f8726ff5f188ebc27a6b95e20d216&format=imagemap&LAYERS=viabono_flaechen_ntp2&USEMAPLAYER=layerUsemap2&caching=false&WIDTH={w}&HEIGHT={h}&SCALE={s}&BBOX={x1},{y1},{x2},{y2}"); 
                //theMap.AddWMSLayer("http://www.geobasisdaten.niedersachsen.de/rds?SERVICE=WMS&WIDTH={w}&HEIGHT={h}&FORMAT=image/png&BBOX={x1},{y1},{x2},{y2}&SRS=EPSG:31467&LAYERS=dtk50_v_f&STYLES=&BGCOLOR=0xFFFFFF&TRANSPARENT=TRUE&EXCEPTIONS=application/vnd.ogc.se_inimage&REQUEST=GetMap&VERSION=1.1.1");
                //theMap.ReloadMap();
            }
            else
            {
                //theMap.RemoveWMSLayers();
                //bis auf den Basis Layer werden alle Layer wieder ausgeschaltet ... daher die Abfrage welcher noch aktiv sein muss 
//                if(document.getElementById("idLayerSchutz").checked == true)
//                    //theMap.AddWMSLayer("http://onmaps.de/ggwms?version=1.1.0&request=getmap&bgcolor=0xffffe6&nowatermark=true&format=image/png&dpi=72&TRANSPARENT=true&LAYERS=viabono_flaechen_np&fullalpha=true&WIDTH={w}&HEIGHT={h}&SCALE={s}&BBOX={x1},{y1},{x2},{y2}&truecolor=true&copyright=false"); 
//                    theMap.AddWMSLayer("http://www.geobasisdaten.niedersachsen.de/rds?SERVICE=WMS&WIDTH={w}&HEIGHT={h}&FORMAT=image/png&BBOX={x1},{y1},{x2},{y2}&SRS=EPSG:31467&LAYERS=dtk50_v_f&STYLES=&BGCOLOR=0xFFFFFF&TRANSPARENT=TRUE&EXCEPTIONS=application/vnd.ogc.se_inimage&REQUEST=GetMap&VERSION=1.1.1");
//                if(document.getElementById("idLayerBio").checked == true)
//                    //theMap.AddWMSLayer("http://onmaps.de/ggwms?version=1.1.0&request=getmap&bgcolor=0xffffe6&nowatermark=true&format=image/png&dpi=72&TRANSPARENT=true&LAYERS=viabono_flaechen_bio&fullalpha=true&WIDTH={w}&HEIGHT={h}&SCALE={s}&BBOX={x1},{y1},{x2},{y2}&truecolor=true&copyright=false"); 
//                    theMap.AddWMSLayer("http://www.geobasisdaten.niedersachsen.de/rds?SERVICE=WMS&WIDTH={w}&HEIGHT={h}&FORMAT=image/png&BBOX={x1},{y1},{x2},{y2}&SRS=EPSG:31467&LAYERS=dtk50_v_f&STYLES=&BGCOLOR=0xFFFFFF&TRANSPARENT=TRUE&EXCEPTIONS=application/vnd.ogc.se_inimage&REQUEST=GetMap&VERSION=1.1.1");
                //theMap.ReloadMap();
            }
        }
        
        //      Stellt automatisch einen Layer ein der über die Hauptkarte geschoben/angezeigt wird
//      Layer Naturschutzgebiete
        function ToggleLayerSchutz(checked)
        {
//            if (checked)
//            {
//                //theMap.AddWMSLayer("http://onmaps.de/ggwms?version=1.1.0&request=getmap&bgcolor=0xffffe6&nowatermark=true&format=image/png&dpi=72&TRANSPARENT=true&LAYERS=viabono_flaechen_np&fullalpha=true&WIDTH={w}&HEIGHT={h}&SCALE={s}&BBOX={x1},{y1},{x2},{y2}&truecolor=true&copyright=false"); 
//                theMap.AddWMSLayer("http://www.geobasisdaten.niedersachsen.de/rds?SERVICE=WMS&WIDTH={w}&HEIGHT={h}&FORMAT=image/png&BBOX={x1},{y1},{x2},{y2}&SRS=EPSG:31467&LAYERS=dtk50_v_f&STYLES=&BGCOLOR=0xFFFFFF&TRANSPARENT=TRUE&EXCEPTIONS=application/vnd.ogc.se_inimage&REQUEST=GetMap&VERSION=1.1.1");
//                theMap.ReloadMap();
//            } 
//            else
//            {
//                theMap.RemoveWMSLayers();
//                if(document.getElementById("idLayerNatur").checked == true)
//                    //theMap.AddWMSLayer("http://onmaps.de/ggwms?version=1.1.0&request=getmap&bgcolor=0xffffe6&nowatermark=true&format=image/png&dpi=72&TRANSPARENT=true&LAYERS=viabono_flaechen_ntp&fullalpha=true&WIDTH={w}&HEIGHT={h}&SCALE={s}&BBOX={x1},{y1},{x2},{y2}&truecolor=true&copyright=false"); 
//                    theMap.AddWMSLayer("http://www.geobasisdaten.niedersachsen.de/rds?SERVICE=WMS&WIDTH={w}&HEIGHT={h}&FORMAT=image/png&BBOX={x1},{y1},{x2},{y2}&SRS=EPSG:31467&LAYERS=dtk50_v_f&STYLES=&BGCOLOR=0xFFFFFF&TRANSPARENT=TRUE&EXCEPTIONS=application/vnd.ogc.se_inimage&REQUEST=GetMap&VERSION=1.1.1");
//                if(document.getElementById("idLayerBio").checked == true)
//                    //theMap.AddWMSLayer("http://onmaps.de/ggwms?version=1.1.0&request=getmap&bgcolor=0xffffe6&nowatermark=true&format=image/png&dpi=72&TRANSPARENT=true&LAYERS=viabono_flaechen_bio&fullalpha=true&WIDTH={w}&HEIGHT={h}&SCALE={s}&BBOX={x1},{y1},{x2},{y2}&truecolor=true&copyright=false"); 
//                    theMap.AddWMSLayer("http://www.geobasisdaten.niedersachsen.de/rds?SERVICE=WMS&WIDTH={w}&HEIGHT={h}&FORMAT=image/png&BBOX={x1},{y1},{x2},{y2}&SRS=EPSG:31467&LAYERS=dtk50_v_f&STYLES=&BGCOLOR=0xFFFFFF&TRANSPARENT=TRUE&EXCEPTIONS=application/vnd.ogc.se_inimage&REQUEST=GetMap&VERSION=1.1.1");
//                theMap.ReloadMap();
//            }
        }

        function ToggleLayerLuftbildAn()
        {
            document.getElementById("LuftbildAus").style.visibility = 'hidden';
            document.getElementById("LuftbildAn").style.visibility = 'visible';
            //theMap.AddWMSLayer("http://onmaps.de/ggwms?version=1.1.0&request=getmap&bgcolor=0xffffe6&nowatermark=true&format=image/png&dpi=72&TRANSPARENT=true&LAYERS=viabono_flaechen_bio&fullalpha=true&WIDTH={w}&HEIGHT={h}&SCALE={s}&BBOX={x1},{y1},{x2},{y2}&truecolor=true&copyright=false"); 
            //theMap.AddWMSLayer("http://www.geobasisdaten.niedersachsen.de/rds?SERVICE=WMS&WIDTH={w}&HEIGHT={h}&FORMAT=image/png&BBOX={x1},{y1},{x2},{y2}&SRS=EPSG:31467&LAYERS=dop40_f&STYLES=&BGCOLOR=0xFFFFFF&TRANSPARENT=TRUE&EXCEPTIONS=application/vnd.ogc.se_inimage&REQUEST=GetMap&VERSION=1.1.1");
            //theMap.ReloadMap();
        } 
        
        function ToggleLayerLuftbildAus()
        {
            document.getElementById("LuftbildAus").style.visibility = 'visible';
            document.getElementById("LuftbildAn").style.visibility = 'hidden';
            //theMap.RemoveWMSLayers();
            //if(document.getElementById("idLayerNatur").checked == true)
                //theMap.AddWMSLayer("http://onmaps.de/ggwms?version=1.1.0&request=getmap&bgcolor=0xffffe6&nowatermark=true&format=image/png&dpi=72&TRANSPARENT=true&LAYERS=viabono_flaechen_ntp&fullalpha=true&WIDTH={w}&HEIGHT={h}&SCALE={s}&BBOX={x1},{y1},{x2},{y2}&truecolor=true&copyright=false"); 
            //    theMap.AddWMSLayer("http://www.geobasisdaten.niedersachsen.de/rds?SERVICE=WMS&WIDTH={w}&HEIGHT={h}&FORMAT=image/png&BBOX={x1},{y1},{x2},{y2}&SRS=EPSG:31467&LAYERS=dtk50_v_f&STYLES=&BGCOLOR=0xFFFFFF&TRANSPARENT=TRUE&EXCEPTIONS=application/vnd.ogc.se_inimage&REQUEST=GetMap&VERSION=1.1.1");
            //if(document.getElementById("idLayerSchutz").checked == true)
                //theMap.AddWMSLayer("http://onmaps.de/ggwms?version=1.1.0&request=getmap&bgcolor=0xffffe6&nowatermark=true&format=image/png&dpi=72&TRANSPARENT=true&LAYERS=viabono_flaechen_np&fullalpha=true&WIDTH={w}&HEIGHT={h}&SCALE={s}&BBOX={x1},{y1},{x2},{y2}&truecolor=true&copyright=false"); 
            //    theMap.AddWMSLayer("http://www.geobasisdaten.niedersachsen.de/rds?SERVICE=WMS&WIDTH={w}&HEIGHT={h}&FORMAT=image/png&BBOX={x1},{y1},{x2},{y2}&SRS=EPSG:31467&LAYERS=dtk50_v_f&STYLES=&BGCOLOR=0xFFFFFF&TRANSPARENT=TRUE&EXCEPTIONS=application/vnd.ogc.se_inimage&REQUEST=GetMap&VERSION=1.1.1");
            //theMap.ReloadMap();
         }
        
        
        function KarteMove(x,y)
        {
            // Diese Funktion hier wird aufgerufen während der Mauszeiger in das Karte rumfährt
            // x,y: Geokoordinaten
            var kx = document.getElementById("koordx");
            var ky = document.getElementById("koordy");
            kx.innerHTML="X:"+parseInt(x);
            ky.innerHTML="Y:"+parseInt(y);
            
            var geo=TransGKnachGeo(x,y);
            var gms=TransGeonachGradMinSek(geo[0],geo[1]);
            
            kx.innerHTML=gms[0];
            ky.innerHTML=gms[1];
            
        }
        
        function KarteClick(x,y,px,py)
        {
            // alert("KarteClick:"+x+","+y+","+px+","+py);
            // Diese Funktion hier wird aufgerufen wenn in die Karte geklickt wird
            // x,y: Geokoordinaten
            if(sid!="" && sid!=null && returnUrl!="" && returnUrl!=null)
            {
                theMap.SetFixedPOIAt(x,y,"./mapcontrol/images/pointer.gif","ID1234");
                var uebernahmeElement = document.getElementById("uebernahmeElement");                
                uebernahmeElement.style.visibility="visible";
                var kx = document.getElementById("kx");
                var ky = document.getElementById("ky");
                uebernahmeElement.style.left=px+"px";
                uebernahmeElement.style.top=py+"px";
                kx.innerHTML=parseInt(x);
                ky.innerHTML=parseInt(y);
            }
        }

   /*     function SetPoiUebersichtPosition(){
            var x = event.clientX;//-outerDiv.offsetLeft;
            var y = event.clientY;//-outerDiv.offsetTop;
            var PoiUebersicht = document.getElementById("PoiUebersicht")
            PoiUebersicht.style.left=x+"px";
            PoiUebersicht.style.top=y+"px";
            PoiUebersicht.style.visibility="visible";
        }
     */   

        
   		function addEvent(obj, eventType, afunction, useCaption)
		{
		  if (obj.addEventListener) {
		    obj.addEventListener(evType, afunction, useCaption);
		    return true;
		  } else if (obj.attachEvent) {
		    try{
    		    var retVal = obj.attachEvent("on"+eventType, afunction);
		    }
		    catch(Exception){
		    }
		    return retVal;
		  } else {
		    return false;
		  }
		}
        
        
        function windowMove()
        {
            var arr = GetWindowSize();
            if (theMap != null)
            {
                //Screenshot Left/Top Position
                theMap.ScreenShotLeft = 235 + arr[2];
                theMap.ScreenShotTop = 210 + arr[3];     
            }
        }
        
        
        function windowResize()
        {
            var winW = 0, winH = 0;

            var arr = GetWindowSize();
            
            winW = arr[0];
            winH = arr[1];

            var width = winW;
            var height = winH;
            var mapWidth = width;
            var mapHeight = height;
            /*
            winW = Math.max(winW,1024);
            winH = Math.max(winH,768);
            
            var width = winW-480;    // links + rechts = 480
            var height = winH-255;   // oben + unten = 255
            
            var mapWidth = width-80;
            var mapHeight = height-70;
            */
          
            //SetStyle("DivLeft","height",height+"px");
            
//            SetStyle("DivCenter","width",width+"px");
//            SetStyle("DivCenter","height",height+"px");
            
            // Massstab
            SetStyle("massstabAnzeige","width",(width-60)+"px");
            
            // Kartenrahmen
//            SetStyle("Kartenrahmen","width",(mapWidth)+"px");
//            SetStyle("Kartenrahmen","height",(mapHeight)+"px");            

            // Karte
            SetStyle("outerDiv","width",mapWidth+"px");
            SetStyle("outerDiv","height",mapHeight+"px");
            
            // Impressum anpassen
//            SetStyle("Impressum","top","30px");
//            SetStyle("Impressum","left","40px");
//            SetStyle("Impressum","width",mapWidth+"px");
//            SetStyle("Impressum","height",mapHeight+"px");
            
            // Visitenkarte
            var left =  ((mapWidth-428)/2)+40;
            var top = ((mapHeight-321)/2)+30;
            //SetStyle("divVisitenkarte","top",top+"px");
            //SetStyle("divVisitenkarte","left",left+"px");
            
            // Reiseplaner
            left =  ((mapWidth-276)/2)+40;
            top = ((mapHeight-262)/2)+30;
            //SetStyle("reisetagebuchUebersicht","left",left+"px");
            //SetStyle("reisetagebuchUebersicht","top",top+"px");
            if(q.length==0){
            SetStyle("TooltippUebersicht","left",left+"px");
            SetStyle("TooltippUebersicht","top",top+"px");
            }else{
            SetStyle("TooltippUebersicht","left",0+"px");
            SetStyle("TooltippUebersicht","top",300+"px");
            }
            
            SetStyle("TooltippTour","left",left+"px");
            SetStyle("TooltippTour","top",top+"px");
            // Pfeile berechnen 
            var objMenue = document.getElementById("menu");
            var objUberKarte = document.getElementById("uebersichtskarte");
            
            left = (objMenue.offsetWidth / 2) - 10;
            top = (objMenue.offsetHeight / 2) - 10;
            
            SetStyle("north","left",left+"px");
            SetStyle("north","top",(objUberKarte.offsetTop - 9)+"px");
            
            SetStyle("south","left",left+"px");
            SetStyle("south","top",(objUberKarte.offsetTop + objUberKarte.offsetHeight - 7)+"px");
            
            SetStyle("east","left",(objUberKarte.offsetLeft + objUberKarte.offsetWidth)+ "px");
            SetStyle("east","top",(objUberKarte.offsetTop + (objUberKarte.offsetHeight / 2))+"px");
            
            SetStyle("west","left",(objUberKarte.offsetLeft  - 20) + "px");
            SetStyle("west","top",(objUberKarte.offsetTop + (objUberKarte.offsetHeight / 2))+"px");

            //SetStyle("DivRight","height",height+"px");
            //SetStyle("DivRight","left",(winW-285)+"px");

            // Poikat + Tourbeschreibung
            //SetStyle("PoiAndTour","height",height+"px");

            //SetStyle("DivBottom","width",winW+"px");
            //var yTop = GetOffsetTop(document.getElementById("DivCenter")) + parseInt(document.getElementById("DivCenter").style.height);
            //SetStyle("DivBottom","top",yTop+"px");
                                        
            if (theMap != null)
            {
                //Screenshot Left/Top Position
                theMap.ScreenShotLeft = 235 + arr[2]; //+ (mapWidth-420)/2;
                theMap.ScreenShotTop = 210 + arr[3]; //+ (mapHeight-60)/2;      
                
                theMap.viewportWidth = mapWidth;
                theMap.viewportHeight = mapHeight;
                theMap.CheckTiles();
            }
        }        
        
        
        function InitMap()
        {
            if( typeof(theMap) == "undefined" )
            {
                window.setTimeout("InitMap();",500);
                return;
            }
            theMap.Init();
            if(isZoomSet)
            theMap.bZoom=false;

            var q = new Querystring();
            if (q.get("mapxy") != null)
            {
                scrolldiv.style.overflow = "hidden";
                document.getElementById("whiteLayer").style.visibility = "visible";
                if(q.get("mapsize")!=null){
                    var arrMapsize = q.get("mapsize").split(" ");
                    document.getElementById("outerDiv").style.width = arrMapsize[0]+"px";
                    document.getElementById("outerDiv").style.height = arrMapsize[1]+"px";

                    document.getElementById("outerDiv").style.left = 0+"px";
                    document.getElementById("outerDiv").style.top = 0+"px";
                    document.getElementById("outerDiv").style.zIndex = 10000;
                    document.getElementById("outerDiv").style.backgroundColor="white";
                    
                    document.getElementById("PoiNameLayer").style.width = arrMapsize[0]+"px";
                    document.getElementById("PoiNameLayer").style.height = arrMapsize[1]+"px";
                    document.getElementById("PoiNameLayer").style.visibility = "visible";
                    var qr = new QuerystringReal();
                    
                    document.getElementById("PoiNameShow").innerHTML = qr.get("map_beschrift_feature_text");
                    document.getElementById("PoiNameShow").style.left = Math.round(arrMapsize[0]/2)+"px";
                    document.getElementById("PoiNameShow").style.top = Math.round((arrMapsize[1]/2)-40)+"px";
                    
                    document.getElementById("PoiNameShowShadow").innerHTML = qr.get("map_beschrift_feature_text");
                    document.getElementById("PoiNameShowShadow").style.left = (Math.round(arrMapsize[0]/2)+1)+"px";
                    document.getElementById("PoiNameShowShadow").style.top = (Math.round(arrMapsize[1]/2)-39)+"px";
                    
                    
                    theMap.viewportWidth = arrMapsize[0];
                    theMap.viewportHeight = arrMapsize[1];
                    document.getElementById("innerDiv").style.width = arrMapsize[0]+"px";
                    document.getElementById("innerDiv").style.height = arrMapsize[1]+"px";
                }
                var arrMapcenter = q.get("mapxy").split(" ");
                var arrTmp = arrMapcenter[0].split('.');
                arrMapcenter[0] = arrTmp[0];
                arrTmp = arrMapcenter[1].split('.');
                arrMapcenter[1] = arrTmp[0];
                
                theMap.SetCenter(arrMapcenter[0], arrMapcenter[1]);
                theMap.SetHome(arrMapcenter[0], arrMapcenter[1],1000000);
                
                document.getElementById("massstabAnzeige").value = "1500000";
                theMap.SetWMSBase(theMap.arrWMS[theMap.zoomlevel]);
                theMap.MassstabSetzen();
                arrTmp = new Array(arrMapcenter[0], arrMapcenter[1]);
                theMap.setFixedSucheAt(arrTmp, 'pointer.gif');
                theMap.onmapmousemove = function(){ return false; };
                theMap.onmapmouseclick =  function(){ return false; };
                theMap.onpoiclick =  function(){ return false; };
            }
            else{
                document.getElementById("whiteLayer").style.visibility = "hidden";
                if (q.get("x") == null)
                {
                    theMap.SetCenter(theMap.center[0],theMap.center[1]);
                    theMap.SetHome(theMap.center[0],theMap.center[1],1500000);
                } else {
                    theMap.SetCenter(q.get("x"),q.get("y"));
                    theMap.SetFixedPOIAt(q.get("x"),q.get("y"),"./mapcontrol/images/pointer.gif","ID1234");
                    theMap.SetHome(q.get("x"),q.get("y"),1500000);
                }
                // Massstab einstellen der beim Starten genommen werden soll
                document.getElementById("massstabAnzeige").value = "1500000";
                theMap.SetWMSBase(theMap.arrWMS[theMap.zoomlevel]);
                theMap.MassstabSetzen();

                // Events vom Viewer
                theMap.onmapmousemove = KarteMove;
                theMap.onmapmouseclick = KarteClick;
                theMap.onpoiclick = POIClick;
                window.onresize=windowResize;
                

                if (q.get("scale") != null)
                {
                    var massstabAnzeige = document.getElementById("massstabAnzeige");
                    massstabAnzeige.value = q.get("scale");
                    theMap.MassstabSetzen();
                }
                windowResize();
            }
            // theMap.ZoomBySlider(theMap.maxZoomLevel);  // startet im größten Maßstab
            theMap.ZoomBySlider(theMap.zoomlevel);  // erster Maßstab, in der die Karte das Fenster ausfüllt
            initMenue();
            
            if(currentTourId=="0")
            theMap.SetCenter(startcenter[0],startcenter[1]);
            //window.setTimeout("theMap.showFlaechen()",1000);
         //   theMap.LoadTour(currentTourId);
        }
        
        function StartToggleMeasureDistance(){
            theMap.ToggleMeasureDistance(); 
        }
        
        
        function MassstabSetzen(){
            theMap.MassstabSetzen();
        }
    
/*    function PoiUebersichtKatFuellen(){
        var strPoiUebersichtKat = "<div style='background-color:silver;color:white;text-align:right; cursor:pointer; cursor:hand; ' onclick='document.getElementById(\"PoiUebersichtKategorien\").style.visibility=\"hidden\";'>X&nbsp;</div><b>POI-&Uuml;bersicht</b><br>W&auml;hlen Sie einen der angezeigten POI aus.<ul style='padding-left:0px;'>";
        for(var i = 0; i<theMap.arrPoiUebersichtKat.length; i++){
            strPoiUebersichtKat += "<li><a href='http://neu.ikiss.de/index.phtml?ffmod=adr&FID="+theMap.arrPoiUebersichtKat[i][13]+"' target='_blank'>"+theMap.arrPoiUebersichtKat[i][1]+"</a></li>";
        }
        strPoiUebersichtKat+="</ul>";
        document.getElementById("PoiUebersichtKategorien").innerHTML = strPoiUebersichtKat;
        document.getElementById("PoiUebersichtKategorien").style.visibility = "visible";
    }
  */  
  
    // Stellt das Zoombild ein
    function setZoom(id){
        // wird in "TheMap" gesetzt.
    }
    
    function CheckLayer(){
        if(theMap.dimmed!=document.form1.chkDimm.checked){
            theMap.ToggleDim();
        }
        var iTest = 0;
        if(document.form1.chkWald.checked==false)
            iTest = iTest+10;
        if(document.form1.chkEBahn.checked==false)
            iTest = iTest+5;
        theMap.iLayer = iTest;
        theMap.SetWMSBase(theMap.arrWMS[m_zoomid+theMap.iLayer]);
        theMap.MassstabSetzen();
    }
    
    function PoiKategorienAnzeigen(){
        strPoiKatGewaehltGesamt = "";
        for(var i = 0; i<arrMenueKat.length; i++){
            if(arrMenueKat[i][4]==true){
			    if(strPoiKatGewaehltGesamt=="")
				    strPoiKatGewaehltGesamt=arrMenueKat[i][1];
			    else
				    strPoiKatGewaehltGesamt += ";"+arrMenueKat[i][1];
            }
        }
        theMap.checkTilesPoikatChange();
    }
    
    function setAllPoikat(){
	    // Schleife
	    for(var i = 0; i<arrMenueKat.length; i++){
            arrMenueKat[i][4]=document.form1.chkAllPoikat.checked;
        }
        theMap.menueAusklappen("");

    }
 
    function setCenter(x,y)
    {
        //theMap.SetCenter(x,y);
        

        theMap.centerSuche(x,y);
    }
    
    function SetCenterOrt(argKoordinaten){
        var arrKoord = argKoordinaten.split(";");
        theMap.SetCenter(arrKoord[0], arrKoord[1]);
    }
    
   
    
        function printMap(){
            document.getElementById("ContainerLayer").style.visibility="hidden";
            document.getElementById("selTourAuswahl").style.visibility="hidden";
            document.getElementById("selTourorte").style.visibility="hidden";
            document.getElementById("whiteLayer").style.visibility = "visible";
            var outerDiv = document.getElementById("outerDiv").style;
            outerDiv.width = 640+"px";
            outerDiv.height = (Fensterhoehe()-120)+"px";
            outerDiv.left = 0+"px";
            outerDiv.top = 75+"px";
            outerDiv.zIndex = 10000;
            outerDiv.backgroundColor="white";
            document.getElementById("printheader").style.visibility="visible";
            document.getElementById("printmenue").style.visibility="visible";
            document.getElementById("printmenue").style.top = (Fensterhoehe()-45)+"px";
            document.getElementById("scrolldiv").style.overflow="hidden";
            document.getElementById("hilfetext").style.visibility = "hidden";
        }
        
        function printMapAufloesen(){
            document.getElementById("ContainerLayer").style.visibility="visible";
            document.getElementById("selTourAuswahl").style.visibility="visible";
            document.getElementById("selTourorte").style.visibility="visible";
            document.getElementById("whiteLayer").style.visibility = "hidden";
            var outerDiv = document.getElementById("outerDiv").style;
            outerDiv.width = 450+"px";
            outerDiv.height = 450+"px";
            outerDiv.left = 205+"px";
            outerDiv.top = 100+"px";
            outerDiv.zIndex = 100;
            outerDiv.backgroundColor="white";
            document.getElementById("printheader").style.visibility="hidden";
            document.getElementById("printmenue").style.visibility="hidden";
            document.getElementById("scrolldiv").style.overflow="auto";
            document.getElementById("hilfetext").style.visibility = "visible";
        }

    function Nothing()
    {
        ;
    }

    function RouteDrucken()
    {
        
        if (theMap.startPoint[0] != 0)
		{
			var text = document.getElementById("RouteDetailBeschreibung").innerHTML;

			var sx = theMap.startPoint[0];
			var sy = theMap.startPoint[1];
			if (theMap.endPoint[0] != 0)        
			{
				
				if( text.indexOf("Tourenplanung vom ") != -1 )
				{
				    var ex = theMap.endPoint[0];
				    var ey = theMap.endPoint[1];
				    
				    
				    if(document.all)
				        text = document.getElementById("RouteDetailBeschreibung").innerText.replace(/\n/g, ";").replace(/\r/g, "");
                    else
                       text = document.getElementById("RouteDetailBeschreibung").textContent.replace(/\n/g, ";").replace(/\r/g, ""); 
				    
                    //Das KeyArray wird erstellt
                    keys = new Array(9);
                    keys[0] = "wms";
                    keys[1] = "x";
                    keys[2] = "y";
                    keys[3] = "tourId";
                    keys[4] = "sx";
                    keys[5] = "sy";
                    keys[6] = "ex";
                    keys[7] = "ey";
                    keys[8] = "beschreibung";
                    keys[9] = "lmin";
                    keys[10] = "lmax";
                    
                    //Das ValueArray wird erstellt
                    values = new Array(9);
                    values[0] = escape(theMap.m_wmsBase);
                    values[1] = theMap.links;
                    values[2] = theMap.unten;
                    values[3] = theMap.currentTour;
                    values[4] = sx;
                    values[5] = sy;
                    values[6] = ex;
                    values[7] = ey;
                    values[8] = text;
                    values[9] = theMap.XMinLeft + " " + theMap.YMinLeft;
                    values[10] = theMap.XMaxLeft + " " + theMap.YMaxLeft;
				    
				    var WindowPara = "status=no,toolbar=no,menubar=no,location=no,resizable=no,dependent=yes";
				    
				    var url ="./PDFRoute.aspx?wms=" + escape(theMap.m_wmsBase)+"&w="+theMap.meterX+"&h="+theMap.meterY;
				    
				     for (var i=0;i<theMap.zwischenpunkte.size();i++)
                    {
                        url=url+"&zw"+i+"x="+theMap.zwischenpunkte.getAt(i)[0];
                        url=url+"&zw"+i+"y="+theMap.zwischenpunkte.getAt(i)[1];
                    }
            
				    openWindowWithPost(url,"wndRouting",keys,values, WindowPara)
				}
                else{
                    alert("Es sind keine Routendaten vorhanden.");
                }
			}
			else
			{
				alert("Kein Ziel gesetzt!");
			}
		}
		else
		{
			alert("Kein Startpunkt gesetzt!");
		}

    }
    
    function TourDrucken(TourId)
    {
        var url = "PdfMerkerListe.aspx?PoiId=&TourenId="+TourId+"&wms="+escape(theMap.m_wmsBase)+"&lmin="+theMap.XMinLeft + " " + theMap.YMinLeft +"&lmax="+theMap.XMaxLeft + " " + theMap.YMaxLeft+"&tmin="+theMap.XMinTop + " " + theMap.YMinTop+"&tmax="+theMap.XMaxTop + " " + theMap.YMaxTop;

    	    wndMerkerliste = winOpen(url,"wndMerkerliste",400,300,"status=no,toolbar=no,menubar=no,location=no,resizable=no,dependent=yes");
    
//        var objTourInfo = document.getElementById("TourInfo");
//        
//        if (objTourInfo != null)
//        {
//            var text = objTourInfo.innerHTML;
//            if(     ( text != "" )
//                &&  ( text.indexOf("Tourenplanung vom ") == -1 )
//                &&  (currentTourId != "")
//              )
//            {
//                var url = "TourDrucken.aspx?tourId=" + TourId;
//                winOpen(url,'Toureninformation', 1024, 600,'scrolling=yes,scrollbar=yes,scrollbars=yes,scroll=yes');
//            }
//            else{
//                alert("Es sind keine Tourinformationen vorhanden.");
//            }
//        }
    }
    
    function RouteExportieren()
    {
        if(     ( theMap.startPoint[0] > 0 ) 
            &&  ( theMap.startPoint[1] > 0 )
            &&  ( theMap.endPoint[0] > 0 )            
            &&  ( theMap.endPoint[1] > 0 ) 
          )
        {
            var sx = theMap.startPoint[0];
            var sy = theMap.startPoint[1];
            var ex = theMap.endPoint[0];
            var ey = theMap.endPoint[1];
            
            var url="./ExportRoute.aspx?tourId="+currentTourId+"&sx="+sx+"&sy="+sy+"&ex="+ex+"&ey="+ey;
            for (var i=0;i<theMap.zwischenpunkte.size();i++)
            {
                url=url+"&zw"+i+"x="+theMap.zwischenpunkte.getAt(i)[0];
                url=url+"&zw"+i+"y="+theMap.zwischenpunkte.getAt(i)[1];
            }
            location.href=url;
        }
        else{
            alert("Es sind keine Routendaten vorhanden.");
        }
    }
    
/*
 *  > Firefox
 */
   // Funktion zum zeichnen der Touren im Firefox
    function getms(start, stop)
    {
        var s1 = (stop.getMinutes()*60*100) + (stop.getSeconds()*1000) + stop.getMilliseconds();
        var s2 = (start.getMinutes()*60*100) + (start.getSeconds()*1000) + start.getMilliseconds();
        return parseInt(s1-s2);
    }
    
    function FlaechenZeichnenCanvas(strKoordinaten, sId, sColor, sOpacity)
    {
        // Die Koordinaten stehen alle in einem String und müssen getrennt werden
        var arrKoordinaten = strKoordinaten.split(",");
        // Canvas erzeugen wenn es noch nicht existiert
        var canvas = document.getElementById(sId);
        
        if (canvas != null)
        {
            // Zeichnen anfangen
            var ctx = canvas.getContext("2d");
            ctx.beginPath();
            ctx.lineWidth=2;
            //ctx.strokeStyle = sColor;
            
            ctx.fillStyle = sColor;
            
            
            for(var i = 0; i<arrKoordinaten.length; i++){
            
                arrKoords = arrKoordinaten[i].split(" ");
                if(i==0)
                    ctx.moveTo((arrKoords[0]), (arrKoords[1]));
                else
                    ctx.lineTo((arrKoords[0]), (arrKoords[1]));
            }
            ctx.globalAlpha = parseInt(sOpacity)/100;
            ctx.fill();
            ctx.closePath();
        }
    }
    
    function getms(start, stop)
    {
        var s1 = (stop.getMinutes()*60*100) + (stop.getSeconds()*1000) + stop.getMilliseconds();
        var s2 = (start.getMinutes()*60*100) + (start.getSeconds()*1000) + start.getMilliseconds();
        return parseInt(s1-s2);
    }
    
   function TourZeichnenCanvas(strKoordinaten, iMaxX, iMaxY, iMinX, iMinY, bgColor, fgColor, strKoordinatenReal, bSave)
    { 
   //  var start = new Date();
        //////////////////////////////////////   
        // >vorherige Route löschen im Firefox
        //////////////////////////////////////   
        if( bSave )
        {
            tourKoordinaten = strKoordinaten;
            tourKoordinatenReal = strKoordinatenReal;
            tourbgColor = bgColor;
            tourfgColor = fgColor;
            iCanvasMinX = iMinX;
            iCanvasMinY = iMinY;
            iCanvasMaxX = iMaxX;
            iCanvasMaxY = iMaxY;
        }
        //////////////////////////////////////   
        // >vorherige Route löschen im Firefox
        //////////////////////////////////////   
        //ctx.clearRect(0,0,(iCanvasMaxX-iCanvasMinX+10),(iCanvasMaxY-iCanvasMinY+10));
        if( iCanvasCounter > 0 ){
            iCanvasCounter = 0;
            TourZeichnenCanvas(tourKoordinaten, iCanvasMaxX, iCanvasMaxY, iCanvasMinX, iCanvasMinY, tourbgColor, tourfgColor, tourKoordinatenReal, false);
        }
        iCanvasCounter++;
        //////////////////////////////////////   
        // <vorherige Route löschen im Firefox
        //////////////////////////////////////   
        
//        document.getElementById("warnungFirefox").style.visibility="visible";
//        var start = new Date();
        // Die Koordinaten stehen alle in einem String und müssen getrennt werden
        
        var arrKoordinaten = strKoordinaten.split(";;;");
        
        // Canvas erzeugen wenn es noch nicht existiert
        var canvas = document.getElementById("canvas");
        if(canvas==null){
            canvas = document.createElement("canvas");
            canvas.id="canvas";
        }
        // Höhe/Breite anhand der übergebenen Koordinaten bestimmen
        canvas.setAttribute('width', (iMaxX-iMinX+10)+''); 
        canvas.setAttribute('height', (iMaxY-iMinY+10)+'');

        // Zeichnen anfangen
        var ctx = canvas.getContext("2d");

        // breite Linie
       
        ctx.strokeStyle = bgColor;
        var iZaehlerKoordinaten = 0;
       
        var oldcolors=new Array();

        
        for(var i = 0; i<arrKoordinaten.length; i++){
        
            var line=arrKoordinaten[i].substr(arrKoordinaten[i].indexOf("]")+1);
            var colors=arrKoordinaten[i].substr(1,arrKoordinaten[i].indexOf("]")-1).split(",");
            
            if(oldcolors[1]!=colors[1] && oldcolors.length!=0){
            ctx.stroke();
            ctx.closePath();
            }
            
            if(oldcolors[1]!=colors[1]){
            ctx.beginPath();
            ctx.lineWidth=6;
            ctx.strokeStyle = colors[1];
            oldcolors=colors;
            }
            
            arrKoordinatenPaare = line.split(";;");
            for(idx = 0; idx<arrKoordinatenPaare.length; idx++){
                arrKoords = arrKoordinatenPaare[idx].split(";");
                if(idx==0)
                    ctx.moveTo((arrKoords[0]-iMinX+5), (arrKoords[1]-iMinY+5));
                else
                    ctx.lineTo((arrKoords[0]-iMinX+5), (arrKoords[1]-iMinY+5));
                    iZaehlerKoordinaten++;
            }
            
        }
        
        ctx.stroke();
        ctx.closePath();
        
        // schmale Linie
        ctx.strokeStyle = fgColor;
        ctx.lineWidth=2;
        
        oldcolors=new Array();
        
        arrTourstreckeKoord = new Array(iZaehlerKoordinaten);
        iZaehlerKoordinaten = 0;
        //debugger;
        for(var i = 0; i<arrKoordinaten.length; i++){
        
            var line=arrKoordinaten[i].substr(arrKoordinaten[i].indexOf("]")+1);
            var colors=arrKoordinaten[i].substr(1,arrKoordinaten[i].indexOf("]")-1).split(",");
             
             
             if(oldcolors[0]!=colors[0] && oldcolors.length!=0){
                ctx.stroke();
                ctx.closePath();
             }
            
            if(oldcolors[0]!=colors[0]){
            ctx.beginPath();
            ctx.lineWidth=2;
            ctx.strokeStyle = colors[0];
            oldcolors=colors;
            }
            
            arrKoordinatenPaare = line.split(";;");
            for(var idx = 0; idx<arrKoordinatenPaare.length; idx++){
                arrKoords = arrKoordinatenPaare[idx].split(";");
                arrTourstreckeKoord[iZaehlerKoordinaten] = new Array((arrKoords[0]), (arrKoords[1]));
                if(idx==0)
                    ctx.moveTo((arrKoords[0]-iMinX+5), (arrKoords[1]-iMinY+5));
                else
                    ctx.lineTo((arrKoords[0]-iMinX+5), (arrKoords[1]-iMinY+5));
                iZaehlerKoordinaten++;
            }
             
        }
        
          ctx.stroke();
          ctx.closePath();
        
        var iXPosCanvas = (iMinX-5);
        var iYPosCanvas = (iMinY-5);
        canvas.style.left =  iXPosCanvas + "px";
        canvas.style.top =  iYPosCanvas+ "px";
        
        arrKoordinatenPaare = strKoordinatenReal.split(";;");
        for(i = 0; i<arrKoordinatenPaare.length; i++){
            arrKoords = arrKoordinatenPaare[i].split(";");
            arrTourstreckeKoordReal[i] = new Array(arrKoords[0], arrKoords[1]);
        }
        
        
      //    var stop = new Date();
      //  alert( "Zeit:" + getms(start,stop));
        
  }
    
 
    function RoutingZeichnenCanvas(strKoordinaten, bgColor, fgColor){
        //////////////////////////////////////   
        // >vorherige Route löschen im Firefox
        //////////////////////////////////////   
        //ctx.clearRect(0,0,(iCanvasMaxX-iCanvasMinX+10),(iCanvasMaxY-iCanvasMinY+10));
        if( iCanvasCounter > 0 ){
            TourZeichnenCanvas(tourKoordinaten, iCanvasMaxX, iCanvasMaxY, iCanvasMinX, iCanvasMinY, tourbgColor, tourfgColor, tourKoordinatenReal, false);
        }
        iCanvasCounter++;
        //////////////////////////////////////   
        // <vorherige Route löschen im Firefox
        //////////////////////////////////////   
        
        
//        document.getElementById("warnungFirefox").style.visibility="visible";
        // Die Koordinaten stehen alle in einem String und müssen getrennt werden
        var arrKoordinaten = strKoordinaten.split(";;;");
        // Canvas erzeugen wenn es noch nicht existiert
        var canvas = document.getElementById("canvas");

        // Zeichnen anfangen
        var ctx = canvas.getContext("2d");
     
        ctx.beginPath();
        ctx.lineWidth=3;
        //ctx.strokeStyle = "red";
        ctx.strokeStyle = fgColor;
        for(var i = 0; i<arrKoordinaten.length; i++){
            arrKoordinatenPaare = arrKoordinaten[i].split(";;");
            for(var idx = 0; idx<arrKoordinatenPaare.length; idx++){
                arrKoords = arrKoordinatenPaare[idx].split(";");
                if(idx==0)
                    ctx.moveTo((arrKoords[0]-iCanvasMinX+5), (arrKoords[1]-iCanvasMinY+5));
                else
                    ctx.lineTo((arrKoords[0]-iCanvasMinX+5), (arrKoords[1]-iCanvasMinY+5));
            }
        }
        ctx.stroke();
        ctx.closePath();
//        document.getElementById("warnungFirefox").style.visibility="hidden";
    }
        
    function checkKlickAufTour(event){
		var ScrollTop = document.body.scrollTop;
		
        if (ScrollTop == 0)
        {
            if (window.pageYOffset)
                ScrollTop = window.pageYOffset;
            else
                ScrollTop = (document.body.parentElement) ? document.body.parentElement.scrollTop : 0;
        }
        
        var ScrollLeft = document.body.scrollLeft;
        if (ScrollLeft == 0)
        {
            if (window.pageXOffset)
                ScrollLeft = window.pageXOffset;
            else
                ScrollLeft = (document.body.parentElement) ? document.body.parentElement.scrollLeft : 0;
        }

        var outerDiv = document.getElementById("outerDiv");
        var arrScrolling = showScrolling();
        var y = -stripPx(outerDiv.offsetTop)+event.clientY+ScrollTop;
		var x = -stripPx(outerDiv.offsetLeft)+event.clientX-stripPx(outerDiv.offsetParent.offsetLeft)+ScrollLeft;

//        var outerDiv = document.getElementById("outerDiv");
//        var arrScrolling = showScrolling();
//                
//		var y = event.clientY - 205;
//		var x = event.clientX - 235;
		
        var gc = theMap.TransformMousePosToGeoCoord(x,y);
        var iStrecke = 400;
        var iStreckeNeu = 400;
        var iKoordinaten = 0;
        var ix = 0;
        var iy = 0;
        
        for(var i = 0; i<arrTourstreckeKoord.length; i++){
            ix = (gc[0]-arrTourstreckeKoordReal[i][0]);
            if(ix<0)
                ix = ix*-1;
            iy = (gc[1]-arrTourstreckeKoordReal[i][1]);
            if(iy<0)
                iy = iy*-1;
            iStreckeNeu =  ix + iy;
            if(iStreckeNeu<iStrecke){
            
                iStrecke = iStreckeNeu;
                iKoordinaten = i;
            }
        }
 
        if(parseInt(iStrecke)<400){
            //var gc = theMap.TransformMousePosToGeoCoord(x,y);
                        
            switch(clickMode)
            {
                case 1:
				    theMap.startPoint[0]=gc[0];
				    theMap.startPoint[1]=gc[1];
                    theMap.SetFixedPOIAt(gc[0],gc[1],"./images/start.gif","start.gif");
                    break;
                case 2:
				    theMap.endPoint[0]=gc[0];
				    theMap.endPoint[1]=gc[1];
                    theMap.SetFixedPOIAt(gc[0],gc[1],"./images/ziel.gif","ziel.gif");
                    break;
                case 3:
                    //debugger;
                    theMap.zwischenpunkte.push(gc);
                    theMap.SetFixedPOIAt(gc[0],gc[1],"./images/zwstop.gif","zwstop"+theMap.zwpCounter);
                    var liste = document.getElementById("zwliste");
                    var oOption = document.createElement("OPTION"); 
                    oOption.text=theMap.zwpCounter+". Zwischenpunkt"; 
                    oOption.value=gc; 
                    oOption.id=theMap.zwpCounter;
                    var FolgendeOption = null;
                    if (document.all)
                        FolgendeOption = liste.length;
                    liste.add(oOption,FolgendeOption);                 
                    theMap.zwpCounter++;
                break;
            }
        }
    }
/*
 *  < Firefox
 */
        
/*
 * XML 
 */
////////////////////////////////////////////////////////////////////////////////////////////////
    function loadXMLDoc(url,obj) 
	{
		if (requestActive==false)
		{
			requestActive=true;
			if (window.XMLHttpRequest) {
				req = new XMLHttpRequest();
				req.onreadystatechange = function(a){processReqChange(obj)};
				req.open("GET", url, true);
				req.send(null);
			} else if (window.ActiveXObject) {
				req = new ActiveXObject("Microsoft.XMLHTTP");
				if (req) {
					req.onreadystatechange = function(a){processReqChange(obj)};
					req.open("GET", url, true);
					req.send();
				}
			}
		} else {
			ajaxQueue.enqueue(url);
		}
	}
	

    function openWindowWithPost(url,name,keys,values,WindowPara)
    {
        //var newWindow = winOpen("./Leer.aspx", name, 1024, 768, WindowPara); 
        var div = document.getElementById("PostDiv");
        
      //  if (!newWindow) return false;
        var html = "";
        html += "<form name='formid' target='_self' id='formid' method='post' action='" + url + "'>";
        if (keys && values && (keys.length == values.length))
        for (var i=0; i < keys.length; i++)
        html += "<input type='hidden' name='" + keys[i] + "' value='" + values[i] + "'/>";
        html += "</form>";
        div.innerHTML = html;
        
        
        if(!document.all)
            document.getElementsByName('formid')[0].submit();
        else
            document.getElementById("formid").submit();
        
        //return newWindow;
    }
    
    
    function getXMLObject(httpRequest)
    {
        var xmlObj = null;
        if (window.ActiveXObject) 
        {
            xmlObj = httpRequest.responseXML;
///////////////////////////////////////////////////////////////////
//    diese Version ist langsamer !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!            
//            var xmlObj = new ActiveXObject("Microsoft.XMLDOM");
//            xmlObj.loadXML(httpRequest.responseText);
        } else if (document.implementation) {
            // für Modzilla 
            xmlObj = (new DOMParser()).parseFromString(httpRequest.responseText, "text/xml");
        }
        
        return xmlObj;
    }    
    

    function processReqChange(thisObj) 
	{
		if (req.readyState==4)
		{
		  if (req.status==200)
		  {
             xmlObj = getXMLObject(req);
             if( xmlObj == null )
             {
                    return;
             }
            
            
            if (xmlObj.getElementsByTagName("Flaechen").length > 0)
			{	
			    var nI, nJ, nK;
			    var sDiv = "";
			    var sFlaechenElement = "";
			    var bNew = false;
			    bRun = false;
			    
			    
			    var innerDiv = document.getElementById("innerDiv");
			    var Flaechendiv = document.getElementById("Flaechen")
                if (Flaechendiv == null)
                {
                    Flaechendiv = document.createElement("div");
                    Flaechendiv.id = "Flaechen";
                }
			    
			    innerDiv.appendChild(Flaechendiv);
			    var objElement = xmlObj.getElementsByTagName("Flaechen")[0];    
                var arrFlaechenKatIDs = objElement.childNodes[objElement.childNodes.length-1].attributes[0].value.split(";");
                
                for(nI=0; nI<arrFlaechenKatIDs.length; nI++)
                {
                    if (!isExistsFlaechenDiv("Flaeche" + arrFlaechenKatIDs[nI]))
                    {
                        bNew = true;
                        break
                    }    
                
                }
                
                if (bNew)
                {
	                for(nI=0; nI<objElement.childNodes.length - 1; nI++)
	                {
	                    sFlaechenElement = "";
	                    sFlaechenElement = objElement.childNodes[nI].attributes[0].value;
	                    sDiv += sFlaechenElement;
	                    if (objElement.childNodes[nI].attributes[1].value == "-")
	                    {
	                        if (sFlaechenElement!="")
	                        {
	                            var sCanvasID = GetCanvasID(sFlaechenElement);
	                            var sColor = objElement.childNodes[nI].attributes[3].value
	                            var sOpacity = objElement.childNodes[nI].attributes[4].value
    			                
	                            if (sCanvasID != "")
	                                setTimeout("FlaechenZeichnenCanvas('"+objElement.childNodes[nI].attributes[2].value+"','" + sCanvasID +"','" + sColor + "','" + sOpacity + "');", 1);
	                        }
	                    }
	                }
                    
                    Flaechendiv.innerHTML = sDiv; 
			    }
            }
            
            if (xmlObj.getElementsByTagName("tourFrame").length > 0)
            {
                var objElement = xmlObj.getElementsByTagName("tourFrame")[0];
                var MinX = objElement.getAttribute("MinX");
                var MinY = objElement.getAttribute("MinY");
                var MaxX = objElement.getAttribute("MaxX");
                var MaxY = objElement.getAttribute("MaxY");
                
                // todo: Screen laden mit Tourkoordinaten MinX.....
            }
            if (xmlObj.getElementsByTagName("AreaToolTipp").length > 0)
            {
                var objElement = xmlObj.getElementsByTagName("AreaToolTipp")[0];
                
                if (objElement.attributes.length > 0)
                {
                    var sAreaName = objElement.getAttribute("AreaName");
                    var x = objElement.getAttribute("x");
                    var y = objElement.getAttribute("y");
                    var mouseX = objElement.getAttribute("mouseX");
                    var mouseY = objElement.getAttribute("mouseY");
                    
                    var AreaToolTipp = document.getElementById("AreaToolTipp");
                    AreaToolTipp.style.visibility="visible";
                    AreaToolTipp.style.left = mouseX;
                    AreaToolTipp.style.top = mouseY - 10;
                    AreaToolTipp.innerHTML = sAreaName;
                }
            }
            if (xmlObj.getElementsByTagName("visitenkarteninfo").length > 0)
            {
                
                var objElement = xmlObj.getElementsByTagName("visitenkarteninfo")[0];
                arrVisitenkarte = new Array(
                objElement.getAttribute("name"),
                objElement.getAttribute("poiKatId"),		//index 1
                objElement.getAttribute("symbol"),	
                objElement.getAttribute("poiKatName"),
                objElement.getAttribute("strasse"),
                objElement.getAttribute("hausNr"),			//index 5
                objElement.getAttribute("plz"),
                objElement.getAttribute("ort"),
                objElement.getAttribute("adressZusatz"),
                objElement.getAttribute("telefon"),
                objElement.getAttribute("telefax"),			//index 10
                objElement.getAttribute("bild"),
                objElement.getAttribute("logo"),
                objElement.getAttribute("koord_x"),
                objElement.getAttribute("koord_y"),
                objElement.getAttribute("erstellt"),		//index 15
                objElement.getAttribute("info"),
                objElement.getAttribute("beschreibung"),	//index 17
                objElement.getAttribute("oeffnungszeiten"),
                objElement.getAttribute("anfahrt"),			//index 19
                objElement.getAttribute("poiId"),			
                objElement.getAttribute("poiAnzeige"),		//index 21
                objElement.getAttribute("buchungslink"),
                objElement.getAttribute("infolink"),
                objElement.getAttribute("hvvlink"),         //index 24
                objElement.getAttribute("terminlink"),
                objElement.getAttribute("terminname"),       //index 26
                objElement.getAttribute("pdfName"),          
                objElement.getAttribute("pdfLink"),        
                objElement.getAttribute("drucken"),
                objElement.getAttribute("arrPoiName"),      // index 30 
                objElement.getAttribute("email"),
                objElement.getAttribute("visit"),
                objElement.getAttribute("AttributName"),
                objElement.getAttribute("AttributId"),
                objElement.getAttribute("besuchsdauer"),
                objElement.getAttribute("internet"),
                objElement.getAttribute("packet")
                );
                setTimeout("VisitenkarteNeuFuellen();", 1);
                loadInfo(2);
                
                //Der Default Text wird ausgeblendet
                document.getElementById("DefaultText").style.visibility = "hidden";
                document.getElementById("btnDruckenImg").style.visibility = "visible";
                
                var visitenkarte = document.getElementById("divVisitenkarte");
                visitenkarte.style.visibility="visible";
             }
             
             if (xmlObj.getElementsByTagName("kategorien").length > 0)
            {
                var strMenueInhalt = "";
                var iZaehler = 0;
                var tmpHauptkat = "";
                var tmpKategorietyp = "";
                var tmpKatName = "";
                var tmpZaehler= 0;
                var tmpSymbol = "";
                
                for(var i = 0; i<xmlObj.getElementsByTagName("kategorie").length; i++){
                    var objElement = xmlObj.getElementsByTagName("kategorie")[i];
                    if(objElement.getAttribute("kategorietyp")=="hauptkat"){
                        tmpHauptkat = objElement.getAttribute("id");
                        tmpSymbol = objElement.getAttribute("symbol");
                        tmpKategorietyp= objElement.getAttribute("kategorietyp");
                        tmpKatName = objElement.getAttribute("name");
                        tmpZaehler = iZaehler;
                        arrMenueKat[iZaehler] = new Array(objElement.getAttribute("kategorietyp"), objElement.getAttribute("id"), objElement.getAttribute("name"), "noUkat", false, objElement.getAttribute("symbol"));
                    }
                    else{
                        arrMenueKat[iZaehler] = new Array(objElement.getAttribute("kategorietyp"), objElement.getAttribute("id"), objElement.getAttribute("name"), tmpHauptkat, false, objElement.getAttribute("symbol"));
                        arrMenueKat[tmpZaehler] = new Array(tmpKategorietyp, tmpHauptkat, tmpKatName, "ukat", false, tmpSymbol);
                    }
                    iZaehler++;
                }
                theMap.iAnzahlKategorien = iZaehler;
                theMap.bMenueLaden = false;
   //             theMap.menueAusklappen("");
                
                if (theMap.FirstKatRun){
                    if(setPoiKatid!=0)
                        theMap.setPoiKat(210, setPoiKatid); 
                    else
                        theMap.setPoiKat(210, ""); 
                     
                  }
            }
             
			// Hallotest+
		/*	if (xmlObj.getElementsByTagName("kategorien").length > 0)
			{
				var strMenueInhalt = "";
				var iZaehler = 0;
				var tmpHauptkat = "";
				var tmpKategorietyp = "";
				var tmpKatName = "";
				var tmpZaehler= 0;
				
				for(var i = 0; i<xmlObj.getElementsByTagName("kategorie").length; i++){
					var objElement = xmlObj.getElementsByTagName("kategorie")[i];
					//if(objElement.getAttribute("kategorietyp")=="hauptkat"){
						tmpHauptkat = objElement.getAttribute("id");
						//tmpUnterkat = objElement.getAttribute("idUnterkat");
						tmpSymbol = objElement.getAttribute("symbol");
						tmpKategorietyp= objElement.getAttribute("kategorietyp");
						tmpKatName = objElement.getAttribute("name");
						tmpZaehler = iZaehler;
					    arrMenueKat[iZaehler] = new Array(objElement.getAttribute("kategorietyp"), objElement.getAttribute("id"), objElement.getAttribute("name"), "noUkat", false, objElement.getAttribute("idUnterkat"));
					//}
					//else{
					//    tmpUnterkat = objElement.getAttribute("idUnterkat");
					//	tmpSymbol = objElement.getAttribute("symbol");
					//	tmpKategorietyp= objElement.getAttribute("kategorietyp");
					//	tmpKatName = objElement.getAttribute("name");
					//	arrMenueKat[iZaehler] = new Array(objElement.getAttribute("kategorietyp"), objElement.getAttribute("idUnterkat"), objElement.getAttribute("name"), "Ukat", false, objElement.getAttribute("symbol"));
						
						//arrMenueKat[iZaehler] = new Array(objElement.getAttribute("kategorietyp"), objElement.getAttribute("id"), objElement.getAttribute("name"), tmpHauptkat, false, objElement.getAttribute("symbol"));
						//arrMenueKat[tmpZaehler] = new Array(tmpKategorietyp, tmpHauptkat, tmpKatName, "ukat", false, tmpSymbol);
					//}
					iZaehler++;
				}
				theMap.iAnzahlKategorien = iZaehler;
				theMap.bMenueLaden = false;
				theMap.menueAusklappen("");
			}*/
			/*
			// Adresssuche
            if (xmlObj.getElementsByTagName("adresspoisuche").length > 0)
            {
                arrSuche = new Array();
                for(var i = 0; i<xmlObj.getElementsByTagName("punkt").length; i++){
                    var objElement = xmlObj.getElementsByTagName("punkt")[i];
                    arrSuche[i] = new Array(objElement.getAttribute("bezeichner"),
                    objElement.getAttribute("name"),
                    objElement.getAttribute("koordx"),
                    objElement.getAttribute("koordy"),
                    objElement.getAttribute("strasse"),
                    objElement.getAttribute("hausNr"));
                }
                if(arrSuche.length==0)
                    alert("Keine Einträge zu Ihrem Sucheintrag gefunden");
                else if(arrSuche.length==1)
                    setTimeout("thisObj.centerSuche('"+arrSuche[0][2]+"', '"+arrSuche[0][3]+"');", 1);
                else
                    thisObj.ShowSuchergebnis();
            }
            */
             if (xmlObj.getElementsByTagName("adresssuche").length > 0)
            {
                arrSuche = new Array();
                for(var i = 0; i<xmlObj.getElementsByTagName("punkt").length; i++){
                    var objElement = xmlObj.getElementsByTagName("punkt")[i];
                    arrSuche[i] = new Array(objElement.getAttribute("strasse"),
                    objElement.getAttribute("hausNr"),
                    objElement.getAttribute("plz"),
                    objElement.getAttribute("ort"),
                    objElement.getAttribute("koordx"),
                    objElement.getAttribute("koordy"),
                    objElement.getAttribute("name"),
                    objElement.getAttribute("kategorie"),
                    objElement.getAttribute("kategorieId"),
                    objElement.getAttribute("regionname"));
                }
                if(arrSuche.length==0)
                    alert("Keine Einträge zu Ihrem Sucheintrag gefunden");
                else
                    ShowSuchergebnis();
            }
            
            
            if (xmlObj.getElementsByTagName("poiuebersicht").length > 0)
            {
                poiueb = new Array();
                for(var i = 0; i<xmlObj.getElementsByTagName("poiuebersicht").length; i++){
                    var objElement = xmlObj.getElementsByTagName("poiuebersicht")[i];
                    poiueb[i] = new Array(objElement.getAttribute("name"),
                    objElement.getAttribute("poiKatId"),
                    objElement.getAttribute("symbol"),
                    objElement.getAttribute("poiKatName"),
                    objElement.getAttribute("strasse"),
                    objElement.getAttribute("hausNr"),
                    objElement.getAttribute("plz"),
                    objElement.getAttribute("ort"),
                    objElement.getAttribute("adressZusatz"),
                    objElement.getAttribute("telefon"),
                    objElement.getAttribute("telefax"),
                    objElement.getAttribute("bild"),
                    objElement.getAttribute("logo"),
                    objElement.getAttribute("koord_x"),
                    objElement.getAttribute("koord_y"),
                    objElement.getAttribute("erstellt"),
                    objElement.getAttribute("info"),
                    objElement.getAttribute("beschreibung"),
                    objElement.getAttribute("oeffnungszeiten"),
                    objElement.getAttribute("anfahrt"));
                }
                if(poiueb.length==0)
                    alert("Keine POI einträge gefunden");
                else
                {
                    //POI Zoom
                    theMap.poiZoom();
                    
                    // Eichung erhalten
				    theMap.bRoutingRun = false;
				    var cx = parseFloat(poiueb[0][13]);
				    var cy = parseFloat(poiueb[0][14]);
				    setCenter(cx,cy);
				    theMap.center = new Array(cx,cy);
				    
				    
				    //showReiseplaner(false);
                }
            }
            
            
			if (xmlObj.getElementsByTagName("mapcommand").length > 0)
			{			
				// Eichung erhalten
				var cx = parseFloat(xmlObj.getElementsByTagName("mapcommand")[0].getAttribute("cx"));
				var cy = parseFloat(xmlObj.getElementsByTagName("mapcommand")[0].getAttribute("cy"));
				theMap.setCenter(cx,cy);
				theMap.center = new Array(cx,cy); // HH
				theMap.zoomlevel=theMap.currentlevel;
				theMap.toggleZoom();
				theMap.updateEichung();
			}	
			
			/*
			if (xmlObj.getElementsByTagName("result").length > 0)
			{			
				// Eichung erhalten
				alert("test");
				links = parseFloat(xmlObj.getElementsByTagName("result")[0].getAttribute("x"));
				unten = parseFloat(xmlObj.getElementsByTagName("result")[0].getAttribute("y"));
				meterY = parseFloat(xmlObj.getElementsByTagName("result")[0].getAttribute("h"));
				meterX = parseFloat(xmlObj.getElementsByTagName("result")[0].getAttribute("w"));
				if(arrAdressuebergabe.length>1)
					thisObj.centerSuche(arrAdressuebergabe[0], arrAdressuebergabe[1]);
				else if (center)
					thisObj.setCenter(center[0],center[1]);	
				if (currentTourId != 0)
				{
					var url = "GetTourDisplay.aspx?x="+links+"&y="+unten+"&w="+meterX+"&h="+meterY+"&tourId="+currentTour;
					loadXMLDoc(url,thisObj);
					if (startPoint[0] != 0)
					{
						thisObj.setFixedPOIAt(startPoint,"start.gif");
						var sx = startPoint[0];
						var sy = startPoint[1];
						if (endPoint[0] != 0)        
						{
							var ex = endPoint[0];
							var ey = endPoint[1];
							var url = "GetRoute.aspx?x="+links+"&y="+unten+"&w="+meterX+"&h="+meterY+"&tourId=213&sx="+sx+"&sy="+sy+"&ex="+ex+"&ey="+ey;
							loadXMLDoc(url,thisObj);
						}
					}
					if (endPoint[0] != 0)
					{
						thisObj.setFixedPOIAt(endPoint,"ziel.gif");
					}
				}
				if (zoomlevel < 2)
				{
					thisObj.setSmallOverview();
				}
				else
				{
					thisObj.setLargeOverview();
				}                	
			}	
			*/
			
			/////////////////////BIS Touristik//////////////////////////////
			
			if (xmlObj.getElementsByTagName("result").length > 0)
			{			
			    // Eichung erhalten
			    links = parseFloat(xmlObj.getElementsByTagName("result")[0].getAttribute("x"));
			    unten = parseFloat(xmlObj.getElementsByTagName("result")[0].getAttribute("y"));
			    meterY = parseFloat(xmlObj.getElementsByTagName("result")[0].getAttribute("h"));
			    meterX = parseFloat(xmlObj.getElementsByTagName("result")[0].getAttribute("w"));
			    xSize = parseFloat(xmlObj.getElementsByTagName("result")[0].getAttribute("xSize"));
			    ySize = parseFloat(xmlObj.getElementsByTagName("result")[0].getAttribute("ySize"));
			    //alert("xSize,ySize:"+xSize+","+ySize);
                if (center)
                    setCenter(center[0],center[1]);	
                if (currentTourId != 0)
                {
                    var url = "./GetTourDisplay.aspx?x="+links+"&y="+unten+"&w="+meterX+"&h="+meterY+"&tourId="+currentTourId;
                    loadXMLDoc(url,thisObj);
                    if (theMap.startPoint[0] != 0)
                    {
                        theMap.setFixedPOIAt(theMap.startPoint,"./images/start.gif","start.gif");
                        var sx = theMap.startPoint[0];
                        var sy = theMap.startPoint[1];
                        if (theMap.endPoint[0] != 0)        
                        {
                            var ex = theMap.endPoint[0];
                            var ey = theMap.endPoint[1];

                            var url="./GetRoute.aspx?x="+links+"&y="+unten+"&w="+meterX+"&h="+meterY+"&tourId="+currentTourId+"&sx="+sx+"&sy="+sy+"&ex="+ex+"&ey="+ey;
                            for (var i=0;i<theMap.zwischenpunkte.size();i++)
                            {
                                url=url+"&zw"+i+"x="+theMap.zwischenpunkte.getAt(i)[0];
                                url=url+"&zw"+i+"y="+theMap.zwischenpunkte.getAt(i)[1];
                            }

                            setTimeout("loadXMLDoc('"+url+"',thisObj);",500);
                        }
                    }
                    if (theMap.endPoint[0] != 0)
                    {
                        theMap.setFixedPOIAt(theMap.endPoint,"./images/ziel.gif","ziel.gif");
                    }
                    
                    // Zwischenpunkte neu setzen
                    var liste = document.getElementById("zwliste");
                    var innerDiv = document.getElementById("innerDiv");
                    for (var i=1;i<liste.options.length;i++)
                    {
                        var idOfItem = "zwstop"+liste.options[i].id;
                        var imgs = innerDiv.getElementsByTagName("img");
                        var j = 0;
                        var oldZp = theMap.zwpCounter;
                        var laenge = imgs.length;
                        theMap.zwpCounter = parseInt(liste.options[i].id);
                        theMap.setFixedPOIAt(theMap.zwischenpunkte.getAt(i-1),"./images/zwstop.gif",idOfItem);
                        theMap.zwpCounter = oldZp;     
                    }

                    // TODO: Zwischenpunkte hier setzen
                }
            }	
            
            ////////////////////ENDE/////////////////////////////////////////////////////
            // Visitenkarte
        

			if (xmlObj.getElementsByTagName("tourinfo").length > 0)
			{	
			    var strKoordinaten = xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("koordinaten");
			    var sTourenname= xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("TOURNAME")+" (ca. "+xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("LAENGE")+" km)";
			    var sTourenBild= xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("BILD");
			    var sPDFname= xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("PDFNAME");
			    var sPDFurl= xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("PDFUrl");
			    
			    if(xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("ROUTING")=="0"){
			        document.getElementById("button_routing").style.display="none";
			        document.getElementById("button_no_routing").style.display="block";
			        document.getElementById('ContainerTournavigation').style.display = 'none';
			        }
			    else{
			        document.getElementById("button_routing").style.display="block";
			        document.getElementById("button_no_routing").style.display="none";
			        }
			            
			    if(xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("zoomlevel") != null)
			    {
			        var XKoord = xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("XKoord");
			        var YKoord = xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("YKoord");
			        
			        theMap.zoomlevel = parseInt((xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("zoomlevel")) - 1);
			        theMap.ZoomOut();
			        
			        if((XKoord!=-1) && (YKoord != -1))
			            theMap.SetCenter(XKoord,YKoord);
			            
			            
			        theMap.bZoom = false;
			        
			        
			    }			    
			    
			    if(sTourenBild==null || sTourenBild=="null")
			        sTourenBild = "";
			    if(sTourenBild!=""){
			        sTourenBild = "<img src='mapcontrol/"+sTourenBild+"' title='"+sTourenname+"' style='float:left; padding-right:5px;'>";
			    }
			    var sTourinfo = xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("INFO");
			    if(sTourinfo==null || sTourinfo=="null")
			        sTourinfo = "";
			    var sTourbeschreibung = xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("BESCHREIBUNG");
			    if(sTourbeschreibung==null || sTourbeschreibung=="null")
			        sTourbeschreibung = "";
			    //document.getElementById("TourDetailBeschreibung").innerHTML = sTourinfo + sTourbeschreibung;
			    //document.getElementById("TourDetailUeberschrift").innerHTML = splitText(sTourenname,42);
			    currentTourname=sTourenname;
				var innerDiv = document.getElementById("innerDiv");
				var div = document.getElementById("tour")
				if (div == null)
				{
					div = document.createElement("div");
					div.id = "tour";
				}
				try
				{
					div.innerHTML = xmlObj.getElementsByTagName("tourinfo")[0].firstChild.nodeValue;
				} catch(e)
				{
					div.innerHTML = "";
//					alert("Diese Tour ist leer!");
				}
				innerDiv.appendChild(div);
                // Funktion zum malen einer Route in Firefox
                if(strKoordinaten!="-"){
    			    var strKoordinatenreal = xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("koordinatenreal");
    			    var iMaxX = xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("MaxX");
    			    var iMaxY = xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("MaxY");
    			    var iMinX = xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("MinX");
    			    var iMinY = xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("MinY");
    			    var bgColor = xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("bgColor");
    			    var fgColor = xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("fgColor");
    			    // Tour im Firefox zeichnen 
                    TourZeichnenCanvas(strKoordinaten, iMaxX, iMaxY, iMinX, iMinY, bgColor, fgColor, strKoordinatenreal,true);
                }                
			}
			
			
			if (xmlObj.getElementsByTagName("tourpoints").length > 0)
			{
			    var tourpoints=xmlObj.getElementsByTagName("tourpoints");
			    var innerdiv= document.getElementById("innerDiv");
			    if(document.getElementById("tourpoints")!=null)
			        innerdiv.removeChild(document.getElementById("tourpoints"));
			    
			    var div_tourpoints=document.createElement("div");
			    div_tourpoints.id="tourpoints";
			    
			    TourpointBeschreibung = new Array();
			    
			        for(var i=0; i<xmlObj.getElementsByTagName("tourpoint").length;i++){
    			    
			            var tourpoint=xmlObj.getElementsByTagName("tourpoint")[i];
			            var id=tourpoint.getAttribute("id");
			            var tpid=tourpoint.getAttribute("tpid");
			            var tpname=tourpoint.getAttribute("TPNAME");
			            var x=tourpoint.getAttribute("XKoord");
			            var y=tourpoint.getAttribute("YKoord");
			            var Beschreibung="";
			            
			            if(bIsIE==true)
			            Beschreibung=tourpoint.text;
			            else
			            Beschreibung=tourpoint.firstChild.data;
			            
			             TourpointBeschreibung[id]= new Array();
			             TourpointBeschreibung[id][0]=tpname;
			             TourpointBeschreibung[id][1]=Beschreibung;
    			        
					    x=x-theMap.links;
					    y=y-theMap.unten;
					    x=x/theMap.meterX;
					    y=y/theMap.meterY;
    			        
			            var img3 = document.createElement("img");
			            img3.style.position = "absolute";
					    img3.style.left = x-12 + "px";
					    img3.style.top = y-12 + "px";
					    img3.style.cursor="pointer";
					    img3.style.zIndex=295;
					    img3.style.height="20px";
					    img3.style.width="22px";
					    img3.id="tourpoint"+id;
					    img3.alt=tpname;
					    img3.title=tpname;
					    img3.onclick=OnTourPointKlick;
					    
  				        img3.src = "Bilder.aspx?TourPoint=1&id="+tpid;
					    div_tourpoints.appendChild(img3);
    			    
			        }
    				
				    innerdiv.appendChild(div_tourpoints);
				
		    }

			if (xmlObj.getElementsByTagName("routeinfo").length > 0)
			{			
			    var strKoordinaten = xmlObj.getElementsByTagName("routeinfo")[0].getAttribute("koordinaten");
				var innerDiv = document.getElementById("innerDiv");

				var div = document.getElementById("route")
				if (div == null)
				{
					div = document.createElement("div");
					div.id = "route";
				}
				try
				{
				
					div.innerHTML = xmlObj.getElementsByTagName("routeinfo")[0].firstChild.nodeValue;
                    var divTourText = document.getElementById("RouteDetailBeschreibung");
                    divTourText.innerHTML = xmlObj.getElementsByTagName("routeinfo")[0].getAttribute("html");
                    //document.getElementById('RouteDrucken').style.visibility='visible';
                    
                    document.getElementById("btnRouteDrucken").style.visibility = "visible";
	                document.getElementById("btnRouteGPX").style.visibility = "visible";
                    
                    document.getElementById("TourbeschreibungDynamisch").style.display = "block";
//	                document.getElementById("btnTourBeschreibungMerken").style.visibility = "hidden";
//	                document.getElementById("btnTourBeschreibungDrucken").style.visibility = "hidden";

				} catch(e)
				{
					div.innerHTML = "";
					alert("Route kann nicht ermittelt werden!\r\nGibt es eine Verbindung zwischen Start- und Zielpunkt?");                
				}
                if(strKoordinaten=="-")
                    innerDiv.appendChild(div);
                else{ // Firefox
    			    var strKoordinatenreal = xmlObj.getElementsByTagName("routeinfo")[0].getAttribute("koordinatenreal");
    			    var iMaxX = xmlObj.getElementsByTagName("routeinfo")[0].getAttribute("MaxX");
    			    var iMaxY = xmlObj.getElementsByTagName("routeinfo")[0].getAttribute("MaxY");
    			    var iMinX = xmlObj.getElementsByTagName("routeinfo")[0].getAttribute("MinX");
    			    var iMinY = xmlObj.getElementsByTagName("routeinfo")[0].getAttribute("MinY");
    			    var bgColor = xmlObj.getElementsByTagName("routeinfo")[0].getAttribute("bgColor");
    			    var fgColor = xmlObj.getElementsByTagName("routeinfo")[0].getAttribute("fgColor");
                    RoutingZeichnenCanvas(strKoordinaten,bgColor,fgColor);
                }
			}	

			if (xmlObj.getElementsByTagName("tourauswahl").length > 0)
			{			
				try
				{
					document.getElementById("selTourAuswahl").innerHTML = xmlObj.getElementsByTagName("tourauswahl")[0].getAttribute("touren");
				} catch(e)
				{
					alert("Keine weiteren Touren gefunden");                
				}
			}
			
		    if (xmlObj.getElementsByTagName("tooltipp").length > 0)
			{			
				var i=0;
				for (i=0;i<xmlObj.getElementsByTagName("tooltipp").length;i++)
				{
					// POIs erhalten
					theMap.Tooltipp[i]=xmlObj.getElementsByTagName("tooltipp")[i].getAttribute("beschreibung");
				}	
				
				//var ttid=Math.floor( Math.random ( ) * i );
				//Es soll immer mit dem Tooltipp mit der Id 0 gestartet werden
				ttid=0;
				theMap.tooltippid=ttid;
				
				if(ttid==0)
				document.getElementById("Tooltippzurueck").style.visibility="hidden";
				else if(ttid==i-1)
				document.getElementById("Tooltippvor").style.visibility="hidden";
				
                document.getElementById("Tooltippinhalt").innerHTML=theMap.Tooltipp[ttid];
				
				document.getElementById("TooltippUebersicht").style.visibility="visible";
			}
			
				
/*			if (xmlObj.getElementsByTagName("tourorte").length > 0)
			{			
				try
				{
					document.getElementById("selTourorte").innerHTML = xmlObj.getElementsByTagName("tourorte")[0].getAttribute("orte");
					GetMapObject(this.id).SetCenter(xmlObj.getElementsByTagName("tourorte")[0].getAttribute("startx"), xmlObj.getElementsByTagName("tourorte")[0].getAttribute("starty"));
				} catch(e)
				{
					alert("Keine Orte gefunden");                
				}
			}	*/
			
			if (xmlObj.getElementsByTagName("poi").length > 0)
			{
				var strTestId = "";
				for (var i=0;i<xmlObj.getElementsByTagName("poi").length;i++)
				{
					// POIs erhalten
					var kx=xmlObj.getElementsByTagName("poi")[i].getAttribute("kx");
					var ky=xmlObj.getElementsByTagName("poi")[i].getAttribute("ky");
					//MH 06.05.08 sonst schmeißt er nen Fehler bei der Adresssuche
					try
					{
					    var tileName = "?ky="+ky+"&kx="+kx+"&level="+theMap.zoomlevel;
					}
					catch(Exception)
					{
					   var tileName = "?ky="+ky+"&kx="+kx+"&level="+zoomlevel;
					}
					    
					var div = document.getElementById(tileName);
					// POIs einfügen hier
					if (div != null)
					{
						var id=xmlObj.getElementsByTagName("poi")[i].getAttribute("id");
						if(id!="0"){
							strTestId+=";"+id+";";
							var elId = document.getElementById(id);
							if(elId == null){
								var icon=xmlObj.getElementsByTagName("poi")[i].getAttribute("icon");
								var x=xmlObj.getElementsByTagName("poi")[i].getAttribute("x");
								var y=xmlObj.getElementsByTagName("poi")[i].getAttribute("y");
								var name=xmlObj.getElementsByTagName("poi")[i].getAttribute("name");
								var cat=xmlObj.getElementsByTagName("poi")[i].getAttribute("cat");
								var customId=xmlObj.getElementsByTagName("poi")[i].getAttribute("customid");
								x=x-theMap.links;
								y=y-theMap.unten;
								x=x/theMap.meterX;
								y=y/theMap.meterY;
								
								var gemerkt=false;
								for(var j=0; j<iMerkerlisteAnzahl;j++){
								if(arrMerkerliste[j][20]==id){
								
								var img3 = document.createElement("img");
                                img3.src = "/mapcontrol/icons/Haken-klein.png";
								img3.style.position = "absolute";
								img3.style.left = x-12 + "px";
								img3.style.top = y-12 + "px";
								img3.style.cursor="pointer";
								img3.style.zIndex=295;
								img3.style.height="20px";
								img3.style.width="22px";
								img3.onclick=theMap.onpoiclick;
								img3.alt=name;
								img3.title=name;
								img3.id=id;
								img3.customId=customId;
								img3.name=cat;
								div.appendChild(img3);
								
								gemerkt=true;
								
								}
								
								
								}
								
								
								var img2 = document.createElement("img");
                                img2.src = icon.replace('!--!', '?').replace('!---!', '&');
								img2.style.position = "absolute";
								img2.style.left = x-12 + "px";
								img2.style.top = y-12 + "px";
								img2.style.cursor="pointer";
								img2.style.zIndex=294;
								img2.style.height=img2.height;//"16px";
								img2.style.width=img2.width;//"16px";
								img2.onclick=theMap.onpoiclick;
								img2.alt=name;
								img2.title=name;
								if(gemerkt==false)
								img2.id=id;
								else
								img2.id="m"+id;
								img2.customId=customId;
								img2.name=cat;
								div.appendChild(img2);
								
								
								
								
								
								
							}
						}
					}
					try{
						var imgs3 = div.getElementsByTagName("img");
						while(idx<imgs3.length)
						{
							if(strTestId.replace(";"+imgs3[idx].id+";", "")==strTestId){
                                if (imgs3[idx].id != "maptile" && imgs3[idx].id.indexOf("tourpoint")==-1)
                                {
								    div.removeChild(imgs3[idx]);
                                }
							}
							else{
								idx++;
							}
						}
					}
					catch(err){
						//alert("Ladefehler:"+err);
					}
					
				}
				
			}
			requestActive=false;
			if (ajaxQueue.length() > 0)
			{
				var url=ajaxQueue.dequeue();
                setTimeout(function(){loadXMLDoc(url,thisObj)},1);
			}
			else
			    document.getElementById("ladePic").style.display = "none";
		  }
		  else
		  {
			alert("Problem retrieving XML data");
		  }
		}
    }

 //Transformiert GK-koordinaten in Geokoordinaten eingabe y,x Koordniaten
 function TransGKnachGeo(rechts, hoch)
{
    var e2 = 0.0067192188;
    var c = 6398786.849;
    var rho = 180 / Math.PI;
    var b2 = (hoch / 10000855.7646) * (hoch / 10000855.7646);
    var bf = 325632.08677 * (hoch / 10000855.7646) * ((((((0.00000562025 * b2 +
               0.00022976983) * b2 - 0.00113566119) * b2 + 0.00424914906) * b2 -
               0.00831729565) * b2 + 1));
    bf /= 3600 * rho;
    var co = Math.cos(bf);
    var g2 = e2 * (co * co);
    var g1 = c / Math.sqrt(1 + g2);
    var t = Math.tan(bf);
    var fa = (rechts - Math.floor(rechts / 1000000) * 1000000 - 500000) / g1;
    geoLongLat = new Array(0,0);
    
    var geoLong = ((bf - fa * fa * t * (1 + g2) / 2 + fa * fa * fa * fa * t * (5 + 3 * t * t + 6 * g2 - 6 * g2 * t * t) / 24) * rho);
    geoLongLat[0] = geoLong;
    var dl = fa - fa * fa * fa * (1 + 2 * t * t + g2) / 6 + fa * fa * fa * fa * fa * (1 + 28 * t * t + 24 * t * t * t * t) / 120;
    var geoLat = dl * rho / co + Math.floor(rechts / 1000000) * 3;
    geoLongLat[1] = geoLat;

    var aBessel = 6377397.155;
    var eeBessel = 0.0066743722296294277832;
    var scaleFactor = 0.00000982;
    var rotXRad = -0.00000716069806998785;
    var rotYRad = 0.000000356822869296619;
    var rotZRad = 0.00000706858347057704;
    var shiftXMeters = 591.28;
    var shiftYMeters = 81.35;
    var shiftZMeters = 396.39;
    var aWGS84 = 6378137;
    var eeWGS84 = 0.0066943799;

    geoLong = (geoLong / 180) * Math.PI;
    geoLat = (geoLat / 180) * Math.PI;

    var n = eeBessel * Math.sin(geoLong) * Math.sin(geoLong);
    n = 1 - n;
    n = Math.sqrt(n);
    n = aBessel / n;

    // Console.WriteLine("n: " + n);

    var cartesianXMeters = n * Math.cos(geoLong) * Math.cos(geoLat);
    var cartesianYMeters = n * Math.cos(geoLong) * Math.sin(geoLat);
    var cartesianZMeters = n * (1 - eeBessel) * Math.sin(geoLong);

    var cartOutputXMeters = (1 + scaleFactor) * cartesianXMeters + rotZRad * cartesianYMeters -
                               rotYRad * cartesianZMeters + shiftXMeters;
    var cartOutputYMeters = -rotZRad * cartesianXMeters + (1 + scaleFactor) *
                              cartesianYMeters + rotXRad * cartesianZMeters + shiftYMeters;
    var cartOutputZMeters = rotYRad * cartesianXMeters - rotXRad * cartesianYMeters +
                             (1 + scaleFactor) * cartesianZMeters + shiftZMeters;

    //Console.WriteLine("cartOutputXMeters: " + cartOutputXMeters);
    //Console.WriteLine("cartOutputYMeters: " + cartOutputYMeters);
    //Console.WriteLine("cartOutputZMeters: " + cartOutputZMeters);

    geoLat = Math.atan(cartOutputYMeters / cartOutputXMeters);

    //Console.WriteLine("geoLat: " + geoLat);

    var latitude = cartOutputXMeters * cartOutputXMeters + cartOutputYMeters * cartOutputYMeters;
    latitude = Math.sqrt(latitude);
    latitude = cartOutputZMeters / latitude;
    latitude = Math.atan(latitude);

    var latitudeIt = 99999999;

    do
    {
        latitudeIt = latitude;
        n = 1 - eeWGS84 * Math.sin(latitude) * Math.sin(latitude);
        n = Math.sqrt(n);
        n = aWGS84 / n;

        latitude = cartOutputXMeters * cartOutputXMeters + cartOutputYMeters * cartOutputYMeters;
        latitude = Math.sqrt(latitude);
        latitude = (cartOutputZMeters + eeWGS84 * n * Math.sin(latitudeIt)) / latitude;
        latitude = Math.atan(latitude);

        // Console.WriteLine("latitude: " + latitude);
    }
    while (Math.abs(latitude - latitudeIt) >= 0.000000000000001);

    geoLong = (latitude / Math.PI) * 180;
    geoLat = geoLat / Math.PI * 180;

    geoLongLat[0] = geoLong;
    geoLongLat[1] = geoLat;



    return geoLongLat;
}

function TransGeonachGradMinSek(x,y){
    
    var gms=new Array();
    
    var Grad=0;
    var Min=0;
    var Sek=0;
    
    Grad=parseInt(x);
    Min=(parseInt((x-Grad)*60));
    Sek=parseInt(((x-Grad)*60-Min)*60);
    gms[0]=Grad+"°"+Min+"'"+Sek+"'' N";
    
    Grad=parseInt(y);
    Min=(parseInt((y-Grad)*60));
    Sek=parseInt(((y-Grad)*60-Min)*60);
    gms[1]=Grad+"°"+Min+"'"+Sek+"'' O";
    
    
    return gms;
}

function LoadTourOrte(){
    theMap.LoadTourOrte();
    if(TourOrte==0){
        document.getElementById('tourpoi').src='mapcontrol/images/test_tour_poi_1.png';
        TourOrte=1;
    }else{
        document.getElementById('tourpoi').src='mapcontrol/images/test_tour_poi_0.png';        
        TourOrte=0;
    }
            
}

function setRoutBig(){
    var tb= document.getElementById("TourbeschreibungDynamisch");
	tb.style.backgroundImage="url('mapcontrol/images/routenbeschreibung-(routing)2.png')";
	tb.style.width="472px";
	
	document.getElementById("ViewerMenu").style.width="466px";
	document.getElementById("RouteDetailBeschreibung").style.width="460px";
	
	if(document.getElementById("touricons2")!=null){
	    if(bIsIE)
	    document.getElementById("touricons2").style.styleFloat="right";
	    else
	    document.getElementById("touricons2").style.cssFloat="right";
	
	}
	document.getElementById("btnViewerBig").style.display="none";
	document.getElementById("btnViewerSmall").style.display="block";
}

function setRoutSmall(){
    var tb= document.getElementById("TourbeschreibungDynamisch");
	tb.style.backgroundImage="url('mapcontrol/images/routenbeschreibung-(routing).png')";
	tb.style.width="236px";
	
	document.getElementById("ViewerMenu").style.width="230px";
	
	if(document.getElementById("touricons2")!=null){
	    if(bIsIE)
	    document.getElementById("touricons2").style.styleFloat="left";
	    else
	    document.getElementById("touricons2").style.cssFloat="left";
	}
	
	document.getElementById("RouteDetailBeschreibung").style.width="226px";
	
	
	document.getElementById("btnViewerBig").style.display="block";
	document.getElementById("btnViewerSmall").style.display="none";
}

  function Auswertung(name,id,felder)
  {
        var url = "auswertung.aspx?Name="+name+"&Id="+id+"&Felder="+felder;
        loadXMLDoc(url);
  }
  
  function setTourTooltipp(text){
    document.getElementById("FlaecheInfoRechtsInhalt").innerHTML="<div style='padding:10px;color:#BE6428;'>"+text+"</div>";
  }
