
//funzione utilizzata per ajax

var kUpdateStatusFieldNamePrefix = "hid_Lib_UpdForm_";

function MM_findObj(n, d) { //v4.0
  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 && document.getElementById) x=document.getElementById(n); return x;
}

function MM_showHideLayers() { //v3.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v='hide')?'hidden':v; }
    obj.visibility=v; }
}

function showHideLoading(mode) {
	MM_showHideLayers('loading','',mode);
	MM_showHideLayers('loadingBG','',mode);
}

var kValidationAlertTitle = "IALMan2: attenzione...";

function copyValueListBox(FieldOriginal, FieldDestination, Table, dbro) {

	if (dbro == null) dbro = "db";
	
	if (document.forms[0].elements[dbro+"nh"+Table+"_ID"+FieldDestination].value == -1)
	{
		document.forms[0].elements[dbro+"nh"+Table+"_ID"+FieldDestination].value = document.forms[0].elements[dbro+"nh"+Table+"_ID"+FieldOriginal].value;
		document.forms[0].elements["roct"+Table+"_Sunto"+FieldDestination].value = document.forms[0].elements["roct"+Table+"_Sunto"+FieldOriginal].value;
	}
	
}

function chkDuplicatiInSub(nameField, msg, chkAccettaSpazioVuoto) {
	var i, j;

/*
nameField --> nome del campo form da testare
msg --> messaggi di errore ritornato
chkAccettaSpazioVuoto --> accetta la possibilità di duplicare campi form vuoti
*/

	if ( ! (document.forms[0].elements[nameField] == null) ) {
		for (i = 0; i < document.forms[0].elements[nameField].length; i++) {
			for (j = i+1; j < document.forms[0].elements[nameField].length; j++) {
				if (document.forms[0].elements[nameField][i].value == document.forms[0].elements[nameField][j].value && (!chkAccettaSpazioVuoto || document.forms[0].elements[nameField][i].value != "") ) {
					alert(msg);
					return false;
				}
			}
		}
	}
	
	return true;
}

function setOnlyAlphaNumeric(obj) {
	var str = new String(obj.value);

	obj.value = onlyAlphaNumeric(str);
}

function onlyAlphaNumeric(str) {
	var re;

	re = /[^a-zA-Z0-9]/g;
	return str.replace(re,"");   
}

function fillInputBox(obj, chr, nr) {
	var stringa, i, pattern;

	// controllo che non sia vuoto
	if ( !obj.value.length ) return false;
	
	// controllo che non contenga caratteri non numerici
	pattern = /\D/;
	if ( pattern.test( obj.value ) ) {
		obj.value = "";
		return false;
	}

	// fill
	stringa = "";
	for (i=obj.value.length; i<nr; i++)
	{
		stringa = stringa + chr
	}
	
	obj.value = stringa + obj.value;

	return true;
}

function formDate2DBDate(formDate)
{
	var pos, tmp, nextPos, retVal, strLen, formDate;

	retVal = "";
	strLen = formDate.length;
	pos = formDate.indexOf("/");
	if (pos == -1 && strLen >= 6) // Se mancano le barre e ci sono almeno 6 caratteri provo a mettere le barre
	{
		tmp = formDate.substr(2, 2) + "/" + formDate.substr(0, 2) + "/" + formDate.substr(strLen - 4, strLen - 1);
		if (Date.parse(tmp) != 0)
			return tmp;
	}
	else
	{
		nextPos = formDate.indexOf("/", pos + 1);
		if (nextPos != 0)
		{
			tmpYear = formDate.substr(nextPos + 1, strLen - nextPos - 1);
			if (tmpYear.length==2) {tmpYear = "20" + tmpYear}
			tmp = formDate.substr(pos + 1, nextPos - pos - 1) + "/" + formDate.substr(0, pos) + "/" + tmpYear;
			if (Date.parse(tmp) != 0)
				return tmp;
		}
		else
			return "";
	}
}

function dBDate2FormDate(formDate)
{
	var pos, tmp, nextPos, retVal, strLen;

	retVal = "";
	strLen = formDate.length;
	pos = formDate.indexOf("/");
	nextPos = formDate.indexOf("/", pos + 1);
	if (nextPos != 0)
	{
		tmp = formDate.substr(pos + 1, nextPos - pos - 1) + "/" + formDate.substr(0, pos) + "/" + formDate.substr(nextPos + 1, strLen - nextPos - 1);
		if (Date.parse(tmp) != 0)
			return tmp;
	}
	else
		return "";
}

