var theMap = new GeoGravityMap();
var iCanvasCounter = 0;
var doadjust=false;
var doadjustDimer=false;
//Variablen für die Tourauswahl   
var Regionid=0;
var Tourenart=0;
var Tourenunterart=0;
var Dauer=0;
var Untergrund=0;
var Verlauf=0;
var Laenge=0;
var Hoehenmeter=0;

//Variablen zur Tour
var touretappe=null;
var tourgesamtpreis=null;
var Tourqualitaet=1;

//Google 
var theGmap=null;
var theGmapMgr=null;
var theGmapMgrEtappen=null;
var theGMarker=[];
var theGMarkerEtappen=[];
var GMapTourlines = new Array();
var GMapMinZoom=8;
var GMapMaxZoom=19;

G_PHYSICAL_MAP.getMinimumResolution = function () { return GMapMinZoom };
G_NORMAL_MAP.getMinimumResolution = function () { return GMapMinZoom };
G_SATELLITE_MAP.getMinimumResolution = function () { return GMapMinZoom };
G_HYBRID_MAP.getMinimumResolution = function () { return GMapMinZoom };

G_PHYSICAL_MAP.getMaximumResolution = function () { return GMapMaxZoom };
G_NORMAL_MAP.getMaximumResolution = function () { return GMapMaxZoom };
G_SATELLITE_MAP.getMaximumResolution = function () { return GMapMaxZoom };
G_HYBRID_MAP.getMaximumResolution = function () { return GMapMaxZoom }; 



var cMonaOSM = new GCopyright(1, new GLatLngBounds(new GLatLng(-90, -180), new GLatLng(90, 180)), 0, "©2010 i-ventions.de");
var cCollection = new GCopyrightCollection('i-ventionsMaps');
cCollection.addCopyright(cMonaOSM);

var MonaOSMtilelayers = [new GTileLayer(cCollection , 0, 19)];
MonaOSMtilelayers[0].getTileUrl = GetMonaOSMTileUrl;

var MonaOSMMap = new GMapType(MonaOSMtilelayers, new GMercatorProjection(18), "MonaOSM", {errorMessage:"Testbetrieb: Gegenwärtig noch keine Daten vorhanden"});

MonaOSMMap.getMinimumResolution = function () { return GMapMinZoom };
MonaOSMMap.getMaximumResolution = function () { return GMapMaxZoom }; 
MonaOSMMap.getBoundsZoomLevel= function (bounds,viewSize) { return G_NORMAL_MAP.getBoundsZoomLevel(bounds,viewSize); };

var BFNLayer= new GTileLayer(new GCopyrightCollection(""),0,19);
	BFNLayer.myLayers='Natur';
	BFNLayer.myFormat='image/png';
	BFNLayer.myMercZoomLevel=5;
	BFNLayer.getTileUrl=CustomGetTileUrl;
	BFNLayer.isPng= function() {return true;}
	BFNLayer.getOpacity = function() {return 1.0;}
	BFNLayer.getCopyright= function() {return "";}
var BFNServerLayer = new GTileLayerOverlay(BFNLayer);

var GBLayer= new GTileLayer(new GCopyrightCollection(""),0,19);
	GBLayer.myLayers='GruenesBand';
	GBLayer.myFormat='image/png';
	GBLayer.myMercZoomLevel=5;
	GBLayer.getTileUrl=CustomGetTileUrlGB;
	GBLayer.isPng= function() {return true;}
	GBLayer.getOpacity = function() {return 1.0;}
	GBLayer.getCopyright= function() {return "";}
var GBServerLayer = new GTileLayerOverlay(GBLayer);


var BFNLayerID="";
var OSM=false;

//Merkerliste
var merkerlistePoi = new Array();
var anzmerkerlistePoi=0;

var merkerlisteTour = new Array();
var anzmerkerlisteTour = 0;

var isPOI = true;
var isUnter = false;

//Login
var userid=0;
var login=0;
var UserSession="";

var currMaptype= "WMS"; //WMS,GOOGLE,OSM (OpenStreetMap)
var currCredits =3;
var isInSearch=false;

//Was für ein Spam wird gemeldet?
var Spamtype=0;

var tooMany = false;
var markerTourPointer=null;
var tourPointer = false;

var aktivpoikat="0";
  
function InitMap()
        {
            if( typeof(theMap) == "undefined" )
            {
                window.setTimeout("InitMap();",500);
                return;
            }
            theMap.Init();

            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 = "250000";

                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();
            
            //window.setTimeout("theMap.showFlaechen()",1000);
            theMap.LoadTour(currentTourId);
            
            if (q.get("regcode") != null)
            {
                if(isReg)
                    showContent("Registrierung erfolgreich, Sie können sich nun mit Ihren Daten einloggen.");
                else
                    showContent("Es ist ein Fehler aufgetreten. Haben Sie bereits den Aktivierungslink benutzt?");
            }
            
             if (q.get("pwvergessen") != null)
            {
                showContentDiv("divPWVergessen");
            }  
//            var initPoi = parseInt(q.get("poiid"));
//            if( initPoi > 0 ){
//            
//                    theMap.SetCenter(poiidStartCoord[0],poiidStartCoord[1]);
//                }

            if(parseInt(q.get("pid"))>0)//Poiid
                getPOI(q.get("pid"),"p", "");
            if(parseInt(q.get("vid"))>0)//Viabonoid
                getPOI(q.get("vid"),"v","");
            if(parseInt(q.get("fid"))>0)//Fremdid
                getPOI(q.get("fid"),"f",q.get("kid"));
            if(parseInt(q.get("id"))>0)//Fremdid
                getPOI(q.get("id"),"f",q.get("kid"));
            
            if(q.get("vk")=="true")
                arrVisitenkarte[20]=parseInt(q.get("pid")); 

            adjustZoomPosition();
            switchMap("GOOGLE");
        }
        
         
    function stripPx(value) {
        if (isNumeric(value))
            return parseFloat(value);
        if (value == "") 
            return 0;
        return parseFloat(value.substring(0, value.length - 2));
    }
    
    function isNumeric(sText)
    {
        if(sText=="")
            return false;
            
        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 switchLog()
   {
        var lt = document.getElementById("loginText");
        var ls = document.getElementById("loginStatus");
        var img = document.getElementById("imgLog");
        
        if(lt.innerHTML == "anmelden")
        {
            lt.innerHTML = "abmelden";
            ls.innerHTML = "Hallo Geo-Peter, du bist angemeldet";
            img.src="design/button_login.png"
        }
        else{
            lt.innerHTML = "anmelden";
            ls.innerHTML = "";
            img.src="design/button_login2.png"
        }
   }
   function switchProfile()
   {
       var p = document.getElementById("profile");

       if(p.style.display=="none"){
               p.style.display="block";
               clickProfile("buttonProfile1");
               closeFenster();
           }
          else
           p.style.display="none";
   }
   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];

//                kx.innerHTML=geo[0];
//                ky.innerHTML=geo[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);
            }
        }
        
        
        var arrVisitenkarte;
        var arrVisitenkarte2;
          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;
              

                showPoiInfo(srcElementId.replace("gemerkt_",""));              

          }
          
          
          function windowResize()
        {
        
        
            if(currMaptype=="WMS" || currMaptype=="WMSBFN"){
                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;
                
                // Massstab
                SetStyle("massstabAnzeige","width",(width-60)+"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();
                }
            }
            else if(currMaptype=="GOOGLE"){
            
              dojo.style("innerDiv",
                {
                "width":dojo.style("outerDiv","width")+"px",
                "height":dojo.style("outerDiv","height")+"px",
                "left":"0px",
                "top":"0px"
                }
              );
                if(theGmap!=null){
                
                    theGmap.checkResize();
                }
            
            }
        
        }  
        
        
          // Stellt das Zoombild ein
    function setZoom(id){
        // wird in "TheMap" gesetzt.
    }    
    
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;
}



//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 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 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"));
                
                arrVisitenkarte2= new Array(
                 objElement.getAttribute("downloads"),
                 objElement.getAttribute("aufrufe"),
                 objElement.getAttribute("outor")
                );
                
                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)
                    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)
			{	
			
			    closeTourContent();
			    var pos=1;
                dojo.byId("TourVisitenkarte_menue_1").parentNode.style.backgroundPosition="0px "+((pos-1)*24*(-1))+"px";
                dojo.byId("TourVisitenkarte_Content_oben").style.display="none";
                dojo.byId("TourVisitenkarte_Content_unten").style.display="none";
                dojo.byId("TourVisitenkarte_Content").style.display="block";
    			

			    var strKoordinaten = xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("koordinaten");
			    var sTourenname= "<font size='3' style='font-weight:bold;'>"+xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("TOURNAME")+"</font><font size='2'> (ca. "+xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("LAENGE")+" km)</font>";
			    var sTourenBild= xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("BILD");
			    var sPDFname= xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("PDFNAME");
			    var sPDFurl= xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("PDFUrl");
			    
			    var Tourqualiquo=(parseInt(xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("length").replace(',','.'))/1000)/parseInt(xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("tracks"));
			    
			    var tourqualistern=1;
			    
			    arrVisitenkarteTour=new Array(
			    xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("downloads"),
			    xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("aufrufe"),
			    xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("outor"),
			    xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("TOURNAME"),
			    xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("datum")
			    );
			    
			    if(Tourqualiquo>0.41)
			        tourqualistern=1;
			    if(Tourqualiquo<0.4)
                    tourqualistern=2;
			    if(Tourqualiquo<0.2)
                    tourqualistern=3;			        
			    if(Tourqualiquo<0.1)
                    tourqualistern=4;
			    if(Tourqualiquo<0.02)
                    tourqualistern=5;                    			    
			    
			    Tourqualitaet=tourqualistern;
			    
			    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);
			    dojo.byId('TourVisitenkarte_Content').innerHTML= sTourenname+"<br/><br/><img src='Bilder.aspx?logo=1&id="+xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("TOURID")+"' style='max-height:140px;max-width:290px;'><br/><br/>" + sTourinfo +((sTourinfo!="")?"<br>":"")+sTourbeschreibung+"<br /><br />"
                                			                    +"<br/>Schwierigkeit:"+xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("SCHWIERIGKEIT");
			    
			    
			    
//			    if(xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("Dauer")==1)
			    currCredits=xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("Credits");
//			    else if(xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("Dauer")==2)
//			    currCredits=5;
//			    else if(xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("Dauer")==3)
//			    currCredits=10;
			    
			    dojo.byId("buttonTourGPX").innerHTML="GPX-Download ("+currCredits+" Credits)";
			    currentTourname=sTourenname;
			    
			   var tinfo=xmlObj.getElementsByTagName("tourinfo")[0];
			   
			   if(tinfo.getElementsByTagName("etappe").length>0){
			       touretappe=new Array();
			       
			       for(var i=0;i<tinfo.getElementsByTagName("etappe").length;i++){
			            var etappe=tinfo.getElementsByTagName("etappe")[i];
			            if(touretappe[etappe.getAttribute("eid")]==null || touretappe[etappe.getAttribute("eid")]=='undefinded')
			            touretappe[etappe.getAttribute("eid")]=new Array();
			            
			            touretappe[etappe.getAttribute("eid")][etappe.getAttribute("type")]=new Array();
			            touretappe[etappe.getAttribute("eid")][etappe.getAttribute("type")]["von"]=etappe.getAttribute("von");
			            touretappe[etappe.getAttribute("eid")][etappe.getAttribute("type")]["nach"]=etappe.getAttribute("nach");
			            touretappe[etappe.getAttribute("eid")][etappe.getAttribute("type")]["koord_x"]=etappe.getAttribute("koord_x");
			            touretappe[etappe.getAttribute("eid")][etappe.getAttribute("type")]["koord_y"]=etappe.getAttribute("koord_y");
			       }
			       
			   }else
			    touretappe=null;
			    
			    
			    
			    if(currMaptype!="GOOGLE"){
			    
			    
			    
				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;
                    setEtappenIcon();
                      
				} catch(e)
				{
					div.innerHTML = "";
//					alert("Diese Tour ist leer!");
				}
				innerDiv.appendChild(div);
				
				
				if(tourPointer){
                        var div_tourPointer=document.createElement("div");
                        div_tourPointer.id="tourPointer";			
                        var div_tmp = dojo.byId("tourPointer");
                        if (div_tmp)
                            dojo.destroy("tourPointer");
                        var imgPointer = document.createElement("img");
                        imgPointer.style.position = "absolute";
                        var x = xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("XKoord");
                        var y = xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("YKoord");
                        
                        x=x-theMap.links;
		                y=y-theMap.unten;
		                x=x/theMap.meterX;
		                y=y/theMap.meterY;

                        if(parseInt(dojo.byId("innerDiv").style.left)+(x-75)<0)
                            x=parseInt(dojo.byId("innerDiv").style.left)*(-1);
                        if(parseInt(dojo.byId("innerDiv").style.top)+(y-75)<0)
                            y=parseInt(dojo.byId("innerDiv").style.top)*(-1);    
                        
                        imgPointer.style.left = x-75 + "px";
                        imgPointer.style.top = y-75 + "px";
                        imgPointer.style.cursor="pointer";
                        imgPointer.style.zIndex=333;
                        imgPointer.style.height="150px";
                        imgPointer.style.width="150px";
                        imgPointer.id="tourPointerIMG";
                        imgPointer.src = "/design/tour_pointer.gif";
                        div_tourPointer.appendChild(imgPointer);
                        innerDiv.appendChild(div_tourPointer);
                        tourPointer=false;
                    }  
				
				
                // 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);
                    setEtappenIcon();
                } 
               
                
                }else{
                
                
                    for(var i=0;i<GMapTourlines.length;i++)
                        theGmap.removeOverlay(GMapTourlines[i]);
                    
                    GMapTourlines=new Array();
                    
                    if(xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("zoomlevel2")!=null){
                            var sw = TransGKnachGeo(xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("XKoord1"),xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("YKoord1"));
                            var no = TransGKnachGeo(xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("XKoord2"),xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("YKoord2"));
                            var newCenter = TransGKnachGeo(parseInt(xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("XKoord1"))+(parseInt(xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("XKoord2"))-parseInt(xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("XKoord1")))/2
                                                        ,parseInt(xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("YKoord1"))+(parseInt(xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("YKoord2"))-parseInt(xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("YKoord1")))/2);
                            
                            var GLatLngSW = new GLatLng(sw[0],sw[1]);
                            var GLatLngNO = new GLatLng(no[0],no[1]);
                            var TourBoundes = new GLatLngBounds(GLatLngSW,GLatLngNO);
                            
                            var MapSize= new GSize(dojo.byId("innerDiv").style.width,dojo.byId("innerDiv").style.height);
                            
                            var zoom = theGmap.getBoundsZoomLevel(TourBoundes, MapSize);
                            
                            theGmap.setCenter(new GLatLng(newCenter[0],newCenter[1] ), zoom);
                    }
                    
                    for(var i=0;i<xmlObj.getElementsByTagName("line").length;i++){
                        var line=xmlObj.getElementsByTagName("line")[i].getAttribute("koordinaten");
                        var linearray=line.split(",");
                        var latlngArray = new Array();

                        var plat = 0;
                        var plng = 0;
                        var encoded_points="";
                        var encoded_levels="";

                        for(var j=0;j<linearray.length;j++){
                            
                            var latlongCenter=TransGKnachGeo(linearray[j].split(" ")[0], linearray[j].split(" ")[1]);
                            latlngArray[j]=new GLatLng(latlongCenter[0],latlongCenter[1]); 
                            
                            var late5 = Math.round(latlongCenter[0] * 1e5);
                            var lnge5 = Math.round(latlongCenter[1] * 1e5);

                            dlat = late5 - plat;
                            dlng = lnge5 - plng;

                            plat = late5;
                            plng = lnge5;

                              
                            encoded_points += encodeSignedNumber(dlat) + encodeSignedNumber(dlng);
                            encoded_levels += encodeNumber(3);
                        }
                        
  //                        var line = new GPolyline(latlngArray, "#0000FF", 4, 1,{clickable:false});                  
                        

                           var line = new GPolyline.fromEncoded({color: xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("Tourcolor"),
                                              weight: 3,
                                              points: encoded_points,
                                              zoomFactor: 32,
                                              levels: encoded_levels,
                                              numLevels: 4
                                             })
                            GMapTourlines[i]=line;
                            theGmap.addOverlay(line);
                            
                          

                    }
                    
                     setEtappenIcon();
                    
                    if(tourPointer){
                        var llPoint = TransGKnachGeo(parseInt(xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("XKoord1"))+(parseInt(xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("XKoord2"))-parseInt(xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("XKoord1")))/2
                                                    ,parseInt(xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("YKoord1"))+(parseInt(xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("YKoord2"))-parseInt(xmlObj.getElementsByTagName("tourinfo")[0].getAttribute("YKoord1")))/2);
                        
                        
                        var gpoint = new GLatLng(llPoint[0], llPoint[1]);
                        
                        var bounds = theGmap.getBounds();
                       
                        var inbound=bounds.contains(gpoint);

                        if (!inbound) {
                          if(llPoint[0]>bounds.getNorthEast().lat())
                            llPoint[0]=bounds.getNorthEast().lat();
                          if(llPoint[0]<bounds.getSouthWest().lat())  
                            llPoint[0]=bounds.getSouthWest().lat();
                          if(llPoint[1]>bounds.getNorthEast().lng())  
                            llPoint[1]=bounds.getNorthEast().lng();
                          if(llPoint[1]<bounds.getSouthWest().lng())  
                            llPoint[1]=bounds.getSouthWest().lng();  
                            gpoint = new GLatLng(llPoint[0], llPoint[1]);
                        }
                                        
                        
                        
                        var gicon = new GIcon();
                        gicon.image = "design/tour_pointer.gif";
                        gicon.iconAnchor = new GPoint(75, 75);
                        gicon.infoWindowAnchor = new GPoint(75, 0);
                        gicon.iconSize = new GSize(150, 150);
                        if(markerTourPointer!=null)
                            theGmap.removeOverlay(markerTourPointer);
                        markerTourPointer = new GMarker(gpoint, {icon:gicon,"id":"TourPointer"});
                        theGmap.addOverlay(markerTourPointer);
                        tourPointer=false;
                   }
                }   
                 adjustZoomPosition();            
			}
			
			
			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;
							
								if(merkerlistePoi[id]!=null && typeof merkerlistePoi[id]!="undefined" ){
								
								var img3 = document.createElement("img");
                                img3.src = "/design/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="24px";
								img3.style.width="22px";
								img3.alt=name;
								img3.title=name;
								img3.id="gemerkt_"+id;
								img3.customId=customId;
								img3.name=cat;
								img3.onclick=theMap.onpoiclick;
								div.appendChild(img3);
								
								gemerkt=true;
								
								}
								
								var img2 = document.createElement("img");
                                img2.src = icon.replace('!--!', '?').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;
								img2.id=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);
					}
					
				}
				
			}
			
		  }
		  else
		  {
			//alert("Problem retrieving XML data");
		  }
		  
		  requestActive=false;
			if (ajaxQueue.length() > 0)
			{
				var url=ajaxQueue.dequeue();
                setTimeout(function(){loadXMLDoc(url,thisObj)},1);
			}
			else
			    document.getElementById("ladePic").style.display = "none";
		  
		}
    }
    
    
     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;
        ctx.lineWidth=4;
        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.length!=0 && oldcolors[1]!=colors[1]){
            ctx.stroke();
            ctx.closePath();
            }
            
            if(oldcolors[1]!=colors[1]){
            ctx.beginPath();
            ctx.lineWidth=4;
            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));
        
  }
    
    
   
  var tourmultimediatimeout=0;  
  var poimultimediatimeout=0;  
    
    
  function VisitenkarteMenue(node, pos){
    node.parentNode.style.backgroundPosition="0px "+((pos-1)*24*(-1))+"px";
    
    if(node.id.indexOf("TourVisitenkarte")>=0){

        closeTourContent();
        if(pos==1)
        showTourInfo();
        if(pos==2){
            if(tourmultimediatimeout!=0)
            window.clearTimeout(tourmultimediatimeout);
            tourmultimediatimeout=window.setTimeout("showTourMultimedia()",900);
            
        }
        if(pos==3)
        showTourBewertungen();
        if(pos==4)
        showTourDrumundDran();
        if(pos==5)
        showTourDownloads();
    }else{
        
        if(node.id.indexOf("UnterkuenfteVisitenkarte")>=0)
            isPOI=false;
        else
            isPOI=true;
        if(pos==1)
        showPoiInfo(arrVisitenkarte[20]);
        if(pos==2){
           if(poimultimediatimeout!=0)
            window.clearTimeout(poimultimediatimeout);
            poimultimediatimeout=window.setTimeout("showMultimedia("+arrVisitenkarte[20]+", "+!isPOI+")",900);
        }
        if(pos==3)
        showBewertungen(arrVisitenkarte[20], !isPOI);
        if(pos==4)
        showDrumundDran(arrVisitenkarte[20], !isPOI);
        if(pos==5)
        showDownloads(arrVisitenkarte[20], !isPOI);
    }
    
    
  }
  var tourinf="";
  function   showTourInfo(){
      dojo.byId("TourVisitenkarte_Content_oben").style.display="none";
      dojo.byId("TourVisitenkarte_Content_unten").style.display="none";
      dojo.byId("TourVisitenkarte_Content").style.display="block";
  }
  

var bilduploaderTour=null;  
var videouploaderTour=null;
var audiouploaderTour=null;

function showTourMultimedia()
{
    if(dojox.embed.Flash.available<6){
	    showMassageCenter("Zum Uploaden und betrachten von Multimediadaten wird Flash benötigt. Bitte installiere oder aktiviere eine aktuelle Flashversion.");
    }
	closeTourContent();
	dojo.byId("TourVisitenkarteMultimedia_Content").style.display="block";

    getTourMultimedia();
    activateTMButton();
}


function activateTMButton(){

if(login==1){
    
            var fileMask3 = ["Bilder", "*.jpg;*.jpeg;*.gif;*.bmp;*.png;*.tif"];
            var url3="mapcontrol/ajax/upload.aspx?type=bild_"+userid+"_"+currentTourId+"_tour";//Achtung alle weiteren Paramater werden nicht übergeben!! daher kein & benutzen!!
            if(bilduploaderTour!=null){
                bilduploaderTour.destroyRecursive(true);
                //bilduploaderTour.destroyAll();
            }
                    bilduploaderTour = new dojox.form.FileUploader({
                    hoverClass:"bildUploadButtonTour",
                    activeClass:"bildUploadButtonTour",
                    pressClass:"bildUploadButtonTour",
                    disabledClass:"bildUploadButtonTour",
                    uploadUrl:url3,
                    selectMultipleFiles: false,
                    uploadOnChange:true,
                    degradable:true, 
                    fileMask:fileMask3,
                    force:"flash"
                    }, "bildUploadButtonTour");

                    dojo.connect(bilduploaderTour, "onChange", function(data){
		                dojo.forEach(data, function(d){
		                     if(login==1)
                                showMassageCenter("Upload gestartet");
                             else
                                showMassageCenter("Bitte einloggen");
		                });
	                });
                	
                   dojo.connect(bilduploaderTour, "onComplete", function(dataArray){
                    dojo.forEach(dataArray, function(d){
                            hideWait();
                            if(d.error==null)  
                                showMassageCenter("Upload erfolgreich beendet");                             
                            else{
                                showMassageCenter(d.error);
                                if(d.error=="Bitte einloggen")
                                    logout();
                                }
                        });
                        getTourMultimedia();
                    });
        //        }else
        //        bilduploaderTour.uploadUrl=url3;
            
            
            
                
            var fileMask = ["Videos", "*.mpg;*.mpeg;*.avi;*.flv;*.mov"];
            var url="mapcontrol/ajax/upload.aspx?type=video_"+userid+"_"+currentTourId+"_tour";//Achtung alle weiteren Paramater werden nicht übergeben!! daher kein & benutzen!!
            if(videouploaderTour!=null){
                videouploaderTour.destroyRecursive(true);
              
            }
                    videouploaderTour = new dojox.form.FileUploader({
                    hoverClass:"videoUploadButtonTour",
                    activeClass:"videoUploadButtonTour",
                    pressClass:"videoUploadButtonTour",
                    disabledClass:"videoUploadButtonTour",
                    uploadUrl:url,
                    selectMultipleFiles: false,
                    uploadOnChange:true,
                    degradable:true, 
                    fileMask:fileMask,
                    force:"flash"
                    }, "videoUploadButtonTour");

                    dojo.connect(videouploaderTour, "onChange", function(data){
		                dojo.forEach(data, function(d){
                            if(login==1)
                                showMassageCenter("Upload gestartet");
                             else
                                showMassageCenter("Bitte einloggen");
		                });
	                });
                	
                   dojo.connect(videouploaderTour, "onComplete", function(dataArray){
                    dojo.forEach(dataArray, function(d){
                            hideWait();
                            if(d.error==null)  
                                showMassageCenter("Upload erfolgreich beendet");                             
                            else{
                                showMassageCenter(d.error);
                                if(d.error=="Bitte einloggen")
                                    logout();
                                }
                        });
                        getTourMultimedia();
                    });
        //        }else
        //        videouploaderTour.uploadUrl=url;
            
                   
            
            
            var fileMask2 = ["Audio", "*.mp3;*.wav"];
            var url2="mapcontrol/ajax/upload.aspx?type=audio_"+userid+"_"+currentTourId+"_tour";//Achtung alle weiteren Paramater werden nciht übergeben!! daher kein & benutzen!!
            if(audiouploaderTour!=null){
                audiouploaderTour.destroyRecursive(true);
            
            }
                    audiouploaderTour = new dojox.form.FileUploader({
                    hoverClass:"audioUploadButtonTour",
                    activeClass:"audioUploadButtonTour",
                    pressClass:"audioUploadButtonTour",
                    disabledClass:"audioUploadButtonTour",
                    uploadUrl:url2,
                    selectMultipleFiles: false,
                    uploadOnChange:true,
                    degradable:true, 
                    fileMask:fileMask2,
                    force:"flash"
                    }, "audioUploadButtonTour");

                    dojo.connect(audiouploaderTour, "onChange", function(data){
		                dojo.forEach(data, function(d){
                             if(login==1)
                                showMassageCenter("Upload gestartet");
                             else
                                showMassageCenter("Bitte einloggen");
		                });
	                });
                	
                   dojo.connect(audiouploaderTour, "onComplete", function(dataArray){
                    dojo.forEach(dataArray, function(d){
                            hideWait();
                            if(d.error==null)  
                                showMassageCenter("Upload erfolgreich beendet");                             
                            else{
                                showMassageCenter(d.error);
                                if(d.error=="Bitte einloggen")
                                    logout();
                                }
                        });
                        getTourMultimedia();
                    });
       }//Nur wenn eingeloggt

}


