var timerID = null;
var timerRunning = false;

//Inibisce il Return nelle pagine
function stopRKey(evt) {
	var evt  = (evt) ? evt : ((event) ? event : null);
	var node = (evt.target) ? evt.target : ((evt.srcElement) ? evt.srcElement : null);
	if ((evt.keyCode == 13) && (node.type=="text")) { return false; }
}

function openW(tit , w, h, dest) {
	//versione pagina centrata
	var param;
	var x = screen.width/2 - w/2;
	var y = screen.height/2 - h/2 -20;
	param = "width="+w+",height="+h+",top="+y+",left="+x+",scrollbars=yes,toolbar=no,location=no,directories=no,menubar=no,status=yes,resizable=yes,fullscreen=no";
	var defpage = window.open (dest, tit, param);
}

function openWFull(tit , w, h, dest) {
	//versione pagina centrata
	var param;
	var w = screen.width;
	var h = screen.height;
	x = 0;
	y = 0;
	param = "width="+w+",height="+h+",top="+y+",left="+x+",scrollbars=yes,toolbar=no,location=no,directories=no,menubar=no,status=yes,resizable=yes,fullscreen=no";
	var defpage = window.open (dest, tit, param);
}

function checkData(objImp)
{
	var strChar = "0123456789/"
	var strImp = objImp.value.toString();
	var lunImp = strImp.length;
	var bOk = true;
	var cntSl = 0;
	var pos = 0;

    //Equiparo il carattere - al carattere /	
	for (var i=0; i<lunImp;i++)
	{
		if (strImp.indexOf("-",0)>-1)
		{
        	strImp = strImp.replace("-","/");
		}
	}
		
	if (lunImp == '')
	{
		//objImp.value= getDataOggi();
		//evidGen(objImp,"N")
		return;
	}
	for (var i=0; i<lunImp;i++)
	{
		if (strChar.indexOf(strImp.charAt(i),0)==-1)
		{
			//carattere non ammesso
			alert ("Attenzione: valore immesso non accettabile");
			bOk = false;
			break;
		}
	}

	if (bOk)
	{
	//Controllo che ci siano due / 
	for (var i=0; i<lunImp;i++)
	{
		pos = strImp.indexOf("/", pos+1);
		if (pos!=-1)
		{
			cntSl = cntSl + 1;
		}
		else
		{break;}
	}

	if (cntSl != 2)
	{
		if (lunImp==6)
		{
            strImp = strImp.substring(0,4) + "20" + strImp.substring(4,6);
            lunImp = lunImp + 2;
		}

		if (cntSl == 0 && lunImp==8)
		{
			//alert ('ok');
			strImp = strImp.substring(0,2) + "/" + strImp.substring(2,4) + "/" + strImp.substring(4,8) ;
			lunImp = strImp.length;
			objImp.value=strImp;
			bOk = true;
		}
		else
		{
			alert ("Attenzione: data formalmente non valida.");
			bOk = false;
		}
	}
	else
	{
		if (lunImp==8)
		{
            strImp = strImp.substring(0,6) + "20" + strImp.substring(6,8);
            lunImp = lunImp + 2;     
			objImp.value=strImp;
			bOk = true;
		}
	}
	}
	//alert (strImp);
	if (bOk)
	{
	//Controllo che tra il primo e il secondo / ci sia almeno un numero
	var pos1 = strImp.indexOf("/", 0);
	var pos2 = strImp.indexOf("/", pos1+1);
	if (pos2 - pos1 != 3)
	{
		alert ("Attenzione: data formalmente non valida.");
		bOk = false;
	}
	}
	if (bOk)
	{
	//Lunghezza minima = 10
	if (lunImp < 10)
	{
		alert ("Attenzione: data formalmente non valida.");
		bOk = false;
	}
	}
	
	if (bOk)
	{
	var numMesi = strImp.substring(3,5);
	//Controllo mesi < 13
	if (numMesi > 12 )
	{
		alert ("Attenzione: data formalmente non valida.");
		bOk = false;
	}
	}
	
	if (bOk)
	{
	var numGiorni = strImp.substring(0,2);
	//Controllo giorni < 32
	if (numGiorni > 31) 
	{
		alert ("Attenzione: data formalmente non valida.");
		bOk = false;
	}
	if (numMesi==2 && numGiorni > 29) 
	{
		alert ("Attenzione: data formalmente non valida.");
		bOk = false;
	}
	
	}
	
	if (!bOk)
	{
		objImp.focus();
	}
	else 
	{
	    objImp.value = strImp;
		//evidGen(objImp,"N")
	}
	return;
}

