function isEmpty (s) { return ((s==null) || (s.length==0)) }

function setCharControl(node)
{
	if (node < 0)
	{
		document.forms["frmkitsordine"].note[0].value = "§" + String(document.forms["frmkitsordine"].note[0].value).replace(/§/, "");
	}
	else
	{
		document.forms["frmkitsordine"].note[node].value = "§" + String(document.forms["frmkitsordine"].note[node].value).replace(/§/, "");
	}
	
}


function ConfToGo(szConfirm,szPage) {
	if(confirm(szConfirm))
		window.location=szPage;
	else	
		return;
}

function isDigit (c) { return ((c>="0") && (c<="9")) }

function isWhitespace (s) {
	var whitespace="\t\r\n";
	var i;
	if(isEmpty(s))
		return true;
	for (i=0;i<s.length;i++) {
		var c = s.charAt(i);
		if (whitespace.indexOf(c)==-1)
			return false;
	}

	return true;
}


function noWhitespace (s) {
	var whitespace="\t\r\n ";
	var i;
	if(isEmpty(s))
		return true;
	for (i=0;i<s.length;i++) {
		var c = s.charAt(i);
		if (whitespace.indexOf(c)!=-1)
			return false;
	}
	return true;
}

function isEmail (s) {
	var i = 1;
	var sLength = s.length;
	if (noWhitespace(s)) {
		while ((i<sLength) && (s.charAt(i) != "@")) { i++ }
		if ((i>=sLength) || (s.charAt(i) != "@"))
			return false;
		while ((i<sLength) && (s.charAt(i) != ".")) { i++ }
		if ((i>=sLength-2) || (s.charAt(i) != "."))
			return false;
		return true;
	}
	return false;
}

function isAllDigit (s) {
	var i;
	if(isEmpty(s) || isWhitespace(s))
		return false;
	for (i=0;i<s.length;i++) {
		var c = s.charAt(i);
		if (!isDigit(c))
			return false;
	}
	return true;
}

function isDate(szData){
	var retValue = false;
	var bLongFormat = true;
	var arr_date;
	var re_date;
	re_date = /^(\d{1,2})[-\/](\d{1,2})[-\/](\d{4})\s+(\d{1,2})[:\.](\d{1,2})[:\.]{0,1}(\d{1,2}){0,1}$/;
		arr_date = re_date.exec(szData);
	if(!arr_date){
		bLongFormat = false;
		re_date = /^(\d{1,2})[-\/](\d{1,2})[-\/](\d{4})$/;
		arr_date = re_date.exec(szData);
	}
	if(!arr_date) {return retValue;}

	//*** Controlla il mese
	var tmpMonth = Number(arr_date[2]);
	if ((tmpMonth >12) || (tmpMonth < 1)) {	return retValue; }
	//*** Controlla l'anno
	var tmpYear = String(arr_date[3]);
	if (tmpYear.length == 2) tmpYear = "20" + tmpYear;
	tmpYear	= Number(tmpYear);
	if ((tmpYear > 9999) || (tmpYear < 1763)) {	return retValue; }
	//*** Controlla il giorno
	var numDayMonth = GetDaysInMonth(tmpMonth,tmpYear);
	var tmpDay = Number(arr_date[1]);
	if ((tmpDay > numDayMonth) || (tmpDay < 1))  {	return retValue; }

	if(bLongFormat){
		//*** Controlla l'ora
		var tmpHH = Number(arr_date[4])
		if ((tmpHH > 23) || (tmpHH < 0)) return retValue;
		//*** Controlla i minuti
		var tmpMM = Number(arr_date[5])
		if ((tmpMM > 59) || (tmpMM < 0)) return retValue;
		//*** Controlla i secondi
		if (arr_date.length == 7) {
			var tmpSS = Number(arr_date[6])
			if ((tmpSS > 59) || (tmpSS < 0)) return retValue;
		}
	}
	return true;
}

function GetDaysInMonth(tmpMonth, tmpYear){
	var szOut;
	var dPrevDate = new Date(tmpYear,tmpMonth,1);
	var MinMilli = 1000 * 60;
	var HrMilli = MinMilli * 60;
	var DyMilli = HrMilli * 23;
	var lastDayMonth = dPrevDate.getTime();
	lastDayMonth = lastDayMonth - DyMilli;
	dPrevDate.setTime(lastDayMonth);
	szOut = dPrevDate.getDate();
	return szOut;
}

function whichIsChecked (radio) {
	for (var i=0;i<radio.length;i++) {
		if (radio[i].checked) {
			return radio[i].value;
		}
	}
	return "";
 }

 function sqlEscape(str) {
	return str.replace(/'/gi, "''");
 }
