var map = null;
var geocoder = null;
var txtAmpliar = null;

function putAddress(address, addressAux) {
	if (geocoder) {
		var adreNeta=address.split('<br />').join(' ');

		geocoder.getLatLng(
       		adreNeta,
        	function(point) {
        		if (point) {
            		var marker = new GMarker(point);
			  		GEvent.addListener(marker, "click", function() {
				  		html= addressAux + '<br /><br /><a href="#" onclick="ampliar(\'' + address + '\', \'' + escape(addressAux) + '\'); return false;">' + txtAmpliar + '</a>';
		            	map.setCenter(point);
				    	marker.openInfoWindowHtml(html);
					});
			  		adreces[address]=marker;
			  		punt[address]=point;
	            	map.addOverlay(marker);
          		}
	        }
      	);
    }
}

function ampliar(address, addressAux) {
	var adreNeta=address.split('<br />').join(' ');

	$(".contingutCap").before('<div class="fonsGM">&nbsp;</div><div class="contGM"><a href="#" onclick="cerrar(); return false">Cerrar [X]</a><br /><div id="map_canvas_gran">'+adreNeta+'</div></div>');
	$(window).bind("resize scroll", ampliarResize);
	ampliarResize();
	
	map2 = new GMap2(document.getElementById("map_canvas_gran"));
	map2.addControl(new GLargeMapControl());
	map2.addControl(new GMapTypeControl()); 
	map2.setCenter(punt[address], map.getZoom()+1);

	geocoder = new GClientGeocoder();
	putAddress2(address, addressAux);
}

function putAddress2(address, addressAux) {
	if (geocoder) {
  		var adreNeta=address.split('<br />').join(' ');

      	geocoder.getLatLng(
        	adreNeta,
        	function(point) {
          		if (point) {
					var marker = new GMarker(point);
		  			GEvent.addListener(marker, "click", function() {
		  				html= unescape(addressAux) + '<br /><br />';
            			map2.setCenter(point);
		    			marker.openInfoWindowHtml(html);
					});
		  			adreces[address]=marker;
		  			punt[address]=point;
            		map2.addOverlay(marker);
				}
			}
		);
    }
}

function goAddress(address) {
	map.setCenter(punt[address], 15);
}

function ampliarResize() {
	var iebody=(document.compatMode && document.compatMode != "BackCompat")? document.documentElement : document.body;
	var dsocleft=document.all? iebody.scrollLeft : pageXOffset;
	var dsoctop=document.all? iebody.scrollTop : pageYOffset;

	$(".fonsGM").css("width", $("body").width());
	$(".fonsGM").css("height", $(document).height());

	$(".contGM").css("left", dsocleft + (Math.floor($(window).width()-600)/2) );
	$(".contGM").css("top", dsoctop + (Math.floor($(window).height()-420)/2) );	
}

function cerrar() {
	$(window).unbind("resize scroll", ampliarResize);
	$(".fonsGM").remove();
	$(".contGM").remove();
}