var arrTourMultiBild= new Array();
var arrTourMultiBildpage=1;

function getTourPaging (){

    var paging=""
    var start = (arrTourMultiBildpage-2)>1?arrTourMultiBildpage-2:1;
    var end =(arrTourMultiBildpage+2)>=Math.ceil(arrTourMultiBild.length/2)?Math.ceil(arrTourMultiBild.length/2):arrTourMultiBildpage+2;

    for(var i=start,j=1;i<=end && j<6;i++,j++)
        if(i!=arrTourMultiBildpage)
            paging+=" <span onclick='multiimgTourpage("+i+");' style='color:red'>"+i+"</span>";
            else 
            paging+=" "+i+"";
    
    if(end>arrTourMultiBildpage)
        paging+=" <span onclick='multiimgTourpage("+(arrTourMultiBildpage+1)+");' style='color:red'>&gt;</span>";
    if(arrTourMultiBildpage>1)
        paging=" <span onclick='multiimgTourpage("+(arrTourMultiBildpage-1)+");' style='color:red'>&lt;</span>"+paging;
            
    return paging;
}

function multiimgTourpage(newPage){

    arrTourMultiBildpage=newPage;

    dojo.byId('multiimgTourtd').innerHTML=getTourPaging();
    dojo.byId('multiimgTour1').src="Bilder.aspx?id="+arrTourMultiBild[arrTourMultiBildpage*2-2]+"&mediabild=1&thumb=1";
    if(arrTourMultiBild.length-1>=arrTourMultiBildpage*2-1)
        dojo.byId('multiimgTour2').src="Bilder.aspx?id="+arrTourMultiBild[arrTourMultiBildpage*2-1]+"&mediabild=1&thumb=1";
    else
        dojo.byId('multiimgTour2').src="/design/trans.png";

}


Function.prototype.bind = function(scope) {
  var _function = this;
 
  return function() {
    return _function.apply(scope, arguments);
  }
}



function showBigPicTour(node){
    dojo.byId("d_lightbox_layer3").style.display="block";

    var imgPreloader = new Image();
    // once image is preloaded, resize image container
    imgPreloader.onload = (function(){
        dojo.byId("bigPic").src=this.src.replace("&thumb=1","")
        
        var left =(-1)*parseInt(imgPreloader.width)/2;
        var top =(-1)*parseInt(imgPreloader.height)/2;
        dojo.byId("bigPic").style.marginLeft=left+"px";
        dojo.byId("bigPic").style.marginTop=top+"px";
        
        dojo.byId("bigPicCloseTour").style.marginLeft=(left*(-1))+"px";
        dojo.byId("bigPicCloseTour").style.marginTop=top+"px";
        
        dojo.byId("bigPic").style.display="block";
        dojo.byId("bigPicCloseTour").style.display="block";
        
    }).bind(node);
    imgPreloader.src = node.src.replace("&thumb=1","");
}

function setMarginTour(){

    var left =(-1)*parseInt(dojo.byId("bigPic").width)/2;
    var top =(-1)*parseInt(dojo.byId("bigPic").height)/2;
    dojo.byId("bigPic").style.marginLeft=left+"px";
    dojo.byId("bigPic").style.marginTop=top+"px";
    
    dojo.byId("bigPicCloseTour").style.marginLeft=(left*(-1))+"px";
    dojo.byId("bigPicCloseTour").style.marginTop=top+"px";
    
    dojo.byId("bigPic").style.display="block";
    dojo.byId("bigPicCloseTour").style.display="block";
    
}

function closeBigPicTour(){
    dojo.byId("bigPic").style.display="none";
    dojo.byId("bigPicCloseTour").style.display="none";
    dojo.byId("d_lightbox_layer3").style.display="none";
}


function showBigPic(node){
     dojo.byId("d_lightbox_layer3").style.display="block";

    if(isPOI)
        dojo.byId("bigPicClose").src="design/POI_close.png";
    else
        dojo.byId("bigPicClose").src="design/unter_close.png";

    var imgPreloader = new Image();
    // once image is preloaded, resize image container
    imgPreloader.onload = (function(){
        dojo.byId("bigPic").src=this.src.replace("&thumb=1","")
        
        var left =(-1)*parseInt(imgPreloader.width)/2;
        var top =(-1)*parseInt(imgPreloader.height)/2;
        dojo.byId("bigPic").style.marginLeft=left+"px";
        dojo.byId("bigPic").style.marginTop=top+"px";
        
        dojo.byId("bigPicClose").style.marginLeft=(left*(-1))+"px";
        dojo.byId("bigPicClose").style.marginTop=top+"px";
        
        dojo.byId("bigPic").style.display="block";
        dojo.byId("bigPicClose").style.display="block";
        
    }).bind(node);
    imgPreloader.src = node.src.replace("&thumb=1","");
}
function setMargin(){
    
    var left =(-1)*parseInt(this.width/2);
    var top =(-1)*parseInt(this.height/2);
    this.style.marginLeft=left+"px";
    this.style.marginTop=top+"px";
    dojo.byId("bigPicClose").style.marginLeft=(left*(-1))+"px";
    dojo.byId("bigPicClose").style.marginTop=top+"px";
    
    dojo.byId("bigPic").style.display="block";
    dojo.byId("bigPicClose").style.display="block";
    
}

function closeBigPic(){
    dojo.byId("bigPic").style.display="none";
    dojo.byId("bigPicClose").style.display="none";
     dojo.byId("d_lightbox_layer3").style.display="none";
}


function getTourMultimedia(){

dojo.xhrGet( {
        url: "mapcontrol/ajax/GetMultimedia.aspx",
        preventCache: true,//Cachen erlaubt
        content:{
            tourid: currentTourId
        },
        handleAs:"xml",
        load: function(response, ioArgs) { 
        
            dojo.byId('videoUploadTextTour').innerHTML="";
            dojo.byId('audioUploadTextTour').innerHTML="";
            
            arrTourMultiBild= new Array();
            arrTourMultiBildpage=1;
            
            for(var i =0;i<response.getElementsByTagName("bild").length;i++){
                arrTourMultiBild[i]=response.getElementsByTagName("bild")[i].getAttribute("id");
            }
            
             if(response.getElementsByTagName("bild").length==0)
                dojo.byId('bildUploadTextTour').innerHTML="Zu dieser Tour wurde noch kein Bild hochgeladen";
            else{
                
                    if(response.getElementsByTagName("bild").length==1)
                    dojo.byId('bildUploadTextTour').innerHTML="<table><tr><td><img id='multiimgTour1' src='Bilder.aspx?id="+arrTourMultiBild[0]+"&mediabild=1&thumb=1&tourid="+currentTourId+"' onclick='showBigPicTour(this);' /></td><td></td></tr></table>";
                    else if(response.getElementsByTagName("bild").length==2)
                    dojo.byId('bildUploadTextTour').innerHTML="<table><tr><td><img id='multiimgTour1' src='Bilder.aspx?id="+arrTourMultiBild[0]+"&mediabild=1&thumb=1&tourid="+currentTourId+"' onclick='showBigPicTour(this);' /></td><td style='width:5px;'></td><td><img id='multiimgTour2' src='Bilder.aspx?id="+arrTourMultiBild[1]+"&mediabild=1&thumb=1' onclick='showBigPicTour(this);' /></td></tr></table>";
                    else{
                    var table="<table><tr><td ><img id='multiimgTour1' src='Bilder.aspx?id="+arrTourMultiBild[0]+"&mediabild=1&thumb=1&tourid="+currentTourId+"' onclick='showBigPicTour(this);' /></td><td style='width:5px;'></td><td><img id='multiimgTour2' src='Bilder.aspx?id="+arrTourMultiBild[1]+"&mediabild=1&thumb=1&tourid="+currentTourId+"'  onclick='showBigPicTour(this);'/></td></tr>";
                    
                    table+="<tr><td colspan='2' id='multiimgTourtd'>"+getTourPaging()+"</td></tr></table>";

                    dojo.byId('bildUploadTextTour').innerHTML=table;
                    
                    }
            
            }  
            
            
            for(var i =0;i<response.getElementsByTagName("video").length;i++){
            //    dojo.byId('videoUploadTextTour').innerHTML+="<div onclick='showTourVideo("+response.getElementsByTagName("video")[i].getAttribute("id")+")'>Video von "+response.getElementsByTagName("video")[i].getAttribute("username")+" vom "+response.getElementsByTagName("video")[i].getAttribute("datum")+"</div>";
               if(response.getElementsByTagName("video")[i].getAttribute("yt")!=null)
                    dojo.byId('videoUploadTextTour').innerHTML+="<div onclick='showYTVideo("+response.getElementsByTagName("video")[i].getAttribute("id")+")'>Video von "+response.getElementsByTagName("video")[i].getAttribute("username")+" vom "+response.getElementsByTagName("video")[i].getAttribute("datum")+"</div>";
                else
                    dojo.byId('videoUploadTextTour').innerHTML+="<div onclick='showVideo("+response.getElementsByTagName("video")[i].getAttribute("id")+")'>Video von "+response.getElementsByTagName("video")[i].getAttribute("username")+" vom "+response.getElementsByTagName("video")[i].getAttribute("datum")+"</div>";
   
            }
            if(response.getElementsByTagName("video").length==0)
                dojo.byId('videoUploadTextTour').innerHTML="Zu dieser Tour wurde noch kein Video hochgeladen";
        
            for(var i =0;i<response.getElementsByTagName("audio").length;i++){
                dojo.byId('audioUploadTextTour').innerHTML+="<div onclick='showTourVideo("+response.getElementsByTagName("audio")[i].getAttribute("id")+")'>Audio von "+response.getElementsByTagName("audio")[i].getAttribute("username")+" vom "+response.getElementsByTagName("audio")[i].getAttribute("datum")+"</div>";
            }
            if(response.getElementsByTagName("audio").length==0)
                dojo.byId('audioUploadTextTour').innerHTML="Zu dieser Tour wurde noch kein Audio hochgeladen";
        
        
            return response; 
         },
        error: function(response, ioArgs) { 
              //nichts machen
              
              return response; 
              }
        });

}


  function   showTourBewertungen(){
        closeTourContent();
        getBewertungTour();

        
        dojo.byId("TourbewertungenName").innerHTML = arrVisitenkarteTour[3];
        dojo.byId("TourDatum").innerHTML = arrVisitenkarteTour[4];
        dojo.byId("TourAufrufe").innerHTML = arrVisitenkarteTour[1];//arrVisitenkarte[0];
        dojo.byId("TourOutor").innerHTML = arrVisitenkarteTour[2];//arrVisitenkarte[0];
    
        dojo.byId("TourVisitenkarteBewertungen_Content_Oben").style.display="block";
        dojo.byId("TourVisitenkarteBewertungen_Content_Unten").style.display="block";
            if(login==1)
            dojo.byId("TourbewertungAbgeben_button").style.display="block";
        else
            dojo.byId("TourbewertungAbgeben_button").style.display="none";
        
      
  }
  
  
  
  
  
  function hidelightbox(nodeid){
  dojo.byId(nodeid).style.display="none";
  if(nodeid!="Bewerten")
  dojo.byId("d_lightbox_layer").style.display="none";
  }
  function showLightbox(nodeid){
  
      dojo.byId("d_lightbox_layer").style.display="block";
      dojo.byId(nodeid).style.display="block";
  }
  
  function hide(nodeid){
        var animArgs = {
		node: nodeid,
		duration: 500, // ms to run animation
		delay: 150, // ms to stall before playing
		onEnd: function(){
		        dojo.byId(nodeid).style.display="none";
	            }
	    };
	    dojo.fadeOut(animArgs).play();
  }
  function show(nodeid){
    hidestartInfo();
        dojo.byId(nodeid).style.display="block";
        var animArgs = {
		node: nodeid,
		duration: 500, // ms to run animation
		delay: 150 // ms to stall before playing
		};
	    dojo.fadeIn(animArgs).play();
  }
  
  function maximize(nodeid,iWidth,iHeight){
    hidestartInfo();
    minimizeall(nodeid);
      if(dojo.byId(nodeid).style.width.replace('px','')!=iWidth)
      {
          var anim = dojo.animateProperty({
	                node: nodeid,
	                duration: 500,
	                properties:{
		            // fade back in and make text bigger
		            width: { start: 0,end:iWidth, unit:"px" },
		            height: { start: iHeight,end:iHeight, unit:"px" }
	                },
	                 delay: 100
	            }); 
             anim.play();
      }
  }
  
  function minimize(nodeid,iWidth,iHeight){
  
  
      var anim = dojo.animateProperty({
	            node: nodeid,
	            duration: 500,
	            properties:{
		        // fade back in and make text bigger
		        width: { start: iWidth,end:0, unit:"px" },
		        height: { start: iHeight,end:iHeight, unit:"px" }
	            },
	             delay: 100
	        }); 
         if(parseInt(dojo.byId(nodeid).style.width)>0)
         anim.play();
  }
  
  var isPOI=false;
  var opennode=null;
  
  function minimizeall(nodeid){
  
  dojo.query(".fenster").forEach(function(node,index,arr){
  
  if(node.id!=nodeid && !(nodeid=="MenueTourSub2" && node.id=="MenueTourSub"))
     minimize(node,node.style.width.replace("px",""),node.style.height.replace("px",""));
  
  });
  
  }
  
  
  function maximizemenue(nodeid){
  hidestartInfo();
      minimizeall(nodeid);

      var nodeheight=dojo.byId(nodeid).clientHeight;
      var height=20;
     
      for(var i=0;i<dojo.byId(nodeid).childNodes.length;i++){
      if(typeof(dojo.byId(nodeid).childNodes[i].offsetHeight)!="undefined")
        if(bIsIE){
            if(dojo.byId(nodeid).childNodes[i].id.indexOf("cb")==-1)
                    height+=dojo.byId(nodeid).childNodes[i].offsetHeight;
        }else
        height+=dojo.byId(nodeid).childNodes[i].offsetHeight;
      }
      
      var Pfeil=dojo.byId(nodeid.replace("Content","")).getElementsByTagName("img")[0];
      Pfeil.src=(Pfeil.src.indexOf("up")>=0)?Pfeil.src.replace("up","down"):Pfeil.src.replace("down","up");
      
      var anim = dojo.animateProperty({
	            node: nodeid,
	            duration: 500,
	            properties:{
		        // fade back in and make text bigger
		        height: { start: height,end:height,unit:"px"}
	            },
	             delay: 100
	        }); 
         anim.play();
         if(opennode!=null){
         
         if(opennode!=nodeid){
              Pfeil=dojo.byId(opennode.replace("Content","")).getElementsByTagName("img")[0];
              Pfeil.src=(Pfeil.src.indexOf("up")>=0)?Pfeil.src.replace("up","down"):Pfeil.src.replace("down","up");
         }
             var anim2 = dojo.animateProperty({
	                node: opennode,
	                duration: 500,
	                properties:{
		            // fade back in and make text bigger
		            height: { start: 0,end:0,unit:"px"}
	                },
	                 delay: 100
	            }); 
             anim2.play();
         
         }
         if(opennode==nodeid)
            opennode=null;
         else
            opennode=nodeid;
  }
  
  function minimizemenueall(){
            dojo.query(".menueBottom").forEach(function(node,index,arr){
                var anim2 = dojo.animateProperty({
	                node: node,
	                duration: 500,
	                properties:{
		            // fade back in and make text bigger
		            height: { start: 0,end:0,unit:"px"}
	                },
	                 delay: 100
	            }); 
             anim2.play();
            });
            opennode=null;
  }
  

  
  var lastpoikatid=null;
  function showSub(poikatid){

        if(lastpoikatid!=null && dojo.byId("katid"+lastpoikatid)!=null)
            dojo.byId("katid"+lastpoikatid).style.color="#898A85";
        if(lastpoikatid2!=null && dojo.byId("katid"+lastpoikatid2)!=null)
            dojo.byId("katid"+lastpoikatid2).style.color="#898A85";
        dojo.byId("katid"+poikatid).style.color="#a71a1f";
        
        maximize('MenuePoiSub',215,208);
        dojo.byId("MenuePoiSubContent").innerHTML="Daten werden geladen";
        
        dojo.xhrGet( {
        url: "mapcontrol/ajax/GetSubmenue.aspx",
        preventCache: false,//Cachen erlaubt
        content:{
            katid: poikatid
        },
        handleAs:"xml",
        load: function(response, ioArgs) { 
              
              dojo.empty("MenuePoiSubContent");
              
              for(var i=0;i<response.getElementsByTagName("submenue").length;i++){
               
               var color="#898A85";
               if(typeof strPoiKatGewaehltGesamt[response.getElementsByTagName("submenue")[i].getAttribute("id").replace("subkat","")]!='undefined')
                    color="#A71A1F";
               
               var div = dojo.create("div",
                        {
                        id:response.getElementsByTagName("submenue")[i].getAttribute("id"),
                       // onclick:response.getElementsByTagName("submenue")[i].getAttribute("onclick")+";,
                        "class":response.getElementsByTagName("submenue")[i].getAttribute("class"),
                        innerHTML:response.getElementsByTagName("submenue")[i].getAttribute("katname")
                        },
              "MenuePoiSubContent"
              );
              dojo.style(div,{ "paddingBottom":"5px","color":color});
              div.onclick=showpoikatbyid;

              var img = dojo.create("img",
                        {
                        src:response.getElementsByTagName("submenue")[i].getAttribute("src")
                        }
              ,div,"first");
              
             
//             dojo.byId("MenuePoiSubContent").appendChild(div);
              
              }
              return response; 
            },
        error: function(response, ioArgs) { 
              //nichts machen
              dojo.byId("MenuePoiSubContent").innerHTML ="Es ist ein Fehler aufgetreten";
              return response; 
              }
        });
        
        lastpoikatid=poikatid;
  }
  
  var lastSubPoikatid =null; 
  
  function showpoikatbyid(){
    showpoikat(this.id.replace("subkat","").replace("closeAktivKat",""));
  }
  function showpoikatbyid2(){
    showpoikat2(this.id.replace("subkat","").replace("closeAktivKat",""));
  }
  
  function getAktivPoiKat(){
      poikat="";
      for(var i in strPoiKatGewaehltGesamt){
        if(poikat!="")
            poikat+=";"+i;
         else   
            poikat=""+i;
      }
    return poikat;
  }
  
  function AktivPoikatSetLeft(dif){
    var left =parseInt(dojo.style("AktivPoiKatIcons","left"));
    
    var anz=dojo.query("#AktivPoiKatIcons >span").length;
    
    if(left+dif>0)
        left=0;
    else if(left+dif<(anz*(-30)+300))
       left=(anz*(-30)+300);
    else
        left+=dif;
    if(left>0)
      left=0;    
    dojo.style("AktivPoiKatIcons","left",(left)+"px");  
  }
  
  function showpoikat(SubPoikatid){
  
     if(typeof strPoiKatGewaehltGesamt[SubPoikatid]=='undefined'){
        dojo.byId("subkat"+SubPoikatid).style.color="#a71a1f";
        strPoiKatGewaehltGesamt[SubPoikatid]=SubPoikatid;
        
//        var div = dojo.create("div", {id: "spanAktivKat_"+SubPoikatid},"AktivPoiKatIcons");
//        var icon=dojo.create("img",{src: "Bilder.aspx?icon=1&id="+SubPoikatid },div);
//        dojo.style(div, {"position":"relative","display":"inline","width":"55px","height":icon.height+"px"});
//        
//        var close=dojo.create("img",{id:"closeAktivKat"+SubPoikatid ,src: "design/close.png",onclick:showpoikatbyid },div);
//        dojo.style(close, {"position":"absolute","top":"-7px","right":"-4px"});

        document.getElementById("AktivPoiKat").style.display="block";
        var span = dojo.create("span", {id: "spanAktivKat_"+SubPoikatid},"AktivPoiKatIcons");
        var icon=dojo.create("img",{"position":"relative",src: "Bilder.aspx?iconsmall=1&id="+SubPoikatid },span);
        dojo.style(span, {"display":"inline-block","position":"relative","marginRight":"8px"} );
        var close=dojo.create("img",{id:"closeAktivKat"+SubPoikatid ,src: "design/close.png",onclick:showpoikatbyid },span);
        dojo.style(close, {"position":"absolute","top":"-7px","right":"-4px","cursor":"pointer"});
                
     }else{
        delete strPoiKatGewaehltGesamt[SubPoikatid];
        if(dojo.byId("subkat"+SubPoikatid)!=null)
        dojo.byId("subkat"+SubPoikatid).style.color="#898A85";
        dojo.destroy("spanAktivKat_"+SubPoikatid);
        
        if(document.getElementById("AktivPoiKatIcons").getElementsByTagName("span").length==0)
            document.getElementById("AktivPoiKat").style.display="none";
        
     }
        
      theMap.TourOrte=0;
      aktivpoikat=getAktivPoiKat();
      if(currMaptype=="GOOGLE")
        {
            var tile1 = theGmap.getBounds().getSouthWest();
            var tile2 = theGmap.getBounds().getNorthEast();
            
            //alert(tile1.lat()+" + "+tile1.lng());
            
            var x1 = tile1.lat();
            var y1 = tile1.lng();
            var x2 = tile2.lat();
            var y2 = tile2.lng();
   			var url = "./mapcontrol/ajax/GetPOILayer.aspx?merk="+getMerkliste()+"&x1="+x1+"&y1="+y1+"&x2="+x2+"&y2="+y2+"&ky=0&kx=0&level="+theMap.zoomlevel+"&mx="+theMap.meterX+"&poiKatIds="+aktivpoikat+"&TourId="+currentTourId+"&usingWMS="+theMap.m_usingWMS+"&TourPoiAnzeigen=";

            if(theMap.TourOrte==1)
                url+="true";
            else
                url+="false";
			url+="&Unterkuenfte=false&Ausflugsziele=false&Service=false";

            //theGmap.clearOverlays();
            getPoilayer(url);
        
        }else
         theMap.checkTilesPoikatChange();
   
      isPOI=true;
  }
  
  
   var lastpoikatid2 =null; 
  function showpoikat2(SubPoikatid){
  
  dojo.query("img[id*='gemerkt_']").forEach(function(node,index,arr){
        dojo.destroy(node);
  });
  
    if(typeof strPoiKatGewaehltGesamt[SubPoikatid]=='undefined'){
        strPoiKatGewaehltGesamt[SubPoikatid]=SubPoikatid;
        dojo.byId("katid"+SubPoikatid).style.color="#E58017";
        
        document.getElementById("AktivPoiKat").style.display="block";
        var span = dojo.create("span", {id: "spanAktivKat_"+SubPoikatid},"AktivPoiKatIcons");
        var icon=dojo.create("img",{"position":"relative",src: "Bilder.aspx?iconsmall=1&id="+SubPoikatid },span);
        dojo.style(span, {"display":"inline-block","position":"relative","marginRight":"8px"} );
        var close=dojo.create("img",{id:"closeAktivKat"+SubPoikatid ,src: "design/close.png",onclick:showpoikatbyid2 },span);
        dojo.style(close, {"position":"absolute","top":"-7px","right":"-4px","cursor":"pointer"});
        
    }else{
        delete strPoiKatGewaehltGesamt[SubPoikatid];
        if(dojo.byId("katid"+SubPoikatid)!=null)
            dojo.byId("katid"+SubPoikatid).style.color="#898A85";
        dojo.destroy("spanAktivKat_"+SubPoikatid);
        
        if(document.getElementById("AktivPoiKatIcons").getElementsByTagName("span").length==0)
            document.getElementById("AktivPoiKat").style.display="none";
        
    }
   
      aktivpoikat=getAktivPoiKat();
      theMap.TourOrte=0;
      theMap.checkTilesPoikatChange();
      
      isPOI=false;
      
  }
  
  
  
  function showpoikatMultimedia(SubPoikatid){
  
  dojo.query("img[id*='gemerkt_']").forEach(function(node,index,arr){
        dojo.destroy(node);
  });
  
    if(typeof strPoiKatGewaehltGesamt[SubPoikatid]=='undefined'){
        strPoiKatGewaehltGesamt[SubPoikatid]=SubPoikatid;
        dojo.byId("katid"+SubPoikatid).style.color="#3C68AE";
        
        document.getElementById("AktivPoiKat").style.display="block";
        var span = dojo.create("span", {id: "spanAktivKat_"+SubPoikatid},"AktivPoiKatIcons");
        var icon=dojo.create("img",{"position":"relative",src: "Bilder.aspx?iconsmall=1&id="+SubPoikatid },span);
        dojo.style(span, {"display":"inline-block","position":"relative","marginRight":"8px"} );
        var close=dojo.create("img",{id:"closeAktivKat"+SubPoikatid ,src: "design/close.png",onclick:showpoikatbyid2 },span);
        dojo.style(close, {"position":"absolute","top":"-7px","right":"-4px","cursor":"pointer"});
        
    }else{
        delete strPoiKatGewaehltGesamt[SubPoikatid];
        if(dojo.byId("katid"+SubPoikatid)!=null)
            dojo.byId("katid"+SubPoikatid).style.color="#898A85";
        dojo.destroy("spanAktivKat_"+SubPoikatid);
        
        if(document.getElementById("AktivPoiKatIcons").getElementsByTagName("span").length==0)
            document.getElementById("AktivPoiKat").style.display="none";
        
    }
   
      aktivpoikat=getAktivPoiKat();
      theMap.TourOrte=0;
      theMap.checkTilesPoikatChange();
      
      isPOI=false;
      
  }
  
  
  
  function showTourRegion(){
      dojo.byId("idTourRegion").style.color="#758e4c";
      dojo.byId("idTourAusschnitt").style.color="#898A85";
      dojo.byId("idTourArt").style.color="#898A85";
      showTourmenueById("Tour_Menue_Region");
      showTourSub();
      
  }
  function showTourAusschnitt(){ 
      dojo.byId("idTourAusschnitt").style.color="#758e4c";
      dojo.byId("idTourRegion").style.color="#898A85";
      dojo.byId("idTourArt").style.color="#898A85";
//      
//      showTourSub();

    dojo.byId("MenueTourSubContent3").innerHTML="Touren werden geladen";
    
    if(dojo.byId('MenueTourSub3').style.width.replace("px","")==0 || dojo.byId('MenueTourSub3').style.width.replace("px","")=="")
        maximize('MenueTourSub3',246,201);

        var mapX1=0;
        var mapY1=0;
        var mapX2=0;
        var mapY2=0;


        var innerDiv = dojo.byId("innerDiv");
		var x1 = stripPx(innerDiv.style.left);
		var y1 = stripPx(innerDiv.style.top);
        var mapX1=theMap.links-parseInt(x1*theMap.meterX);
        var mapY1=theMap.unten-parseInt(y1*theMap.meterY);
        
        var outerdiv=dojo.byId("outerDiv");
        var RectWidth=parseInt(parseInt(outerdiv.clientWidth)*theMap.meterX);
        var RectHeight=parseInt(parseInt(outerdiv.clientHeight)*theMap.meterY);
        
        if(currMaptype=="GOOGLE"){
               var tile1 = theGmap.getBounds().getSouthWest();
               var tile2 = theGmap.getBounds().getNorthEast();
               //alert(tile1.lat()+" + "+tile1.lng());
               mapX1 = tile1.lat();
               mapY1 = tile1.lng();
               mapX2 = tile2.lat();
               mapY2 = tile2.lng();
        }   

    
    
    dojo.xhrGet( {
                url: "mapcontrol/ajax/GetTourByRect.aspx", 
                preventCache: true,//Cachen erlaubt
                handleAs:"xml",
                content:{
                    "currMaptype":currMaptype,
                    x1:mapX1,
                    y1:mapY1,
                    x2:mapX2,
                    y2:mapY2,
                    width:RectWidth,
                    height:RectHeight
                },
                load: function(response, ioArgs) { 
                
                   dojo.empty("MenueTourSubContent3");
                   dojo.empty("MenueTourSubTitle3");
                   
                   dojo.byId("MenueTourSubTitle3").innerHTML="verfügbare Touren:"+response.getElementsByTagName("tour").length;  
                   
                    for(var i=0;i<response.getElementsByTagName("tour").length;i++){
                        var tour=response.getElementsByTagName("tour")[i];
                        var tid=tour.getAttribute("tourid");
                        var tname="";
                        if(tour.getAttribute("tourkatid")!="")
                            tname="<img src='Bilder.aspx?tourkat=1&id="+tour.getAttribute("tourkatid")+"' style='max-width:20px;'>"+tour.getAttribute("tourname");
                        else
                            tname=tour.getAttribute("tourname");
                        
                    var div=dojo.create("div",{
                                    innerHTML:tname,
                                    id:"tour_"+tid,
                                    onclick:LoadTourByIdNoZoom
                                },                    
                                "MenueTourSubContent3");
                                dojo.style(div,{"lineHeight":"10px","paddingBottom":"10px"});
                    
                    }
                
                },
                error: function(response, ioArgs) { 
                      //nichts machen
                      return response; 
                      }
                });
  }
  function showTourArt(){ 
      dojo.byId("idTourArt").style.color="#758e4c";
      dojo.byId("idTourAusschnitt").style.color="#898A85";
      dojo.byId("idTourRegion").style.color="#898A85";
    
      showTourmenueById("Tour_Menue_Tourenart");
      showTourSub();
  }
  function showTourSub(){

//        if(lastpoikatid!=null && dojo.byId("katid"+lastpoikatid)!=null)
//            dojo.byId("katid"+lastpoikatid).style.color="#898A85";
//        if(lastpoikatid2!=null && dojo.byId("katid"+lastpoikatid2)!=null)
//            dojo.byId("katid"+lastpoikatid2).style.color="#898A85";
//        dojo.byId("katid"+poikatid).style.color="#a71a1f";
        if(dojo.byId('MenueTourSub').style.width.replace("px","")==0)
            maximize('MenueTourSub',242,321);
            
            
            
            if(dojo.query("div[id^='region_'][class='tma']").length>0)
                getTourBySelection();
            
            
//        dojo.byId("MenueTourSubContent").innerHTML="Daten werden geladen";
//        
//        dojo.xhrGet( {
//        url: "mapcontrol/ajax/GetSubmenue.aspx", 
//        preventCache: false,//Cachen erlaubt
//        content:{
//            katid: 111//poikatid
//        },
//        load: function(response, ioArgs) { 
//              dojo.byId("MenueTourSubContent").innerHTML = response; 
//              return response; 
//            },
//        error: function(response, ioArgs) { 
//              //nichts machen
//              dojo.byId("MenueTourSubContent").innerHTML ="Es ist ein Fehler aufgetreten";
//              return response; 
//              }
//        });
    }

