var zoom_images = new Array( );

var zoom_bg = null;

var zoom_layer = null;

var zoom_quit = null;

var zoom_prev = null;

var zoom_next = null;

var isExplorer = navigator.appName == "Microsoft Internet Explorer" && navigator.userAgent.indexOf("Opera") < 0;



function zoom_load( )

{

	for(var i=0; i<document.links.length; i++) if(document.links[i].className == "zoom" && document.links[i].getAttribute("zoom_loaded") != "yes")

	{

		document.links[i].onclick = zoom_click;

		var zoom_image = document.createElement("IMG");

		zoom_image.src = document.links[i].href;

		zoom_image.width = document.links[i].title.match(/\((\d+)x\d+\)$/)[1]; 

		zoom_image.height = document.links[i].title.match(/\(\d+x(\d+)\)$/)[1]; 

		zoom_image.title = document.links[i].firstChild.alt;

		zoom_images.push(zoom_image);

		document.links[i].setAttribute("zoom_loaded", "yes");

	}

	if(!zoom_layer)

	{

		zoom_layer = document.createElement("DIV");

		zoom_bg = document.createElement("DIV");

		zoom_quit = document.createElement("DIV");

		zoom_quit.innerHTML = "<a href=\"#\" onclick=\"return zoom_close(0)\" title=\"Chiudi\">X</a>"; 

		zoom_quit.id = "zoom_quit";

		zoom_prev = document.createElement("DIV");

		zoom_prev.innerHTML = "<a href=\"#\" onclick=\"return zoom_toprev( )\" title=\"Precedente\">&laquo; Prec.</a>";

		zoom_prev.id = "zoom_prev";

		zoom_next = document.createElement("DIV");

		zoom_next.innerHTML = "<a href=\"#\" onclick=\"return zoom_tonext( )\" title=\"Successivo\">Succ. &raquo;</a>";

		zoom_next.id = "zoom_next";

		zoom_layer.id = "zoom_layer";

		zoom_bg.id = "zoom_bg";

		zoom_layer.style.visibility = "hidden";

		zoom_bg.style.visibility = "hidden";

		zoom_layer.style.display = "none";

		zoom_bg.style.display = "none";

    if(isExplorer)

      zoom_bg.style.height = document.documentElement.scrollHeight;

    else

		{

			zoom_layer.style.position = "fixed";

			zoom_bg.style.position = "fixed";

			zoom_quit.style.position = "fixed";

			zoom_prev.style.position = "fixed";

			zoom_next.style.position = "fixed";

		}

		for(var i=0; i<zoom_images.length; i++)

			zoom_layer.appendChild(zoom_images[i]);

		document.body.appendChild(zoom_bg);

		document.body.appendChild(zoom_layer);

		document.body.appendChild(zoom_quit);

		document.body.appendChild(zoom_prev);

		document.body.appendChild(zoom_next);

		zoom_images = zoom_layer.getElementsByTagName("IMG");

	}



	var googlemap = document.getElementById("googlemap");

	if(googlemap)

	{

		var gps_lat = googlemap.title.match(/: ([\d\.]+), [\d\.]+$/)[1];

		var gps_lon = googlemap.title.match(/: [\d\.]+, ([\d\.]+)$/)[1];

		if(GBrowserIsCompatible())

		{

     	var map = new GMap2(googlemap);

      map.addControl(new GSmallMapControl());

			map.addControl(new GMapTypeControl());

    	map.setCenter(new GLatLng(gps_lat, gps_lon), 15);

			map.setMapType(G_SATELLITE_TYPE);

      var marker = new GMarker(new GLatLng(gps_lat, gps_lon));

      map.addOverlay(marker);

      GEvent.addListener(marker, "click", function() {

        marker.openInfoWindowHtml(WINDOW_HTML);

      });

      marker.openInfoWindowHtml(WINDOW_HTML);

		}	

	}

	if(typeof self.innerWidth != "undefined")

	{

		document.cookie = "width="+self.innerWidth;

		document.cookie = "height="+self.innerHeight;

	}

	else if(typeof document.documentElement.clientWidth != "undefined")

	{

		document.cookie = "width="+document.documentElement.clientWidth;

		document.cookie = "height="+document.documentElement.clientHeight;

	}

}