function formDecimal2DBDecimal(formDecimal)
{
	return formDecimal.replace(',', '.');
}

function isNetscape()
{	
	if (navigator.appName.indexOf("Netscape") != -1)		
		if (navigator.appVersion.substring(0,1)<5)
		{
			return true;
		}
	else
		return false;
}

function confermaEliminazione()
{
	if (confirm("Si vuol eliminare il record corrente?"))
		return true;
	return false;
}

function confermaEliminazioneRiga()
{
	if (confirm("Si vuol eliminare la riga corrente?"))
		return true;
	return false;
}

// Toglie il nome del file da un path.
// Es: /dir1/dir2/dir3/testo.txt -> /dir1/dir2/dir3/

function rmFileNameFromPath(path)
{
	var i, j, tmp;

	// Cerco il primo slash o backslash a partire da destra

	for (i = path.length - 1; i >= 0; i--)
	{
		if (path.charAt(i) == "/" || path.charAt(i) == "\\")
			break;
	}

	tmp = "";
	for (j = 0; j <= i; j++)
	{
		tmp = tmp + path.charAt(j);		
	}
	return tmp;
}

// Toglie gli eventuali parametri passati via "get" da un path.
// Es: /dir1/dir2/dir3/testo.txt -> /dir1/dir2/dir3/

function rmParamFromPath(path)
{
	var i, tmp;

	tmp = "";
	for (i = 0; i <= path.length; i++)
	{
		if ( path.charAt(i) == "?" )
			break;

		tmp = tmp + path.charAt(i);
	}
	return tmp;
}

function setHiddenLinked(formLinkedFieldName, fieldIndex)
{
	var objCheck = eval("window.document.forms[0].elements['" + formLinkedFieldName + "']")
	if (objCheck.length == null) // CheckBox su maschera a pagina singola
	{
		if (window.document.forms[0].elements[formLinkedFieldName].value == "0")
			window.document.forms[0].elements[formLinkedFieldName].value = "1";
		else
			window.document.forms[0].elements[formLinkedFieldName].value = "0";		
	}
	else // CheckBox su maschera a righe
	{
		if (window.document.forms[0].elements[formLinkedFieldName][fieldIndex].value == "0")
			window.document.forms[0].elements[formLinkedFieldName][fieldIndex].value = "1";
		else
			window.document.forms[0].elements[formLinkedFieldName][fieldIndex].value = "0";
	}
}

function setHiddenDecimal(formFieldName, formLinkedFieldName, fieldIndex)
{
	if (fieldIndex == -1 || window.document.forms[0].elements[formLinkedFieldName].length == null) { // Decimale su maschera a pagina singola
		window.document.forms[0].elements[formLinkedFieldName].value = formDecimal2DBDecimal(window.document.forms[0].elements[formFieldName].value);
	}else // Decimale su maschera a righe
		window.document.forms[0].elements[formLinkedFieldName][fieldIndex].value = formDecimal2DBDecimal(window.document.forms[0].elements[formFieldName][fieldIndex].value);
}

function dataFormStartupActions(_fieldName)
{
	if (window.document.forms[0].elements[_fieldName]!=null){
		if (window.document.forms[0].elements[_fieldName].length==null)	{
			window.document.forms[0].elements[_fieldName].focus();
		} else {
			window.document.forms[0].elements[_fieldName][0].focus();
		}		
	}	
}

function gridFormStartupActions(_fieldIdx)
{
	if (document.forms[0].elements.length > _fieldIdx) // La form potrebbe non avere campi!!!
		document.forms[0].elements[_fieldIdx].focus()
}

function searchFormStartupActions(_fieldName)
{
	if (window.document.forms[0].elements[_fieldName]!=null){
		window.document.forms[0].elements[_fieldName].focus();
	}
}

function cleanString(_str)
{
	var i, newStr;

	newStr = "";
	for (i = 0; i < _str.length; i++)
		if (_str.charAt(i) == '\'' || _str.charAt(i) == '’' || _str.charAt(i) == '"')
			newStr = newStr + '`';
		else if (_str.charAt(i) == '&')
			newStr = newStr + '%26';
		else if (_str.charAt(i) == '–')
			newStr = newStr + '-';
		else
			newStr = newStr + _str.charAt(i);

	return Trim(newStr);
}

