//<![CDATA[
	var centre;
    function load(_lat,_lon,_zoom,_small)
	{

		if (GBrowserIsCompatible())
		{
			
			map = new GMap2(document.getElementById("map"));
			map.addControl(new GMapTypeControl());
			map.setMapType(G_NORMAL_MAP);
			GEvent.addListener(map, "moveend", function() {var center = map.getCenter();});
			if(_lat || _lon)
				map.setCenter(new GLatLng(_lat,_lon),_zoom);	//,G_SATELLITE_MAP
				
			geocoder = new GClientGeocoder();
			
			if(!_small)
			map.addControl(new GLargeMapControl3D());
			else
			map.addControl(new GSmallZoomControl3D());
			
			map.enableContinuousZoom();
			
		  


			GEvent.addListener(map, "zoomend", function(oldzoomlevel,zoomlevel) 
												{	
													alentour = document.getElementById("alentour");
													if(alentour)
														document.getElementById("alentour").value = zoomlevel;
												});
			
      }
    }
	function createMarker(point,position,html,_marker_user,_mode) 
	{
		var _icon_draggable;
		
		var icon = new GIcon();
		if(!_marker_user)
		{
			_icon_draggable = false;
			icon.image = imageDirectory+"markers/"+_mode+"/marker_"+position+".png";

		}
		else
		{
			_icon_draggable = true;
			icon.image = imageDirectory+"markers/marker_user.png";
		}
		
		icon.iconSize = new GSize(23,25);
		icon.iconAnchor = new GPoint(11.5, 27);
		icon.infoWindowAnchor = new GPoint(13.5, 10);
		var marker = new GMarker(point,{draggable: _icon_draggable,icon:icon});
		markers[position]=marker;
		if(html)
		{
			GEvent.addListener(marker, "click", function() {marker.openInfoWindowTabsHtml(html);});
		}

		GEvent.addListener(marker,"dragend", function(latlng) {

			var latitude = marker.getPoint().lat();
			var longitude = marker.getPoint().lng();

			
			if('function' == typeof(markerDeplace))
			{
				markerDeplace(latitude,longitude);
			}
		});
		return marker;
	}
	
	function geocode(address,zoom,position) {
		  geocoder.getLatLng(
		    address,
		    function(point) {
		      if (!point) {
		        alert(address + " not found");
		      } else {
		        map.setCenter(point,zoom);
		        var marker = createMarker(point, address);
		        map.addOverlay(marker);
		        //marker.openInfoWindowHtml(address);
		      }
		    }
		  );
		  
		  return false;
	}



	

	var markers = [];

	function RefreshData(_XMLMap,condition)
	{
		// Suppression des marqueurs
       // map.clearOverlays();
		
		
		var search_items = document.getElementById("search_items");
	   while (search_items.firstChild)
		{
			search_items.removeChild(search_items.firstChild);
		}
		
		
				
		if(condition)
			_XMLMap = _XMLMap + "?" + condition;

        GDownloadUrl(_XMLMap, function(data) {
			
          xml = GXml.parse(data);
		  if (xml.documentElement)
		  {
	          var lat=xml.documentElement.getElementsByTagName("lat")[0].firstChild.nodeValue;
	          var lon=xml.documentElement.getElementsByTagName("lon")[0].firstChild.nodeValue;
	          var distance=xml.documentElement.getElementsByTagName("distance")[0].firstChild.nodeValue;
	          var zoom=xml.documentElement.getElementsByTagName("zoom")[0].firstChild.nodeValue;
	          var order=xml.documentElement.getElementsByTagName("order")[0].firstChild.nodeValue;
	          if (xml.documentElement.getElementsByTagName("what")[0]) {
	          var what=xml.documentElement.getElementsByTagName("what")[0].firstChild.nodeValue;
	          }
	          
	          if (xml.documentElement.getElementsByTagName("filter")[0]) {
	          var filter=xml.documentElement.getElementsByTagName("filter")[0].firstChild.nodeValue;
	          }

	          var point = new GLatLng(parseFloat(lat),parseFloat(lon));
	       //   zoom=distances[distance];

	          lastlat=lat;
	          lastlng=lon;
	          firstlat=lat;
	          firstlng=lon;
	          lastdistance=distance;
	          lastorder=order;
	          lastwhat=what;
	          lastzoom=zoom;

	          lastfilter=filter;
			
	          map.setCenter(point,zoom);



	          var markers = xml.documentElement.getElementsByTagName("objet");


			  if(markers != null)
			  {
					displayItem (markers)
				}

			}
        });
	}
	

	function displayItem (markers) {
				var search_items = document.getElementById("search_items");

				
				
               // Create PlaceMark Marker
               for (var i = 0; i < markers.length; i++)
			   {

	               // Objet
	               var id= markers[i].getAttribute("id");
	               if(markers[i].getElementsByTagName("title")[0].firstChild.nodeValue != null) var title= markers[i].getElementsByTagName("title")[0].firstChild.nodeValue;
	               var subtitle= markers[i].getElementsByTagName("subtitle")[0].firstChild.nodeValue;
				   var genre = markers[i].getElementsByTagName("genre")[0].firstChild.nodeValue;
	               var link= markers[i].getElementsByTagName("link")[0].firstChild.nodeValue;
	               var distance= markers[i].getElementsByTagName("distance")[0].firstChild.nodeValue;
	               var price= markers[i].getElementsByTagName("price")[0].firstChild.nodeValue;
	               var currency= markers[i].getElementsByTagName("price")[0].getAttribute('currency');

	               var evaluation_rating= markers[i].getElementsByTagName("evaluation_rating")[0].firstChild.nodeValue;
	               var evaluation_number= markers[i].getElementsByTagName("evaluation_number")[0].firstChild.nodeValue;

	               // Adresse
	               var adresse=markers[i].getElementsByTagName("adresse")[0];
	               var adresse_id=adresse.getAttribute("id");
	               if (adresse.getElementsByTagName("code_postal")[0].firstChild != null) var adresse_code_postal=adresse.getElementsByTagName("code_postal")[0].firstChild.nodeValue;
	               if (adresse.getElementsByTagName("ville")[0]) var adresse_ville=adresse.getElementsByTagName("ville")[0].firstChild.nodeValue;
	               if (adresse.getElementsByTagName("admin_area")[0]) var adresse_admin_area=adresse.getElementsByTagName("admin_area")[0].firstChild.nodeValue;
	               if (adresse.getElementsByTagName("country_code")[0]) var adresse_code_pays=adresse.getElementsByTagName("code_pays")[0].firstChild.nodeValue;
	               if (adresse.getElementsByTagName("title")[0]) var adresse_title=adresse.getElementsByTagName("title")[0].firstChild.nodeValue;
	               if (adresse.getElementsByTagName("lat")[0]) var adresse_lat=adresse.getElementsByTagName("lat")[0].firstChild.nodeValue;
	               if (adresse.getElementsByTagName("lon")[0]) var adresse_lon=adresse.getElementsByTagName("lon")[0].firstChild.nodeValue;

				   
					// Placement du marqueur :
					var point = new GLatLng(adresse_lat,adresse_lon);
					var infoTabs = [
					  new GInfoWindowTab("Description", "<span class='desc'>Test</span>"),
					  new GInfoWindowTab("Adresse", "<span class='desc'>Test2</span>"),
					  new GInfoWindowTab("Contact", "<span class='desc'>Test3</span>")
					];
					var marker = createMarker(point,i+1,infoTabs);
					map.addOverlay(marker);
					
					
	               // Propriétaire
	               var user=markers[i].getElementsByTagName("user")[0];
	               var user_evaluation_rating= user.getElementsByTagName("evaluation_rating")[0].firstChild.nodeValue;
	               var user_evaluation_number= user.getElementsByTagName("evaluation_number")[0].firstChild.nodeValue;
	               var user_alias= user.getElementsByTagName("alias")[0].firstChild.nodeValue;
	               var user_link= user.getElementsByTagName("link")[0].firstChild.nodeValue;

	              // Images

	               var img=markers[i].getElementsByTagName("image")[0];
				   if(img)
				   {
						ImgMini = img.getElementsByTagName("mini")[0];
			            var ImgMiniSrc= ImgMini.getAttribute('url');
			            var ImgMiniWidth= ImgMini.getAttribute('width');
			            var ImgMiniHeight= ImgMini.getAttribute('height');
					}
					
					
	               /*var palm=markers[i].getElementsByTagName("palm")[0];
	               var palmSrc= palm.getAttribute('url');*/

	               var tr_item=document.createElement('tr');


	               var td_checkbox=document.createElement('td');
	               td_checkbox.innerHTML='<input type="checkbox" name="item_array['+i+']" value="'+id+'" />';


	               if ((i%2)==1) tr_item.className="LIG_PAIR";

	               var td_marker=document.createElement('td');
	               td_marker.innerHTML='<a href="#map" class="marker" id="'+(i+1)+'"><img src="'+imageDirectory+'marker/marker_'+(i+1)+'.png" width="25" height="29" alt="" title=""/></a>';

					var td_genre=document.createElement('td');
					td_genre.innerHTML=genre;

				   
	               var td_image=document.createElement('td');
				   var imgHtml='<a href="'+link+'"><img src="'+ImgMiniSrc+'" width="'+ImgMiniWidth+'" height="'+ImgMiniHeight+'" /></a>';
	               td_image.innerHTML=imgHtml;

	               var td_title=document.createElement('td');
	               td_title.innerHTML='<ul><li><b><a href="'+link+'" class="link">'+title+'</a></b></li><li>'+subtitle+'</li><li>'+formatRating(evaluation_rating)+' ('+formatEvaluationNumber(evaluation_number)+')</li></ul>';

	               var td_user=document.createElement('td');
	               td_user.innerHTML='<ul><b><a href="'+user_link+'" class="link">'+user_alias+'</a></b><li>'+formatRating(user_evaluation_rating)+'</li><li>('+formatEvaluationNumber(user_evaluation_number)+')</li></ul>';

	               var td_price=document.createElement('td');
	               td_price.innerHTML=formatPrice(currencyPosition,price,currency);

	               var td_address=document.createElement('td');
	               td_address.innerHTML='<ul>'+formatLocation(adresse_ville,adresse_code_postal,adresse_admin_area,adresse_code_pays,adresse_title)+'</ul>';

	               var td_distance=document.createElement('td');
	               td_distance.innerHTML=formatDistance(distance,distanceUnitValue,distanceUnit);

	               tr_item.appendChild(td_checkbox);
	               tr_item.appendChild(td_marker);
	               tr_item.appendChild(td_genre);
	               tr_item.appendChild(td_image);
	               tr_item.appendChild(td_title);
	               tr_item.appendChild(td_user);
	               tr_item.appendChild(td_price);
	               tr_item.appendChild(td_address);
	               tr_item.appendChild(td_distance);

	               search_items.appendChild(tr_item);

				   
				  }
               

               

             }
			 
			 
	
	function map_enlarge(_height)
	{
		document.getElementById("map").style.height=_height+"px";
		document.getElementById("map_enlarge").style.display="none";
		document.getElementById("map_reduce").style.display="block";
		centre = map.getCenter();
		map.checkResize();
		refreshmove();
	}
        
	function map_reduce(_height) {
		document.getElementById("map").style.height=_height+"px";
		document.getElementById("map_enlarge").style.display="block";
		document.getElementById("map_reduce").style.display="none";
		map.checkResize();

		refreshmove()
	}
	
	function refreshmove()
	{
		map.panTo(centre);
	}

			 
    //]]>