/* 
Use CheckFields
	var fieldName = new Array("ServiceCode");
	var fieldReg = new Array("[\\w]");
	var fieldMsg = new Array("Select visa!");
	if (CheckFields(frm, fieldName, fieldReg, fieldMsg) == false) {return false};
	var fieldName = new Array("MailAddress");
	var fieldReg = new Array("^[\\w-_\.]*[\\w-_\.]\@[\\w]\.+[\\w]+[\\w]$");
	var fieldMsg = new Array("Check E Mail");
	if (CheckFields(frm, fieldName, fieldReg, fieldMsg) == false) {return false};
Use CheckValidDate
	var BirthDate;
	BirthDate = CheckValidDate(frm, "BirthDateYYYY" , "BirthDateMM", "BirthDateDD");
	if ( BirthDate == false) {
		alert('Check Birtday');
		return false;
	}
*/
function getFieldValue(frm, fieldName) {
	var field = frm.elements[fieldName];
	if (field == null) { return ("") };
	var fieldType= field.type;
	if (fieldType == "text" || fieldType == "textarea" || fieldType == "hidden") { 
		return (field.value);
	}
	
	if (fieldType == "select-one") {
		return (field.options[field.options.selectedIndex].value );
	}
	
	if (fieldType == "radio" || fieldType == "checkbox") {
		if (field.checked == true ) {
			return (field.value);
		}
		return "";
	}
	
	if (String(fieldType) == "undefined") { //multiple radio or checkbox (i hope :)
		for( var i=0; i< field.length; i++) {
			if (field[i].checked == true ) {
				return (field[i].value);
			}
		}
		return("");
	}	
	return ("");
}
function setFormValue(frm, fieldName, newValue){
	var field = frm.elements[fieldName];
	if (field == null) { return };
	var fieldType= field.type;
	if (fieldType == "text" || fieldType == "textarea" || fieldType == "hidden"){ 
		field.value = newValue;
		return;
	}
	
	if (fieldType == "select-one") {
		for (var i =0; i< field.options.length; i++) {
			if (field.options[i].value == newValue) {
				field.options.selectedIndex=i;
				return;
			}
		}
		return;
	}
	
	if (fieldType == "radio" || fieldType == "checkbox") {
		if (field.value == newValue ) {
			field.checked = true;
		} else {
			field.checked = false;			
		}
		return ;
	}
	
	if (String(fieldType) == "undefined") { //multiple radio or checkbox (i hope :)
		for( var i=0; i< field.length; i++) {
			if (field[i].value == newValue ) {
				field[i].checked = true;
			} else {
				field[i].checked = false;
			}
		}
		return;
	}
	
	return;
}
function CheckFields(frm, fieldName, fieldReg, fieldMsg) {
	var fv;
	for (var i=0; i< fieldName.length; i++) {
		fv = getFieldValue(frm, fieldName[i]);
		var regex = new RegExp(fieldReg[i]);
		if (regex.test(fv) == false) {
			fieldFocus(frm, fieldName[i]);
	    		alert(fieldMsg[i]);
			return false;
		}
	}
	return true;
}
function CheckValidDate(frm, fieldYYYY, fieldMM, fieldDD) {
	var mydate = new Date();
	var YYYY = frm.elements[fieldYYYY];
	i_year = YYYY.options[YYYY.selectedIndex].value;
	var MM = frm.elements[fieldMM];
	i_month = MM.options[MM.selectedIndex].value - 1;
	var DD = frm.elements[fieldDD];
	i_day = DD.options[DD.selectedIndex].value;
	mydate = new Date(i_year, i_month, i_day);
               if ((i_day == mydate.getDate()) && (i_month == mydate.getMonth()) && (i_year == mydate.getFullYear()) && (i_year>1753)) {
		return mydate;
	} else {
		frm.elements[fieldDD].focus();
		return false;
	}
}
function fieldFocus(frm, fieldName) {
	var field = frm.elements[fieldName];
	if (field == null) { return ("") };
	var fieldType = field.type;
	if (fieldType == "text" || fieldType == "textarea" || fieldType == "hidden"){ 
		field.focus();
	}
	if (fieldType == "select-one") {
		field.focus();
	}
	if (fieldType == "radio" || fieldType == "checkbox") {
		field.focus();
	}
	return true;	
}
function loadScript(src, cursorWait) {
	if (cursorWait) document.body.style.cursor = "wait";
	var scriptElem = document.createElement('script');
	scriptElem.setAttribute('src',src);
	scriptElem.setAttribute('type','text/javascript');
	document.getElementsByTagName('head')[0].appendChild(scriptElem);
}

