var geocoder;
var map;

function initialize() {
	if($('map_canvas') && $('map_canvas').title){
		geocoder = new google.maps.Geocoder();		
		
		var address = $('map_canvas').title;	
			
		var nomd = $('map_canvas').getAttribute('name');
		
		if(address.split(',').length>1){
			var latlng = new google.maps.LatLng(parseFloat(address.split(',')[0]), parseFloat(address.split(',')[1]));
			var myOptions = {
			  zoom: parseFloat(address.split(',')[2]),
			  center: latlng,
			  mapTypeControl: false,
			  mapTypeId: google.maps.MapTypeId.ROADMAP
			};
			
			map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
				
			
			 var image = new google.maps.MarkerImage('images/position_Programmes.png',
			  new google.maps.Size(85, 40),
			  new google.maps.Point(0,0),
			  new google.maps.Point(20, 20));
	
			map.setCenter(latlng );
			var marker = new google.maps.Marker({
				map: map,
				title:nomd,
				icon: image,
				position: latlng 
			});	
			if(nomd){
				//addressFormer = preg_replace('([0-9]{5})' , '<br />$1' ,address);
				var contentString = '<p class="adresse" style="height:75px;"><strong style="display:block;margin:0 0 3px 0;">'+nomd+'</strong><br /><a style="display:block;margin:3px 0 0 0;" href="http://maps.google.com/maps?daddr='+latlng+'" target="_blank">Itinéraire</a></p>';
				
				var infowindow = new google.maps.InfoWindow({
					content: contentString
				});	
				
				google.maps.event.addListener(marker, 'click', function() {
				  infowindow.open(map,marker);
				});	
			}
		}else{
			geocoder.geocode( { 'address': address}, function(results, status) {
			  if (status == google.maps.GeocoderStatus.OK) {
				  
	
				var latlng = new google.maps.LatLng(results[0].geometry.location);
				var myOptions = {
				  zoom: 15,
				  center: latlng,
				  mapTypeControl: false,
				  mapTypeId: google.maps.MapTypeId.ROADMAP
				};
				
				map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
				var url = document.location.href.split('/contact');					
				 var image = new google.maps.MarkerImage(url[0]+'/images/position_Programmes.png',
				  new google.maps.Size(85, 40),
				  new google.maps.Point(0,0),
				  new google.maps.Point(20, 20));
	
				map.setCenter(results[0].geometry.location);
				var marker = new google.maps.Marker({
					map: map,
					title:nomd,
					icon: image,
					position: results[0].geometry.location
				});	
				if(nomd){
					addressFormer = preg_replace('([0-9]{5})' , '<br />$1' ,address);
					var contentString = '<p class="adresse" style="height:75px;line-height:15px;"><strong style="display:block;margin:0 0 3px 0;">'+nomd+'</strong>'+addressFormer+'<br /><a style="display:block;margin:3px 0 0 0;" href="http://maps.google.com/maps?saddr='+address+'" target="_blank">Itinéraire</a></p>';
					
					var infowindow = new google.maps.InfoWindow({
						content: contentString
					});	
					
					google.maps.event.addListener(marker, 'click', function() {
					  infowindow.open(map,marker);
					});	
				}
			  } else {
				alert("La Géolocalisation n'a pas fonctionné : " + status);
			  }
			});
		}
		
	}
}

function preg_replace(string_pattern, string_pattern_replace, my_string)  {
	var new_string = String (my_string);
	var reg_exp= RegExp(string_pattern, "gi");
	return new_string.replace (reg_exp, string_pattern_replace);
}
	

document.observe("dom:loaded", initialize);