function showPoiInfoDirect(id_tmp)
{
    var id = id_tmp.substring(0,id_tmp.indexOf('_'));
    showPoiInfo(id);
}

function showPoiMultimediaDirect(id_tmp)
{
    showPoiMultimedia(id_tmp);
}

function showPoiMultimedia(PoiId){

dojo.byId("PoiVisitenkarte_menue_1").parentNode.style.backgroundPosition="0px 0px";
dojo.byId("UnterkuenfteVisitenkarte_menue_1").parentNode.style.backgroundPosition="0px 0px";



dojo.xhrGet( {
                url: "./GetVisitenkarte.aspx", 
                preventCache: true,//Cachen erlaubt
                handleAs:"xml",
                content:{
                    poiId: PoiId,
                    spracheId:strSpracheId
                },
                load: function(response, ioArgs) { 
                   
               // var    xmlObj=getXMLObject(response);
                        var objElement = response.getElementsByTagName("visitenkarteninfo")[0];
                        arrVisitenkarte = new Array(
                        objElement.getAttribute("name"),            //0
                        objElement.getAttribute("poiKatId"),		//index 1
                        objElement.getAttribute("symbol"),	        //2
                        objElement.getAttribute("poiKatName"),      //3
                        objElement.getAttribute("strasse"),         //4
                        objElement.getAttribute("hausNr"),			//index 5
                        objElement.getAttribute("plz"),             //6
                        objElement.getAttribute("ort"),             //7
                        objElement.getAttribute("adressZusatz"),    //8
                        objElement.getAttribute("telefon"),         //9
                        objElement.getAttribute("telefax"),			//index 10
                        objElement.getAttribute("bild"),            //11
                        objElement.getAttribute("logo"),            //12
                        objElement.getAttribute("koord_x"),         //13
                        objElement.getAttribute("koord_y"),         //14
                        objElement.getAttribute("erstellt"),		//index 15
                        objElement.getAttribute("info"),            //16
                        objElement.getAttribute("beschreibung"),	//index 17
                        objElement.getAttribute("oeffnungszeiten"), //18
                        objElement.getAttribute("anfahrt"),			//index 19
                        objElement.getAttribute("poiId"),			//20
                        objElement.getAttribute("poiAnzeige"),		//index 21
                        objElement.getAttribute("buchungslink"),    //22
                        objElement.getAttribute("infolink"),        //23
                        objElement.getAttribute("hvvlink"),         //index 24
                        objElement.getAttribute("terminlink"),      //25
                        objElement.getAttribute("terminname"),      //index 26
                        objElement.getAttribute("email"),           //27
                        objElement.getAttribute("emailname"),       //28
                        objElement.getAttribute("pdfName"),         //index 29  wird hier für Anzeige von EZ (Einzelzimmer) in der Visitenkarte verwendet
                        objElement.getAttribute("pdfLink"),         // index 30 wird hier für Anzeige von DZ (Doppelzimmer) in der Visitenkarte verwendet
                        objElement.getAttribute("adressName"),      //31
                        objElement.getAttribute("visit"),           //32
                        objElement.getAttribute("region"),          //33
                        objElement.getAttribute("isPOI")                                       //34 POI=true,Unterkunt=false                
                        );              
                        
                        if(objElement.getAttribute("isPOI")=="false")
                            isPOI=false;
                        else
                            isPOI=true;
                            
                      
                       arrVisitenkarte2= new Array(
                         objElement.getAttribute("downloads"),
                         objElement.getAttribute("aufrufe"),
                         objElement.getAttribute("outor")
                        );
                        
                        dojo.byId("d_lightbox_layer").style.display="block";
                        closePoiContent();
    
                        if(isPOI){
                        type="PoiVisitenkarte";
                        }else{
                        type="UnterkuenfteVisitenkarte";
                        }
                        dojo.query(".blank").forEach(function(node, index, arr){
                            node.style.display="none";
                        });
                        dojo.byId(type).style.display="block";
                        
                         VisitenkarteMenue(dojo.byId("PoiVisitenkarte_menue_2"), 2);
                         
                          return response; 
                    },
                error: function(response, ioArgs) { 
                      //nichts machen
                      return response; 
                      }
                });

}


var Videoids=null;
var VideoType=0;
function showMultimediaVideo(id_tmp){
    var ids = id_tmp.split("_");
    Videoids=new Array(ids[0].split(","),ids[1].split(","),ids[2].split("|"));
    
    if(Videoids[0].length>1)
        showVideoByIds();
    else
        showVideoById();

}

function closeVideo(){

    if(VideoType==0)
        dojo.byId("d_lightbox_layer5").style.display="none";
    else{
        showVideoByIds();
        VideoType=0;
    }

}

function showVideoById(){
    
    dojo.byId("d_lightbox_layer5").style.display="block";

    
  
    
       // dojo.byId("bigPic").src=this;
        var width=450;
        var height=500;
        
        dojo.byId("videoContainer").width=(width)+"px";
        dojo.byId("videoContainer").height=(height)+"px";
        
        var left =(-1)*parseInt(width)/2;
        var top =(-1)*parseInt(height)/2;

        dojo.byId("videoContainer").style.marginLeft=(left)+"px";
        dojo.byId("videoContainer").style.marginTop=(top)+"px";
        
        
        dojo.empty("videoContent");
        dojo.byId("videoContent").style.height=(height-35)+"px"
        dojo.create("div",{innerHTML:Videoids[2][0]},"videoContent");
     

	if(Videoids[1][0]=="2")
	dojo.create("div",{innerHTML:"<iframe scrolling='no' frameborder='0' marginwidth='0' marginheight='0' src='showVideo.aspx?mediaid=" + Videoids[0][0] + "' width='320' height='240' style='background-color:#FFF1D1;'></iframe>"},"videoContent");        
	else	
	dojo.create("div",{innerHTML:"<iframe scrolling='no' frameborder='0' marginwidth='0' marginheight='0' src='showVideo.aspx?mediaid=" + Videoids[0][0] + "&yt=true' width='340' height='285'  style='background-color:#FFF1D1;'></iframe>"},"videoContent");        

        
         dojo.byId("videotdlt").style.height=height+"px";
         dojo.byId("videotdrt").style.width=width+"px";
         dojo.byId("videotdrt").style.height=height+"px";
         dojo.byId("videotdrb").style.width=width+"px";
         
 
}


function showVideoByIds(){
    
    newVideoIndex=0;
    
    dojo.byId("d_lightbox_layer5").style.display="block";

      
        var width=450;
        var height=500;
        
        dojo.byId("videoContainer").width=(width)+"px";
        dojo.byId("videoContainer").height=(height)+"px";
        
        var left =(-1)*parseInt(width)/2;
        var top =(-1)*parseInt(height)/2;

        dojo.byId("videoContainer").style.marginLeft=(left)+"px";
        dojo.byId("videoContainer").style.marginTop=(top)+"px";
        dojo.byId("videotdlt").style.height=height+"px";
        dojo.byId("videotdrt").style.width=width+"px";
        dojo.byId("videotdrt").style.height=height+"px";
        dojo.byId("videotdrb").style.width=width+"px";
        
        dojo.empty("videoContent");
        dojo.byId("videoContent").style.height=(height-20)+"px"
        
        for(var i=0;i<Videoids[0].length;i++){
           //dojo.create("div",{innerHTML:"Text"},"imgContent");
           var div=dojo.create("div",{innerHTML:Videoids[2][i]},"videoContent");
           dojo.style(div,{cursor:"pointer",paddingRight:"5px",paddingTop:"5px"});
           div.onclick=(function(){ showVideoByIndex(this)}).bind(i);
        }
         

}

var newVideoIndex=0;

function showVideoByIndex(index){
    
    VideoType=1;

    newVideoIndex=index;
    dojo.byId("d_lightbox_layer5").style.display="block";
    
	var width=450;
        var height=500;
        
        dojo.byId("videoContainer").width=(width)+"px";
        dojo.byId("videoContainer").height=(height)+"px";
        
        var left =(-1)*parseInt(width)/2;
        var top =(-1)*parseInt(height)/2;

        dojo.byId("videoContainer").style.marginLeft=(left)+"px";
        dojo.byId("videoContainer").style.marginTop=(top)+"px";
        
        
        dojo.empty("videoContent");
        dojo.byId("videoContent").style.height=(height-10)+"px"
        //dojo.create("div",{innerHTML:"Text"},"imgContent");
        dojo.create("div",{innerHTML:Videoids[2][newVideoIndex]},"videoContent");

if(Videoids[1][newVideoIndex]=="2")
	dojo.create("div",{innerHTML:"<iframe scrolling='no' frameborder='0' marginwidth='0' marginheight='0' src='showVideo.aspx?mediaid=" + Videoids[0][newVideoIndex] + "' width='320' height='240' style='background-color:#FFF1D1;'></iframe>"},"videoContent");        
	else	
	dojo.create("div",{innerHTML:"<iframe scrolling='no' frameborder='0' marginwidth='0' marginheight='0' src='showVideo.aspx?mediaid=" + Videoids[0][newVideoIndex] + "&yt=true' width='340' height='285'  style='background-color:#FFF1D1;'></iframe>"},"videoContent"); 

       
	 
        
        var hr=dojo.create("hr",{},"videoContent");
        dojo.style(hr,{clear:"both"});
        
        if(index>0){
            var img=dojo.create("img",{src:"/design/navlinks.png"},"videoContent");
            dojo.style(img,{"float":"left",cursor:"pointer"});
            img.onclick=img.onclick=(function(){ showVideoByIndex(this)}).bind(index-1);
        }
        if((index+1)<Videoids[0].length){
            var img=dojo.create("img",{src:"/design/navrechts.png"},"videoContent");
            dojo.style(img,{"float":"right",cursor:"pointer"});
            img.onclick=img.onclick=(function(){ showVideoByIndex(this)}).bind(index+1);
        }
            
        
         dojo.byId("videotdlt").style.height=height+"px";
         dojo.byId("videotdrt").style.width=width+"px";
         dojo.byId("videotdrt").style.height=height+"px";
         dojo.byId("videotdrb").style.width=width+"px";
    
}


var Fotoids=null;
var FotosType=0;
function showMultimediaFoto(id_tmp){
    var ids = id_tmp.split("_");
    Fotoids=new Array(ids[0].split(","),ids[1].split(","),ids[2].split("|"));
    
    if(Fotoids[0].length>1)
        showBigPicByIds();
    else
        showBigPicById();

}

function closeImage(){

    if(FotosType==0)
        dojo.byId("d_lightbox_layer4").style.display="none";
    else{
        showBigPicByIds();
        FotosType=0;
    }

}

function showBigPicById(){
    
    dojo.byId("d_lightbox_layer4").style.display="block";
    var imgPreloader = new Image();
    imgPreloader.onload = (function(){
    
    var winsize=GetWindowSize();
    if(winsize[0]>1024)
        winsize[0]=1000;
        else
        winsize[0]-=100;
    
    if(winsize[1]>1024)
        winsize[1]=1000;
    else
        winsize[1]-=100;
        
    if(winsize[0]<imgPreloader.width)
    {
        var tmpWidth=imgPreloader.width;
        imgPreloader.width=winsize[0]-20;
        imgPreloader.height=imgPreloader.height/tmpWidth*imgPreloader.width;
    }
    if(winsize[1]<imgPreloader.height){
        var tmpHeight=imgPreloader.height;
        imgPreloader.height=winsize[1]-20;
        imgPreloader.width=imgPreloader.width/tmpHeight*imgPreloader.height;    
    }
    
       // dojo.byId("bigPic").src=this;
        var width=imgPreloader.width+40;
        var height=imgPreloader.height+75;
        
        dojo.byId("imgContainer").width=(width)+"px";
        dojo.byId("imgContainer").height=(height)+"px";
        
        var left =(-1)*parseInt(width)/2;
        var top =(-1)*parseInt(height)/2;

        dojo.byId("imgContainer").style.marginLeft=(left)+"px";
        dojo.byId("imgContainer").style.marginTop=(top)+"px";
        
        
        dojo.empty("imgContent");
        dojo.byId("imgContent").style.height=(height-35)+"px"
        //dojo.create("div",{innerHTML:"Text"},"imgContent");
        dojo.create("div",{innerHTML:this[2][0]},"imgContent");
        var img=dojo.create("img",{src:"Bilder.aspx?id="+this[0][0]+"&mediabild=1&poiid="+this[1][0],style:"align:center;"},"imgContent");
        dojo.style(img,{width:imgPreloader.width+"px",height:imgPreloader.height+"px"});
        
         dojo.byId("imgtdlt").style.height=height+"px";
         dojo.byId("imgtdrt").style.width=width+"px";
         dojo.byId("imgtdrt").style.height=height+"px";
         dojo.byId("imgtdrb").style.width=width+"px";
         
    }).bind(Fotoids);
    imgPreloader.src ="Bilder.aspx?id="+Fotoids[0][0]+"&mediabild=1&poiid="+Fotoids[1][0];
}


function showBigPicByIds(){
    
    newFotoIndex=0;
    
    dojo.byId("d_lightbox_layer4").style.display="block";

       // dojo.byId("bigPic").src=this;
        var width=450;
        var height=500;
        
        dojo.byId("imgContainer").width=(width)+"px";
        dojo.byId("imgContainer").height=(height)+"px";
        
        var left =(-1)*parseInt(width)/2;
        var top =(-1)*parseInt(height)/2;

        dojo.byId("imgContainer").style.marginLeft=(left)+"px";
        dojo.byId("imgContainer").style.marginTop=(top)+"px";
        dojo.byId("imgtdlt").style.height=height+"px";
        dojo.byId("imgtdrt").style.width=width+"px";
        dojo.byId("imgtdrt").style.height=height+"px";
        dojo.byId("imgtdrb").style.width=width+"px";
        
        dojo.empty("imgContent");
        dojo.byId("imgContent").style.height=(height-20)+"px"
        
        for(var i=0;i<Fotoids[0].length;i++){
           //dojo.create("div",{innerHTML:"Text"},"imgContent");
           var img=dojo.create("img",{src:"Bilder.aspx?id="+Fotoids[0][i]+"&thumb=1&mediabild=1&poiid="+Fotoids[1][i]},"imgContent");
           dojo.style(img,{maxWidth:"100px",cursor:"pointer",paddingRight:"5px",paddingTop:"5px"});
           
           img.onclick=(function(){ showBigPicByIndex(this)}).bind(i);
        }
         
    //("Bilder.aspx?id="+Fotoids[0][0]+"&mediabild=1&poiid="+Fotoids[1][0]);
    //imgPreloader.src ="Bilder.aspx?id="+Fotoids[0][0]+"&mediabild=1&poiid="+Fotoids[1][0];
}

var newFotoIndex=0;

function showBigPicByIndex(index){
    
    FotosType=1;

    newFotoIndex=index;
    dojo.byId("d_lightbox_layer4").style.display="block";
    var imgPreloader = new Image();
    imgPreloader.onload = (function(){
    
    var winsize=GetWindowSize();
    if(winsize[0]>1024)
        winsize[0]=1000;
        else
        winsize[0]-=100;
    
    if(winsize[1]>1024)
        winsize[1]=1000;
    else
        winsize[1]-=100;
        
    if(winsize[0]<imgPreloader.width)
    {
        var tmpWidth=imgPreloader.width;
        imgPreloader.width=winsize[0]-20;
        imgPreloader.height=imgPreloader.height/tmpWidth*imgPreloader.width;
    }
    if(winsize[1]<imgPreloader.height){
        var tmpHeight=imgPreloader.height;
        imgPreloader.height=winsize[1]-20;
        imgPreloader.width=imgPreloader.width/tmpHeight*imgPreloader.height;    
    }
    
       // dojo.byId("bigPic").src=this;
        var width=imgPreloader.width+40;
        var height=imgPreloader.height+75;
        
        dojo.byId("imgContainer").width=(width)+"px";
        dojo.byId("imgContainer").height=(height)+"px";
        
        var left =(-1)*parseInt(width)/2;
        var top =(-1)*parseInt(height)/2;

        dojo.byId("imgContainer").style.marginLeft=(left)+"px";
        dojo.byId("imgContainer").style.marginTop=(top)+"px";
        
        
        dojo.empty("imgContent");
        dojo.byId("imgContent").style.height=(height-10)+"px"
        //dojo.create("div",{innerHTML:"Text"},"imgContent");
        dojo.create("div",{innerHTML:this[2][newFotoIndex]},"imgContent");
        var img=dojo.create("img",{src:"Bilder.aspx?id="+this[0][newFotoIndex]+"&mediabild=1&poiid="+this[1][newFotoIndex],style:"align:center;"},"imgContent");
        dojo.style(img,{width:imgPreloader.width+"px",height:imgPreloader.height+"px"});
        
        var hr=dojo.create("hr",{},"imgContent");
        dojo.style(hr,{clear:"both"});
        
        if(index>0){
            var img=dojo.create("img",{src:"/design/navlinks.png"},"imgContent");
            dojo.style(img,{"float":"left",cursor:"pointer"});
            img.onclick=img.onclick=(function(){ showBigPicByIndex(this)}).bind(index-1);
        }
        if((index+1)<this[0].length){
            var img=dojo.create("img",{src:"/design/navrechts.png"},"imgContent");
            dojo.style(img,{"float":"right",cursor:"pointer"});
            img.onclick=img.onclick=(function(){ showBigPicByIndex(this)}).bind(index+1);
        }
            
        
         dojo.byId("imgtdlt").style.height=height+"px";
         dojo.byId("imgtdrt").style.width=width+"px";
         dojo.byId("imgtdrt").style.height=height+"px";
         dojo.byId("imgtdrb").style.width=width+"px";
         
    }).bind(Fotoids);
    imgPreloader.src ="Bilder.aspx?id="+Fotoids[0][newFotoIndex]+"&mediabild=1&poiid="+Fotoids[1][newFotoIndex];
}




//function showBigPicById(ids){
//     dojo.byId("d_lightbox_layer3").style.display="block";

//    if(isPOI)
//        dojo.byId("bigPicClose").src="design/POI_close.png";
//    else
//        dojo.byId("bigPicClose").src="design/unter_close.png";