function checkNum(objInp)
{
    var strInp = objInp.value.toString();
	if (!isNumeric(strInp))
	{
		//numero non valido
		objInp.focus();
		return;
    }
}

function apriCal(campo) { 
    var x = screen.width/2 - 120;
	var y = screen.height/2 - 120;
    CalWin = window.open('calendario.aspx?campo='+campo+'&data=', 'calwindow','top=' +y+ ',left=' +x+ ',width=260,height=260,scrollbars=no,toolbar=no,status=yes') 
} 

//function apriAna(PaginaChiamante, RIC_ID, SOG_ID, PAD_ID, MAD_ID) { 
//    var x = 0;
//	var y = 50;
//	var w = screen.width;
//    AnaWin = window.open('GestioneAnalisi.aspx?PaginaChiamante='+PaginaChiamante+'&RIC_ID='+RIC_ID+'&SOG_ID='+SOG_ID+'&PAD_ID='+PAD_ID+'&MAD_ID='+MAD_ID, 'anawindow','top=' +y+ ',left=' +x+ ',width=' +w+ ',height=550,scrollbars=yes,toolbar=no,status=yes,resizable=yes'); 
//} 

function apriAna(PaginaChiamante, RIC_ID) { 
    var x = 0;
	var y = 50;
	var w = screen.width;
    AnaWin = window.open('GestioneAnalisi.aspx?PaginaChiamante='+PaginaChiamante+'&RIC_ID='+RIC_ID, 'anawindow','top=' +y+ ',left=' +x+ ',width=' +w+ ',height=550,scrollbars=yes,toolbar=no,status=yes,resizable=yes'); 
} 

function apriPrn(stringa)
{
    prnWin = window.open(stringa,'_blank','top=50,left=50,width=950,height=650,scrollbars=no,toolbar=no');
}

function apriCnt(ANA_ID) { 
    var x = 0;
	var y = 10;
	var w = screen.width;
    AnaWin = window.open('ConfrontoAnalisi.aspx?ANA_ID='+ANA_ID, 'cntwindow','top=' +y+ ',left=' +x+ ',width=' +w+ ',height=750,scrollbars=yes,toolbar=no,status=yes,resizable=yes'); 
} 

function isNumeric(valore)
{
	var strChar = "+0123456789"
	var strImp = valore.toString();
	var lunImp = strImp.length;
	var bOk = true;
	var cntSl = 0;
	var pos = 0;
	
	for (var i=0; i<lunImp;i++)
	{
		if (strChar.indexOf(strImp.charAt(i),0)==-1)
		{
			//carattere non ammesso
			alert ("Attenzione: valore immesso non accettabile");
			bOk = false;
			break;
		}
	}

	return bOk;
}

function textReadOnly() {
	self.event.returnValue=false
}

//function window_onUnload(mess) { 
//    event.returnValue=mess;
//}





function CtrlCaratteri(objImp) {

    var checkOK = "OESIMB+";
    var checkStr = objImp.value.toString();
    checkStr = checkStr.toUpperCase()
    var allValid = true;
    for (i = 0; i < checkStr.length; i++) {
        ch = checkStr.charAt(i);
        for (j = 0; j < checkOK.length; j++)
            if (ch == checkOK.charAt(j))
            break;
        if (j == checkOK.length) {
            allValid = false;
            break;
        }
    }
    if (!allValid) {
        alert("Attenzione : valore non ammesso ");
        objImp.focus();
        return (false);
    }
    else {
        // converto il carattere di input in maiuscolo
        checkStr = checkStr.toUpperCase()
        objImp.value = checkStr;
    }
}

function CtrlStato(objImp) {

    var checkOK = " EDRM";
    var checkStr = objImp.value.toString();
    checkStr = checkStr.toUpperCase()
    var allValid = true;
    for (i = 0; i < checkStr.length; i++) {
        ch = checkStr.charAt(i);
        for (j = 0; j < checkOK.length; j++)
            if (ch == checkOK.charAt(j))
            break;
        if (j == checkOK.length) {
            allValid = false;
            break;
        }
    }
    if (!allValid) {
        alert("Attenzione : valore non ammesso ");
        objImp.focus();
        return (false);
    }
    else {
        // converto il carattere di input in maiuscolo
        var lunInp = checkStr.length;
        if (lunInp > 0) {
            checkStr = checkStr.toUpperCase()
            objImp.value = checkStr;
        }
    }
}

