//-------------------------------------------------
//Non ELIMINARE necessari al programma!!!

// Browser Detection
isMac = (navigator.appVersion.indexOf("Mac")!=-1) ? true : false;
NS4 = (document.layers) ? true : false;
IEmac = ((document.all)&&(isMac)) ? true : false;
IE4plus = (document.all) ? true : false;
IE4 = ((document.all)&&(navigator.appVersion.indexOf("MSIE 4.")!=-1)) ? true : false;
IE5 = ((document.all)&&(navigator.appVersion.indexOf("MSIE 5.")!=-1)) ? true : false;
ver4 = (NS4 || IE4plus) ? true : false;
NS6 = (!document.layers) && (navigator.userAgent.indexOf('Netscape')!=-1)?true:false;

// Body onload utility (supports multiple onload functions)
var gSafeOnload = new Array();
function SafeAddOnload(f)
{
	if (IEmac && IE4)  // IE 4.5 blows out on testing window.onload
	{
		window.onload = SafeOnload;
		gSafeOnload[gSafeOnload.length] = f;
	}
	else if  (window.onload)
	{
		if (window.onload != SafeOnload)
		{
			gSafeOnload[0] = window.onload;
			window.onload = SafeOnload;
		}		
		gSafeOnload[gSafeOnload.length] = f;
	}
	else
		window.onload = f;
}
function SafeOnload()
{
	for (var i=0;i<gSafeOnload.length;i++)
		gSafeOnload[i]();
}

// Call the following with your function as the argument
//SafeAddOnload(yourfunctioname);

//-----------------------------------------------------------------------------------------------------------------------------------------------------------


function POPUP(theurl){
	popWindow=window.open(theurl,'popUp','toolbar=no,location=no,directories=no,status=no,scrollbars=yes,resizable=no,width=490,height=360,left=150,top=100');
}


function popup(theurl){
	popWindow=window.open(theurl,'popUp','toolbar=no,location=no,directories=no,status=no,scrollbars=yes,resizable=no,width=550,height=360,left=150,top=100');
}


function setPointer(theRow, thePointerColor) {
    if (typeof(theRow.style) == 'undefined' || typeof(theRow.cells) == 'undefined') {
        return false;
    }

    var row_cells_cnt           = theRow.cells.length;
    for (var c = 0; c < row_cells_cnt; c++) {
        theRow.cells[c].bgColor = thePointerColor;
    }
    return true;
}


function settaframe() {
	iFrameContenuto.document.write(ContenutoIframe.innerHTML);
}

//-------------------------------------------------

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_changeProp(objName,x,theProp,theValue) { //v6.0
  var obj = MM_findObj(objName);
  if (obj && (theProp.indexOf("style.")==-1 || obj.style)){
    if (theValue == true || theValue == false)
      eval("obj."+theProp+"="+theValue);
    else eval("obj."+theProp+"='"+theValue+"'");
  }
}
//-->

function imposta(livello,visib, diffx, elemento) {
	if (visib==0) {
		MM_changeProp(livello,'','style.top','-1000','DIV');
		} else {
		MM_changeProp(livello,'','style.left',findPosX(elemento)+diffx,'DIV');
		MM_changeProp(livello,'','style.top',findPosY(elemento)-20,'DIV');
	}
}

timerID=-1
function starttimer(livello) {
		timerID=setInterval("imposta('"+livello+"',0,0,this);",1000)
}

function stoptimer(IDtimer) {
		if (timerID==-1) {
			return;
		} else {
			clearInterval(timerID);
			timerID=-1;
		}
}


function setLyr(obj,lyr)
{
	var newX = findPosX(obj);
	var newY = findPosY(obj);
	if (lyr == 'testP') newY -= 50;
	var x = new getObj(lyr);
	x.style.top = newY + 'px';
	x.style.left = newX + 'px';
}

function findPosX(obj)
{
	var curleft = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curleft += obj.offsetLeft
			obj = obj.offsetParent;
		}
	}
	else if (obj.x)
		curleft += obj.x;
	return curleft;
}

function findPosY(obj)

{
	var curtop = 0;
	var printstring = '';
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			printstring += ' element ' + obj.tagName + ' has ' + obj.offsetTop;
			curtop += obj.offsetTop
			obj = obj.offsetParent;
		}
	}
	else if (obj.y)
		curtop += obj.y;
	return curtop;
}