//    var imgPreloader = new Image();
//    // once image is preloaded, resize image container
//    imgPreloader.onload = (function(){
//        dojo.byId("bigPic").src=this;
//        
//        var left =(-1)*parseInt(imgPreloader.width)/2;
//        var top =(-1)*parseInt(imgPreloader.height)/2;
//        dojo.byId("bigPic").style.marginLeft=left+"px";
//        dojo.byId("bigPic").style.marginTop=top+"px";
//        
//        dojo.byId("bigPicClose").style.marginLeft=(left*(-1))+"px";
//        dojo.byId("bigPicClose").style.marginTop=top+"px";
//        
//        dojo.byId("bigPic").style.display="block";
//        dojo.byId("bigPicClose").style.display="block";
//        
//    }).bind("Bilder.aspx?id="+ids[0]+"&mediabild=1&poiid="+ids[1]);
//    imgPreloader.src ="Bilder.aspx?id="+ids[0]+"&mediabild=1&poiid="+ids[1];
//}


function showTourInfoDirect(id_tmp)
{
    var id = id_tmp.substring(0,id_tmp.indexOf('_'));
    theMap.bZoom = true;  
    theMap.LoadTour(id);
    theMap.bZoom = false;
//    switchClassName("#MenueTourSubContent2 .tma","tma2");
//    this.setAttribute(bIsIE?"className":"class","tma");
    maximize('TourVisitenkarte',381,382);
    
    switchProfile();
}

function showPoiInfo(PoiId){

dojo.byId("PoiVisitenkarte_menue_1").parentNode.style.backgroundPosition="0px 0px";
dojo.byId("UnterkuenfteVisitenkarte_menue_1").parentNode.style.backgroundPosition="0px 0px";



dojo.xhrGet( {
                url: "./GetVisitenkarte.aspx", 
                preventCache: true,//Cachen erlaubt
                handleAs:"xml",
                content:{
                    poiId: PoiId,
                    spracheId:strSpracheId
                },
                load: function(response, ioArgs) { 
                   
               // var    xmlObj=getXMLObject(response);
                        var objElement = response.getElementsByTagName("visitenkarteninfo")[0];
                        arrVisitenkarte = new Array(
                        objElement.getAttribute("name"),            //0
                        objElement.getAttribute("poiKatId"),		//index 1
                        objElement.getAttribute("symbol"),	        //2
                        objElement.getAttribute("poiKatName"),      //3
                        objElement.getAttribute("strasse"),         //4
                        objElement.getAttribute("hausNr"),			//index 5
                        objElement.getAttribute("plz"),             //6
                        objElement.getAttribute("ort"),             //7
                        objElement.getAttribute("adressZusatz"),    //8
                        objElement.getAttribute("telefon"),         //9
                        objElement.getAttribute("telefax"),			//index 10
                        objElement.getAttribute("bild"),            //11
                        objElement.getAttribute("logo"),            //12
                        objElement.getAttribute("koord_x"),         //13
                        objElement.getAttribute("koord_y"),         //14
                        objElement.getAttribute("erstellt"),		//index 15
                        objElement.getAttribute("info"),            //16
                        objElement.getAttribute("beschreibung"),	//index 17
                        objElement.getAttribute("oeffnungszeiten"), //18
                        objElement.getAttribute("anfahrt"),			//index 19
                        objElement.getAttribute("poiId"),			//20
                        objElement.getAttribute("poiAnzeige"),		//index 21
                        objElement.getAttribute("buchungslink"),    //22
                        objElement.getAttribute("infolink"),        //23
                        objElement.getAttribute("hvvlink"),         //index 24
                        objElement.getAttribute("terminlink"),      //25
                        objElement.getAttribute("terminname"),      //index 26
                        objElement.getAttribute("email"),           //27
                        objElement.getAttribute("emailname"),       //28
                        objElement.getAttribute("pdfName"),         //index 29  wird hier für Anzeige von EZ (Einzelzimmer) in der Visitenkarte verwendet
                        objElement.getAttribute("pdfLink"),         // index 30 wird hier für Anzeige von DZ (Doppelzimmer) in der Visitenkarte verwendet
                        objElement.getAttribute("adressName"),      //31
                        objElement.getAttribute("visit"),           //32
                        objElement.getAttribute("region"),          //33
                        objElement.getAttribute("isPOI")                                       //34 POI=true,Unterkunt=false                
                        );              
                        
                        if(objElement.getAttribute("isPOI")=="false")
                            isPOI=false;
                        else
                            isPOI=true;
                            
                      
                       arrVisitenkarte2= new Array(
                         objElement.getAttribute("downloads"),
                         objElement.getAttribute("aufrufe"),
                         objElement.getAttribute("outor")
                        );
                        
                      
                        dojo.byId("d_lightbox_layer").style.display="block";
                        closePoiContent();
                        var tableKontakt="<table><tr><td class='ktd'>Kategorie:</td><td>"+arrVisitenkarte[3]+"</td></tr>";
                        if(arrVisitenkarte[33]!="")
                            tableKontakt+="<tr><td class='ktd'>Region:</td><td>"+arrVisitenkarte[33]+"</td></tr>";
                            
                            tableKontakt+="<tr><td class='ktd' valign='top'>Kontakt/<br>Autor:</td><td>"+arrVisitenkarte[0]

                              if(arrVisitenkarte[4]!="")
                              tableKontakt+="<br />"+arrVisitenkarte[4]+" "+arrVisitenkarte[5];
                              if(arrVisitenkarte[6]!="")
                              tableKontakt+="<br />"+arrVisitenkarte[6]+" "+arrVisitenkarte[7];
                              if(arrVisitenkarte[9]!="")
                              tableKontakt+="<br />Tel.:"+arrVisitenkarte[9];
                              if(arrVisitenkarte[10]!="")
                              tableKontakt+="<br />Fax :"+arrVisitenkarte[10];                                                                                          
                              
                              if(arrVisitenkarte[27]!="")
                              tableKontakt+="<br />E-Mail:<a href='mailto:"+arrVisitenkarte[27]+"'>"+arrVisitenkarte[27]+"</a>";
                              
                              tableKontakt+="</td></tr>";
                        
                            var Content_Top="";
                            if(arrVisitenkarte[11]=='true')
                                Content_Top+="<img src='Bilder.aspx?bild=1&id="+arrVisitenkarte[20]+"' style='max-width:150px;float:right;'>"; 
                            
                            Content_Top+="<span class='title'>"+arrVisitenkarte[0]+"</span><br> "+arrVisitenkarte[16]+((arrVisitenkarte[16]!="")?"<br>":"")+arrVisitenkarte[17]+((arrVisitenkarte[17]!="")?"<br>":"")+arrVisitenkarte[18]+"<br> ";
                            
                                   
                        
                        var type="";
                        
                        if(isPOI){
                        type="PoiVisitenkarte";
                        }else{
                        type="UnterkuenfteVisitenkarte";
                        }
                        dojo.query(".blank").forEach(function(node, index, arr){
                            node.style.display="none";
                        });
                        dojo.byId(type).style.display="block";
                        dojo.byId(type+"_Content_oben").innerHTML=Content_Top; 
                        dojo.byId(type+"_Content_unten").innerHTML=tableKontakt;
                        dojo.byId(type+"_Content_oben").style.display="block";
                        dojo.byId(type+"_Content_unten").style.display="block";
                        
                        if(typeof merkerlistePoi[arrVisitenkarte[20]]!="undefined" && merkerlistePoi[arrVisitenkarte[20]]!=null)
                            dojo.byId(type+"_gemerkt").style.display="block";
                        else
                            dojo.byId(type+"_gemerkt").style.display="none"; 
                        
                        if(arrVisitenkarte[23]=="")
                            dojo.byId(type+"_mehrInfo_blank").style.display="block";
                        else
                            dojo.byId(type+"_mehrInfo_blank").style.display="none";
                            
                        if(arrVisitenkarte[22]=="" && !isPOI)    
                             dojo.byId(type+"_buchen_blank").style.display="block";
                           
                        if(parseInt(arrVisitenkarte[6])>=0)
                        Wetter(arrVisitenkarte[6],type+"_Content_unten");
                          return response; 
                    },
                error: function(response, ioArgs) { 
                      //nichts machen
                      return response; 
                      }
                });

}

function showTourmenueById(id){
    switchClassName(".tmc_open","tmc_hidden")
    switchClassName("#MenueTourSubContent .opened","closed")
    dojo.byId(id).setAttribute(bIsIE?"className":"class","opened");
    dojo.byId(id+"_content").setAttribute(bIsIE?"className":"class","tmc_open");
}  

function switchClassName(fromClassName,toClassName){

    dojo.query(fromClassName).forEach(function(node,index,arr){
        node.setAttribute(bIsIE?"className":"class",toClassName);
    });

}

function LoadTourById(){
    theMap.bZoom = true;  
    theMap.LoadTour(this.id.replace("tour_",""));
    theMap.bZoom = false;
    //MenueTourSubContent2
    switchClassName("#MenueTourSubContent2 .tma","tma2");
    this.setAttribute(bIsIE?"className":"class","tma");
    
    maximize('TourVisitenkarte',381,382);
}

function LoadTourByIdNoZoom(){
    theMap.bZoom = false;
    tourPointer = true;  
    theMap.LoadTour(this.id.replace("tour_",""));
    //MenueTourSubContent2
    switchClassName("#MenueTourSubContent2 .tma","tma2");
    this.setAttribute(bIsIE?"className":"class","tma");
    
    minimize('TourVisitenkarte',381,382);
}

function LoadTourByIdMultimedia(tourid){

    theMap.bZoom = false;
    tourPointer = true;  
    theMap.LoadTour(tourid);
    //MenueTourSubContent2
    dojo.byId('profile').style.display='none';
    TourInfoOeffnen();
    window.setTimeout("VisitenkarteMenue2('TourVisitenkarte_menue_2',2)",2000);
    //minimize('TourVisitenkarte',381,382);
}

function VisitenkarteMenue2(node,pos){
    VisitenkarteMenue(dojo.byId(node),pos);
}


function minimizeTourSub(){
 if(dojo.byId('MenueTourSub2').style.width.replace("px","")!=0 )
    minimize('MenueTourSub2',246,201);
    minimize('MenueTourSub',242,321);
}

function stopBubble(e){

    if (!e) var e = window.event;
    e.cancelBubble = true;
	if (e.stopPropagation) e.stopPropagation();

}


function getTourBySelection(){

  if(dojo.byId('MenueTourSub2').style.width.replace("px","")==0 || dojo.byId('MenueTourSub2').style.width.replace("px","")=="")
    maximize('MenueTourSub2',246,201);

 dojo.xhrGet( {
                url: "mapcontrol/ajax/GetTourBySelection.aspx", 
                preventCache: true,//Cachen erlaubt
                handleAs:"xml",
                content:{
                    regionid: Regionid,
                    tourenart:  Tourenart,
                    tourenunterart:Tourenunterart,
                    dauer:Dauer,
                    untergrund:Untergrund,
                    verlauf:Verlauf,
                    laenge:Laenge,
                    hoehenmeter:Hoehenmeter
                },
                load: function(response, ioArgs) { 
                
                   dojo.empty("MenueTourSubContent2");
                   dojo.empty("MenueTourSubTitle");
                   
                   dojo.byId("MenueTourSubTitle").innerHTML="verfügbare Touren:"+response.getElementsByTagName("tour").length;  
                   
                    for(var i=0;i<response.getElementsByTagName("tour").length;i++){
                        var tour=response.getElementsByTagName("tour")[i];
                        var tid=tour.getAttribute("tourid");
                        var tname="";
                        
                        if(tour.getAttribute("tourkatid")!="")
                            tname="<img src='Bilder.aspx?tourkat=1&id="+tour.getAttribute("tourkatid")+"' style='max-width:20px;'>"+tour.getAttribute("tourname");
                        else
                            tname=tour.getAttribute("tourname");
                        
                     dojo.create("div",{
                                    innerHTML:tname,
                                    id:"tour_"+tid,
                                    style:"line-height:10px; padding-bottom:10px;",
                                    onclick:LoadTourById
                                },                    
                                "MenueTourSubContent2");
                    
                    }
                
                },
                error: function(response, ioArgs) { 
                      //nichts machen
                      return response; 
                      }
                });

}

function getUnterart(){
    dojo.byId('Tour_Menue_Tourenunterart').style.display='block';
    
    
    dojo.xhrGet( {
                url: "mapcontrol/ajax/getUnterart.aspx", 
                preventCache: true,//Cachen erlaubt
                handleAs:"xml",
                content:{
                    regionid: Regionid,
                    tourenart:  Tourenart,
                    tourenunterart:Tourenunterart,
                    dauer:Dauer,
                    untergrund:Untergrund,
                    verlauf:Verlauf,
                    laenge:Laenge,
                    hoehenmeter:Hoehenmeter
                },
                load: function(response, ioArgs) { 

                   dojo.empty("Tour_Menue_Tourenunterart_content");
                         
                    for(var i=0;i<response.getElementsByTagName("Unterart").length;i++){
                        var Kat=response.getElementsByTagName("Unterart")[i];
                        var kid=Kat.getAttribute("tourkatid");
                        var name=Kat.getAttribute("name");
                        
                     dojo.create("div",{
                                    innerHTML:name,
                                    id:"Unterart_"+kid,
                                    onclick:setUnterartById,
                                    "class":"tma2"
                                },                    
                                "Tour_Menue_Tourenunterart_content");
                    
                    }
                
                },
                error: function(response, ioArgs) { 
                      //nichts machen
                      return response; 
                      }
                });
}


function tourbyArt(id){
    if(id!=Tourenart){

        selectType("Tour_Menue_Tourenart","Tourart",id);
        
        Tourenart=id;
        dojo.byId('Tour_Menue_Tourenunterart_content').setAttribute(bIsIE?"className":"class","tmc_hidden");
        dojo.byId('Tour_Menue_Tourenunterart_ausgewaehlt').innerHTML="keine Auswahl";
        dojo.byId('Tour_Menue_Tourenunterart_ausgewaehlt').setAttribute(bIsIE?"className":"class","tma");
        getUnterart();
    }else{
        deselectType("Tour_Menue_Tourenart","Tourart",id);
        Tourenart=0;
        dojo.byId('Tour_Menue_Tourenunterart').style.display='none';
    }
    Tourenunterart=0;
    getTourBySelection();
}


function tourbyDauer(id){

if(id!=Dauer){
        selectType("Tour_Menue_Zeit","Dauer",id);
        Dauer=id;
    }else{
        deselectType("Tour_Menue_Zeit","Dauer",id);
        Dauer=0;
    }
 
    getTourBySelection();
}

function tourbyUntergrund(id){

 if(id!=Untergrund){
        selectType("Tour_Menue_Untergrund","Untergrund",id);
        Untergrund=id;
    }else{
        deselectType("Tour_Menue_Untergrund","Untergrund",id);
        Untergrund=0;
    }
 
    getTourBySelection();
}
function tourbyVerlauf(id){


  if(id!=Verlauf){
        selectType("Tour_Menue_Verlauf","Verlauf",id);
        Verlauf=id;
    }else{
        deselectType("Tour_Menue_Verlauf","Verlauf",id);
        Verlauf=0;
    }
 
    getTourBySelection();
}

function tourbyLaenge(id){


  if(id!=Laenge){
        selectType("Tour_Menue_Laenge","Laenge",id);
        Laenge=id;
    }else{
        deselectType("Tour_Menue_Laenge","Laenge",id);
        Laenge=0;
    }
 
    getTourBySelection();
}

function tourbyHoehe(id){


  if(id!=Hoehenmeter){
        selectType("Tour_Menue_Hoehenmeter","Hoehe",id);
        Hoehenmeter=id;
    }else{
        deselectType("Tour_Menue_Hoehenmeter","Hoehe",id);
        Hoehenmeter=0;
    }
 
    getTourBySelection();
}



function tourbyregion(id){
    if(id!=Regionid){
        selectType("Tour_Menue_Region","region",id);
        Regionid=id;
    }else{
        deselectType("Tour_Menue_Region","region",id);
        Regionid=0;
    }
 
    getTourBySelection();
}

function setUnterartById(){
    id=this.id.replace("Unterart_","");
    
    if(id!=Tourenunterart){//auswählen
        selectType("Tour_Menue_Tourenunterart","Unterart",id);
        Tourenunterart=id;
    }else{//Auswahl aufheben
        deselectType("Tour_Menue_Tourenunterart","Unterart",id);
        Tourenunterart=0;
    }
    getTourBySelection();
}

function selectType(parentdiv,childdiv,id){
        var copy=dojo.byId(childdiv+'_'+id).innerHTML
        
        dojo.byId(parentdiv+'_ausgewaehlt').innerHTML=copy.substring(copy.indexOf(">")+1);
        dojo.byId(parentdiv+'_ausgewaehlt').setAttribute(bIsIE?"className":"class","tma2");
        dojo.query("div[id^="+childdiv+"_]").forEach(function(node,index,arr){node.setAttribute(bIsIE?"className":"class","tma2")});
        dojo.byId(childdiv+'_'+id).setAttribute(bIsIE?"className":"class","tma");
}
function deselectType(parentdiv,childdiv,id){
        dojo.byId(parentdiv+'_ausgewaehlt').innerHTML="keine Auswahl";
        dojo.byId(parentdiv+'_ausgewaehlt').setAttribute(bIsIE?"className":"class","tma");
        dojo.byId(childdiv+'_'+id).setAttribute(bIsIE?"className":"class","tma2");
}

function tour_merken(){


if(typeof merkerlisteTour[currentTourId]=="undefined" || merkerlisteTour[currentTourId]==null){
    merkerlisteTour[currentTourId]=currentTourname;
    anzmerkerlisteTour++;
}else{
    delete merkerlisteTour[currentTourId];
    anzmerkerlisteTour--;
}

    if(typeof merkerlisteTour[currentTourId]!="undefined" && merkerlisteTour[currentTourId]!=null)
        dojo.byId("TourVisitenkarte_gemerkt").style.display="block";
    else
        dojo.byId("TourVisitenkarte_gemerkt").style.display="none";

    setMerkerlisteAnz();
}

function POI_merken(){

idzusatz="";

    if(currMaptype=="GOOGLE")
        idzusatz="mtgt_";
    else
        idzusatz="";

if(typeof merkerlistePoi[arrVisitenkarte[20]]=="undefined" || merkerlistePoi[arrVisitenkarte[20]]==null){
    merkerlistePoi[arrVisitenkarte[20]]=arrVisitenkarte.slice(0);// So wird das Array ohne referenz übergeben , nur bei Simplen Arrays möglich!!
    anzmerkerlistePoi++;
    
    dojo.byId(idzusatz+arrVisitenkarte[20]).src=dojo.byId(idzusatz+arrVisitenkarte[20]).src+"&gemerkt=true";
    
//                            var img3 = document.createElement("img");
//                                img3.src = "/design/Haken-klein.png";
//								img3.style.position = "absolute";
//								img3.style.left = parseInt(dojo.byId(idzusatz+arrVisitenkarte[20]).style.left) + "px";
//								img3.style.top = parseInt(dojo.byId(idzusatz+arrVisitenkarte[20]).style.top) + "px";
//								img3.style.cursor="pointer";
//								img3.style.zIndex=295;
//								img3.style.height="24px";
//								img3.style.width="22px";
//								img3.alt=dojo.byId(idzusatz+arrVisitenkarte[20]).alt;
//								img3.title=dojo.byId(idzusatz+arrVisitenkarte[20]).title;
//								img3.id="gemerkt_"+arrVisitenkarte[20];
//								img3.customId=dojo.byId(idzusatz+arrVisitenkarte[20]).customId;
//								img3.name=dojo.byId(idzusatz+arrVisitenkarte[20]).name;
//								img3.onclick=theMap.onpoiclick;
//								dojo.byId(idzusatz+arrVisitenkarte[20]).parentNode.appendChild(img3);    
    
}else{

    delete merkerlistePoi[arrVisitenkarte[20]];
    anzmerkerlistePoi--;
   dojo.byId(idzusatz+arrVisitenkarte[20]).src=dojo.byId(idzusatz+arrVisitenkarte[20]).src.replace("&gemerkt=true","");
    
}
    setMerkerlisteAnz();
    
    if(typeof merkerlistePoi[arrVisitenkarte[20]]!="undefined" && merkerlistePoi[arrVisitenkarte[20]]!=null){
            if(merkerlistePoi[arrVisitenkarte[20]][34]=="true")
            dojo.byId("PoiVisitenkarte_gemerkt").style.display="block";
            else
            dojo.byId("UnterkuenfteVisitenkarte_gemerkt").style.display="block";
        }
    else{
            dojo.byId("PoiVisitenkarte_gemerkt").style.display="none";
            dojo.byId("UnterkuenfteVisitenkarte_gemerkt").style.display="none";
        }
    
}


function setMerkerlisteAnz(){


    var anz=anzmerkerlistePoi+anzmerkerlisteTour;

//    if(anz>0){
//        dojo.byId("menueMerkerlisteContent").style.height="27px";
//        if(anz>1)
//            dojo.byId("menueMerkerlisteContent").innerHTML="<div style='height:7px;'>&nbsp</div>"+anz+" Einträge";
//        else
//            dojo.byId("menueMerkerlisteContent").innerHTML="<div style='height:7px;'>&nbsp</div>"+anz+" Eintrag";

//    }else
//    dojo.byId("menueMerkerlisteContent").style.height="0px";

    if(anz>0){
        dojo.byId("meneuMerkerlisteText").style.color="blue";
        if(anz>1)
            dojo.byId("meneuMerkerlisteText").innerHTML="Einträge:"+anz;
        else
            dojo.byId("meneuMerkerlisteText").innerHTML=" Einträge:"+anz;

    }else{
        dojo.byId("meneuMerkerlisteText").innerHTML="Einträge:<br>noch nichts gemerkt";
        dojo.byId("meneuMerkerlisteText").style.color="#87878b";
    }



}

function registrieren(){
    
    var fehler=false;
    dojo.byId("divRegisterFehler").innerHTML="";
    dojo.byId("divRegisterErfolgreich").innerHTML="";

    if(dojo.byId("regBenutzername").value=="" ){
       dojo.byId("divRegisterFehler").innerHTML+="Bitte einen Benutzer angeben<br/>";
       fehler=true;
    }
    if(dojo.byId("regPW1").value!=dojo.byId("regPW2").value){
        dojo.byId("divRegisterFehler").innerHTML+="Die Passwörter sind nicht identisch.<br/>";
        fehler=true;
    }
    if(dojo.byId("regPW1").value=="" || dojo.byId("regPW2").value==""){
       dojo.byId("divRegisterFehler").innerHTML+="Bitte beide Passwortfelder ausfüllen<br/>";
       fehler=true;
    }
    if(dojo.byId("regEmail").value==""){
       dojo.byId("divRegisterFehler").innerHTML+="Bitte eine Emailadresse eingeben<br/>";
       fehler=true;
    }
    
    if(!fehler){
        
         dojo.xhrGet( {
                url: "mapcontrol/ajax/Registration.aspx", 
                preventCache: true,//Cachen erlaubt
                handleAs:"xml",
                content:{
                    benutzer:  dojo.byId("regBenutzername").value,
                    passwort:  dojo.byId("regPW1").value,
                    email:     dojo.byId("regEmail").value
                },
                load: function(response, ioArgs) { 
                    if(response.getElementsByTagName("fehler").length>0)
                        for(var i=0;i<response.getElementsByTagName("fehler").length;i++){
                           if(bIsIE)
                                dojo.create("div",{innerHTML:response.getElementsByTagName("fehler")[i].text},"divRegisterFehler");
                           else
                                dojo.create("div",{innerHTML:response.getElementsByTagName("fehler")[i].textContent},"divRegisterFehler");
                        }
                   else
                        dojo.byId("divRegisterErfolgreich").innerHTML="Registrierung erfolgreich. Bitte prüfe Dein Emailpostfach.";
                },
                error: function(response, ioArgs) { 
                      //nichts machen
                      return response; 
                      }
                });
    
    }

}

function showContent(text){
    dojo.create("div",{innerHTML:text},"divContent");
    dojo.byId("divContent2").style.display="block";
    dojo.byId("divContent").style.display="block";
}