function cleanStringR(_str)
{
	var i, newStr;

	newStr = "";
	for (i = 0; i < _str.length; i++)
		if (_str.charAt(i) == '\'' || _str.charAt(i) == '’')
			newStr = newStr + '`';
		else 
			if (_str.charAt(i) == '"' || _str.charAt(i) == '“' || _str.charAt(i) == '”')
				newStr = newStr + '_';
			else
				newStr = newStr + _str.charAt(i);
	
	return Trim(newStr);
}

function Trim(val){
	re=/\s+$|^\s+/g;   
	return val.replace(re,"");   
}

function LTrim(val){
	re=/^\s+/g;
	return val.replace(re,"");
}

function RTrim(val){
	re=/\s+$/g;
	return val.replace(re,"");
}

function updateFormField(formID, ctrlIdx, formFields, formFieldsName, SQLString, Context, SubContext){
	attributes = "width=300,height=185,menubar=no,scrollbars=no,resizable=no";

	window.open("/Lib/UpdateFormField.asp?formFieldsName=" + formFieldsName + "&formID=" + formID + "&ctrlIdx=" + ctrlIdx + "&formFields=" + formFields + "&SQLString=" + SQLString + "&Context=" + Context + "&SubContext=" + SubContext, "", attributes);
	return false;
}

function inArray(arrayValues, valueToFind) {
	var i;
	if (arrayValues.length != null)	{
		for (i=0;i<arrayValues.length;i++) {
			if (arrayValues[i] == valueToFind) {
				return i;
			}
		}
	}
	return -1;
}

function data2String(strData){
var mese 
var giorno
var anno
var dt, dt1, dt2;
var dt = formDate2DBDate(strData);
dt1 = dt.substr(0,dt.indexOf("/"));
mese = dt1;
if (dt1.length==1) {mese="0"+dt1;}

dt2 = dt.substr(dt1.length+1,dt.length-dt1.length);

dt1 = dt2.substr(0,dt2.indexOf("/"));
giorno = dt1;
if (dt1.length==1) {giorno="0"+dt1;}

dt2 = dt2.substr(dt1.length+1,dt2.length-dt1.length);

dt1 = dt2.substr(0);
anno = dt1;
if (dt1.length==2) {anno="20"+dt1;}
return (anno+mese+giorno);
}

function cleanImporto(_str) {
	// 1.250,54 -> 1250.54
	
	return FormNumber2DBNumber(_str);
}

function FormNumber2DBNumber(_str) {
	// 1.250,54 -> 1250.54
	var i, newStr, newstr2;

	newStr = new String(_str);
	newStr = newStr.replace(/\./g, "");
	newStr = newStr.replace(/,/g, ".");	

	return newStr;
}

function DBNumber2FormNumber(_str) {
	// (1,250.54 || 1250.54) -> 1.250,54
	var i, j, strTemp, strInt, strDec, newStr
	strTemp = new String(_str)
	strTemp = strTemp.replace(/,/g, "");
	if (strTemp.indexOf(".")>0){
		strInt = strTemp.split(".")[0];
		strDec = "," + strTemp.split(".")[1];
	} else {
		strInt = strTemp;
		strDec = "";
	}		
	newStr = strDec;

	j = 0;
	for (i=strInt.length-1;i>=0;i--){
		if (j>=3) {
			newStr = "." + newStr;
			j = 0;
		}
		newStr = strInt.charAt(i) + newStr;
		j = j + 1;
	}
	
	return newStr;
}