//-------------------------------------------------
//Funzioni per la verifica dei campi nelle form
//-------------------------------------------------
function gTrim( as_msg )
{
	var ll_count;
	var ls_appo;
	
	for (ll_count = 0; ll_count < (as_msg.length - 1); )
	{
		ls_appo = as_msg.charAt(ll_count);
		if (ls_appo == " "){
			as_msg = as_msg.slice(1);
		}else break;
	}

	for (ll_count = as_msg.length; ll_count > 0; )
	{
		ls_appo = as_msg.charAt(ll_count - 1);
		if (ls_appo == " "){
			as_msg = as_msg.slice(0, (ll_count - 1));
		}else break;
	}
	
	return( as_msg );
}

function gIsDate(aDate) {
	var MyArray;
	var ret = new Array(1);
	var ls_msg;
	var str_to_data;
	var lret;
		
	lret = true;
	ls_msg = "Data non valida.";
	MyArray = aDate.split("/");
	if (MyArray.length != 3) {
		lret = false;
	} else {
		var giorno = new Number(MyArray[0]);
		var mese = new Number(MyArray[1]);
		var anno = new Number(MyArray[2]);
		if (giorno > 31) {
			lret = false;
		} else if (mese > 12) {
			lret = false;
		} else if (MyArray[2].length != 4) {
			ls_msg = "Esprimi l'anno su quattro cifre.";
			lret = false;
		} 
	}
	
	if (lret == true) {
		str_to_data = new Date(anno, mese-1, giorno);
		if( (str_to_data.getDate() != giorno) || 
			(str_to_data.getMonth() != (mese-1)) || 
			(str_to_data.getFullYear() != anno) ) {
			lret = false
		}
	}

	ret[0] = lret;
	ret[1] = ls_msg;

	return(ret);
}

function frm_submit()
{
	var ret;
	var NUMERO = gTrim(document.forms[0].NUMERO.value);
	var DATA = gTrim(document.forms[0].DATA.value);
	
	if (NUMERO == "" && DATA == "") {
		alert("Specificare numero o data della delibera")
		return false;
	} else if (DATA != "") {
		ret = gIsDate(DATA);
		if (ret[0] == false) {
			alert(ret[1]);
			return false;
		}
	}
	return true;
}

//----------------------------------------------------------------
// Funzioni usate dal form per l'inserimento delle delibere
//----------------------------------------------------------------

function compilaMeseNum(mese)
{
  switch (mese)
  {
    case 'gennaio': { document.getElementById('mese_num').value='1'; break }
    case 'febbraio': { document.getElementById('mese_num').value='2'; break }
    case 'marzo': { document.getElementById('mese_num').value='3'; break }
    case 'aprile': { document.getElementById('mese_num').value='4'; break }
    case 'maggio': { document.getElementById('mese_num').value='5'; break }
    case 'giugno': { document.getElementById('mese_num').value='6'; break }
    case 'luglio': { document.getElementById('mese_num').value='7'; break }
    case 'agosto': { document.getElementById('mese_num').value='8'; break }
    case 'settembre': { document.getElementById('mese_num').value='9'; break }
    case 'ottobre': { document.getElementById('mese_num').value='10'; break }
    case 'novembre': { document.getElementById('mese_num').value='11'; break }
    case 'dicembre': { document.getElementById('mese_num').value='12'; break }
  }
  return true;
}

function compilaGiornoNum(giorno)
{
	document.getElementById('giorno_num').value=Number(giorno);
}

function compilaEstensione(nomefiletesto, nomefileretro)
{
	var estensionetesto = nomefiletesto.substr(nomefiletesto.length-3, 3);
	document.getElementById('tipotesto').value=estensionetesto;

	var estensioneretro = nomefileretro.substr(nomefileretro.length-3, 3);
	document.getElementById('tiporetro').value=estensioneretro;

	return true;
}

function compilaData()
{
    var mese_doppia_cifra = document.getElementById('mese_num').value;
    if (mese_doppia_cifra.length < 2) {
    	mese_doppia_cifra = '0' + mese_doppia_cifra;
    }

	var campo_data = document.getElementById('giorno').value + '/' + mese_doppia_cifra + '/' + document.getElementById('anno').value;
	document.getElementById('data').value = campo_data;

	return true;
}

