/*--------------------------------------------------------------*/
/*		function carica_img(zoom, MappaX, MappaY)		*/
/*--------------------------------------------------------------*/
function carica_img(zoom, MappaX, MappaY) {

	//alert('zoom: ' + zoom + ' - left: ' + MappaX + ' - top: ' + MappaY);
	var posizioni=prendiElementoDaId("posizioni");

	// oggetto contenitore mappa: mi serve per avere le dimensioni
	var contenitore=prendiElementoDaId("contenitore-mappa");
	
	// oggetto mappa
	var Mappa=prendiElementoDaId("mappa");
	
	/*
	trovare quali sono i riquadri visibili senza dover ciclare su tutti
	*/
	
	var num_colonne=ArrayMappe[zoom]['width']/dim_riq;
//	var num_righe=ArrayMappe[zoom]['height']/dim_riq;
	
	var colonne_per_contenitore=Math.ceil(contenitore.offsetWidth/dim_riq)+1;
	var righe_per_contenitore=Math.ceil(contenitore.offsetHeight/dim_riq)+1;
	
	var str_mappa="";
	// ottengo la posizione XY del primo riquadro in alto a sinistra
	numero_primo_riquadro=Math.floor(-MappaY/dim_riq)*num_colonne + Math.floor(-MappaX/dim_riq) + 1;
	
	inizio_sn=numero_primo_riquadro;

	str_mappa='<div id="mappa" class="dragclass" style="margin:0px; padding:0px; top:'+MappaY+'px; left:'+MappaX+'px; width:'+ArrayMappe[zoom]['width']+'px; height:'+ArrayMappe[zoom]['height']+'px;">';

	for (riga=0;riga<righe_per_contenitore;riga++) {
		num=inizio_sn + riga*num_colonne;

		for (colonna=1;colonna<=colonne_per_contenitore;colonna++) {
//		alert('colonna: ' + colonna + 'num: ' + num);

			if (num<=ArrayMappe[zoom]['numero_riquadri']) {

			//	posizione_riquadro_y
			//	posizione_riquadro_x
				if (num<=num_colonne) {
					posizione_riquadro_x=num;
					posizione_riquadro_y=1;
				} else {
					posizione_riquadro_x=num%num_colonne;
					if (posizione_riquadro_x==0) posizione_riquadro_x=num_colonne;

					posizione_riquadro_y=Math.floor(num/num_colonne);
					if (num%num_colonne>0) posizione_riquadro_y +=1;
				}
			//	alert('num: ' + num + '; posizione_riquadro_x: ' + posizione_riquadro_x + '; posizione_riquadro_y: ' + posizione_riquadro_y);

				pos_left=(posizione_riquadro_x-1)*200;
				pos_top=(posizione_riquadro_y-1)*200;
				str_mappa +='<img src="http://www.santarcangelodiromagna.info/html/img/mappe/riq'+zoom+'_'+num+'.gif" width="200" height="200" style="border:0px dotted black; position:absolute; margin:0px; padding:0px; top:'+pos_top+'px; left:'+pos_left+'px;" alt="">';

				if (num==numero_primo_riquadro) {
					// posizioneY
					topPrimoRiqVis=pos_top;

					// posizioneX
					leftPrimoRiqVis=pos_left;
				}

				// posizioneY
				topUltimoRiqVis=pos_top;

				// posizioneX
				leftUltimoRiqVis=pos_left;

			}
			num++;

		}

	}

	str_mappa +=ArraySiti[zoom];

	str_mappa +='<'+'/div>';
	contenitore.innerHTML=str_mappa;

	// livelli punti di interesse
	view_hide ();
	
	// mostro l'eventuale check inviato
	view_check (id_check);
	
	// zoom selezionato
	ArrayZoom[zoom]='img/livello-zoom-selezionato.gif';
	
	// posizione iniziale mappa
	posizioni.innerHTML="PFY: " + MappaY + " PFX: " + MappaX + ' topPrimoRiqVis: ' + topPrimoRiqVis + ' leftPrimoRiqVis: ' +leftPrimoRiqVis;
	
	//document.fMappa.prova.value=str_mappa;
}