function zoom_click( )

{

	for(var i=0; i<zoom_images.length; i++) if(zoom_images[i].src == this.href)

	{

		zoom_display(i);

		i=zoom_images.length;

	}

	return false;

}



function zoom_close( )

{

	zoom_quit.style.display = "none"; 

	zoom_prev.style.display = "none"; 

	zoom_next.style.display = "none"; 

	zoom_layer.style.display = "none"; 

	zoom_bg.style.display = "none"; 

	zoom_quit.style.visibility = "hidden"; 

	zoom_prev.style.visibility = "hidden"; 

	zoom_next.style.visibility = "hidden"; 

	zoom_layer.style.visibility = "hidden"; 

	zoom_bg.style.visibility = "hidden";

	return false;

}



function zoom_display(image_id)

{

	zoom_bg.style.visibility = "visible";	

	zoom_bg.style.display = "block";

	zoom_layer.style.display = "block";

	zoom_quit.style.display = "block";

	zoom_prev.style.display = "block";

	zoom_next.style.display = "block";

	zoom_layer.setAttribute("image_id", image_id);

	for(var i=0; i<zoom_images.length; i++) if(i != image_id)

	{

		zoom_images[i].style.visibility = "hidden";

		zoom_images[i].style.display = "none";

	}

	for(var i=0; i<zoom_images.length; i++) if(i == image_id)

	{

		zoom_images[i].style.visibility = "visible";

		if(isExplorer)

		{

			zoom_layer.style.top = Math.max(Math.floor(document.documentElement.scrollTop + (document.documentElement.offsetHeight - zoom_images[i].height) / 2), 0) + "px";

			zoom_layer.style.left = Math.max(Math.floor(document.documentElement.scrollLeft + (document.documentElement.offsetWidth - zoom_images[i].width) / 2), 0) + "px";

		}

		else

		{

			zoom_layer.style.top = Math.max(Math.floor((window.innerHeight - zoom_images[i].height) / 2), 0) + "px";

			zoom_layer.style.left = Math.max(Math.floor((window.innerWidth - zoom_images[i].width) / 2), 0) + "px";

		}

		zoom_images[i].style.display = "block";

		zoom_quit.style.top = (zoom_layer.offsetTop - 12) + "px";  

		zoom_quit.style.left = (zoom_layer.offsetLeft + zoom_layer.offsetWidth - 20 - zoom_quit.offsetWidth) + "px";  

		zoom_prev.style.top = (zoom_layer.offsetTop + zoom_layer.offsetHeight - 12) + "px";  

		zoom_prev.style.left = (zoom_layer.offsetLeft + 20) + "px";  

		zoom_next.style.top = (zoom_layer.offsetTop + zoom_layer.offsetHeight - 12) + "px";  

		zoom_next.style.left = (zoom_layer.offsetLeft + zoom_layer.offsetWidth - 20 - zoom_next.offsetWidth) + "px";

	}

	zoom_layer.style.visibility = "visible";

	zoom_quit.style.visibility = "visible";	

	zoom_prev.style.visibility = "visible";	

	zoom_next.style.visibility = "visible";	

}



function zoom_tonext( )