function isDataValida(data)
{
	if (data == '')
	{
		return false;
	}
	else if (!/^[0-3]{1}[0-9]{1}(\/|\-)[0-1]{1}[0-9]{1}(\/|\-)[0-9]{4}$/.exec(data))
	{
		return false;
	}
	else
	{
		var giorno = data.substr(0, 2);
		var mese   = data.substr(3, 2);
		var anno   = data.substr(6, 4);

		var obj_data= new Date(anno, mese-1, giorno);

		if ( (obj_data.getDate() != giorno) ||
			 (obj_data.getMonth() != (mese-1)) ||
			 (obj_data.getFullYear() != anno) )
		{
			return false;
		}
	}
	return true;
}

function isMeseValido(mese)
{
	if (mese == '')
	{
		return false;
	}
	else if (!/^[0-1]?[0-9]{1}$/.exec(mese))
	{
		return false;
	}
	else if ( (mese < 1) || (mese > 12) )
	{
		return false;
	}
	return true;
}

function isGiornoValido(giorno)
{
	if (giorno == '')
	{
		return false;
	}
	else if (!/^[0-3]?[0-9]{1}$/.exec(giorno))
	{
		return false;
	}
	else if ( (giorno < 1) || (giorno > 31) )
	{
		return false;
	}
	return true;
}

function controlloForm()
{

	var errori = '';

	if (document.getElementById('area').value == '')
	{
		errori += 'Il campo Area Ë vuoto !\n\n';
	}

	if (document.getElementById('argomento').value == '')
	{
		errori += 'Il campo Argomento Ë vuoto !\n\n';
	}

	if (document.getElementById('titolo').value == '')
	{
		errori += 'Il campo Titolo Ë vuoto !\n\n';
	}

	if ( (document.getElementById('numero').value == '') || /[^0-9]/.exec(document.getElementById('numero').value))
	{
		errori += 'Il campo Numero Ë vuoto oppure contiene caratteri non numerici !\n\n';
	}

	if ( (document.getElementById('giorno').value == '') || !/^[0-9]{2}$/.exec(document.getElementById('giorno').value))
	{
		errori += 'Il campo Giorno Ë vuoto oppure non Ë nel formato GG (es.: 03) !\n\n';
	}
	if ( (document.getElementById('anno').value == '') || !/^[0-9]{4}$/.exec(document.getElementById('anno').value))
	{
		errori += 'Il campo Anno Ë vuoto oppure non Ë nel formato NNNN (es.: 2005) !\n\n';
	}

	// if ( !isDataValida(document.getElementById('data').value) )
	// {
	// 	errori += 'Il campo Data Ë vuoto, in un formato consentito oppure una data non valida (es.: 02/03/2005) !\n\n';
	// }

	// if ( !isMeseValido(document.getElementById('mese_num').value) )
	// {
	// 	errori += 'Il campo Mese_num Ë vuoto oppure non contiene un valore fra 1 e 12 !\n\n';
	// }

	// if ( !isGiornoValido(document.getElementById('giorno_num').value) )
	// {
	// 	errori += 'Il campo Giorno_num Ë vuoto oppure non contiene un valore fra 1 e 31 !\n\n';
	// }

	if (errori != '')
	{
		alert(errori);
		return false;
	}

	compilaMeseNum(document.getElementById('mese').value);
	compilaGiornoNum(document.getElementById('giorno').value);
	compilaEstensione(document.getElementById('testo').value, document.getElementById('retro').value);
	compilaData();

	document.getElementById('form1').submit();
}

// FUNZIONE PER LO SCROLL DEI MEDICI

// set correct path to Tigra Scroller files
var Tscroll_path_to_files = '../java/'

// please, don't change anything below this line
function Tscroll_init (id) {
	document.write ('<iframe id="Tscr' + id + '" scrolling=no frameborder=no src="' + Tscroll_path_to_files + 'scroll.html?' + id + '" width="1" height="1"></iframe>');
}

//----------------------------------------------------------------
// Funzioni usate dal form per l'inserimento dei file dei comuni
//----------------------------------------------------------------