function EnterInputNumber(inputObj) {
	// 1.250,54 -> 1250,54
	var newStr;
	newStr = new String(inputObj.value);
	if (isNetscape) {
		inputObj.attValue = newStr;
	}
	newStr = newStr.replace(/,/g, "#");
	newStr = newStr.replace(/\./g, "");
	newStr = newStr.replace(/#/g, ",");
	inputObj.value = newStr;
	inputObj.select();
}

function ExitInputNumber(inputObj, nDec) {
	// 1250,54 -> 1.250,54
	var newStr, strTemp;	
	if (inputObj.value == ""){
		return "";
	} else {
		strTemp = FormNumber2DBNumber(inputObj.value);		
	}
	strTemp = new String(formatDouble(parseFloat(strTemp), nDec));
	
	newStr = DBNumber2FormNumber(strTemp);

	if (newStr == "NaN") {
		inputObj.value = "";
	} else {
		inputObj.value = newStr;
	}
	if (isNetscape) {
		if (inputObj.onchange != null) {
			if (inputObj.attValue != newStr) {
				inputObj.onchange.apply();
			}
		}
	}
	return true;
}

function formatDouble(val,nDec) {
	// nDec=2 : 1250.54475 -> 1250.54
	var newVal, newValStr, posDec;
	
	if (!isNaN(val)) {
		newVal = val * Math.pow(10,nDec);
		newVal = Math.round(newVal);
		newVal = newVal / Math.pow(10,nDec);
		newValStr = newVal + "";
		posDec = newValStr.indexOf(".")
		if (posDec==-1) {
			newValStr = newValStr + ".";
			for (i=0;i<nDec;i++) { 
				newValStr = newValStr + "0";
			}
		}
		if (nDec==0 && newValStr.substr(newValStr.length-1,1) == "."){
			newValStr = newValStr.substr(0,newValStr.length-1);
		}
		if (newValStr.length-posDec-1<nDec) {
			for (i=0;newValStr.length-posDec-1<nDec;i++) { 
				newValStr = newValStr + "0"
			}
			
		}
		return newValStr;
	} else {
		return val;
	}
}

function restoreNumberOnBack(){
	var objForm = document.forms[0];
	if (objForm.hidBeforeSubmit != null) {
		if (objForm.hidBeforeSubmit.value != "0") {

			var argv = restoreNumberOnBack.arguments;
			var argc = restoreNumberOnBack.arguments.length;

			var strObjInput = (0 < argc) ? argv[0] : "";
			
			if (strObjInput == "") {
				for (i = 0, numFields = objForm.length; i < numFields; i++)	{
					str = new String(objForm.elements[i].name);			
					if (str.search(/db\d/)>=0 || str.search(/ro\d/)>=0) {
						objForm.elements[i].value = DBNumber2FormNumber(objForm.elements[i].value);
					}
				}
			} else {
				var arrObjInput = strObjInput.split(",");
				for (var iObj=0;iObj<arrObjInput.length;iObj++) {
					if (eval("(objForm." + arrObjInput[iObj] + " != null)")) {
						var objInput = eval("objForm." + arrObjInput[iObj]);
						if (objInput.length == null) {
							objInput.value = DBNumber2FormNumber(objInput.value);
						} else {
							for (i=0;i<objInput.length;i++) {
								objInput[i].value =DBNumber2FormNumber(objInput[i].value);
							}
						}
					}
				}
			}

		}
		objForm.hidBeforeSubmit.value = "0";
	}
}

function setNumberOnSubmit(){
	var objForm = document.forms[0];
	if (objForm.hidBeforeSubmit != null) {
		if (objForm.hidBeforeSubmit.value == "0") {

			var argv = setNumberOnSubmit.arguments;
			var argc = setNumberOnSubmit.arguments.length;

			var strObjInput = (0 < argc) ? argv[0] : "";
			
			if (strObjInput == "") {
				for (i = 0, numFields = objForm.length; i < numFields; i++)	{
					str = new String(objForm.elements[i].name);			
					if (str.search(/db\d/)>=0 || str.search(/ro\d/)>=0) {
						if (objForm.elements[i].type != "select-one" && objForm.elements[i].type != "select-multiple") {
							objForm.elements[i].value = FormNumber2DBNumber(objForm.elements[i].value);
						}						
					}
				}
			} else {				
				var arrObjInput = strObjInput.split(",");
				for (var iObj=0;iObj<arrObjInput.length;iObj++) {					
					if (eval("(objForm." + arrObjInput[iObj] + " != null)")) {
						var objInput = eval("objForm." + arrObjInput[iObj]);
						if (objInput.length == null) {
							objInput.value = FormNumber2DBNumber(objInput.value);
						} else {
							for (i=0;i<objInput.length;i++) {
								objInput[i].value = FormNumber2DBNumber(objInput[i].value);
							}
						}
					}
				}
			}
		}
		objForm.hidBeforeSubmit.value = "1";
	}
}

function prepareSubmit() {
	var objForm = document.forms[0];
	if (objForm.hidBeforeSubmit != null) {
		objForm.hidBeforeSubmit.value = "1";
	}
}

function cleanString2(_str)
{
	var i, newStr, newstr2;

	newStr = "";
	for (i = 0; i < _str.length; i++)
		if (_str.charAt(i) == '\'' || _str.charAt(i) == '"')
			newStr = newStr + '`';
		else if (_str.charAt(i) == '–') // carattere speciale MS-WORD
			newStr = newStr + '-';
		else
			newStr = newStr + _str.charAt(i);

	newStr2 = "";
	for (i = 0; i < newStr.length; i++)
		if (newStr.charAt(i) == ',')
			newStr2 = newStr2 + ';;';
		else
			newStr2 = newStr2 + newStr.charAt(i);

	return newStr2;
}

function checkValutazione(field, obbligatorio, IDEsito, checkValMin, valMin, valMax) {
	var i;
	newStr = "";
	newStr = field.value.replace(/\D*/, "");

	field.value = newStr;
	if (!obbligatorio && field.value=="") {
		return true;
	}

	newStr = field.value.replace(".", ",");
	field.value = newStr;

	if (!isFinite(field.value)) {
		alert("Le valutazioni devono essere un numero intero compreso tra "+valMin+" e "+valMax);
		field.focus();
		return false;
	} else {
		if (parseInt(field.value)<parseInt(valMin) || parseInt(field.value)>parseInt(valMax)) {
			alert("Le valutazioni devono essere un numero intero compreso tra "+valMin+" e "+valMax);
			field.focus();
			return false;
		}
		if (checkValMin && IDEsito=="1" && parseInt(field.value)<6) {
			alert("Generalmente una valutazione (se espressa in decimi)  inferiore a 6 non dà l'idoneità. Verificare che il dato sia corretto");
		}
	}
	
	return true;
}


function onlyInt(obj, chkFormValue) {
	var value;

	if (obj.value != "") {
		if (chkFormValue) {
			value = parseFloat(FormNumber2DBNumber( obj.value ));			
		} else {
			value = parseFloat( obj.value );
		}
		if (isNaN(value))
		{
			value = ""
		}
		obj.value = Math.round(value) ;

	}

}

function getValueCombo(comboField) {
	return comboField.options[comboField.selectedIndex].value;
}

function getDefaultValueCombo(comboField) {
var i;
	for (i=0; i<comboField.options.length; i++) {
		if (comboField.options[i].defaultSelected) {
			return comboField.options[i].value;
		}
	}
}

function setDefaultCombo(comboField) {
var i;
	for (i=0; i<comboField.options.length; i++) {
		if (comboField.options[i].defaultSelected) {
			comboField.options.selectedIndex = i;
		}
	}	
}

function setValueCombo(comboField, value) {
var i;
	for (i=0; i<comboField.options.length; i++) {
		if (comboField.options[i].value == value) {
			comboField.options.selectedIndex = i;
		}
	}	
}

function selColore(formID, ctrlIdx, fieldValue, Context, IDApplication){
	var attributes;

	if (isNetscape())
		attributes = "width=150,height=305,menubar=no,scrollbars=no,resizable=no";
	else
		attributes = "width=150,height=385,menubar=no,scrollbars=no,resizable=no";
	
	if (IDApplication == "undefined") { IDApplication = 0 }

	window.open("/Lib/ListBox/ListBoxColori.asp?formID=" + formID + "&ctrlIdx=" + ctrlIdx + "&fieldValue=" + fieldValue + "&Context=" + Context + "&IDApplication=" + IDApplication, "", attributes);
	return false;
}

function getValueInput(inputField) {
	if (inputField.type == "select-one" || inputField.type == "select-multiple") {
		return getValueCombo(inputField);
	}
	if (inputField.type == "checkbox") {
		return (inputField.checked);
	}
	if (inputField.type == "radio") {
		if (inputField.length != null) {
			if (inputField.checked) {
				return inputField.value;
			} else {
				return "";
			}
		} else {
			for (var i;i<inputField.length;i++)	{
				if (inputField[i].checked) {
					return inputField[i].value;
				}
			}
			return "";
		}
	}
	return inputField.value;
}

function setCheckboxUnica(ctrlIdx, chkName, hidName, keyName) {
	var objFormChk = document.forms[0].elements[chkName];
	var objFormHid = document.forms[0].elements[hidName];
	var objFormKey = document.forms[0].elements[keyName];
	var IDAllievoCurr, i;

	if (objFormHid.length==null) {
		if (objFormChk.checked) objFormHid.value="1";
		else objFormHid.value="0";
	} else {
		if (objFormChk[ctrlIdx].checked) {
			objFormHid[ctrlIdx].value="1";
			IDAllievoCurr = objFormKey[ctrlIdx].value;
			for (i=ctrlIdx-1;i>=0;i--) {
				if (IDAllievoCurr!=objFormKey[i].value) break;
				if (objFormChk[i].checked) {
					objFormChk[i].checked = false;
					objFormHid[i].value="0";

					if (objFormChk[i].onclick!=null) {
						objFormChk[i].onclick.apply();
					}
				}
			}
			for (i=ctrlIdx+1;i<objFormHid.length;i++) {
				if (IDAllievoCurr!=objFormKey[i].value) break;
				if (objFormChk[i].checked) {
					objFormChk[i].checked = false;
					objFormHid[i].value="0"

					if (objFormChk[i].onclick!=null) {
						objFormChk[i].onclick.apply();
					}
				}
			}
		} else {
			objFormHid[ctrlIdx].value="0";
		}		
	}
}

function selectFormStartupActions(_fieldName)
{
	window.document.forms[0].elements[_fieldName].select();
}

function CheckTelefono(Tel) {
	if(Tel == "")
		return true;

	var pattern = /^0[0-9]{1,3}[-,/, ]?\d{4,8}$/;
	return (pattern.test(Tel));
}

function CheckCellulare(Cell) {
	if(Cell == "")
		return true;

	var pattern = /^[1-9][0-9][0-9][-,/, ]?[\d]{6,7}$/;
	return (pattern.test(Cell));
}

function SetUpdForm(objInput, idx)
{
	var flagUpdated = false;
	
	//alert("SetUpdForm 1");
	
	if (isNaN(idx))
	{	
		idx = -1;
		var objInputField = objInput;
	}
	else
	{
		if (objInput.type == "text" || objInput.type == "textarea" || objInput.type == "password" || objInput.type == "hidden" || objInput.type == "select-one" || objInput.type == "checkbox")
		{
			objInputField = objInput;
		}
		else
		{
			try
			{
				objInputField = objInput[idx];	
			}
			catch (e)
			{
				idx = 0;
				objInputField = objInput;
			}
		}
	}


	var namehidUpdForm = kUpdateStatusFieldNamePrefix + getSubformName(objInputField.name);
	if (idx >= 0) 
		namehidUpdForm += "_" + idx;
	//alert("ok");
	//alert(namehidUpdForm);
	if (document.forms[0].elements[namehidUpdForm] != null)
	{
		var objhidUpdForm = document.forms[0].elements[namehidUpdForm];

		if (objhidUpdForm.value == "0")
		{	
			if (objInputField.type == "text" || objInputField.type == "textarea" || objInputField.type == "password")
			{
				//alert("objInputField.defaultValue: " + objInputField.defaultValue);
				//alert("objInputField.value: " + objInputField.value);
				flagUpdated = (objInputField.defaultValue != objInputField.value)			
			}
			
			if (objInputField.type == "hidden")
			{
				// nel campo hidden defaultValue e value sono sempre uguali
				flagUpdated = true;			
			}

			if (objInputField.type == "select-one")
			{
				flagUpdated = (getDefaultValueCombo(objInputField) != getValueCombo(objInputField))
			}
			
			if (objInputField.type == "checkbox")
			{
				flagUpdated = (objInputField.defaultChecked != objInputField.checked)
			}

			objhidUpdForm.value = flagUpdated ? "1" : "0";
			//alert("objhidUpdForm:" + objhidUpdForm.value);
			return true;
		}
	}
}

function getSubformName(formFieldName)
{
	if (formFieldName.indexOf("_")>0)	
		return formFieldName.substring(4, formFieldName.indexOf("_"));
	else
		return "";
}