// visualizza / nasconde i punti di interesse checkati
function view_hide () {

	for (h=0;h<document.forms['fMappa'].length;h++) {

		if (document.forms['fMappa'].elements[h].type=="checkbox") {
			// nome del check : id_tipo_[id_tipo_punto]
			nome_check=document.forms['fMappa'].elements[h].name;
			id_tipo=nome_check.substr(14);//id_tipo_punto_
			// id del div che contiente le immagini dei punti di interesse:  siti_[id_tipo_punto]

			if (document.forms['fMappa'].elements[h].checked==true) {
				for (img=0;img<document.images.length;img++) {
					ok=document.images[img].name.indexOf('sito_'+id_tipo);
					if (ok==0) document.images[img].style.visibility="visible";
				}
			}

			if (document.forms['fMappa'].elements[h].checked==false) {
				for (img=0;img<document.images.length;img++) {
					ok=document.images[img].name.indexOf('sito_'+id_tipo);
					if (ok==0) document.images[img].style.visibility="hidden";
				}
			}


		}

	}
}

function view_check (id_check) {
	nome_img='sito_'+id_check;
	var imgToView=prendiElementoDaId(nome_img);

	if (imgToView) {
		imgToView.style.visibility="visible";
	}
}

/*
function view_hide () {

	for (h=0;h<document.forms['fMappa'].length;h++) {

		if (document.forms['fMappa'].elements[h].type=="checkbox") {
			// nome del check : id_tipo_[id_tipo_punto]
			nome_check=document.forms['fMappa'].elements[h].name;
			id_tipo=nome_check.substr(14);//id_tipo_punto_
			// id del div che contiente le immagini dei punti di interesse:  siti_[id_tipo_punto]
			DivView=prendiElementoDaId('siti_'+id_tipo);
			if (DivView) {
				if (document.forms['fMappa'].elements[h].checked==true) DivView.style.visibility="visible";
				if (document.forms['fMappa'].elements[h].checked==false) DivView.style.visibility="hidden";
			}
		}

	}

}
*/

// carica l'immagine scelta con lo zoom
function zoomImg(newzoom,in_out) {
	//alert(newzoom);
	if (newzoom=="") {
		switch (in_out) {
			case "in":
				if (zoom>minzoom) zoom=zoom-1; else zoom=zoom;
				break;
			case "out":
				if (zoom<maxzoom) zoom=zoom+1; else zoom=zoom; 
				break;
		}
	} else {
		if (newzoom<minzoom) zoom=minzoom; else {
			if (newzoom>maxzoom) zoom=maxzoom;
			else zoom=newzoom;
		}
	}

	// verifico se devo caricare la mappa dalla posizione iniziale o se mi sono già mosso
	if (oldzoom==0) {
		MappaX=ArrayMappe[zoom]['left'];
		MappaY=ArrayMappe[zoom]['top'];
	} else {
		// risistemare la posizione se cambio lo zoom
		DivMappa = prendiElementoDaId('mappa');
		MappaX=parseInt(DivMappa.style.left+0);
		MappaY=parseInt(DivMappa.style.top+0);

		MappaX = MappaX * ArrayMappe[zoom]['width']/ArrayMappe[oldzoom]['width'];
		MappaY = MappaY * ArrayMappe[zoom]['height']/ArrayMappe[oldzoom]['height'];
	//	oldzoom=zoom;
	}

	// rollover name="zoom'.$z.'"
	for (var z in ArrayZoom) {
		if (z==zoom) {
			document.images['zoom'+z].src='img/livello-zoom-selezionato.gif';
			ArrayZoom[z]='img/livello-zoom-selezionato.gif';
		} else {
			document.images['zoom'+z].src='img/livello-zoom.gif';
			ArrayZoom[z]='img/livello-zoom.gif';
		}
	}
	
	//alert(zoom);
	carica_img(zoom, MappaX, MappaY);

}