function controlloFormComuni()
{

	var errori = '';

	if (document.getElementById('ente').value == '')
	{
		errori += 'Il campo Ente Ë vuoto !\n\n';
	}

	if (document.getElementById('flusso').value == '')
	{
		errori += 'Il campo Tipo Flusso Ë vuoto !\n\n';
	}

	if ( (document.getElementById('giorno').value == '') || !/^[0-9]{2}$/.exec(document.getElementById('giorno').value))
	{
		errori += 'Il campo Giorno Ë vuoto oppure non Ë nel formato GG (es.: 03) !\n\n';
	}
	if ( (document.getElementById('anno').value == '') || !/^[0-9]{4}$/.exec(document.getElementById('anno').value))
	{
		errori += 'Il campo Anno Ë vuoto oppure non Ë nel formato NNNN (es.: 2005) !\n\n';
	}

	if (document.getElementById('filecomune').value == '')
	{
		errori += 'Il campo File da trasferire Ë vuoto !\n\n';
	}

	if (errori != '')
	{
		alert(errori);
		return false;
	}



	document.getElementById('form_comune').submit();
}

function impostaDataDiOggi ()
{
	calDate = new Date();
	var calDay  = calDate.getDate();
	var month = calDate.getMonth();
	var year  = calDate.getFullYear();

	document.getElementById('mese').options[month].selected=true;

	if (calDay.length < 2) {
		calDay = '0' + calDay;
	}
	document.getElementById('giorno').value=calDay;

	document.getElementById('anno').value=year;
}


//------------------------------------------------------------------------------
//------------------------------------------------------------------------------

function MM_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
}

function checkFormRegistrazione(){
		if (document.registrati.nomeazienda.value == '') {
			document.getElementById('errore').innerHTML = 'Il campo Nome Azienda &egrave; obbligatorio';
			return false;
		} 
		if (document.registrati.email.value == '') {
			document.getElementById('errore').innerHTML = 'Il campo e-mail &egrave; obbligatorio';
			return false;
		
		}
		if (document.registrati.referente.value == '') {
			document.getElementById('errore').innerHTML = 'Il campo Referente &egrave; obbligatorio';
			return false;
		} 
		document.registrati.submit();
}

function checkInserisciBando() {
		if (document.aggiungi.titolo.value == '') {
			document.getElementById('errore').innerHTML = 'Il campo Titolo &egrave; obbligatorio';
			return false;
		} 
		if (document.aggiungi.descrizione.value == '') {
			document.getElementById('errore').innerHTML = 'Il campo Descrizione &egrave; obbligatorio';
			return false;
		}
		document.aggiungi.submit(); 
}

function checkUploadAllegato(){
		if (document.aggiungidocumento.documento.value == '') {
			document.getElementById('errore').innerHTML = 'Il campo Documento &egrave; obbligatorio';
			return false;
		} 
		if (document.aggiungidocumento.descrizione.value == '') {
			document.getElementById('errore').innerHTML = 'Il campo Descrizione File &egrave; obbligatorio';
			return false;
		} 
document.aggiungidocumento.submit(); 
}

var xmlHttp;

function ajaxRequest(letter){

    document.getElementById("ajaxsearch").innerHTML = '<img src="../media/ajax-loader.gif" >';
    xmlHttp = GetXmlHttpObject();
    
    if (xmlHttp == null) {
        alert("Browser does not support HTTP Request");
        return;
    }
    
    var url = "../bin/selectTrasparenza.php?letter="+letter;
    url = url + "&sid=" + Math.random();
    xmlHttp.onreadystatechange = stateChanged;
    xmlHttp.open("GET", url, true);
    xmlHttp.send(null);
}

function stateChanged(){
    if (xmlHttp.readyState == 4 || xmlHttp.readyState == "complete") {
        document.getElementById("ajaxsearch").innerHTML = xmlHttp.responseText;
    }
}

function GetXmlHttpObject(){
    var xmlHttp = null;
    try {
        // Firefox, Opera 8.0+, Safari
        xmlHttp = new XMLHttpRequest();
    } 
    catch (e) {
        // Internet Explorer
        try {
            xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
        } 
        catch (e) {
            xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
        }
    }
    return xmlHttp;
}

function mostra(elemento) {
	
	nome = "box"+elemento;
	var temp = document.getElementById(nome);
	
	if (temp.style.display == "block") {
		temp.style.display = "none";
		} else {
		
	for (i=0;i<100;i++) {
		var nome = "box"+i;
		var temp = document.getElementById(nome);
		if (temp != null) { temp.style.display = "none"; }

	}
	
	
	nome = "box"+elemento;
	var temp = document.getElementById(nome);
	temp.style.display = "block";
	}
}