function tryLogin()
{
hidestartInfo();
    if(dojo.byId("userInput").value!="" && dojo.byId("passinput").value!=""){
            
      dojo.xhrPost( {
                url: "mapcontrol/ajax/Login2.aspx", 
                preventCache: true,//Cachen erlaubt
                handleAs:"xml",
                content:{
                    benutzer:  dojo.byId("userInput").value,
                    passwort:  dojo.byId("passinput").value
                },
                load: function(response, ioArgs) { 
                    if(response.getElementsByTagName("fehler").length>0){
                            for(var i=0;i<response.getElementsByTagName("fehler").length;i++){
                               if(bIsIE)
                                    dojo.create("div",{innerHTML:response.getElementsByTagName("fehler")[i].text},"ErrorboxText");
                               else
                                    dojo.create("div",{innerHTML:response.getElementsByTagName("fehler")[i].textContent},"ErrorboxText");
                            }
                            
                            dojo.byId('Errorbox').style.display="block";
                            //FEHLER:
                              
                             var out = dojo.fadeOut(
                                    {
	                                    node:"Errorbox",
	                                    delay:1500,
	                                    duration:1500,
	                                    onEnd:function()
	                                    {
		                                    dojo.byId('ErrorboxText').innerHTML = "";
		                                    dojo.byId('Errorbox').style.display="none";
	                                    }
                                    });

                              dojo.fadeIn({node:"Errorbox",duration:1500, onEnd:function(){out.play()}}).play();
                        
                    }
                   else if(response.getElementsByTagName("sstring").length>0){
                        fillProfile("profil");
//                      ERFOLGREICH:
                        dojo.byId('Eingeloggt').style.display="block";
                        dojo.byId('loginInput').style.display="none";
                        
                         
                        userid=(bIsIE)?response.getElementsByTagName("uid")[0].text:response.getElementsByTagName("uid")[0].textContent;;
                        login=1;
                        UserSession=(bIsIE)?response.getElementsByTagName("sstring")[0].text:response.getElementsByTagName("sstring")[0].textContent;

                        dojo.byId('Errorbox').style.display="block";
                        dojo.byId('ErrorboxText').innerHTML ="Erfolgreich eingeloggt";
                        dojo.byId('begruessung').innerHTML = "Hallo "+dojo.byId("userInput").value + ", du bist angemeldet";
                
                        
                        //Uploadbuttons aktivieren wenn fenster offen
                        if(dojo.byId("TourVisitenkarteMultimedia_Content").style.display=="block")
                            activateTMButton();

                        var PoiId=arrVisitenkarte[20];
                        var type = "";
                        var isUnter=false;
                        if(dojo.byId("UnterkuenfteVisitenkarteMultimedia_Content").style.display == "block"){     
	                        isUnter=true;
                            type="Unter";
                            activateMbutton(isUnter,type,PoiId)
                         }
                         else if(dojo.byId("PoiVisitenkarteMultimedia_Content").style.display=="block"){
                            activateMbutton(isUnter,type,PoiId);
                         }                        
                    
                        

                         var out = dojo.fadeOut(
                                {
	                                node:"Errorbox",
	                                delay:1500,
	                                duration:1500,
	                                onEnd:function()
	                                {
		                                dojo.byId('ErrorboxText').innerHTML = "";
		                                dojo.byId('Errorbox').style.display="none";
	                                }
                                });

                          dojo.fadeIn({node:"Errorbox",duration:1500, onEnd:function(){out.play()}}).play();
                        }
                        else{
                        
                        
                            dojo.byId('Errorbox').style.display="block";
                            dojo.byId('ErrorboxText').innerHTML ="Fehler beim Login, bitte noch einmal versuchen";
                              
                             var out = dojo.fadeOut(
                                    {
	                                    node:"Errorbox",
	                                    delay:1500,
	                                    duration:1500,
	                                    onEnd:function()
	                                    {
		                                    dojo.byId('ErrorboxText').innerHTML = "";
		                                    dojo.byId('Errorbox').style.display="none";
	                                    }
                                    });
                            dojo.fadeIn({node:"Errorbox",duration:1500, onEnd:function(){out.play()}}).play();                         
                            
                        }
                        
                },
                error: function(response, ioArgs) { 
                      //nichts machen
                      return response; 
                      }
                });
    
    }else{
            dojo.byId('Errorbox').style.display="block";
            dojo.byId('ErrorboxText').innerHTML ="Bitte Logindaten eingeben.";
              var out = dojo.fadeOut(
                                {
	                                node:"Errorbox",
	                                delay:1500,
	                                duration:1500,
	                                onEnd:function()
	                                {
		                                dojo.byId('ErrorboxText').innerHTML = "";
		                                dojo.byId('Errorbox').style.display="none";
	                                }
                                });

                          dojo.fadeIn({node:"Errorbox",duration:1500, onEnd:function(){out.play()}}).play();
    }
}

function Wetter(PLZ,nodeid){

    dojo.xhrGet( {
                url: "mapcontrol/ajax/googlewetter.aspx", 
                preventCache: true,//Cachen erlaubt
                handleAs:"xml",
                content:{
                    weather:PLZ+"-Germany",
                    hl:  "de"
                },
                load: function(response, ioArgs) { 
                    
                    var ort=response.getElementsByTagName("forecast_information")[0].getElementsByTagName("city")[0].getAttribute("data");
                    
                    var heute=response.getElementsByTagName("current_conditions")[0];
                    var temp_heute=heute.getElementsByTagName("temp_c")[0].getAttribute("data");  
                    var feuchtigkeit_heute=heute.getElementsByTagName("humidity")[0].getAttribute("data");
                    var condition_heute=heute.getElementsByTagName("condition")[0].getAttribute("data");
                    var icon_heute=heute.getElementsByTagName("icon")[0].getAttribute("data");
                    var wind_condition_heute=heute.getElementsByTagName("wind_condition")[0].getAttribute("data");
                    
                    var WetterDiv=dojo.create("div",{id:"WetterDiv"},nodeid);
                  
                    
                    var    wetterHeuteHTML="<span id='temperatur'>"+temp_heute+" °C </span><br>"
                                        + "Aktuell:"+condition_heute+"<br>"
                                        + "Wind:"+wind_condition_heute+"<br>"
                                        + feuchtigkeit_heute.replace("?"," ");
                                          
                    var wetterHeute=dojo.create("div",{innerHTML:wetterHeuteHTML,id:"WetterHeute",style:"float:left"},WetterDiv);
                    
                    var Ort = dojo.create("div",{innerHTML:ort,id:"WetterOrt"},wetterHeute,"first");
                    
                    for(var i= 0;i<response.getElementsByTagName("forecast_conditions").length && i<3;i++){
                        var newday=response.getElementsByTagName("forecast_conditions")[i];
                        var day_of_week=newday.getElementsByTagName("day_of_week")[0].getAttribute("data");
                        var low= newday.getElementsByTagName("low")[0].getAttribute("data");
                        var high= newday.getElementsByTagName("high")[0].getAttribute("data");
                        var icon= newday.getElementsByTagName("icon")[0].getAttribute("data");
                        var condition = newday.getElementsByTagName("condition")[0].getAttribute("data");
                        
                        var wetterHTML=day_of_week+"<br>"
                                       +"<img src='http://www.google.de"+icon+"'><br/>"
                                       +high+" °C | "+low+" °C";
                                       
                        dojo.create("div",{innerHTML:wetterHTML,id:"Wetter_"+day_of_week,"class":"wetterTage"},WetterDiv);
                    }
                    
                },
                error: function(response, ioArgs) { 
                      //nichts machen
                      return response; 
                      }
                });
}


  function showMerkerliste(){
        maximize('MenueMerkerSub',215,208);
        dojo.empty("MenueMerkerSubContent");
  
        for(var i in merkerlistePoi){
            var Mclass=(merkerlistePoi[i][34]=="true")?"MerkerPoi":"MerkerUnterkunft";
           var onclickPoikat=(merkerlistePoi[i][34]=="true")?"showpoikat("+merkerlistePoi[i][1]+");":"showpoikat2("+merkerlistePoi[i][1]+");";
        
            //dojo.create("div",{"class":Mclass+" pointer",innerHTML:merkerlistePoi[i][0],onclick:onclickPoikat+" theMap.SetCenter("+merkerlistePoi[i][13]+","+merkerlistePoi[i][14]+");"},"MenueMerkerSubContent");
//            var onclickPoikat=(merkerlistePoi[i][34])?"alert('x');":"alert('x');";
//            var div = dojo.create("div",{"class":Mclass+" pointer",innerHTML:merkerlistePoi[i][0]},"MenueMerkerSubContent");
//            div.setAttribute("onclick",onclickPoikat);
            //var div ="<div class='"+Mclass+" pointer' onclick='setCenter("+merkerlistePoi[i][13]+","+merkerlistePoi[i][14]+");"+onclickPoikat+"'>"+merkerlistePoi[i][0]+"</div>";
            var div ="<div class='"+Mclass+" pointer' onclick='showinmapfromMerkerliste("+merkerlistePoi[i][13]+","+merkerlistePoi[i][14]+","+merkerlistePoi[i][20]+");'>"+merkerlistePoi[i][0]+"</div>";
            
            dojo.byId("MenueMerkerSubContent").innerHTML+=div;
        
        }
        
        for(var i in merkerlisteTour){
           // dojo.create("div",{"class":"MerkerTour pointer",innerHTML:merkerlisteTour[i]},"MenueMerkerSubContent");
           
           	var div ="<div class='MerkerTour pointer' onclick=' theMap.bZoom = true;theMap.LoadTour("+i+");'>"+merkerlisteTour[i].toString().replace(/<.*?>/g,"")+"</div>";
	        dojo.byId("MenueMerkerSubContent").innerHTML+=div;
        }
  
   var anz=anzmerkerlistePoi+anzmerkerlisteTour;

    if(anz==0){
        dojo.create("div",{innerHTML:"Bisher keine Informationen gemerkt"},"MenueMerkerSubContent");
    }
  
  }


function logout(){

         dojo.xhrGet( {
                url: "mapcontrol/ajax/logout.aspx", 
                preventCache: true,//Cachen erlaubt
                handleAs:"xml",
                load: function(response, ioArgs) { 
                
               },
               handle: function(response, ioArgs) { 
                    userid=0;
                    login=0;
                    UserSession="";
                    dojo.byId('profile').style.display="none";
                    dojo.byId('Eingeloggt').style.display="none";
                    dojo.byId('loginInput').style.display="block";
                    
                        dojo.byId('Errorbox').style.display="block";
                        dojo.byId('ErrorboxText').innerHTML ="Erfolgreich ausgeloggt";
                        
                        //Uploadbutton deaktivieren
                        if(bilduploaderUnter!=null)
	                        bilduploaderUnter.destroyRecursive(true);
                        if(videouploaderUnter!=null)
	                        videouploaderUnter.destroyRecursive(true);
                        if(audiouploaderUnter!=null)
	                        audiouploaderUnter.destroyRecursive(true);
                        if(bilduploader!=null)
	                        bilduploader.destroyRecursive(true);
                        if(videouploader!=null)
	                        videouploader.destroyRecursive(true);
                        if(audiouploader!=null)
	                        audiouploader.destroyRecursive(true);
                        if(bilduploaderTour!=null)
	                        bilduploaderTour.destroyRecursive(true);
                        if(videouploaderTour!=null)
	                        videouploaderTour.destroyRecursive(true);
                        if(audiouploaderTour!=null)
	                        audiouploaderTour.destroyRecursive(true);
	                        
	                        dojo.byId("bildUploadButtonTour").onclick=function(){if(login!=1)showMassageCenter('Bitte einloggen');};
	                        dojo.byId("videoUploadButtonTour").onclick=function(){if(login!=1)showMassageCenter('Bitte einloggen');};
	                        dojo.byId("audioUploadButtonTour").onclick=function(){if(login!=1)showMassageCenter('Bitte einloggen');};
	                        dojo.byId("bildUploadButton").onclick=function(){if(login!=1)showMassageCenter('Bitte einloggen');};
	                        dojo.byId("videoUploadButton").onclick=function(){if(login!=1)showMassageCenter('Bitte einloggen');};
	                        dojo.byId("audioUploadButton").onclick=function(){if(login!=1)showMassageCenter('Bitte einloggen');};
	                        dojo.byId("bildUploadButtonUnter").onclick=function(){if(login!=1)showMassageCenter('Bitte einloggen');};
	                        dojo.byId("videoUploadButtonUnter").onclick=function(){if(login!=1)showMassageCenter('Bitte einloggen');};
	                        dojo.byId("audioUploadButtonUnter").onclick=function(){if(login!=1)showMassageCenter('Bitte einloggen');};
                        
                        
                         var out = dojo.fadeOut(
                                {
	                                node:"Errorbox",
	                                delay:1500,
	                                duration:1500,
	                                onEnd:function()
	                                {
		                                dojo.byId('ErrorboxText').innerHTML = "";
		                                dojo.byId('Errorbox').style.display="none";
	                                }
                                });

                          dojo.fadeIn({node:"Errorbox",duration:1500, onEnd:function(){out.play()}}).play();

                    
               },
                error: function(response, ioArgs) { 
                
                      //nichts machen
                      return response; 
                      }
                });
}



function SPAMCHB(selected_node,type){
    
    dojo.query(".CHB_Spam_checked").forEach(function(node,index,arr){
        node.setAttribute(bIsIE?"className":"class","CHB_Spam_unchecked");
    });
    selected_node.setAttribute(bIsIE?"className":"class","CHB_Spam_checked");
    Spamtype=type;
}

function sendSpamWarning(){
  var iserror=false;
  
  dojo.xhrPost( {
                url: "mapcontrol/ajax/spammelden.aspx", 
                preventCache: true,//Cachen erlaubt
                handleAs:"xml",
                content:{
                    spamtype:Spamtype,
                    spambemerkung:dojo.byId("TB_Spam").value,
                    poiid:arrVisitenkarte[20]
                },
                load: function(response, ioArgs) {
                
                dojo.byId('CenterErrorbox').style.display="block";
                
                     if(response.getElementsByTagName("fehler").length>0){
                            for(var i=0;i<response.getElementsByTagName("fehler").length;i++){
                               if(bIsIE)
                                    dojo.create("div",{innerHTML:response.getElementsByTagName("fehler")[i].text},"CenterErrorboxText");
                               else
                                    dojo.create("div",{innerHTML:response.getElementsByTagName("fehler")[i].textContent},"CenterErrorboxText");
                            }
                            
                            dojo.byId('CenterErrorbox').style.display="block";
                            iserror=true;
                     }else{
                        iserror=false;
                        dojo.byId('CenterErrorboxText').innerHTML ="Spam wurde erfolgreich gemeldet.";                     
                     }
                var out = dojo.fadeOut(
                                {
	                                node:"CenterErrorbox",
	                                delay:1500,
	                                duration:1500,
	                                onEnd:function()
	                                {
		                                dojo.byId('CenterErrorboxText').innerHTML = "";
		                                dojo.byId('CenterErrorbox').style.display="none";
		                                if(!iserror){
		                                    dojo.byId("SpamMelden").style.display="none";
		                                    Spamtype=0;
		                                    }
	                                }
                                });

                          dojo.fadeIn({node:"CenterErrorbox",duration:1500, onEnd:function(){out.play()}}).play(); 
                
               },
               handle: function(response, ioArgs) { 
                    
               },
                error: function(response, ioArgs) { 
                
                      //nichts machen
                      return response; 
                      }
                });
}


function sendTourSpamWarning(){
  var iserror=false;
  
  dojo.xhrPost( {
                url: "mapcontrol/ajax/spammeldenTour.aspx", 
                preventCache: true,//Cachen erlaubt
                handleAs:"xml",
                content:{
                    spamtype:Spamtype,
                    spambemerkung:dojo.byId("TourTB_Spam").value,
                    tourid:currentTourId
                },
                load: function(response, ioArgs) {
                
                dojo.byId('CenterErrorbox').style.display="block";
                
                     if(response.getElementsByTagName("fehler").length>0){
                            for(var i=0;i<response.getElementsByTagName("fehler").length;i++){
                               if(bIsIE)
                                    dojo.create("div",{innerHTML:response.getElementsByTagName("fehler")[i].text},"CenterErrorboxText");
                               else
                                    dojo.create("div",{innerHTML:response.getElementsByTagName("fehler")[i].textContent},"CenterErrorboxText");
                            }
                            
                            dojo.byId('CenterErrorbox').style.display="block";
                            iserror=true;
                     }else{
                        iserror=false;
                        dojo.byId('CenterErrorboxText').innerHTML ="Spam wurde erfolgreich gemeldet.";                     
                     }
                var out = dojo.fadeOut(
                                {
	                                node:"CenterErrorbox",
	                                delay:1500,
	                                duration:1500,
	                                onEnd:function()
	                                {
		                                dojo.byId('CenterErrorboxText').innerHTML = "";
		                                dojo.byId('CenterErrorbox').style.display="none";
		                                if(!iserror){
		                                    hidelightbox("TourSpamMelden");
		                                    Spamtype=0;
		                                    }
	                                }
                                });

                          dojo.fadeIn({node:"CenterErrorbox",duration:1500, onEnd:function(){out.play()}}).play(); 
                
               },
               handle: function(response, ioArgs) { 
                    
               },
                error: function(response, ioArgs) { 
                
                      //nichts machen
                      return response; 
                      }
                });
}

function sendAngebot(isTour)
{    
        var id;
        if(!isTour)
            id = arrVisitenkarte[20];
        else
            id = currentTourId;
        dojo.xhrPost( {
                url: "mapcontrol/ajax/angebot.aspx", 
                preventCache: true,//Cachen erlaubt
                handleAs:"xml",
                content:{
                    isPOI:!isTour,
                    id:id,
                    text:dojo.byId("AngebotTB").value
                },
                load: function(response, ioArgs) {
                    alert("Du hast ein Angebot erfolgreich eingestellt!");
                    dojo.byId("AngebotTB").value = "";
                    dojo.byId("AngebotEinstellen").style.display='none';
                    if(isTour){
                        dojo.byId('d_lightbox_layer').style.display='none';
                        showTourDrumundDran();
                     }else{
                        showDrumundDran(arrVisitenkarte[20], !isPOI);
                    }
                },
                error: function(response, ioArgs) { 
                    alert("Leider ist ein Fehler aufgetreten!");
                      //nichts machen
                      return response; 
                      }
                });
}
function showInfo(current_node,node2){
    current_node.setAttribute(bIsIE?"className":"class","iButtonbig");
    dojo.byId(current_node.id+"_h").style.display="block";
}
function hideInfo(){
    dojo.query(".iButtonbig").forEach(function(node, index, arr){
            node.setAttribute(bIsIE?"className":"class","iButtonsmall");   
                        });
    dojo.query(".info").forEach(function(node, index, arr){
            node.style.display="none";
                        });
                        
    
}

function closeLightbox2(){
    dojo.byId('d_lightbox_layer2').style.display='none';
}

function showSpam(){
    dojo.byId("SpamMelden").style.display="block";
}

function showBewertung(){
    
        if(!isPOI)
            dojo.byId("bewertenTitle").innerHTML = "Unterkunft bewerten";
            else
            dojo.byId("bewertenTitle").innerHTML = "Interessanten Punkt bewerten";
        dojo.byId('d_lightbox_layer').style.display='block';
        dojo.byId("Bewerten").style.display='block';
        dojo.byId("BewertenBtn").style.display='block';
        dojo.byId("TourBewertenBtn").style.display='none';
    
}
function showTourBewertung(){
    dojo.byId("bewtypetext").innerHTML ="die Tour";
    dojo.byId("bewertenTitle").innerHTML = "Tour bewerten";
    dojo.byId('d_lightbox_layer').style.display='block';
    dojo.byId("Bewerten").style.display='block';
    dojo.byId("BewertenBtn").style.display='none';
    dojo.byId("TourBewertenBtn").style.display='block';
    
}
function showAngebotEinstellen(){
    dojo.byId("bewertenTitle").innerHTML = "...";
    dojo.byId('d_lightbox_layer').style.display='block';
    dojo.byId("AngebotEinstellen").style.display='block';
    dojo.byId("buttonSendAngebot").style.display='block';
    dojo.byId("buttonTourSendAngebot").style.display='none';
}
function showTourAngebotEinstellen(){
    dojo.byId("bewertenTitle").innerHTML = "...";
    dojo.byId('d_lightbox_layer').style.display='block';
    dojo.byId("AngebotEinstellen").style.display='block';
    dojo.byId("buttonTourSendAngebot").style.display='block';
    dojo.byId("buttonSendAngebot").style.display='none';
}
function showDrumundDran(PoiId, isUnter)
{

   dojo.byId("loadingPic").style.display="block";
   
    closePoiContent();
    var type = "";
    if(isUnter){
            type = "Unter";  
            dojo.byId("UnterkuenfteVisitenkarteDrumDran_Content").style.display="block";
        }
        else
            dojo.byId("PoiVisitenkarteDrumDran_Content").style.display="block";

    dojo.byId("drumdranName"+type).innerHTML = arrVisitenkarte[0];

    dojo.xhrGet( {
                url: "mapcontrol/ajax/drumunddran.aspx", 
                preventCache: true,//Cachen erlaubt
                handleAs:"xml",
                content:{
                    poiid:arrVisitenkarte[20]
                },
                load: function(response, ioArgs) {
     
        
    if(login==1 && response.getElementsByTagName("angebotBerechtigt")[0].getAttribute("doIt")=="True")
        dojo.byId("button"+type+"AngebotEinstellen").style.display="inline";
    else
        dojo.byId("button"+type+"AngebotEinstellen").style.display="none";

                dojo.query(".drumdrancontent"+type).forEach(function(node,index,arr){
                    node.style.display="none";
                });
                dojo.query(".drumdranpfeil"+type).forEach(function(node,index,arr){
                    if(isUnter)
                        node.src="/design/pfeil_unterkuenfte_down.png";
                    else
                        node.src="/design/pfeil_poi_down.png";
                });
                /**********BAHNHÖFE***************/
                    dojo.empty("drumdranBahnhof"+type+"Content");
                                
                    for(var i=0;i<response.getElementsByTagName("bahnhof").length;i++){
                        
                        if(i>0)
                        dojo.create("br",null,"drumdranBahnhof"+type+"Content");
                        var bahnhof=response.getElementsByTagName("bahnhof")[i];
                
                        var newbahnhof=dojo.create("div",{"class":"pl_20px",innerHTML:bahnhof.getAttribute("name")+" ("+bahnhof.getAttribute("entfernung")+")"},"drumdranBahnhof"+type+"Content");
                        var links=dojo.create("div",{"class":"pl_10px"},newbahnhof);
                        
                        dojo.create("div",
                                        {
                                            id:"poiid_"+bahnhof.getAttribute("poiid"),
                                            coord:bahnhof.getAttribute("koord_x")+","+bahnhof.getAttribute("koord_y"),
                                            innerHTML:"in Karte anzeigen",
                                            onclick:showinmap,
                                            "class":"pointer"
                                        }
                                        ,links);
                        dojo.style("poiid_"+bahnhof.getAttribute("poiid"),{fontWeight:"bold", color:"red"});

                        for(var j=0; j<bahnhof.getElementsByTagName("link").length;j++){
                            var link=bahnhof.getElementsByTagName("link")[j];
                            if(j>0)
                            dojo.create("br",null,links);
                            dojo.create("a",{innerHTML:link.getAttribute("text"),href:link.getAttribute("url"),target:"_blank"},links);
                        }
                        
                    }
                    
                    if(response.getElementsByTagName("bahnhof").length==0){
                        dojo.create("div",{innerHTML:"Keine Informationen vorhanden","class":"pl_10px"},"drumdranBahnhof"+type+"Content");
                    }
                    
                    
                    /**************Angebote************/
                    dojo.empty("drumdranAngeboteAnzeige"+type+"Content");
                                
                    for(var i=0;i<response.getElementsByTagName("angebot").length;i++){
                        
                        if(i>0)
                        dojo.create("br",null,"drumdranAngeboteAnzeige"+type+"Content");
                        var angebot=response.getElementsByTagName("angebot")[i];
                
                        var newangebot=dojo.create("div",{"class":"pl_20px",innerHTML:angebot.getAttribute("text")},"drumdranAngeboteAnzeige"+type+"Content");
                        var links=dojo.create("div",{"class":"pl_10px"},newangebot);
                    }
                    if(response.getElementsByTagName("angebot").length==0){
                        dojo.create("div",{innerHTML:"Keine Informationen vorhanden","class":"pl_10px"},"drumdranAngeboteAnzeige"+type+"Content");
                    }
 
                    /**************ESSEN UND TRINKEN************/
                    dojo.empty("drumdranEssen"+type+"Content");
                                
                    for(var i=0;i<response.getElementsByTagName("essen").length;i++){
                        
                        if(i>0)
                        dojo.create("br",null,"drumdranEssen"+type+"Content");
                        var essen=response.getElementsByTagName("essen")[i];
                
                        var newessen=dojo.create("div",{"class":"pl_20px",innerHTML:essen.getAttribute("name")+" ("+essen.getAttribute("entfernung")+")"},"drumdranEssen"+type+"Content");
                        var links=dojo.create("div",{"class":"pl_10px"},newessen);
                        
                        dojo.create("div",
                                        {
                                            id:"poiid_"+essen.getAttribute("poiid"),
                                            coord:essen.getAttribute("koord_x")+","+essen.getAttribute("koord_y"),
                                            innerHTML:"in Karte anzeigen",
                                            onclick:showinmap,
                                            "class":"pointer"                                        
                                        }
                                        ,links);
                        dojo.style("poiid_"+essen.getAttribute("poiid"),{fontWeight:"bold", color:"red"});
      
//                        for(var j=0; j<essen.getElementsByTagName("link").length;j++){
//                            var link=essen.getElementsByTagName("link")[j];
//                            if(j>0)
//                            dojo.create("br",null,links);
//                            dojo.create("a",{innerHTML:link.getAttribute("text"),href:link.getAttribute("url"),target:"_blank"},links);
//                        }
                        
                    }
                    
                    if(response.getElementsByTagName("essen").length==0){
                        dojo.create("div",{innerHTML:"Keine Informationen vorhanden","class":"pl_10px"},"drumdranEssen"+type+"Content");
                    }
                    
                    /*************UNTERKUENFTE***********/
                		
            	   dojo.empty("drumdranUnterkunft"+type+"Content");
                                
                    for(var i=0;i<response.getElementsByTagName("unterkunft").length;i++){
                        
                        if(i>0)
                        dojo.create("br",null,"drumdranUnterkunft"+type+"Content");
                        var unterkunft=response.getElementsByTagName("unterkunft")[i];
                
                        var newunterkunft=dojo.create("div",{"class":"pl_20px",innerHTML:unterkunft.getAttribute("name")+" ("+unterkunft.getAttribute("entfernung")+")"},"drumdranUnterkunft"+type+"Content");
                        var links=dojo.create("div",{"class":"pl_10px"},newunterkunft);
                        
                        dojo.create("div",
                                        {
                                            id:"poiid_"+unterkunft.getAttribute("poiid"),
                                            coord:unterkunft.getAttribute("koord_x")+","+unterkunft.getAttribute("koord_y"),
                                            innerHTML:"in Karte anzeigen",
                                            onclick:showinmap,
                                            "class":"pointer"                                        
                                        }
                                        ,links);
                         dojo.style("poiid_"+unterkunft.getAttribute("poiid"),{fontWeight:"bold", color:"red"});
                       
//                        for(var j=0; j<unterkunft.getElementsByTagName("link").length;j++){
//                            var link=unterkunft.getElementsByTagName("link")[j];
//                            if(j>0)
//                            dojo.create("br",null,links);
//                            dojo.create("a",{innerHTML:link.getAttribute("text"),href:link.getAttribute("url"),target:"_blank"},links);
//                        }
                        
                    }
                     if(response.getElementsByTagName("unterkunft").length==0){
                        dojo.create("div",{innerHTML:"Keine Informationen vorhanden","class":"pl_10px"},"drumdranUnterkunft"+type+"Content");
                    }
                    
                
                },
                error: function(response, ioArgs) { 
                
                      //nichts machen
                      return response; 
                      },
                      
                handle: function(response, ioArgs) { 
                    dojo.byId("loadingPic").style.display="none";
                }
                
                });
 
}

