function map(url){
	popup(url, 'map', 490, 360, 0);
}


function popup(url, nome, w, h, scroll){
  	LeftPosition = (screen.width) ? (screen.width-w)/2 : 0;
  	TopPosition = (screen.height) ? (screen.height-h)/2 : 0;
  	settings = 'height='+h+',width='+w+',top='+TopPosition+',left='+LeftPosition+',scrollbars='+ scroll +',status=0,resize=0';
  	finestra = window.open(url,nome,settings);
}



var cur_lyr;	// holds id of currently visible layer


function showZoom() {
  if (cur_lyr) hideLayer(cur_lyr);
  showLayer();
}

function showLayer(id) {
  var lyr = getElemRefs(id);
  if (lyr && lyr.css) lyr.css.visibility = "visible";
}

function swapLayers(id) {
  if (cur_lyr) hideLayer(cur_lyr);
  showLayer(id);
  cur_lyr = id;
}

function hideLayer(id) {
  var lyr = getElemRefs(id);
  if (lyr && lyr.css) lyr.css.visibility = "hidden";
}

function getElemRefs(id) {
	var el = (document.getElementById)? document.getElementById(id): (document.all)? document.all[id]: (document.layers)? getLyrRef(id,document): null;
	if (el) el.css = (el.style)? el.style: el;
	return el;
}

function loadImg(strTarget, srtLyr){
	document.images["preview"].src = strTarget;
	document.anchors[0].href = "javascript:showLayer('" + srtLyr + "');";
	cur_lyr = srtLyr;
}


function numberCheck(stringa) {
	var valid = "0123456789";
	var temp;
	for (var i=0; i<stringa.length; i++) {
						temp = "" + stringa.substring(i, i+1);
						if (valid.indexOf(temp) == "-1"){
							return 0;
						}
						else{
							return 1;
						}
	}
}

function stringCheck(stringa) {
	var valid = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
	var temp;
	for (var i=0; i<stringa.length; i++) {
						temp = "" + stringa.substring(i, i+1);
						if (valid.indexOf(temp) == "-1"){
							return 0;
						}
						else{
							return 1;
						}
	}
}

function emailCheck(stringa) {
	var checkTLD=1;
	var knownDomsPat=/^(com|it|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum)$/;
	var emailPat=/^(.+)@(.+)$/;
	var specialChars="\\(\\)><@,;:\\\\\\\"\\.\\[\\]";
	var validChars="\[^\\s" + specialChars + "\]";
	var quotedUser="(\"[^\"]*\")";
	var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;
	var atom=validChars + '+';
	var word="(" + atom + "|" + quotedUser + ")";
	var userPat=new RegExp("^" + word + "(\\." + word + ")*$");
	var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$");
	var matchArray=stringa.match(emailPat);
	if (matchArray==null){return 0;}
	var user=matchArray[1];
	var domain=matchArray[2];
	for (i=0; i<user.length; i++){if (user.charCodeAt(i)>127) {return 0;}}
	for (i=0; i<domain.length; i++){if (domain.charCodeAt(i)>127) {return 0;}}
	if (user.match(userPat)==null){return 0;}
	var IPArray=domain.match(ipDomainPat);
	if (IPArray!=null) {
		for (var i=1;i<=4;i++) {
			if (IPArray[i]>255) {return 0;}
		}
		return 1;
	}
	var atomPat=new RegExp("^" + atom + "$");
	var domArr=domain.split(".");
	var len=domArr.length;
	for (i=0;i<len;i++) {
		if (domArr[i].search(atomPat)==-1) {return 0;}
	}
	if (checkTLD && domArr[domArr.length-1].length!=2 && domArr[domArr.length-1].search(knownDomsPat)==-1){return 0;}
	if (len<2) {return 0;}
	return 1;
}