{

	image_id = parseInt(zoom_layer.getAttribute("image_id"));

	previous_id = image_id; 

	image_id++;

	if(image_id == zoom_images.length)

		image_id = 0;

	zoom_layer.setAttribute("image_id", image_id); 

	for(var i=0; i<zoom_images.length; i++) if(i != image_id)

	{

		zoom_images[i].style.visibility = "hidden";

		zoom_images[i].style.display = "none";

	}

	for(var i=0; i<zoom_images.length; i++) if(i == image_id)

	{

		zoom_images[i].style.display = "block";

		if(isExplorer)

		{

			zoom_layer.style.top = Math.max(Math.floor(document.documentElement.scrollTop + (document.documentElement.offsetHeight - zoom_images[i].height) / 2), 0) + "px";

			zoom_layer.style.left = Math.max(Math.floor(document.documentElement.scrollLeft + (document.documentElement.offsetWidth - zoom_images[i].width) / 2), 0) + "px";

		}

		else

		{

			zoom_layer.style.top = Math.max(Math.floor((window.innerHeight - zoom_images[i].height) / 2), 0) + "px";

			zoom_layer.style.left = Math.max(Math.floor((window.innerWidth - zoom_images[i].width) / 2), 0) + "px";

		}

		zoom_images[i].style.visibility = "visible";

		zoom_quit.style.top = (zoom_layer.offsetTop - 12) + "px";  

		zoom_quit.style.left = (zoom_layer.offsetLeft + zoom_layer.offsetWidth - 20 - zoom_quit.offsetWidth) + "px";  

		zoom_prev.style.top = (zoom_layer.offsetTop + zoom_layer.offsetHeight - 12) + "px";  

		zoom_prev.style.left = (zoom_layer.offsetLeft + 20) + "px";  

		zoom_next.style.top = (zoom_layer.offsetTop + zoom_layer.offsetHeight - 12) + "px";  

		zoom_next.style.left = (zoom_layer.offsetLeft + zoom_layer.offsetWidth - 20 - zoom_next.offsetWidth) + "px";

	}

	zoom_layer.style.display = "block";

	return false;

}



function zoom_toprev( )

{

	image_id = parseInt(zoom_layer.getAttribute("image_id"));

	previous_id = image_id; 

	image_id--;

	if(image_id == 0)

		image_id = zoom_images.length - 1;

	zoom_layer.setAttribute("image_id", image_id); 

	for(var i=0; i<zoom_images.length; i++) if(i != image_id)

	{

		zoom_images[i].style.visibility = "hidden";

		zoom_images[i].style.display = "none";

	}

	for(var i=0; i<zoom_images.length; i++) if(i == image_id)

	{

		zoom_images[i].style.display = "block";

		if(isExplorer)

		{

			zoom_layer.style.top = Math.max(Math.floor(document.documentElement.scrollTop + (document.documentElement.offsetHeight - zoom_images[i].height) / 2), 0) + "px";

			zoom_layer.style.left = Math.max(Math.floor(document.documentElement.scrollLeft + (document.documentElement.offsetWidth - zoom_images[i].width) / 2), 0) + "px";

		}

		else

		{

			zoom_layer.style.top = Math.max(Math.floor((window.innerHeight - zoom_images[i].height) / 2), 0) + "px";

			zoom_layer.style.left = Math.max(Math.floor((window.innerWidth - zoom_images[i].width) / 2), 0) + "px";

		}

		zoom_images[i].style.visibility = "visible";

		zoom_quit.style.top = (zoom_layer.offsetTop - 12) + "px";  

		zoom_quit.style.left = (zoom_layer.offsetLeft + zoom_layer.offsetWidth - 20 - zoom_quit.offsetWidth) + "px";  

		zoom_prev.style.top = (zoom_layer.offsetTop + zoom_layer.offsetHeight - 12) + "px";  

		zoom_prev.style.left = (zoom_layer.offsetLeft + 20) + "px";  

		zoom_next.style.top = (zoom_layer.offsetTop + zoom_layer.offsetHeight - 12) + "px";  

		zoom_next.style.left = (zoom_layer.offsetLeft + zoom_layer.offsetWidth - 20 - zoom_next.offsetWidth) + "px";

	}

	zoom_layer.style.display = "block";

	return false;

}


/*
if(typeof self.addEventListener != "undefined")

	self.addEventListener("load", zoom_load, false);

else if(typeof self.attachEvent != "undefined")

	self.attachEvent("onload", zoom_load);
*/


//zoom_load( );