function ajaxSurname(letter){
	 if (letter.length > 3) {
	 	document.getElementById("ajaxsearch").innerHTML = '<img src="../media/ajax-loader.gif" >';
	 	xmlHttp = GetXmlHttpObject();
	 	
	 	if (xmlHttp == null) {
	 		alert("Browser does not support HTTP Request");
	 		return;
	 	}
	 	
	 	var url = "../bin/selectTrasparenza.php?letter=" + letter;
	 	url = url + "&sid=" + Math.random();
	 	xmlHttp.onreadystatechange = stateChanged;
	 	xmlHttp.open("GET", url, true);
	 	xmlHttp.send(null);
	 }
}

function ajaxSearch(){
	 var cognome = document.getElementById("cercacognome").value;
	 var nome = document.getElementById("cercanome").value;

	 if (cognome.length > 3 || nome.length > 3) {
	 	document.getElementById("ajaxsearch").innerHTML = '<img src="../media/ajax-loader.gif" >';
	 	xmlHttp = GetXmlHttpObject();
	 	
	 	if (xmlHttp == null) {
	 		alert("Browser does not support HTTP Request");
	 		return;
	 	}
	 	var url = "../bin/selectTrasparenza.php?lettername=" + nome+"&letter="+cognome;
	 	url = url + "&sid=" + Math.random();
	 	xmlHttp.onreadystatechange = stateChanged;
	 	xmlHttp.open("GET", url, true);
	 	xmlHttp.send(null);
	 }
}

function searchStruttura(){
	 var struttura = document.getElementById("selectStruttura").value;
	 	document.getElementById("ajaxsearch").innerHTML = '<img src="../media/ajax-loader.gif" >';
	 	xmlHttp = GetXmlHttpObject();
	 	
	 	if (xmlHttp == null) {
	 		alert("Browser does not support HTTP Request");
	 		return;
	 	}
	 	var url = "../bin/selectTrasparenza.php?struttura=" + struttura;
	 	url = url + "&sid=" + Math.random();
	 	xmlHttp.onreadystatechange = stateChanged;
	 	xmlHttp.open("GET", url, true);
	 	xmlHttp.send(null);
}

function checkFormRegistrazioneSiss(){
		if (document.iscrizione.nome.value == '') {
			document.getElementById('errore').innerHTML = 'Il campo Nome &egrave; obbligatorio';
			return false;
		} 
		if (document.iscrizione.cognome.value == '') {
			document.getElementById('errore').innerHTML = 'Il campo Cognome &egrave; obbligatorio';
			return false;
		} 		
		if (document.iscrizione.email.value == '') {
			document.getElementById('errore').innerHTML = 'Il campo Email &egrave; obbligatorio';
			return false;
		}
		var filter = /^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9-])+.)+([a-zA-Z0-9]{2,4})+$/;
		if (!filter.test(document.iscrizione.email.value)){
			document.getElementById('errore').innerHTML = 'Il campo Email non &egrave; valido';
			return false;
		}
		if (document.iscrizione.codice.value == '') {
			document.getElementById('errore').innerHTML = 'Il campo Codice Regionale &egrave; obbligatorio';
			return false;
		} 
		document.iscrizione.submit();
}

function getCheckedValue(id) {
        radioObj = document.getElementsByName(id);
	if(!radioObj)
		return "";
	var radioLength = radioObj.length;
	if(radioLength == undefined)
		if(radioObj.checked)
			return radioObj.value;
		else
			return "";
	for(var i = 0; i < radioLength; i++) {
		if(radioObj[i].checked) {
			return radioObj[i].value;
		}
	}
	return "";
}

function statoSalute(){ 
	var errore = 'Ricontrolla le tue risposte, compila tutti i campi, grazie.';
	if (document.getElementById('annoNascita').value == ''){
		document.getElementById('errore').innerHTML = errore;
		return false;
	} 
	if (document.getElementById('provincia').value == ''){
		document.getElementById('errore').innerHTML = errore;
		return false;
	} 	
	if (getCheckedValue('cittadinanza') == ''){
		document.getElementById('errore').innerHTML = errore;
		return false;
	} 	
	if (getCheckedValue('sesso') == ''){
		document.getElementById('errore').innerHTML = errore;
		return false;
	} 	
	for(var i = 1; i <= 14; i++) {
		var validazione = getCheckedValue('domanda'+i);
		if (validazione == '') {
			document.getElementById('errore').innerHTML = errore;
			return false;
		}
	}
	document.statosalute.submit();
}