	//<![CDATA[
    var map;
    var geocoder;

    function load() {
		var variablen = new Array();
		
		// Holt sich die Daten aus den Querystring
		if(window.location.search != "") {
	     	QUERYSTRING = window.location.search
	     	QUERYSTRING = QUERYSTRING.replace(/\?/,"");
	    	
	     	//trenne den querystring nach jedem & in teilstringe auf
	     	var teilstrings = QUERYSTRING.split("&");
	    
	     	//durchlaufe jeden dieser teilstrings
	     	for (i=0;i<teilstrings.length;i++) {
				//trenne den teilsring in weiteren teilstring auf,
	        	//trenne also variablennamen vom inhalt
	        	vararr = teilstrings[i].split("=");
				variablen[vararr[0]] = vararr[1];
		 	}
		}
		//alert(variablen["ort"] + ' ' + variablen["plz"] + variablen["fachgebiet"]);
		arztname = variablen["arztname"];
		if (GBrowserIsCompatible()) {
        	geocoder = new GClientGeocoder();
        	map = new GMap2(document.getElementById('map'));
        	map.addControl(new GSmallMapControl());
			map.addControl(new GMapTypeControl());
        	//map.setCenter(new GLatLng(49.017333, 12.30000), 10);
			map.setCenter(new GLatLng(49.010802, 12.055461), 10);
			searchLocations(arztname);
		}
    }

   function searchLocations(arztname) {
   	
	 var address = 'Regensburg';
     geocoder.getLatLng(address, function(latlng) {
       if (!latlng) {
         alert(plz + ' ' + ort + ' nicht gefunden.');
       } else {
	   		searchLocationsNear(latlng, arztname);
       }
     });
   }

   function searchLocationsNear(center, arztname) {
		
     var searchUrl = 'typo3conf/ext/aerztesuche/pi1/genxml.php?lat=' + center.lat() + '&lng=' + center.lng() + '&arztname=' + arztname;
	 //alert(searchUrl);
     GDownloadUrl(searchUrl, function(data) {
       var xml = GXml.parse(data);
	   
       var markers = xml.documentElement.getElementsByTagName('marker');
	   //alert(markers);
       map.clearOverlays();
		
       var sidebar = document.getElementById('sidebar');
       sidebar.innerHTML = '';
	   //alert(markers.length);
       if (markers.length == 0) {
         sidebar.innerHTML = 'Keine Suchergebnisse gefunden!';
         map.setCenter(new GLatLng(49.017333, 12.30000), 10);
         return;
       }

       var bounds = new GLatLngBounds();
	   //alert(bounds);
	   var baseIcon = new GIcon();
		//baseIcon.shadow = "http://www.google.com/mapfiles/shadow50.png";
		baseIcon.shadow = "typo3conf/ext/aerztesuche/stecknadel.gif";
		baseIcon.iconSize = new GSize(21, 28);
		baseIcon.shadowSize = new GSize(21, 28);
		baseIcon.iconAnchor = new GPoint(9, 34);
		baseIcon.infoWindowAnchor = new GPoint(9, 2);
		baseIcon.infoShadowAnchor = new GPoint(18, 25);
	   
	   
       for (var i = 0; i < markers.length; i++) {
	   	 var titel = markers[i].getAttribute('titel');
         var nachname = markers[i].getAttribute('nachname');
		 var vorname = markers[i].getAttribute('vorname');
         var address = markers[i].getAttribute('address');
		 var bild = markers[i].getAttribute('bild');
		 var strasse = markers[i].getAttribute('strasse');
		 var ort = markers[i].getAttribute('ort');
		 var plz = markers[i].getAttribute('plz');
		 var email = markers[i].getAttribute('email');
		 var telefon = markers[i].getAttribute('telefon');
		 var fax = markers[i].getAttribute('fax');
		 var homepage = markers[i].getAttribute('homepage');
		 var fachgebiet = markers[i].getAttribute('fachgebiet');
		 var zulassungsart = markers[i].getAttribute('zulassungsart');
		 var zusatzbezeichnung = markers[i].getAttribute('zusatzbezeichnung');
		 
		 var newIcon = new GIcon(baseIcon); 
		 newIcon.image = "images/"+bild;  
		 //newIcon.image = bild;
		 var markerBildOptions = { icon:newIcon };  
		 
         var distance = parseFloat(markers[i].getAttribute('distance'));
         var point = new GLatLng(parseFloat(markers[i].getAttribute('lat')),parseFloat(markers[i].getAttribute('lng')));
         //alert(parseFloat(markers[i].getAttribute('lng')));
         var marker = createMarker(point, titel, nachname, vorname, markerBildOptions, strasse, plz, ort, email, telefon, fax, homepage, fachgebiet, zulassungsart, zusatzbezeichnung);
         map.addOverlay(marker);
         var sidebarEntry = createSidebarEntry(marker, titel, nachname, vorname, distance, strasse, ort, plz, email, telefon, fax, homepage);
         sidebar.appendChild(sidebarEntry);
         bounds.extend(point);
		 //alert(parseFloat(markers[i].getAttribute('distance')));
       }
       map.setCenter(bounds.getCenter(), map.getBoundsZoomLevel(bounds));
     });
   }

    function createMarker(point, titel, nachname, vorname, markerBildOptions, strasse, plz, ort, email, telefon, fax, homepage, fachgebiet, zulassungsart, zusatzbezeichnung) {
	
      var marker = new GMarker(point, markerBildOptions);
	  	 	  
      //var html = '<b>' + name + '</b> <br/>' + address;
	  var html = '<table border="0" cellspacing="0" cellpadding="0"><tr><td valign="top" colspan="3"><b>' + titel + '<br />' + vorname + ' ' + nachname + '</b>';
	  html = html + '<br/>' + strasse + '<br />';
	  html = html + plz + ' ' + ort + '<br /><br />';
	  html = html + fachgebiet + '<br />';
	  html = html + zusatzbezeichnung + '<br />';
	  html = html + '<br /></td></tr>';
	  if (telefon != ''){
	  	html = html + '<tr><td>' + 'Telefon: </td><td>&nbsp;&nbsp;&nbsp;</td><td>' + telefon + '</td></tr>';
	  }
	  if (fax != '' && fax == 'null'){
	  	html = html + '<tr><td>' + 'Telefax: </td><td>&nbsp;&nbsp;&nbsp;</td><td>' + fax + '</td></tr>';
	  }
	  if (email != ''){
	  	html = html + '<tr><td>' + 'eMail: </td><td>&nbsp;&nbsp;&nbsp;</td><td><a href="mailto: ' + email + '">' + email + '</a></td></tr>';
	  }
	  if (homepage != ''){
	  	html = html + '<tr><td>' + 'Homepage: </td><td>&nbsp;&nbsp;&nbsp;</td><td><a href="http://' + homepage + '" target="_blank">' + homepage + '</a></td></tr>';
	  }
	  html = html + '</table>';
	  
	  GEvent.addListener(marker, 'click', function() {
        marker.openInfoWindowHtml(html);
      });
      return marker;
    }

    function createSidebarEntry(marker, titel, nachname, vorname, distance, strasse, ort, plz, email, telefon, fax, homepage) {
      var div = document.createElement('div');
      var html; 
	  var titelinfo = '';
	  if (titel != ''){
	  	titelinfo = titel + '<br />';
	  }
	  html = '<b>' + titelinfo +  vorname + ' ' + nachname + '</b><br />' + strasse + '<br />' + plz + ' ' + ort + '<br/><br />';
	  if (telefon != ''){
	  	html = html + 'Telefon:<br />' + telefon + '<br /><br />';
	  }
	  if (fax != '' && fax == 'null'){
	  	html = html + 'Telefax:<br />' + fax + '<br /><br />';
	  }
	  if (email != ''){
	  	html = html + 'eMail:<br />' + email + '<br /><br />';
	  }
	  if (homepage != ''){
	  	html = html + 'Homepage:<br />' + homepage + '<br /><br />';
	  }
      div.innerHTML = html;
      div.style.cursor = 'pointer';
      div.style.marginBottom = '5px'; 
      GEvent.addDomListener(div, 'click', function() {
        GEvent.trigger(marker, 'click');
      });
      GEvent.addDomListener(div, 'mouseover', function() {
        div.style.backgroundColor = '#A4DDF7';
      });
      GEvent.addDomListener(div, 'mouseout', function() {
        div.style.backgroundColor = '';
      });
      return div;
    }
    //]]>