function showinmapfromMerkerliste(x,y,id){ 
  getPOInoZoom(id,"p","");     
}

function showinmap(){ 
    var x=dojo.byId(this.id).getAttribute("coord").split(",")[0];
    var y=dojo.byId(this.id).getAttribute("coord").split(",")[1];
    var id = "ID1234";
    var iconwidth = 42;
    var iconheight = 42;
//    if(currMaptype!="GOOGLE"){
//        theMap.SetCenter(x,y);
//        theMap.SetFixedPOIAt(x,y,"./mapcontrol/images/pointer.gif","ID1234");
//    }
//    else{
//        var latlongCenter=TransGKnachGeo(x, y);
//            var gpoint = new GLatLng(latlongCenter[0], latlongCenter[1]);
//            var gicon = new GIcon();
//            gicon.image = "mapcontrol/images/pointer.gif";
//            gicon.iconAnchor = new GPoint(iconwidth/2, iconheight/2);
//            gicon.infoWindowAnchor = new GPoint(iconwidth/2, 0);
//            gicon.iconSize = new GSize(iconwidth, iconheight);
//            var marker = new GMarker(gpoint, {icon:gicon,"id":id});
//        theGmap.setCenter(new GLatLng(latlongCenter[0],latlongCenter[1]), 8);
//    }    

  getPOInoZoom(this.id.replace("poiid_",""),"p","");
    
    if(confirm("Möchtest du den aktuellen POI zur Merkliste hinzufügen?"))
        POI_merken();

     if(arrVisitenkarte[34]=="true"){
        hidelightbox('PoiVisitenkarte');
//        dojo.byId("PoiVisitenkarte_min").style.display="block";
    }else{
        hidelightbox('UnterkuenfteVisitenkarte');
//        dojo.byId("PoiVisitenkarte_min").style.display="block";
    }
    curr_poiid=arrVisitenkarte[20];
}

var curr_poiid=0;


function showinmaptour(){
    var x=dojo.byId(this.id).getAttribute("coord").split(",")[0];
    var y=dojo.byId(this.id).getAttribute("coord").split(",")[1];
    setCenter(x,y);
    
    getPOInoZoom(this.id.replace("poiid_",""),"p","");
    /*
    if(currMaptype!="GOOGLE")
        theMap.SetFixedPOIAt(x,y,"./mapcontrol/images/pointer.gif","ID1234");
    */
}


function showDrumDran(nodeid){
    dojo.byId(nodeid+"Content").style.display=(dojo.byId(nodeid+"Content").style.display=="none")?"block":"none";    
 
    if(isPOI)
    dojo.query("#"+nodeid).forEach(function(node,index,arr){
            node.getElementsByTagName("img")[0].src=(node.getElementsByTagName("img")[0].src.indexOf("/design/pfeil_poi_down.png")!=-1)?"/design/pfeil_poi_up.png":"/design/pfeil_poi_down.png";
    });
    else
    dojo.query("#"+nodeid).forEach(function(node,index,arr){
            node.getElementsByTagName("img")[0].src=(node.getElementsByTagName("img")[0].src.indexOf("/design/pfeil_unterkuenfte_down.png")!=-1)?"/design/pfeil_unterkuenfte_up.png":"/design/pfeil_unterkuenfte_down.png";
    });
}
function showDrumDranUnter(nodeid){    
    dojo.byId(nodeid+"Content").style.display=(dojo.byId(nodeid+"Content").style.display=="none")?"block":"none";    
 
    dojo.query("#"+nodeid).forEach(function(node,index,arr){
            node.getElementsByTagName("img")[0].src=(node.getElementsByTagName("img")[0].src.indexOf("/design/pfeil_unterkuenfte_down.png")!=-1)?"/design/pfeil_unterkuenfte_up.png":"/design/pfeil_unterkuenfte_down.png";
    });
}