function CtrlAccetta(objImp) {

    var checkOK = "S";
    var checkStr = objImp.value.toString();
    checkStr = checkStr.toUpperCase()
    var allValid = true;
    for (i = 0; i < checkStr.length; i++) {
        ch = checkStr.charAt(i);
        for (j = 0; j < checkOK.length; j++)
            if (ch == checkOK.charAt(j))
            break;
        if (j == checkOK.length) {
            allValid = false;
            break;
        }
    }
    if (!allValid) {
        alert("Attenzione : valore non ammesso ");
        objImp.focus();
        return (false);
    }
    else {
        // converto il carattere di input in maiuscolo
        var lunInp = checkStr.length;
        if (lunInp > 0) {
            checkStr = checkStr.toUpperCase()
            objImp.value = checkStr;
        }
    }
}


function checkOra(objInp) {
    var strChar = "0123456789.";
    var strInp = objInp.value.toString();
    var lunInp = strInp.length;
    var bOk = true;
    var cntSl = 0;
    var pos = 0;
    //alert (strInp);
    if (lunInp == '') {
        //evidGen(objInp,"N")
        return;
    }

    for (var i = 0; i < lunInp; i++) {
        if (strChar.indexOf(strInp.charAt(i), 0) == -1) {
            //carattere non ammesso
            alert("Attenzione: valore immesso non accettabile");
            bOk = false;
            break;
        }
    }


    if (bOk) {
        //Controllo che ci sia un '.' 
        for (var i = 0; i < lunInp; i++) {
            pos = strInp.indexOf(".", pos + 1);
            if (pos != -1) {
                cntSl = cntSl + 1;
            }
            else
            { break; }
        }
        //alert (cntSl);
        if (cntSl != 1) {
            if (cntSl == 0 && lunInp == 4) {
                //alert ('ok');
                if ((strInp.substring(0, 2) >= 24) || (strInp.substring(2, 4) >= 60)) {
                    alert("Attenzione: ora formalmente non valida.");
                    bOk = false;
                }
                else {
                    strInp = strInp.substring(0, 2) + "." + strInp.substring(2, 4);
                    lunInp = strInp.length;
                    cntSl = 1;
                    objInp.value = strInp;
                    bOk = true;
                }
            }
            else {
                alert("Attenzione: ora formalmente non valida.");
                bOk = false;
            }
        }
    }
    //alert (strInp);
    if (bOk) {
        if (cntSl == 1 && lunInp == 5) {
            if ((strInp.substring(0, 2) >= 24) || (strInp.substring(3, 5) >= 60)) {
                alert("Attenzione: ora formalmente non valida.");
                bOk = false;
            }
        }
        else {
            alert("Attenzione: ora formalmente non valida.");
            bOk = false;
        }
    }

    if (!bOk) {
        objInp.focus();
    }

    return;
}

var currentRowId = 0;

function MarkRow(rowId) {
    if (document.getElementById(rowId) == null)
        return;

    if (document.getElementById(currentRowId) != null)
        document.getElementById(currentRowId).style.backgroundColor = '#ffffff';


    currentRowId = rowId;
    document.getElementById(rowId).style.backgroundColor = '#ff0000';
}
function SelectRow() {
    if (event.keyCode == 40)
        MarkRow(currentRowId + 1);
    else if (event.keyCode == 38)
        MarkRow(currentRowId - 1);
}

function CtrlSesso(objImp) {

    var checkOK = "FMfm";
    var checkStr = objImp.value.toString();
    var allValid = true;
    for (i = 0; i < checkStr.length; i++) {
        ch = checkStr.charAt(i);
        for (j = 0; j < checkOK.length; j++)
            if (ch == checkOK.charAt(j))
            break;
        if (j == checkOK.length) {
            allValid = false;
            break;
        }
    }
    if (!allValid) {
        alert("Attenzione : valore SESSO non ammesso ");
        objImp.focus();
        return (false);
    }
    else {
        // converto il carattere di input in maiuscolo
        checkStr = checkStr.toUpperCase()
        objImp.value = checkStr;
    }
}
