function GetRadioValue(name)
{
	var items = document.getElementsByName(name);
	
	if (items && items.length >0)
	{
		for (var i=0; i<items.length; i++)
		{		
			radio = items[i];
			if (radio.checked)
				return radio.value;
		}
	}
	else
		return "";
}

function SetObjectById(id,value)
{
	var obj = document.getElementById(id); //alert(obj);
	if (obj)
		obj.value = value;
}

function SetObject(obj,value)
{
	if (obj)
		obj.value = value;
}

function TestRegex(pattern,text)
{
	var Regex = new RegExp(pattern);
	return Regex.Match(text);	
}

function isDate(text)
{
	var pattern = /^\d{2}\/\d{2}\/\d{4}$/;
	//return text.match(pattern);
	return pattern.test(text);
}

function FilterNumber(e)
{
	var evt = e || window.event; // ff=e ie=window.event
	var key = evt.charCode || evt.keyCode; //ff=evt.charCode || ie=evt.keyCode
	char = String.fromCharCode(key);
	//alert(key);
	var pattern = /\d/;
	var isfunctionkey = (key >=37 && key<=40) || key==8 || key==9 || key==44; /*|| key ==46*/
	
	return (isfunctionkey || pattern.test(char));
}

function FilterDate(e)
{
	var evt = e || window.event; // ff=e ie=window.event
	var key = evt.charCode || evt.keyCode; //ff=evt.charCode || ie=evt.keyCode
	char = String.fromCharCode(key);
	//alert(key);
	var pattern = /[\d\/]/;
	var isfunctionkey = (key >=37 && key<=40) || key==8 || key==9 || key==46 ;
	
	return (isfunctionkey || pattern.test(char));
}

function ValidateDownloadSearch()
{
	var dataDa = document.getElementById("dataDa");
	if (dataDa && dataDa.value != "")
	{
		if (!isDate(dataDa.value))
		{
			alert("Data non valida");
			dataDa.focus();
			return false;
		}
	}
	
	var dataA = document.getElementById("dataA");
	if (dataA && dataA.value != "")
	{
		if (!isDate(dataA.value))
		{
			alert("Data non valida");
			dataA.focus();
			return false;
		}
	}
	
	return true;
}

function ValidateProduzioniElettriche()
{
	var CodiceImpianto = document.getElementById("CodiceImpianto");
	if (CodiceImpianto && CodiceImpianto.value == "")
	{
		alert("Inserire il codice impianto");
		CodiceImpianto.focus();
		return false;		
	}
	
	var DataMessaInOpera = document.getElementById("DataMessaInOpera");
	if (DataMessaInOpera && DataMessaInOpera.value != "")
	{
		//alert(isDate(DataMessaInOpera.value));
		if (!isDate(DataMessaInOpera.value))
		{
			alert("Data non valida");
			DataMessaInOpera.focus();
			return false;
		}
	}
	
	var PotenzaKw = document.getElementById("PotenzaKw");
	if (PotenzaKw && PotenzaKw.value == "")
	{		
		alert("Inserire la potenza (kWh)");
		PotenzaKw.focus();
		return false;		
	}
	
	var AnnoDiRiferimento = document.getElementById("AnnoDiRiferimento");
	if (AnnoDiRiferimento && AnnoDiRiferimento.value == "")
	{
		alert("Inserire l'anno di riferimento");
		AnnoDiRiferimento.focus();
		return false;		
	}
	
	var EnergiaProdotta = document.getElementById("EnergiaProdotta");
	if (EnergiaProdotta && EnergiaProdotta.value == "")
	{
		alert("Inserire il quantitativo di energia prodotta");
		EnergiaProdotta.focus();
		return false;		
	}
}

function SetKeypress(ObjId,callback)
{
	var obj = document.getElementById(ObjId);
	if (obj)
	{
		obj.onkeypress = callback;
	}
}

function SetOnBlur(ObjId,callback)
{
	var obj = document.getElementById(ObjId);
	if (obj)
	{
		obj.onblur = callback;
	}
}

function SetOnKeyDown(ObjId,callback)
{
	var obj = document.getElementById(ObjId);
	if (obj)
	{
		obj.onkeydown = callback;
	}
}

function SetOnClick(ObjId,callback)
{
	var obj = document.getElementById(ObjId);
	if (obj)
	{
		obj.onclick = callback;
	}
}

function detectKeypress(e) 
{
	var evt = e || window.event; // ff=e ie=window.event
	//alert(evt);
	var key = evt.charCode || evt.keyCode; //ff=evt.charCode || ie=evt.keyCode
	alert(key);
	
	if (key == 13) // invio
	{
		return false;
	}
}

function SearchOnEnterPress(e) 
{
	var evt = e || window.event; // ff=e ie=window.event
	//alert(evt);
	var key = evt.charCode || evt.keyCode; //ff=evt.charCode || ie=evt.keyCode
	//alert(key);
	
	if (key == 13) // invio
	{
		Search();
		return false;
	}
}

function Highlight(e)
{
	var evt = e || window.event; // ff=e ie=window.event
	//alert(evt);
	//var key = evt.charCode || evt.keyCode; //ff=evt.charCode || ie=evt.keyCode
	if (evt.target) targ = evt.target;
	else if (evt.srcElement) targ = evt.srcElement;
	if (targ.nodeType == 3) // defeat Safari bug
		targ = targ.parentNode;
	
	//alert(targ.id);
	
	if (targ != null)
	{		
		targ.style.color = (targ.value != "" && !isDate(targ.value)) ? "brown" : "";
		targ.title = (targ.style.color=="brown") ? "Data non valida" : "";
	}
	

}