function getPoilayer(url){
     
  //  url = "mapcontrol/ajax/GetPOILayer.aspx?merk=&x1=3269984&y1=6047512&x2=3587480&y2=5730016&ky=4&kx=3&level=6&mx=396.87&poiKatIds=151&TourId=0&usingWMS=true&TourPoiAnzeigen=false&Unterkuenfte=true&Ausflugsziele=true&Service=true&dojo.preventCache=1259750113254";
    
    var google=(currMaptype=="GOOGLE") ? true : false;   
     
            dojo.xhrGet({
                url:url, 
                preventCache: true,//Cachen erlaubt
                handleAs:"xml",
                content:{"google":google},
                load: function(response, ioArgs) {
                        
                        
                        if (response.getElementsByTagName("poi").length > 0)
			            {
				        var strTestId = "";
				        
				        
				        if(currMaptype=="GOOGLE"){ 
                            theGMarker=new Array();
                            
				        }
		        
	                    var iconwidth=0;
	                    var iconheight=0;
	                    
				        for (var i=0;i<response.getElementsByTagName("poi").length;i++)
				        {
				        
				            iconwidth=response.getElementsByTagName("poi")[i].getAttribute("width");
            			    iconheight=response.getElementsByTagName("poi")[i].getAttribute("height");
				        
				    
					        if(currMaptype=="WMS" || currMaptype=="WMSBFN"){    
					            // POIs erhalten
					            var kx=response.getElementsByTagName("poi")[i].getAttribute("kx");
					            var ky=response.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=response.getElementsByTagName("poi")[i].getAttribute("id");
						            if(id!="0"){
							            strTestId+=";"+id+";";
							            var elId = document.getElementById(id);
							            if(elId == null){
								            var icon=response.getElementsByTagName("poi")[i].getAttribute("icon");
								            var x=response.getElementsByTagName("poi")[i].getAttribute("x");
								            var y=response.getElementsByTagName("poi")[i].getAttribute("y");
								            var name=response.getElementsByTagName("poi")[i].getAttribute("name").split("<")[0];
								            var cat=response.getElementsByTagName("poi")[i].getAttribute("cat");
								            var customId=response.getElementsByTagName("poi")[i].getAttribute("customid");
								            x=x-theMap.links;
								            y=y-theMap.unten;
								            x=x/theMap.meterX;
								            y=y/theMap.meterY;
            								
								            var gemerkt=false;
            							
								            if(merkerlistePoi[id]!=null && typeof merkerlistePoi[id]!="undefined" ){
            								
								            icon=icon+"&gemerkt=true";
            								
								            }
            								
								            var img2 = document.createElement("img");
                                            img2.src = icon.replace('!--!', '?').replace('!---!', '&').replace('!---!', '&');
								            img2.style.position = "absolute";
								            img2.style.left = x-iconwidth/2 + "px";
								            img2.style.top = y-iconheight + "px";
								            img2.style.cursor="pointer";
								            img2.style.zIndex=294;
								            img2.style.height=iconheight;//img2.height;//"16px";
								            img2.style.width=iconwidth;//img2.width;//"16px";
								            img2.onclick=theMap.onpoiclick;
								            img2.alt=name;
								            img2.title=name;
								            img2.id=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);
					            }
            					setPOIIcon();
        				    }
        				    else if(currMaptype=="GOOGLE"){    	
            				   
            				   
                                var id=response.getElementsByTagName("poi")[i].getAttribute("id");
            				    var icon=response.getElementsByTagName("poi")[i].getAttribute("icon");
            				        icon=""+icon.replace('!--!', '?').replace('!---!', '&').replace('!---!', '&');
            				        
            				        if(merkerlistePoi[id]!=null && typeof merkerlistePoi[id]!="undefined" ){
            						        icon=icon+"&gemerkt=true";
            						  }
            				        
					            var x=response.getElementsByTagName("poi")[i].getAttribute("x");
					            var y=response.getElementsByTagName("poi")[i].getAttribute("y");
					            var name=response.getElementsByTagName("poi")[i].getAttribute("name");
					            var cat=response.getElementsByTagName("poi")[i].getAttribute("cat");
					            var customId=response.getElementsByTagName("poi")[i].getAttribute("customid");
								       
            				    var latlongCenter=TransGKnachGeo(x, y);
            				    
                                
	                            var gpoint = new GLatLng(latlongCenter[0], latlongCenter[1]);
	                            var gicon = new GIcon();
	                            gicon.image = icon;
	                            gicon.iconAnchor = new GPoint(iconwidth/2, iconheight/2);
                                gicon.infoWindowAnchor = new GPoint(iconwidth/2, 0);
                                gicon.iconSize = new GSize(iconwidth, iconheight);
                                var marker = new GMarker(gpoint, {icon:gicon,"id":id});
                                theGMarker.push(marker);
                                
                                GEvent.addListener(marker, "click", function() { 
                                    showPoiInfo(this.id);
                                 });
//                                theGmap.addOverlay(marker);  
        				    }
				        }
				        
				        for(var i=0;i<response.getElementsByTagName("FOTOS").length;i++)
			            {
			              if(currMaptype=="WMS" || currMaptype=="WMSBFN"){    
			                    
			           
			                // POIs erhalten
					            var kx=response.getElementsByTagName("FOTOS")[i].getAttribute("kx");
					            var ky=response.getElementsByTagName("FOTOS")[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=response.getElementsByTagName("FOTOS")[i].getAttribute("id");
						            if(id!="0"){
							            strTestId+=";"+id+";";
							            var elId = document.getElementById(id);
							            if(elId == null){
								           var id=response.getElementsByTagName("FOTOS")[i].getAttribute("poiid");
            				                var icon="/design/foto_on.png";
 					                        var x=response.getElementsByTagName("FOTOS")[i].getAttribute("x");
					                        var y=response.getElementsByTagName("FOTOS")[i].getAttribute("y");
 					                        var customId=response.getElementsByTagName("FOTOS")[i].getAttribute("mediaid");
 					                        var name=response.getElementsByTagName("FOTOS")[i].getAttribute("name");
                                            var iconwidth=32;
                                            var iconheight=38
								            x=x-theMap.links;
								            y=y-theMap.unten;
								            x=x/theMap.meterX;
								            y=y/theMap.meterY;
            								
            								
								            var img2 = document.createElement("img");
                                            img2.src = icon;
								            img2.style.position = "absolute";
								            img2.style.left = x-iconwidth/2 + "px";
								            img2.style.top = y-iconheight/2 + "px";
								            img2.style.cursor="pointer";
								            img2.style.zIndex=294;
								            img2.style.height=iconheight;//img2.height;//"16px";
								            img2.style.width=iconwidth;//img2.width;//"16px";
								            img2.onclick=(function(){showMultimediaFoto(this.id);}).bind(img2);
								            img2.id=customId+"_"+id+"_"+name;
								            
								            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);
//					            }
			                
			                
			                
			                }
        				    else if(currMaptype=="GOOGLE"){    	
            				   
                                var id=response.getElementsByTagName("FOTOS")[i].getAttribute("poiid");
            				    var icon="/design/foto_on.png";
            				        //icon=""+icon.replace('!--!', '?').replace('!---!', '&').replace('!---!', '&');
            				        
//            				        if(merkerlistePoi[id]!=null && typeof merkerlistePoi[id]!="undefined" ){
//            						        icon=icon+"&gemerkt=true";
//            						  }
            				        
					            var x=response.getElementsByTagName("FOTOS")[i].getAttribute("x");
					            var y=response.getElementsByTagName("FOTOS")[i].getAttribute("y");
//					            var name=response.getElementsByTagName("FOTOS")[i].getAttribute("name");
//					            var cat=response.getElementsByTagName("FOTOS")[i].getAttribute("cat");
					            var customId=response.getElementsByTagName("FOTOS")[i].getAttribute("mediaid");
					            var name=response.getElementsByTagName("FOTOS")[i].getAttribute("name");
								       
            				    var latlongCenter=TransGKnachGeo(x, y);
            				    
                                
	                            var gpoint = new GLatLng(latlongCenter[0], latlongCenter[1]);
	                            var gicon = new GIcon();
	                            gicon.image = icon;
	                            gicon.iconAnchor = new GPoint(32/2, 38/2);
                                gicon.infoWindowAnchor = new GPoint(32/2, 0);
                                gicon.iconSize = new GSize(32, 38);
                                var marker = new GMarker(gpoint, {icon:gicon,"id":customId+"_"+id+"_"+name});
                                theGMarker.push(marker);
                                
                                GEvent.addListener(marker, "click", function() { 
                                    showMultimediaFoto(this.id);
                                 });
//                                theGmap.addOverlay(marker);  
        				    }
			            
			            
			            }
				        
				        
				        
				        
				        
				        
				        for(var i=0;i<response.getElementsByTagName("VIDEOS").length;i++)
			            {
			              if(currMaptype=="WMS" || currMaptype=="WMSBFN"){    
			                    
			           
			                // POIs erhalten
					            var kx=response.getElementsByTagName("VIDEOS")[i].getAttribute("kx");
					            var ky=response.getElementsByTagName("VIDEOS")[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=response.getElementsByTagName("VIDEOS")[i].getAttribute("id");
						            if(id!="0"){
							            strTestId+=";"+id+";";
							            var elId = document.getElementById(id);
							            if(elId == null){
								           var id=response.getElementsByTagName("VIDEOS")[i].getAttribute("poiid");
            				                var icon="/design/video_on.png";
 					                        var x=response.getElementsByTagName("VIDEOS")[i].getAttribute("x");
					                        var y=response.getElementsByTagName("VIDEOS")[i].getAttribute("y");
 					                        var customId=response.getElementsByTagName("VIDEOS")[i].getAttribute("mediaid");
 					                        var name=response.getElementsByTagName("VIDEOS")[i].getAttribute("name");
 					                        var medialinkartid=response.getElementsByTagName("VIDEOS")[i].getAttribute("medialinkartid");
 					                        
                                            var iconwidth=32;
                                            var iconheight=38
								            x=x-theMap.links;
								            y=y-theMap.unten;
								            x=x/theMap.meterX;
								            y=y/theMap.meterY;
            								
            								
								            var img2 = document.createElement("img");
                                            img2.src = icon;
								            img2.style.position = "absolute";
								            img2.style.left = x-iconwidth/2 + "px";
								            img2.style.top = y-iconheight/2 + "px";
								            img2.style.cursor="pointer";
								            img2.style.zIndex=294;
								            img2.style.height=iconheight;//img2.height;//"16px";
								            img2.style.width=iconwidth;//img2.width;//"16px";
								            img2.id=customId+"_"+medialinkartid+"_"+name;
								            
//								            if(response.getElementsByTagName("VIDEOS")[i].getAttribute("medialinkartid")==2){
//								                img2.id="VIDEO"+customId+"_"+name;
//								                img2.onclick=(function(){showTourVideo(this.id.replace("VIDEO",""));}).bind(img2);
//								            }
//								            else{
//								               img2.id="VIDEOYT"+customId+"_"+name;
//								                img2.onclick=(function(){showYTVideo(this.id.replace("VIDEOYT",""));}).bind(img2);
//								            
//								            }
                                            img2.onclick=(function(){showMultimediaVideo(this.id);}).bind(img2);
								            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);
//					            }
			                
			                
			                
			                }
        				    else if(currMaptype=="GOOGLE"){    	
            				   
                                var id=response.getElementsByTagName("VIDEOS")[i].getAttribute("poiid");
            				    var icon="/design/video_on.png";
            				        //icon=""+icon.replace('!--!', '?').replace('!---!', '&').replace('!---!', '&');
            				        
//            				        if(merkerlistePoi[id]!=null && typeof merkerlistePoi[id]!="undefined" ){
//            						        icon=icon+"&gemerkt=true";
//            						  }
            				        
					            var x=response.getElementsByTagName("VIDEOS")[i].getAttribute("x");
					            var y=response.getElementsByTagName("VIDEOS")[i].getAttribute("y");
//					            var name=response.getElementsByTagName("FOTOS")[i].getAttribute("name");
//					            var cat=response.getElementsByTagName("FOTOS")[i].getAttribute("cat");
					            var customId=response.getElementsByTagName("VIDEOS")[i].getAttribute("mediaid");
					            var name=response.getElementsByTagName("VIDEOS")[i].getAttribute("name");
								var medialinkartid=response.getElementsByTagName("VIDEOS")[i].getAttribute("medialinkartid");
								       
            				    var latlongCenter=TransGKnachGeo(x, y);
            				    
                                
	                            var gpoint = new GLatLng(latlongCenter[0], latlongCenter[1]);
	                            var gicon = new GIcon();
	                            gicon.image = icon;
	                            gicon.iconAnchor = new GPoint(32/2, 38/2);
                                gicon.infoWindowAnchor = new GPoint(32/2, 0);
                                gicon.iconSize = new GSize(32, 38);
                                var marker = new GMarker(gpoint, {icon:gicon,"id":customId+"_"+medialinkartid+"_"+name});
                                theGMarker.push(marker);
                                
//                                if(response.getElementsByTagName("VIDEOS")[i].getAttribute("medialinkartid")==2)
//                                    GEvent.addListener(marker, "click", function() { 
//                                        showTourVideo(this.id);
//                                     });
//                                 else
//                                    GEvent.addListener(marker, "click", function() { 
//                                        showYTVideo(this.id);
//                                     });

                                GEvent.addListener(marker, "click", function() { 
                                    showMultimediaVideo(this.id);
                                 });

                                 
//                                theGmap.addOverlay(marker);  
        				    }
			            
			            
			            }
				        
				        
				        
				        
				            if(currMaptype=="GOOGLE"){ 
				            
				                         if(arrStartPoi!=null){
            				         
				                            var latlongCenter=TransGKnachGeo(arrStartPoi[2], arrStartPoi[3]);
	                                        var gpoint = new GLatLng(latlongCenter[0], latlongCenter[1]);
	                                        var gicon = new GIcon();
            	                            
	                                         var symbol="Bilder.aspx?icon=1&id="+arrStartPoi[4];
                                
                                            if(merkerlistePoi[arrStartPoi[0]]!=null && typeof merkerlistePoi[arrStartPoi[0]]!="undefined" ){
                                                symbol=symbol+"&gemerkt=true";
            		                        }
	                                        gicon.image = symbol;
	                                        gicon.iconAnchor = new GPoint(arrStartPoi[5], arrStartPoi[6]/2);
                                            gicon.infoWindowAnchor = new GPoint(arrStartPoi[5]/2, 0);
                                            gicon.iconSize = new GSize(arrStartPoi[5], arrStartPoi[6]);
                                            var marker = new GMarker(gpoint, {icon:gicon,"id":arrStartPoi[0]});
                                            theGMarker.push(marker);
                                            
                                            GEvent.addListener(marker, "click", function() { 
                                                showPoiInfo(this.id);
                                             });
				                     }
				            
				                    if(theGmapMgr==null){
				                        //theGmapMgr=new MarkerClusterer(theGmap,theGMarker,{ gridSize: 50, maxZoom: 10});
				                        theGmapMgr=new MarkerManager(theGmap,{ gridSize: 50, maxZoom: 10},false);
				                    }
				                    theGmapMgr.clearMarkers() 
				                    theGmapMgr.addMarkers(theGMarker,0);
				                    theGmapMgr.refresh();
        //                            theGmapMgr = null;
				               }
                   }        				
			        
			        if (response.getElementsByTagName("fehler").length > 0 && !isInSearch)
                    {
  dojo.byId("d_lightbox_layer").style.display="block";
                dojo.byId('CenterErrorbox').style.display="block";
                dojo.byId('CenterErrorboxText').innerHTML ="Es befinden sich zu viele POIs in diesem Kartenausschnitt.\nBitte wechsel in einen höheren Massstab.";                     

                var out = dojo.fadeOut(
                                {
	                                node:"CenterErrorbox",
	                                delay:1500,
	                                duration:1500,
	                                onEnd:function()
	                                {
		                                dojo.byId('CenterErrorboxText').innerHTML = "";
		                                dojo.byId('CenterErrorbox').style.display="none";
  dojo.byId("d_lightbox_layer").style.display="none";
	                                }
                                });

                          dojo.fadeIn({node:"CenterErrorbox",duration:1500, onEnd:function(){out.play()}}).play(); 

                        //alert("Es befinden sich zu viele POIs in diesem Kartenausschnitt.\nBitte wechsel in einem höheren Massstab.");
                    
                        tooMany = true; //zu viele POIS
                        if(theGmapMgr!=null){
                            theGmapMgr.clearMarkers();
                        }
                    }
			        
                },
                error: function(response, ioArgs) { 
                        
                      //nichts machen
                      return response; 
                      }
                });
}

function showBewertungen(PoiId, isUnter)
{
    closePoiContent();
    
   
    
    if(isUnter){
    
        dojo.byId("bewtypetext").innerHTML ="die Unterkunft";
        dojo.byId("UnterkuenftebewertungenName").innerHTML = arrVisitenkarte[0];
        dojo.byId("UnterkuenfteDatum").innerHTML = arrVisitenkarte[15];
        dojo.byId("UnterkuenfteAufrufe").innerHTML = arrVisitenkarte2[1];//arrVisitenkarte[0];
        dojo.byId("UnterkuenfteOutor").innerHTML = arrVisitenkarte2[2];//arrVisitenkarte[0];
    
        dojo.byId("UnterkuenfteVisitenkarteBewertungen_Content_Oben").style.display="block";
        dojo.byId("UnterkuenfteVisitenkarteBewertungen_Content_Unten").style.display="block";
        if(login==1)
            dojo.byId("UnterkuenftebewertungAbgeben_button").style.display="block";
        else
            dojo.byId("UnterkuenftebewertungAbgeben_button").style.display="none";
            
    }else{
    
        dojo.byId("bewtypetext").innerHTML ="den POI";
        dojo.byId("bewertungenName").innerHTML = arrVisitenkarte[0];
        dojo.byId("poiDatum").innerHTML = arrVisitenkarte[15];
        dojo.byId("poiAufrufe").innerHTML = arrVisitenkarte2[1];//arrVisitenkarte[0];
        dojo.byId("poiOutor").innerHTML = arrVisitenkarte2[2];//arrVisitenkarte[0];
    
        dojo.byId("PoiVisitenkarteBewertungen_Content_Oben").style.display="block";
        dojo.byId("PoiVisitenkarteBewertungen_Content_Unten").style.display="block";
        if(login==1)
            dojo.byId("bewertungAbgeben_button").style.display="block";
        else
            dojo.byId("bewertungAbgeben_button").style.display="none";
    }
    
    getBewertung(isUnter);
}

function getBewertung(isUnter){

        var id;
        
            id=arrVisitenkarte[20];
       
        
        dojo.xhrGet( {
                url: "mapcontrol/ajax/getBewertung.aspx", 
                preventCache: true,//Cachen erlaubt
                handleAs:"xml",
                content:{
                    id:id,
                    isPOI:true
                },
                load: function(response, ioArgs) {

                    var x="";
                   
                   if(isUnter){

                    dojo.byId("UnterkuenftebewertungenGesamt").innerHTML=response.getElementsByTagName("stars")[0].getAttribute("starstotal");
                    dojo.byId("UnterkuenftebewertungenStar0_balken").style.width = response.getElementsByTagName("stars")[0].getAttribute("star0")+"px";
                    dojo.byId("UnterkuenftebewertungenStar1_balken").style.width = response.getElementsByTagName("stars")[0].getAttribute("star1")+"px";
                    dojo.byId("UnterkuenftebewertungenStar2_balken").style.width = response.getElementsByTagName("stars")[0].getAttribute("star2")+"px";
                    dojo.byId("UnterkuenftebewertungenStar3_balken").style.width = response.getElementsByTagName("stars")[0].getAttribute("star3")+"px";
                    dojo.byId("UnterkuenftebewertungenStar4_balken").style.width = response.getElementsByTagName("stars")[0].getAttribute("star4")+"px";
                    dojo.byId("UnterkuenftebewertungenStar5_balken").style.width = response.getElementsByTagName("stars")[0].getAttribute("star5")+"px";
                    
                    }else{
                    
                    dojo.byId("bewertungenGesamt").innerHTML=response.getElementsByTagName("stars")[0].getAttribute("starstotal");
                    dojo.byId("bewertungenStar0_balken").style.width = response.getElementsByTagName("stars")[0].getAttribute("star0")+"px";
                    dojo.byId("bewertungenStar1_balken").style.width = response.getElementsByTagName("stars")[0].getAttribute("star1")+"px";
                    dojo.byId("bewertungenStar2_balken").style.width = response.getElementsByTagName("stars")[0].getAttribute("star2")+"px";
                    dojo.byId("bewertungenStar3_balken").style.width = response.getElementsByTagName("stars")[0].getAttribute("star3")+"px";
                    dojo.byId("bewertungenStar4_balken").style.width = response.getElementsByTagName("stars")[0].getAttribute("star4")+"px";
                    dojo.byId("bewertungenStar5_balken").style.width = response.getElementsByTagName("stars")[0].getAttribute("star5")+"px";
                    }
                    
                   var gesBew="";
                   
                    dojo.query(".StarGesamt").forEach(function(node,index,arr){
                        dojo.destroy(node);
                    });
                   
                   if(isUnter)
                    gesBew = dojo.create("img",{src:"/design/stars_"+response.getElementsByTagName("stars")[0].getAttribute("starsaverage")+"_orange.png","class":"StarGesamt"},"UnterkuenfteVisitenkarteBewertungen_Content_Oben");
                   else 
                    gesBew = dojo.create("img",{src:"/design/stars_"+response.getElementsByTagName("stars")[0].getAttribute("starsaverage")+".png","class":"StarGesamt"},"PoiVisitenkarteBewertungen_Content_Oben");
                   
                   dojo.style(gesBew,{"position":"absolute","left":"140px","top":"-10px","zIndex":"1000"});
                    
                    if(isUnter)                    
                        dojo.empty("UnterkuenfteVisitenkarteBewertungen_Content_Unten");
                    else
                        dojo.empty("PoiVisitenkarteBewertungen_Content_Unten");
                    
                    for(var i=0;i<response.getElementsByTagName("bewertung").length;i++){
                    
                        var bewertung=response.getElementsByTagName("bewertung")[i];
                        
                        if(i>0)
                            if(isUnter)                    
                                dojo.create("br",null,"UnterkuenfteVisitenkarteBewertungen_Content_Unten");  
                            else
                                dojo.create("br",null,"PoiVisitenkarteBewertungen_Content_Unten");  
                        
                        var titelText=bewertung.getAttribute("titel");
                        if(titelText=="null")
                            titelText="";
                        var titel=dojo.create("div",
                                        {
                                        "class":"bewertungenResTitle",
                                        innerHTML:titelText
                                        }
                                        ,isUnter?"UnterkuenfteVisitenkarteBewertungen_Content_Unten":"PoiVisitenkarteBewertungen_Content_Unten"
                                   );     
                        
                        if(isUnter)
                            dojo.create("img",{src:"/design/stars_"+bewertung.getAttribute("stars")+"_orange.png"},titel,"first");
                        else 
                            dojo.create("img",{src:"/design/stars_"+bewertung.getAttribute("stars")+".png"},titel,"first");
                       
                        
                        var autor=dojo.create("div",
                                        {
                                        "class":"bewertungenResAuthor",
                                        innerHTML:bewertung.getAttribute("name")
                                        }
                                        ,isUnter?"UnterkuenfteVisitenkarteBewertungen_Content_Unten":"PoiVisitenkarteBewertungen_Content_Unten");     
                         
                         dojo.create("span",
                                        {
                                        "class":"bewertungenResText",
                                        innerHTML:"von "
                                        },
                                        autor,
                                        "first");
                          var bewText=(bIsIE)?bewertung.text:bewertung.textContent;
                          
                          if(bewText=="null")
                            bewText="";              
                          
                          var Bewertung=dojo.create("div",
                                        {
                                        "class":"bewertungenResText",
                                        innerHTML:bewText
                                        },isUnter?"UnterkuenfteVisitenkarteBewertungen_Content_Unten":"PoiVisitenkarteBewertungen_Content_Unten");
                                        
                       
                                        
                    }
                    
                    if(response.getElementsByTagName("bewertung").length==0){
                          var Bewertung=dojo.create("div",
                                        {
                                        "class":"bewertungenResText",
                                        innerHTML:"<br><b>Die Qualität der Daten wurde noch nicht bewertet.</b>"
                                        },isUnter?"UnterkuenfteVisitenkarteBewertungen_Content_Unten":"PoiVisitenkarteBewertungen_Content_Unten");                  
                    }
                    
                },
                error: function(response, ioArgs) { 
                
                      //nichts machen
                      return response; 
                      }
                });
}
function switchMap(map)
{       
    hidestartInfo();
    if(map=="WMS" || map=="WMSBFN")
    {   
      var newCenter= theMap.GetCenter();//new Array(4510930,5377640);
       if(currMaptype=="GOOGLE"){

          var GCenter=theGmap.getCenter();
          newCenter=Transform_Geo_to_GK3(GCenter.lng(),GCenter.lat());
          var newZoomlevel=getZoomlevelForWMS();
          currMaptype = map;
          if(newZoomlevel==theMap.MaxZoomLevel){
                theMap.zoomlevel=newZoomlevel-1;
                theMap.ZoomOut();
            }else{
                  theMap.zoomlevel=newZoomlevel+1;
                  theMap.ZoomIn();
            }
            
            setBFN();
        }
        else
        {
            theMap.RemoveWMSLayers();
           if(map=="WMSBFN"){
               var layer = "";
               if(bfnNational)
               layer="1";
                   
               if(bfnBio)
               layer=(layer!="")?layer+",0":"0";

               if(bfnNatur)
               layer=(layer!="")?layer+",2":"2";
                   
                   theMap.AddWMSLayer("http://www.floraweb.de/proxy/ogc/wms/schutzgebiet?ersion=1.1.1&request=getmap&format=image/png&SRS=EPSG:31467&BBOX={x1},{y1},{x2},{y2}&LAYERS="+layer+"&WIDTH={w}&HEIGHT={h}&SCALE={s}&styles=&service=wms&TRANSPARENT=true");
                   
	        //die Straßennamen müssen wieder entfernt werden
		    //this.RemoveWMSLayers();
		    //bis auf den Basis Layer werden alle Layer wieder ausgeschaltet ... daher die Abfrage welcher noch aktiv sein muss 
//                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");
//                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");
            }
            else
		        theMap.RemoveWMSLayers();
        }
//       dojo.byId("copyrightGeoGLIS").style.visibility = 'visible';
        currMaptype = map;
        theMap.SetCenter(newCenter[0],newCenter[1]);      
        dojo.byId("massstab").style.display='block';   
    }
    if(map=="GOOGLE"){
        loadGMap(1);        
    }
    if(map=="googleHybrid"){
        loadGMap(2);        
    }
    if(map=="googleSatellit"){
        loadGMap(3);        
    }
     if(map=="OSM"){
        loadGMap(4);        
    }
}
var MapserverLayer;


function loadGMap(type){

 if (GBrowserIsCompatible()) {
    
    dojo.byId("massstab").style.display='none';
    var latlongCenter;
    var mapX1=0;
    var mapY1=0;
    var mapX2=0;
    var mapY2=0;
    var zoom=0;
      
    if(currMaptype!="GOOGLE"){
        var currCenter=theMap.GetCenter();
        latlongCenter=TransGKnachGeo(currCenter[0], currCenter[1]);
        
        
        var innerDiv = dojo.byId("innerDiv");
		var x1 = stripPx(innerDiv.style.left);
		var y1 = stripPx(innerDiv.style.top);
        mapX1=theMap.links-parseInt(x1*theMap.meterX);
        mapY1=theMap.unten-parseInt(y1*theMap.meterY);
        
        var outerdiv=dojo.byId("outerDiv");
        var RectWidth=parseInt(parseInt(outerdiv.clientWidth)*theMap.meterX);
        var RectHeight=parseInt(parseInt(outerdiv.clientHeight)*theMap.meterY);
        
        mapX2=mapX1+RectWidth;
        mapY2=mapY1+RectHeight;        
        
        
    }else{
        var currCenter=theGmap.getCenter();
        latlongCenter=new Array(currCenter.lat(),currCenter.lng());
        zoom=theGmap.getZoom();
    }
    
    
              dojo.style("innerDiv",
            {
            "width":dojo.style("outerDiv","width")+"px",
            "height":dojo.style("outerDiv","height")+"px",
            "left":"0px",
            "top":"0px"
            }
        );
        
        theGmap = new GMap2(dojo.byId("innerDiv"));

       
      
         theGmap.addControl(new GScaleControl());
            
         if(currMaptype!="GOOGLE"){
         
            var sw = TransGKnachGeo(mapX1,mapY1);
            var no = TransGKnachGeo(mapX2,mapY2);
            
            var GLatLngSW = new GLatLng(sw[0],sw[1]);
            var GLatLngNO = new GLatLng(no[0],no[1]);
            var TourBoundes = new GLatLngBounds(GLatLngSW,GLatLngNO);
            
            var MapSize= new GSize(dojo.byId("innerDiv").style.width,dojo.byId("innerDiv").style.height);
           zoom = theGmap.getBoundsZoomLevel(TourBoundes, MapSize);
            
            if(zoom<GMapMinZoom)
                zoom=GMapMinZoom;
            if(zoom>GMapMaxZoom)
                zoom=GMapMaxZoom;                       
            
            theGmap.setCenter(new GLatLng(latlongCenter[0],latlongCenter[1] ), zoom);
            
         }else
         theGmap.setCenter(new GLatLng(latlongCenter[0],latlongCenter[1] ),zoom);
        
         GEvent.addListener(theGmap, "dragend", function() 
                {
                theGMapLoadPoi();
                if(markerTourPointer!=null)
                theGmap.removeOverlay(markerTourPointer);
                markerTourPointer=null;
                }
            );
        
        theGmap.disableDoubleClickZoom();
//       theGmap.enableScrollWheelZoom();
        
        
        
        GEvent.addListener(theGmap, "move", function() {//Begrenzen
            checkBounds();
            UpdateUebersichtskarteGmap();
        });
        
        GEvent.addListener(theGmap, "tilesloaded", function() {//Begrenzen
            theMap.SetDim();
        });
        
//        GEvent.addListener(theGmap, "zoomend", function() {//Zoom per Mausrad
//            adjustZoomPosition();
//        });
//        
        
//        GEvent.addListener(theGmap, "moveend", function() {//Begrenzen
//             theGMapLoadPoi();
//        });

 
        if(type==1)
            theGmap.setMapType(G_NORMAL_MAP);
        if(type==2)
            theGmap.setMapType(G_PHYSICAL_MAP);
        if(type==3)
            theGmap.setMapType(G_SATELLITE_MAP);
        if(type==4){
//            theGmap.setMapType(G_NORMAL_MAP);
            theGmap.setMapType(MonaOSMMap);
        }

        if(BFNLayerID!="" || OSM);              
        theGmap.addOverlay(BFNServerLayer);

        if(navigatorId==2)
            theGmap.addOverlay(GBServerLayer);
            
            
        theGmapMgr=new MarkerManager(theGmap,{ gridSize: 50, maxZoom: 10},false);
        theGmapMgrEtappen=new MarkerManager(theGmap,{ gridSize: 50, maxZoom: 10},false);
        currMaptype="GOOGLE";
        theGMapLoadPoi();
        theMap.LoadTour(currentTourId);
        adjustZoomPosition();
  }
  dojo.byId("copyrightGeoGLIS").style.visibility = 'hidden';
    
}

var tilelayer;


function GetMonaOSMTileUrl(a,b,c) {

//                if(b==16)
//                    return "http://mapserver.i-ventions.de:8080/tiles/"+b+"/"+a.x+"/"+a.y+".png?google=1";
//                else

                    return "http://mapserver.i-ventions.de/europe/"+b+"/"+a.x+"/"+a.y+".png?google=1";
//                    return "http://test10.i-ventions.de/"+b+"/"+a.x+"/"+a.y+".png?google=1";
}

function CustomGetTileUrl(a,b,c) {

if(!OSM){
            var lULP = new GPoint(a.x*256,(a.y+1)*256);
            var lLRP = new GPoint((a.x+1)*256,a.y*256);
            var lUL = G_NORMAL_MAP.getProjection().fromPixelToLatLng(lULP,b,c);
            var lLR = G_NORMAL_MAP.getProjection().fromPixelToLatLng(lLRP,b,c);

            var xy = Transform_Geo_to_GK3(lUL.lng(),lUL.lat());
            var xy2 = Transform_Geo_to_GK3(lLR.lng(),lLR.lat());
            var lURL="http://www.floraweb.de/proxy/ogc/wms/schutzgebiet?version=1.1.1&request=getmap&format=image/png&SRS=EPSG:4326&BBOX={x1},{y1},{x2},{y2}&LAYERS="+BFNLayerID+"&WIDTH=256&HEIGHT=256&styles=&service=wms&TRANSPARENT=true";
//            lURL=lURL.replace("{x1}",xy[0]);
//            lURL=lURL.replace("{y1}",xy[1]);
//            lURL=lURL.replace("{x2}",xy2[0]);
//            lURL=lURL.replace("{y2}",xy2[1]);

            lURL=lURL.replace("{x1}",lUL.lng());
            lURL=lURL.replace("{y1}",lUL.lat());
            lURL=lURL.replace("{x2}",lLR.lng());
            lURL=lURL.replace("{y2}",lLR.lat());
            return lURL;
            }
            else
                return "http://test10.i-ventions.de/"+b+"/"+a.x+"/"+a.y+".png";
//return "version=1.1.1&request=getmap&format=image/png&SRS=EPSG:31467&BBOX=3269984,5730016,3587480,6047512&LAYERS=1&WIDTH=800&HEIGHT=800&SCALE=1500000&styles=&service=wms&TRANSPARENT=true";
}

function CustomGetTileUrlGB(a,b,c) {

                  
            var lULP = new GPoint(a.x*256,(a.y+1)*256);
            var lLRP = new GPoint((a.x+1)*256,a.y*256);
            var lUL = G_NORMAL_MAP.getProjection().fromPixelToLatLng(lULP,b,c);
            var lLR = G_NORMAL_MAP.getProjection().fromPixelToLatLng(lLRP,b,c);
            var xy = Transform_Geo_to_GK3(lUL.lng(),lUL.lat());
            var xy2 = Transform_Geo_to_GK3(lLR.lng(),lLR.lat());
            
            if(a.x%2==1 && a.y%2==0){
            
                    var ax=a.x-1;
                    var ay=a.y;
                    
                    lULP = new GPoint(ax*256,(ay+1)*256);
                    lLRP = new GPoint((ax+1)*256,ay*256);
                    lUL = G_NORMAL_MAP.getProjection().fromPixelToLatLng(lULP,b,c);
                    lLR = G_NORMAL_MAP.getProjection().fromPixelToLatLng(lLRP,b,c);
                    var xy_2 = Transform_Geo_to_GK3(lUL.lng(),lUL.lat());
                    var xy2_2 = Transform_Geo_to_GK3(lLR.lng(),lLR.lat());
                    xy=new Array(xy2_2[0],xy_2[1]);
                    
                    var ax=a.x+1;
                    var ay=a.y;
                    
                    lULP = new GPoint(ax*256,(ay+1)*256);
                    lLRP = new GPoint((ax+1)*256,ay*256);
                    lUL = G_NORMAL_MAP.getProjection().fromPixelToLatLng(lULP,b,c);
                    lLR = G_NORMAL_MAP.getProjection().fromPixelToLatLng(lLRP,b,c);
                    var xy_2 = Transform_Geo_to_GK3(lUL.lng(),lUL.lat());
                    var xy2_2 = Transform_Geo_to_GK3(lLR.lng(),lLR.lat());
                    xy2=new Array(xy_2[0],xy2_2[1]);
            }
            
            
             if(a.x%2==0 && a.y%2==1){
            
                    var ax=a.x;
                    var ay=a.y-1;
                    
                    lULP = new GPoint(ax*256,(ay+1)*256);
                    lLRP = new GPoint((ax+1)*256,ay*256);
                    lUL = G_NORMAL_MAP.getProjection().fromPixelToLatLng(lULP,b,c);
                    lLR = G_NORMAL_MAP.getProjection().fromPixelToLatLng(lLRP,b,c);
                    var axy_2 = Transform_Geo_to_GK3(lUL.lng(),lUL.lat());
                    var axy2_2 = Transform_Geo_to_GK3(lLR.lng(),lLR.lat());
                    
                    
                    var ax=a.x;
                    var ay=a.y+1;
                    
                    lULP = new GPoint(ax*256,(ay+1)*256);
                    lLRP = new GPoint((ax+1)*256,ay*256);
                    lUL = G_NORMAL_MAP.getProjection().fromPixelToLatLng(lULP,b,c);
                    lLR = G_NORMAL_MAP.getProjection().fromPixelToLatLng(lLRP,b,c);
                    var bxy_2 = Transform_Geo_to_GK3(lUL.lng(),lUL.lat());
                    var bxy2_2 = Transform_Geo_to_GK3(lLR.lng(),lLR.lat());
                    
                    xy=new Array(axy_2[0],bxy2_2[1]);
                    xy2=new Array(axy2_2[0],axy_2[1]);
            }
            
            
            if(a.x%2==1 && a.y%2==1){
            
                    var ax=a.x-1;
                    var ay=a.y-1;
                    
                    lULP = new GPoint(ax*256,(ay+1)*256);
                    lLRP = new GPoint((ax+1)*256,ay*256);
                    lUL = G_NORMAL_MAP.getProjection().fromPixelToLatLng(lULP,b,c);
                    lLR = G_NORMAL_MAP.getProjection().fromPixelToLatLng(lLRP,b,c);
                    var axy_2 = Transform_Geo_to_GK3(lUL.lng(),lUL.lat());
                    var axy2_2 = Transform_Geo_to_GK3(lLR.lng(),lLR.lat());
                    
                    
                    var ax=a.x+1;
                    var ay=a.y+1;
                    
                    lULP = new GPoint(ax*256,(ay+1)*256);
                    lLRP = new GPoint((ax+1)*256,ay*256);
                    lUL = G_NORMAL_MAP.getProjection().fromPixelToLatLng(lULP,b,c);
                    lLR = G_NORMAL_MAP.getProjection().fromPixelToLatLng(lLRP,b,c);
                    var bxy_2 = Transform_Geo_to_GK3(lUL.lng(),lUL.lat());
                    var bxy2_2 = Transform_Geo_to_GK3(lLR.lng(),lLR.lat());
                    
                    xy=new Array(axy2_2[0],bxy2_2[1]);
                    xy2=new Array(bxy_2[0],axy_2[1]);
            }
            

            var lURL="http://onmaps.de/ggwms?version=1.1.0&request=getmap&bgcolor=0xffffe6&nowatermark=true&format=image/png&dpi=72&TRANSPARENT=true&LAYERS=viabono_gruenes_band&fullalpha=true&WIDTH=256&HEIGHT=256&BBOX={x1},{y1},{x2},{y2}&truecolor=true&ax="+a.x+"&a.x="+a.y;
//            lURL=lURL.replace("{x1}",lUL.lng());
//            lURL=lURL.replace("{y1}",lUL.lat());
//            lURL=lURL.replace("{x2}",lLR.lng());
//            lURL=lURL.replace("{y2}",lLR.lat());
            lURL=lURL.replace("{x1}",xy[0]);
            lURL=lURL.replace("{y1}",xy[1]);
            lURL=lURL.replace("{x2}",xy2[0]);
            lURL=lURL.replace("{y2}",xy2[1]);
            return lURL;
            
}


function dragMap(){alert("juhu");};

function UpdateUebersichtskarteGmap(){

var myArea = document.getElementById("myarea");


	 	var bounds = theGmap.getBounds();
	        var lu = bounds.getSouthWest();
	        var ro = bounds.getNorthEast();
	        
	        var xy1 = Transform_Geo_to_GK3(lu.lng(),lu.lat());
	        var xy2 = Transform_Geo_to_GK3(ro.lng(),ro.lat());
		
		var x1=xy1[0];//links
		var y1=xy2[1];//oben
		var x2=xy2[0];//rechts
		var y2=xy1[1];//unten

		// xy1/2 enthalten jetzt die Geokoordinaten des sichtbaren Bereiches

		var xpix = (x1 - theMap.oL) / theMap.omX;
		var ypix = (y1 - theMap.oU) / theMap.omY;
		mtop = theMap.oH-parseInt(ypix); 
		mleft = theMap.oW-parseInt(xpix);        

		xpix = (x2 - theMap.oL) / theMap.omX;
		ypix = (y2 - theMap.oU) / theMap.omY;
		var top1 = theMap.oH-parseInt(ypix);
		var left1 = theMap.oW-parseInt(xpix);        

		var oheight = parseInt(mtop)-parseInt(top1);
		var owidth = parseInt(mleft)-parseInt(left1);

		var myBottom = parseInt(mtop)-parseInt(oheight)-12;//-12 korrektur, da zuweit oben.
		var myLeft = theMap.oW-(parseInt(mleft));
		myArea.style.bottom = myBottom+"px";
		myArea.style.left = myLeft+"px";

		myArea.style.height = oheight+"px";
		myArea.style.width = owidth+"px";


}
function checkKlickAufTour()
{}

function MoveMapTop(){
    if(currMaptype=="WMS" || currMaptype=="WMSBFN")
        theMap.moveMap(0,150);
    else if(currMaptype=="GOOGLE")
        theGmap.panDirection(0,+1);
}
function MoveMapDown(){
    if(currMaptype=="WMS" || currMaptype=="WMSBFN")
        theMap.moveMap(0,-150);
    else if(currMaptype=="GOOGLE")
     theGmap.panDirection(0,-1);
}
function MoveMapLeft(){
    if(currMaptype=="WMS" || currMaptype=="WMSBFN")
        theMap.moveMap(150,0);
    else if(currMaptype=="GOOGLE")
     theGmap.panDirection(+1,0);

}
function MoveMapRight(){
    if(currMaptype=="WMS" || currMaptype=="WMSBFN")
        theMap.moveMap(-150,0);
    else if(currMaptype=="GOOGLE")
     theGmap.panDirection(-1,0);
}

function ZoomOutMap(){

 if(currMaptype=="WMS" || currMaptype=="WMSBFN")
    theMap.ZoomOut();
 else if(currMaptype=="GOOGLE") { 
    if(GMapMinZoom<theGmap.getZoom())
        theGmap.zoomOut();
        theGMapLoadPoi();        
    }
    
    adjustZoomPosition();
}

function ZoomInMap(){

 if(currMaptype=="WMS" || currMaptype=="WMSBFN")
    theMap.ZoomIn();
 else if(currMaptype=="GOOGLE"){  
        theGmap.zoomIn();
        theGMapLoadPoi();
    }
    
    adjustZoomPosition();
}
function sendPOI(isUnter)
{
	if(!isUnter)
	    dojo.byId("buttonPOI").href = "mailto:?subject=Empfehlung&body=http://www.outdoor-navigator.de/Default.aspx?pid="+arrVisitenkarte[20];
	else
	    dojo.byId("untekunftempfehlenLink").href = "mailto:?subject=Empfehlung&body=http://www.outdoor-navigator.de/Default.aspx?pid="+arrVisitenkarte[20];
}

function encodeSignedNumber(num) {
  var sgn_num = num << 1;

  if (num < 0) {
    sgn_num = ~(sgn_num);
  }

  return(encodeNumber(sgn_num));
}

// Encode an unsigned number in the encode format.
function encodeNumber(num) {
  var encodeString = "";

  while (num >= 0x20) {
    encodeString += (String.fromCharCode((0x20 | (num & 0x1f)) + 63));
    num >>= 5;
  }

  encodeString += (String.fromCharCode(num + 63));
  return encodeString;
}


function theGMapLoadPoi(){
                var tile1 = theGmap.getBounds().getSouthWest();
                var tile2 = theGmap.getBounds().getNorthEast();
                
                //alert(tile1.lat()+" + "+tile1.lng());

                var x1 = tile1.lat();
                var y1 = tile1.lng();
                var x2 = tile2.lat();
                var y2 = tile2.lng();
       			var url = "./mapcontrol/ajax/GetPOILayer.aspx?merk="+getMerkliste()+"&x1="+x1+"&y1="+y1+"&x2="+x2+"&y2="+y2+"&ky=0&kx=0&level="+theMap.zoomlevel+"&mx="+theMap.meterX+"&poiKatIds="+aktivpoikat+"&TourId="+currentTourId+"&usingWMS="+theMap.m_usingWMS+"&TourPoiAnzeigen=";

                if(theMap.TourOrte==1)
                    url+="true";
                else
                    url+="false";
    			url+="&Unterkuenfte=false&Ausflugsziele=false&Service=false";

                getPoilayer(url);
}


function getZoomlevelForWMS(){//bei Wechel von Google zu WMS

    var nZoom=7;
    var bounds= theGmap.getBounds();
    var so= bounds.getSouthWest();
    var ne= bounds.getNorthEast();
    
    var grenze_so=Transform_Geo_to_GK3(so.lng(),so.lat());
    var grenze_ne=Transform_Geo_to_GK3(ne.lng(),ne.lat());
        
    Grenzen = new Array(grenze_so[0],grenze_so[1],grenze_ne[0],grenze_ne[1]);
    
    var nMaxW = Grenzen[2] - Grenzen[0];
    var nMaxH = Grenzen[3] - Grenzen[1];
    
    var nMeterX = (Grenzen[2] - Grenzen[0]) / parseInt(dojo.byId("outerDiv").clientWidth);
    var nMeterY = (Grenzen[3] - Grenzen[1]) / parseInt(dojo.byId("outerDiv").clientHeight);


    if (nMeterX > nMeterY)
        MassSt = Math.round(nMeterX / (13.229 / 50000));
    else
        MassSt = Math.round(nMeterY / (13.229 / 50000));

    //    this.ScaleMatchTab = new Array(10000, 25000, 50000, 100000, 300000, 750000, 1500000, 3000000, 5000000);   

    if (MassSt < 3015000) nZoom = 7;
    if (MassSt < 1515000) nZoom = 6;
    if (MassSt < 765000) nZoom = 5;
    if (MassSt < 315000) nZoom = 4;
    if (MassSt < 115000) nZoom = 3;
    if (MassSt < 65000) nZoom = 2;
    if (MassSt < 35000) nZoom = 1;
    if (MassSt < 20000) nZoom = 0;
    
    return nZoom;
}

function closeFenster(){
    dojo.query(".fenster").forEach(function(node,index,arr){
        if(parseInt(node.style.width)>0)
            minimize(node.id,parseInt(node.style.width),parseInt(node.style.height));
    });
}


function MerkerlisteDrucken(){
    var poiids="";
    var tourids="";
 

    for(var tourid in merkerlisteTour)
        tourids+=tourid+",";

    for(var poiid in merkerlistePoi){
        poiids+=poiid+";"+merkerlistePoi[poiid][34]+",";
        }
        var url="mapcontrol/ajax/printMerkerliste.aspx?&poiids="+poiids+"&tourids="+tourids;
        wndMerkerliste = winOpen(url,"wndMerkerliste",400,300,"status=no,toolbar=no,menubar=no,location=no,resizable=no,dependent=yes");

}

function MerkerlisteGPX(){
  var poiids="";
     for(var poiid in merkerlistePoi){
        poiids+=poiid+",";
                
        }
        var url="mapcontrol/ajax/GPX.aspx?&poiids="+poiids;
        wndMerkerliste = winOpen(url,"wndMerkerliste",400,300,"status=no,toolbar=no,menubar=no,location=no,resizable=no,dependent=yes");
}


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;
	}
	

//Koordinaten von Deutschland
var allowedU=44.8;
var allowedO=56.36;
var allowedL=4.5;
var allowedR=16.45;

var allowedBounds = new GLatLngBounds(new GLatLng(allowedU,allowedL), new GLatLng(allowedO,allowedR));

// GoogleMap begrenzen	
function checkBounds() {
        // Ansatz um nicht auf den Center zu Prüfen sondern auf die ecken.
        var bounds = theGmap.getBounds();
        var lu = bounds.getSouthWest();
        var ro = bounds.getNorthEast();
        
        var ru =new GLatLng(lu.lat(),ro.lng()); 
        var lo =new GLatLng(ro.lat(),lu.lng());
        
        var blu=allowedBounds.contains(lu);
        var bro=allowedBounds.contains(ro);
        var bru=allowedBounds.contains(ru);
        var blo=allowedBounds.contains(lo);
        
        if (blu && bro && bru && blo) {
          return;
        }
        
        var currCenter=theGmap.getCenter();
        var breite=(ro.lat()-lu.lat())/2;
        var height=(ro.lng()-lu.lng())/2;
        
        
        var newlat=lu.lat()+breite;//Center des ausschnittes;
        var newlng=lu.lng()+height;
        
        if(!blu && !bru){ //untere Grenze erreicht
            newlat= allowedU+breite+0.02;           
        }
        if(!blo && ! bro){//obere Grenze erreicht
            newlat= allowedO-breite-0.02;
        }
        if(!blo && !blu){//linke Grenze erreicht    
            newlng=allowedL+height+0.02;
        }
        if(!bro && !bru){//rechte Grenze erreicht    
            newlng=allowedR-height-0.02;
        }
            
        
        theGmap.setCenter(new GLatLng(newlat,newlng));    
            
    
//        if (allowedBounds.contains(theGmap.getCenter())) {
//            return;
//            }

//        // It`s not OK, so find the nearest allowed point and move there
//        var C = theGmap.getCenter();
//        var X = C.lng();
//        var Y = C.lat();

//        var AmaxX = allowedBounds.getNorthEast().lng();
//        var AmaxY = allowedBounds.getNorthEast().lat();
//        var AminX = allowedBounds.getSouthWest().lng();
//        var AminY = allowedBounds.getSouthWest().lat();

//        if (X < AminX) {X = AminX;}
//        if (X > AmaxX) {X = AmaxX;}
//        if (Y < AminY) {Y = AminY;}
//        if (Y > AmaxY) {Y = AmaxY;}
//        //alert ("Restricting "+Y+" "+X);
//        theGmap.setCenter(new GLatLng(Y,X));

//          theGmap.setCenter(new GLatLng(lu.lat()+(ro.lat()-lu.lat())/2,lu.lng()+(ro.lng()-lu.lng())/2));
}
	
function showEditTour(id_tmp)
{
    var id = 0;
    if(typeof id_tmp != "undefined")
        id = id_tmp.substring(0,id_tmp.indexOf('_'));
  
   if(id>0)
   {
        fillProfile("editTour", id);
        dojo.byId('profileEditContent').style.display="block";
//        content:{tourname: dojo.byId("tourname").value,
//        tourkat:dojo.byId("tourKat").options[dojo.byId("tourKat").selectedIndex].value,
//        tourregion:dojo.byId("tourRegion").options[dojo.byId("tourRegion").selectedIndex].value,
//        schwierigkeit:dojo.byId("tourSchwierigkeit").options[dojo.byId("tourSchwierigkeit").selectedIndex].value,
//        tourinfo:dojo.byId("tourInfo").value,
//        tourbeschreibung:dojo.byId("tourBeschreibung").value,
//        filename:dojo.byId("tourfilename").value,
//        dauer:dojo.byId("tourDauer").options[dojo.byId("tourDauer").selectedIndex].value,
//        verlauf:dojo.byId("tourVerlauf").options[dojo.byId("tourVerlauf").selectedIndex].value,
//        untergrund:dojo.byId("tourUntergrund").options[dojo.byId("tourUntergrund").selectedIndex].value,
//        hoehe:dojo.byId("tourHoehe").options[dojo.byId("tourHoehe").selectedIndex].value
   }
}	
 
var uploader = null;

function showUpload(){
    dojo.byId('profile6Content').style.display = 'block';
    }


function showTourUpload(id_tmp){
    
   
    dojo.byId("tourSuccessMeldung").innerHTML="";
    dojo.byId("tourErrMeldung").innerHTML="";
    restTourupload();  
    //dojo.create("div",{innerHTML:"Upload",onclick:ajaxupload},"profile6Content");
    
    //var fileMask = ["Images", "*.jpg;*.jpeg;*.gif;*.png"];
    var fileMask = ["GPX", "*.gpx;"];
    var url="mapcontrol/ajax/upload.aspx?type=tour_"+userid;//Achtung alle weiteren Paramater werden nciht übergeben!! daher kein & benutzen!!
    if(uploader==null){
            uploader = new dojox.form.FileUploader({
        //    hoverClass:"uploadHover",
        //    activeClass:"uploadBtn",
        //    pressClass:"uploadPress",
        //    disabledClass:"uploadDisable",
            uploadUrl:url,
            selectMultipleFiles: false,
            uploadOnChange:false,
            degradable:true, 
            fileMask:fileMask,
            force:"flash"
            }, "btnUpload");

            dojo.connect(uploader, "onChange", function(data){
		        dojo.forEach(data, function(d){
			        //file.type no workie from flash selection (Mac?)
			            dojo.byId("selectedGPX").innerHTML=d.name+" "+Math.ceil(d.size/1024)+"kb";
			            dojo.byId("tourfilename").value=d.name;
		        });
	        });
        	
	        dojo.connect(uploader, "onProgress", function(dataArray){
                dojo.forEach(dataArray, function(data){
                    dojo.byId("selectedGPX").innerHTML= "Datei wird hochgeladen: ("+data.percent+"%) "+data.name+" \n";
                    
                });
            });

           
           dojo.connect(uploader, "onComplete", function(dataArray){
            dojo.forEach(dataArray, function(d){
                    restTourupload();
                    if(d.error==null){  
                        dojo.byId("tourSuccessMeldung").innerHTML="Tour erfolgreich hochgeladen";                             
                        
                        
                        var button = dojo.create("div",{innerHTML:"Jetzt Bild oder Video hinzufügen"},"tourSuccessMeldung");
                            dojo.style(button,{
                                               background:"url(/design/profil_button_bg_breit.png) no-repeat scroll 0 0 transparent",
                                               cursor:"pointer",
                                               width:"200px",
                                               height:"18px",
                                               lineHeight:"18px",
                                               paddingLeft:"18px",
                                               color:"#000000"
                                               });
                         button.onclick=(function(){LoadTourByIdMultimedia(this);}).bind(d.tourid);
                            
                        
                        //d.tourid
                        }
                    else{
                        dojo.byId("tourErrMeldung").innerHTML=d.error;                             
                        if(d.error=="Bitte einloggen")
                            logout();
                        }
                });
            });
    }
}

function doUpload(){
    var error=false;
    dojo.byId("tourErrMeldung").innerHTML="";
    
    if(dojo.byId("tourname").value==""){
        dojo.byId("tourErrMeldung").innerHTML+="Bitte einen Tournamen eingeben<br/>";    
        error=true;
        }
    if(dojo.byId("tourKat").options[dojo.byId("tourKat").selectedIndex].value==0){
        dojo.byId("tourErrMeldung").innerHTML+="Bitte Kategorie wählen<br/>";    
        error=true;
        }
    if(dojo.byId("tourRegion").options[dojo.byId("tourRegion").selectedIndex].value==0){
        dojo.byId("tourErrMeldung").innerHTML+="Bitte Region wählen<br/>";    
        error=true;
        }
    if(dojo.byId("tourSchwierigkeit").options[dojo.byId("tourSchwierigkeit").selectedIndex].value==0){
        dojo.byId("tourErrMeldung").innerHTML+="Bitte eine Schwierigkeit wählen<br/>";    
        error=true;
        }
     if(dojo.byId("tourDauer").options[dojo.byId("tourDauer").selectedIndex].value==0){
        dojo.byId("tourErrMeldung").innerHTML+="Bitte eine Dauer wählen<br/>";    
        error=true;
        }
         if(dojo.byId("tourUntergrund").options[dojo.byId("tourUntergrund").selectedIndex].value==0){
        dojo.byId("tourErrMeldung").innerHTML+="Bitte einen untergrund wählen<br/>";    
        error=true;
        }
         if(dojo.byId("tourVerlauf").options[dojo.byId("tourVerlauf").selectedIndex].value==0){
        dojo.byId("tourErrMeldung").innerHTML+="Bitte einen verlauf wählen<br/>";    
        error=true;
        }
         if(dojo.byId("tourHoehe").options[dojo.byId("tourHoehe").selectedIndex].value==0){
        dojo.byId("tourErrMeldung").innerHTML+="Bitte eine Tourhöhe wählen<br/>";    
        error=true;
        }    
        
    if(dojo.byId("tourInfo").value==""){
        dojo.byId("tourErrMeldung").innerHTML+="Bitte Info angeben<br/>";    
        error=true;
        }
    if(dojo.byId("tourBeschreibung").value==""){
        dojo.byId("tourErrMeldung").innerHTML+="Bitte Beschreibung angeben<br/>";    
        error=true;
        }                        
    
    if(dojo.byId("selectedGPX").innerHTML==""){
        dojo.byId("tourErrMeldung").innerHTML+="Bitte Datei wählen<br/>";    
        error=true;
    }
    
    if(!error){
    
     dojo.byId("tourSuccessMeldung").innerHTML="Upload gestartet  <img src='/design/loading.gif'>";
    
     dojo.xhrPost( {
                url: "mapcontrol/ajax/setSessionInfo2.aspx", 
                preventCache: true,//Cachen erlaubt
                handleAs:"xml",
                form : dojo.byId("form1"),
                content:{tourname: dojo.byId("tourname").value,
                        tourkat:dojo.byId("tourKat").options[dojo.byId("tourKat").selectedIndex].value,
                        tourregion:dojo.byId("tourRegion").options[dojo.byId("tourRegion").selectedIndex].value,
                        schwierigkeit:dojo.byId("tourSchwierigkeit").options[dojo.byId("tourSchwierigkeit").selectedIndex].value,
                        tourinfo:dojo.byId("tourInfo").value,
                        tourbeschreibung:dojo.byId("tourBeschreibung").value,
                        filename:dojo.byId("tourfilename").value,
                        dauer:dojo.byId("tourDauer").options[dojo.byId("tourDauer").selectedIndex].value,
                        verlauf:dojo.byId("tourVerlauf").options[dojo.byId("tourVerlauf").selectedIndex].value,
                        untergrund:dojo.byId("tourUntergrund").options[dojo.byId("tourUntergrund").selectedIndex].value,
                        hoehe:dojo.byId("tourHoehe").options[dojo.byId("tourHoehe").selectedIndex].value
                        
                },
                load: function(response, ioArgs) {
                    if(response.getElementsByTagName("Error").length>0)
                    {
                    logout();
                    dojo.byId("tourErrMeldung").innerHTML+="Bitte einloggen<br/>";  
                    }
                    else
                 uploader.upload();
                },
                error: function(response, ioArgs) { 
                
                      //nichts machen
                      return response; 
                      }
                });
    
    }
    

}


function restTourupload(){
    dojo.byId("tourname").value="";
    dojo.byId("tourInfo").value="";
    dojo.byId("tourBeschreibung").value="";
    dojo.byId("tourKat").selectedIndex=0;
    dojo.byId("tourRegion").selectedIndex=0;
    dojo.byId("tourSchwierigkeit").selectedIndex=0;
    dojo.byId("selectedGPX").innerHTML="";

}

function getBewertungTour(){


        
        dojo.xhrGet( {
                url: "mapcontrol/ajax/getBewertung.aspx", 
                preventCache: true,//Cachen erlaubt
                handleAs:"xml",
                content:{
                    id:currentTourId,
                    isPOI:false
                },
                load: function(response, ioArgs) {

                    
                        dojo.byId("TourbewertungenName").innerHTML = response.getElementsByTagName("tourinfo")[0].getAttribute("name");
                        dojo.byId("TourDatum").innerHTML = response.getElementsByTagName("tourinfo")[0].getAttribute("datum").substr(0,10);
                        dojo.byId("TourAufrufe").innerHTML = 36;//arrVisitenkarte[0]; 


                    dojo.byId("TourbewertungenGesamt").innerHTML=response.getElementsByTagName("stars")[0].getAttribute("starstotal");
                    dojo.byId("TourbewertungenStar0_balken").style.width = response.getElementsByTagName("stars")[0].getAttribute("star0")+"px";
                    dojo.byId("TourbewertungenStar1_balken").style.width = response.getElementsByTagName("stars")[0].getAttribute("star1")+"px";
                    dojo.byId("TourbewertungenStar2_balken").style.width = response.getElementsByTagName("stars")[0].getAttribute("star2")+"px";
                    dojo.byId("TourbewertungenStar3_balken").style.width = response.getElementsByTagName("stars")[0].getAttribute("star3")+"px";
                    dojo.byId("TourbewertungenStar4_balken").style.width = response.getElementsByTagName("stars")[0].getAttribute("star4")+"px";
                    dojo.byId("TourbewertungenStar5_balken").style.width = response.getElementsByTagName("stars")[0].getAttribute("star5")+"px";
                    
                    dojo.query(".StarGesamt").forEach(function(node,index,arr){
                        dojo.destroy(node);
                    });
                    
                   var gesBew="";
                    gesBew = dojo.create("img",{src:"/design/stars_"+response.getElementsByTagName("stars")[0].getAttribute("starsaverage")+"_green.png","class":"StarGesamt"},"TourVisitenkarteBewertungen_Content_Oben");
                   dojo.style(gesBew,{"position":"absolute","left":"140px","top":"5px","zIndex":"1000"});
                                        
                    dojo.empty("TourVisitenkarteBewertungen_Content_Unten");
                    
                    for(var i=0;i<response.getElementsByTagName("bewertung").length;i++){
                    
                        var bewertung=response.getElementsByTagName("bewertung")[i];
                        
                        if(i>0)
                        dojo.create("br",null,"TourVisitenkarteBewertungen_Content_Unten");  
                        
                        var titelText=bewertung.getAttribute("titel");
                        if(titelText=="null")
                            titelText="";
                        var titel=dojo.create("div",
                                        {
                                        "class":"bewertungenResTitle",
                                        innerHTML:titelText
                                        }
                                        ,
                                   "TourVisitenkarteBewertungen_Content_Unten");     
                        
 
                            dojo.create("img",{src:"/design/stars_"+bewertung.getAttribute("stars")+"_green.png"},titel,"first");
                        
                        var autor=dojo.create("div",
                                        {
                                        "class":"bewertungenResAuthor",
                                        innerHTML:bewertung.getAttribute("name")
                                        }
                                        ,
                                   "TourVisitenkarteBewertungen_Content_Unten");     
                         
                         dojo.create("span",
                                        {
                                        "class":"bewertungenResText",
                                        innerHTML:"von "
                                        },
                                        autor,
                                        "first");
                          var bewText=(bIsIE)?bewertung.text:bewertung.textContent;
                          
                          if(bewText=="null")
                            bewText="";              
                          
                          var Bewertung=dojo.create("div",
                                        {
                                        "class":"bewertungenResText",
                                        innerHTML:bewText
                                        },
                                        "TourVisitenkarteBewertungen_Content_Unten");
                                        
                       
                                        
                    }
                    
                    if(response.getElementsByTagName("bewertung").length==0){
                          var Bewertung=dojo.create("div",
                                        {
                                        "class":"bewertungenResText",
                                        innerHTML:"<br><b>Die Qualität der Daten wurde noch nicht bewertet.</b>"
                                        },
                                        "TourVisitenkarteBewertungen_Content_Unten");                  
                    }
                    
                },
                error: function(response, ioArgs) { 
                
                      //nichts machen
                      return response; 
                      }
                });
}

function tour_drucken(){
        var url="mapcontrol/ajax/printMerkerliste.aspx?tourids="+currentTourId;
        wndMerkerliste = winOpen(url,"wndMerkerliste",400,300,"status=no,toolbar=no,menubar=no,location=no,resizable=no,dependent=yes");
}


function setCenter(x,y){

   if(currMaptype!="GOOGLE"){
		theMap.SetCenter(x,y);
	}else{
		var latlongCenter=TransGKnachGeo(x,y);
		theGmap.setCenter(new GLatLng(latlongCenter[0],latlongCenter[1]));
	}

}

function onLogin_Enter(event){
    if( !event )
        event = window.event;
    if( event.keyCode == 13 )
        tryLogin();    
}

function PrintAsPDF(){
   if(currMaptype!="GOOGLE"){
		theMap.PrintAsPDF();
	}else{
		
		
        var bounds = theGmap.getBounds();
        var lu = bounds.getSouthWest();
        var ro = bounds.getNorthEast();
        
        var xy1 = Transform_Geo_to_GK3(lu.lng(),lu.lat());
        var xy2 = Transform_Geo_to_GK3(ro.lng(),ro.lat());
        
        url="./mapcontrol/ajax/PrintMap.aspx?wms="+escape(theMap.m_wmsBase)+"&x="+xy1[0]+"&y="+xy1[1]+"&x2="+xy2[0]+"&y2="+xy2[1]+"&mX=0&mY=0&w="+dojo.style("innerDiv","width")+"&h="+dojo.style("innerDiv","height")+"&scale="+this.scale+"&tourid="+this.currentTour+"&poiKatIds="+strPoiKatGewaehltGesamt+"&usingWMS="+this.m_usingWMS+"&TourPoiAnzeigen=";
                if(theMap.TourOrte==1)
                    url+="true";
                else
                    url+="false";
                    //Welche POI an der Tour zeigen?
//url+="&Unterkuenfte="+isUnterkuenfte+"&Ausflugsziele="+isAusflugsziele+"&Service="+isService;
                
//                if(!usermodified)
//                    url+="&filter="+filterid;
        
        location.href=url;
		
	}

}

function TourInfoOeffnen(){

    if(currentTourId) 
        maximize('TourVisitenkarte',381,382);
    else    
        showMassageCenter("Keine Tour gewählt");
}

function pwAendern(){
    if(dojo.byId("pwVergessenPW1").value!=dojo.byId("pwVergessenPW2").value)
        showMassageCenter("Die Passwörter stimmen nicht überein.");
    else{
        dojo.xhrGet( {
                    url: "mapcontrol/ajax/pwAendern.aspx",
                    preventCache: true,//Cachen erlaubt
                    content:{
                        pw: dojo.byId("pwVergessenPW1").value,
                        code:q.get("pwvergessen"),
                        uid:q.get("uid")
                    },
                    handleAs:"xml",
                    load: function(response, ioArgs) {
                     
                     if(response.getElementsByTagName("success").length>0)
                        showMassageCenter(response.getElementsByTagName("success")[0].getAttribute("success"));
                        
                        for(var i =0;i<response.getElementsByTagName("error").length;i++){
                            showMassageCenter(response.getElementsByTagName("error")[i].getAttribute("fehler"));
                        }
                        
                        return response; 
                     },
                    error: function(response, ioArgs) { 
                          //nichts machen
                          showMassageCenter("Fehler beim Versenden der Email");
                          return response; 
                          }
                    });
     
    }

}

function pwvergessen(){

    if(dojo.byId("userInput").value=="")
        showMassageCenter("Bitte Emailadresse oder Benutzername in das Feld Benutzer eingeben, dann auf Passwort vergessen klicken.");
    else{
         dojo.xhrGet( {
                    url: "mapcontrol/ajax/pwvergessen.aspx",
                    preventCache: true,//Cachen erlaubt
                    content:{
                        benutzer: dojo.byId("userInput").value
                    },
                    handleAs:"xml",
                    load: function(response, ioArgs) {
                     
                     if(response.getElementsByTagName("success").length>0)
                        showMassageCenter(response.getElementsByTagName("success")[0].getAttribute("success"));
                        
                        for(var i =0;i<response.getElementsByTagName("error").length;i++){
                            showMassageCenter(response.getElementsByTagName("error")[i].getAttribute("fehler"));
                        }
                        
                        return response; 
                     },
                    error: function(response, ioArgs) { 
                          //nichts machen
                          showMassageCenter("Fehler beim Versenden der Email");
                          return response; 
                          }
                    });
        
    }

}

function closeClass(classname){
    dojo.query("."+classname).forEach(function(node,index,arr){
        node.style.display="none";
    });
}


function showContentDiv(div){
    hidestartInfo();
    
    var show=true;
    if(dojo.byId(div).style.display=="block")
        show=false;
    closeFenster(); 
    closeClass("content");
    dojo.byId("divContent2").style.display="none";
    
    if(show){
        dojo.byId("divContent2").style.display="block";
        dojo.byId(div).style.display="block";
        }
}

function hidestartInfo(){
    dojo.byId("startHinweis").style.display="none";
}

//function showHelp()
//{
//    dojo.byId("divContent2").style.display="block";
//    
//    if(dojo.byId("divHelp").style.display=="block")
//        dojo.byId("divHelp").style.display="none";
//    else{
//        dojo.byId("divHelp").style.display="block";
//        dojo.byId("divImpressum").style.display="none";
//        dojo.byId("divRegister").style.display="none";
//        }
//}
//function showImpressum()
//{
//    dojo.byId("divContent2").style.display="block";
//    
//    
//    
//    if(dojo.byId("divImpressum").style.display=="block")
//        dojo.byId("divImpressum").style.display="none";
//    else{
//        dojo.byId("divImpressum").style.display="block";
//        dojo.byId("divHelp").style.display="none";
//        dojo.byId("divRegister").style.display="none";
//        } 
//        
//}

//function showRegistrierung(){
//    dojo.byId("divContent2").style.display="block";
//    closeClass("content"); 
//    dojo.byId("divRegister").style.display="block";       
//    closeFenster();
//}


