var clock_h;
var clock_m;
var clock_s;
var clock_timer;
function upcoming(){
	alert("Upcoming soon!");
}
function ltrim(s) { 
    return s.replace(/^\s*/,"");
} 
function rtrim(s) { 
    return s.replace(/\s*$/,"");
}
function trim(s) {
    return ltrim(rtrim(s));
}
function leadingZero(i) {
	if (Number(i)<10)
		i="0" + Number(i);
	return i;
}
function h12(i) {
	return (i>12)?i-12:((i==0)?12:i);
}
function a12(i) {
	return (i>11)?"pm":"am";
}

function getRadioValues(rdoObj) {
	var objVal = "";
	var objLen = rdoObj.length;
	if (objLen>1)
		for (i=0;i<objLen;i++)
			if (rdoObj[i].checked)
				objVal = rdoObj[i].value;
	else
		if (rdoObj.checked)
			objVal = rdoObj.value;
	return objVal;
}
function getCheckBoxValues(chkLst) {
	var arr = new Array();
	var result = "";
	if (chkLst!=null)
		for(i=0;i<chkLst.length;i++)
			if (chkLst[i]!=null)
				if (chkLst[i].checked)
					arr[arr.length] = chkLst[i].value;
	if (arr!=null)
		result=arr.join();
	return result;
}
function showList(objName) {
	var list = document.getElementById(objName);
	if (list.style.display=="none") {
		list.style.display="";
	} else {
		list.style.display="none";
	}
}
var current_obj;
function showList2(objName) {
	var v1 = document.getElementById(objName);
	if (v1.style.display == "") {
		v1.style.display = "none";
	} else {
		v1.style.display = "";
	}
	if ((current_obj != null) && (current_obj != v1)) {
		current_obj.style.display = "none";
	}
	current_obj = v1;
}

function changeMonth(objMonthNo) {
	var mNav = document.getElementById("m"+objMonthNo);
	var mCal = document.getElementById("cal"+objMonthNo);
	if ((mNav.style.display=="none")||(mCal.style.display=="none")) {
		mNav.style.display = "";
		mCal.style.display = "";
	} else {
		mNav.style.display = "none";
		mCal.style.display = "none";
	}
}
function regOnlineonLoad() {
	chkTrainee();
	chkExistingDiscountScheme(false);
	chkPurchaseDiscountScheme(false);
}
function chkAdmission(frmNam) {
	var frm = document.getElementById(frmNam);
	var admplcLst = frm.txt_admplc;
	var admyerLst = frm.txt_admyer;
	var yearTester = /^([1][9]([0-9]{2}))|([2][0]([0-9]{2}))$/;
	var spnObj = document.getElementById("spn_admission");
	var today = new Date();
	var thisyear = today.getFullYear();
	if ((admplcLst.length>1)&&(admyerLst.length>1)) {
		var addrow = true;
		for(i=0; i<admplcLst.length; i++) {
			if((trim(admplcLst[i].value)=="")||(trim(admyerLst[i].value)=="")||(!yearTester.test(trim(admyerLst[i].value)))||(parseInt(admyerLst[i].value,10)>thisyear)) {
				addrow = false;
			}
			
			if ((trim(admplcLst[i].value)!="")&&(trim(admyerLst[i].value)!="")&&((!yearTester.test(trim(admyerLst[i].value)))||(parseInt(admyerLst[i].value,10)>thisyear))) {
				alert("Admission year is not a correct year.\n(e.g.1998)");
				admyerLst[i].className = "error";
				admyerLst[i].focus();
			} else
				admyerLst[i].className = "";
			if ((trim(admplcLst[i].value)=="")&&(trim(admyerLst[i].value)!="")&&(yearTester.test(trim(admyerLst[i].value)))&&(parseInt(admyerLst[i].value,10)<=thisyear)) {
				alert("Your must fill in a Place of Jurisdiction with an Admission Year.");
				admplcLst[i].className = "error";
				admplcLst[i].focus();
			} else
				admplcLst[i].className = "";
		}
		if(addrow)
			spnObj.innerHTML+="<br><input type=\"text\" name=\"txt_admplc[]\" id=\"txt_admplc\" size=\"30\" maxlength=\"50\" onblur=\"chkAdmission(\'"+frmNam+"\');\"> <font class=\"7pt-gray-text-i\">(Place of Jurisdiction)</font>&nbsp;&nbsp;&nbsp;&nbsp;<input type=\"text\" name=\"txt_admyer[]\" id=\"txt_admyer\" size=\"5\" maxlength=\"4\" onblur=\"chkAdmission(\'"+frmNam+"\');\"> <font class=\"7pt-gray-text-i\">(Year)</font>";

	} else {
		if((trim(admplcLst.value)!="") && (trim(admyerLst.value)!="") && (yearTester.test(trim(admyerLst.value)))) {
			spnObj.innerHTML+="<br><input type=\"text\" name=\"txt_admplc[]\" id=\"txt_admplc\" size=\"30\" maxlength=\"50\" onblur=\"chkAdmission(\'"+frmNam+"\');\"> <font class=\"7pt-gray-text-i\">(Place of Jurisdiction)</font>&nbsp;&nbsp;&nbsp;&nbsp;<input type=\"text\" name=\"txt_admyer[]\" id=\"txt_admyer\" size=\"5\" maxlength=\"4\" onblur=\"chkAdmission(\'"+frmNam+"\');\"> <font class=\"7pt-gray-text-i\">(Year)</font>";
			admyerLst.className = "";
		} else if ((trim(admyerLst.value)!="") && ((!yearTester.test(trim(admyerLst.value))) || (parseInt(admyerLst[i].value,10)>thisyear))) {
			alert("Admission year is not a correct year.\n(e.g.1998)");
			admyerLst.className = "error";
			admyerLst.focus();
		}
	}
}
function chkTrainee() {
	var frm = document.getElementById("regfrm");
	var rdo1 = document.getElementById("rdo_trnee1");
	var rdo2 = document.getElementById("rdo_trnee2");
	var hid = document.getElementById("hid_trnee");
	if(frm.chk_trnee.checked) {
		rdo1.disabled = false;
		rdo2.disabled = false;
	} else {
		rdo1.disabled = true;
		rdo2.disabled = true;
		rdo1.checked = false;
		rdo2.checked = false;
	}
	hid.value="";
}
function chkExistingDiscountScheme(flg) {
	var frm = document.getElementById("regfrm");
	var txt = document.getElementById("txt_schcode");
	var spn = document.getElementById("spn_refcod");
	if(frm.chk_ihv.checked) {
		txt.disabled = false;
		spn.style.display="";
		if (flg)
			txt.focus();
		frm.chk_buy.checked = false;
		chkPurchaseDiscountScheme(true);
	} else {
		txt.disabled = true;
		spn.style.display="none";
	}
	if (flg)
		txt.value="";
}
function chkPurchaseDiscountScheme(flg) {
	var frm = document.getElementById("regfrm");
	var lst = document.getElementById("lst_scheme");
	var spn = document.getElementById("spn_buyscheme");
	if(frm.chk_buy.checked) {
		lst.disabled = false;
		spn.style.display="";
		frm.chk_ihv.checked = false;
		chkExistingDiscountScheme();
	} else {
		lst.disabled = true;
		spn.style.display="none";
	}
	if(flg)
		lst.selectedIndex = 0;
}
function courselistpopup() {
	// Popup a window of Course List
	theWindow = window.open("reg_course_list.php", "course_list", "width=800,height=600,top=0,left=0,resizable=0,menubar=0,Scrollbars=1,status=1,channelmode=0,directories=0,fullscreen=0,location=0,titlebar=0,toolbar=0");
}
function courselistrefresh() {
	var tbl = document.getElementById("courselisttable");
	var frm = document.getElementById("regfrm");
	var lst = frm.chk_course;
	if (lst!=null) {
		if (lst.length>1) {
			for(i=0;i<lst.length;i++) {
				if (lst[i].checked) {
					tbl.deleteRow(i+1);
					i--;
				}
			}
		} else
			if (lst.checked)
				tbl.deleteRow(1);
	}
	chkRegCourseList(document);
}
function conditionpopup(flg) {
	// flg=1: Terms & Conditions; flg=2: Online Registration Terms; flg=4: Privacy Policy
	theWindow = window.open("terms.php?t="+flg+"&b=1", "Terms", "width=700,height=500,top=0,left=0,resizable=0,menubar=0,Scrollbars=1,status=1,channelmode=0,directories=0,fullscreen=0,location=0,titlebar=0,toolbar=0");
}
function highlightRow(obj,flg) {
	if (flg)
		obj.style.background = "#DDD";
	else
		obj.style.background = "#FFF";
}
function coursedetailsinsert(num) {
	var f = document.getElementById("frm");
	var mthArr = new Array('', 'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec');
	var wekArr = new Array('Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat');
	if (f!=null) {
		var datLst = f.hid_dat;
		var ttlLst = f.hid_ttl;
		var timLst = f.hid_tim;
		var ptsLst = f.hid_pts;
		var feeLst = f.hid_fee;
		var codLst = f.hid_cod;
		var feetrnLst = f.hid_trn_fee;
		var org = f.lst_org;
		if (codLst!=null) {
			var tbl = window.opener.document.getElementById("courselisttable");
			if (codLst.length>1) {
				for (i=0; i<codLst.length;i++) {
					if ((tbl!=null) && (num==i)){
						var rowIntex = tbl.rows.length;
						var tblrow = tbl.insertRow(rowIntex);
						tblrow.id = "tr_"+codLst[i].value;
						var c1 = tblrow.insertCell(0);
						c1.vAlign = "top";
						c1.align = "center";
						c1.noWrap = true;
						c1.innerHTML=rowIntex;
						var c2 = tblrow.insertCell(1);
						c2.vAlign = "top";
						c2.align = "center";
						c2.noWrap = true;
						c2.innerHTML = "<input type=\"checkbox\" name=\"chk_course\" class=\"normal\">";
						c2.innerHTML+= "<input type=\"hidden\" name=\"hid_org[]\" id=\"hid_org\" value=\""+org.value+"\">";
						var c3 = tblrow.insertCell(2);
						c3.vAlign = "top";
						c3.align = "center";
						c3.noWrap = true;
						c3.innerHTML = codLst[i].value+"<input type=\"hidden\" name=\"hid_selcod[]\" value=\""+codLst[i].value+"\">";
						var c4 = tblrow.insertCell(3);
						c4.vAlign = "top";
						c4.align = "center";
						c4.noWrap = true;
						var dat = datLst[i].value+"";
						var datVal = dat.substr(6,2)+" "+mthArr[parseInt(dat.substr(4,2),10)]+" "+dat.substr(2,2)+"<br>("+wekArr[parseInt(dat.substr(8,1),10)]+")";
						c4.innerHTML = datVal;
						c4.innerHTML+= "<input type=\"hidden\" name=\"hid_seldat[]\" value=\""+datVal+"\">";
						c4.innerHTML+= "<input type=\"hidden\" name=\"hid_oridat[]\" value=\""+dat+"\">";
						var c5 = tblrow.insertCell(4);
						c5.vAlign = "top";
						c5.align = "left";
						c5.innerHTML = timLst[i].value+"<input type=\"hidden\" name=\"hid_seltim[]\" value=\""+timLst[i].value+"\">";
						var c6 = tblrow.insertCell(5);
						c6.vAlign = "top";
						c6.align = "left";
						c6.innerHTML = ttlLst[i].value+"<input type=\"hidden\" name=\"hid_selttl[]\" value=\""+ttlLst[i].value+"\">";
						var c7 = tblrow.insertCell(6);
						c7.vAlign = "top";
						c7.align = "right";
						c7.noWrap = true;
						c7.innerHTML = ptsLst[i].value+"<input type=\"hidden\" name=\"hid_selpts[]\" value=\""+ptsLst[i].value+"\">";
						var c8 = tblrow.insertCell(7);
						c8.vAlign = "top";
						c8.align = "right";
						c8.noWrap = true;
						c8.innerHTML = feeLst[i].value+"<input type=\"hidden\" name=\"hid_selfee[]\" value=\""+feeLst[i].value+"\"><input type=\"hidden\" name=\"hid_seltrnfee[]\" value=\""+feetrnLst[i].value+"\">";
						if ((feetrnLst[i].value!="") && ((feetrnLst[i].value).replace(/,/,"")>0))
							c8.innerHTML+= "<br>"+feetrnLst[i].value+"@";
					}
				}
				chkRegCourseList(window.opener.document);
			} else {
				if (tbl!=null) {
					var rowIntex = tbl.rows.length;
					var tblrow = tbl.insertRow(rowIntex);
					tblrow.id = "tr_"+codLst.value;
				
				var c1 = tblrow.insertCell(0);
					c1.vAlign = "top";
					c1.align = "center";
					c1.noWrap = true;
					c1.innerHTML=rowIntex;

				var c2 = tblrow.insertCell(1);
					c2.vAlign = "top";
					c2.align = "center";
					c2.noWrap = true;
					c2.innerHTML = "<input type=\"checkbox\" name=\"chk_selitm\" class=\"normal\">";
					c2.innerHTML+= "<input type=\"hidden\" name=\"hid_org[]\" value=\""+org.value+"\">";

				var c3 = tblrow.insertCell(2);
					c3.vAlign = "top";
					c3.align = "center";
					c3.noWrap = true;
					c3.innerHTML = codLst.value+"<input type=\"hidden\" name=\"hid_selcod[]\" value=\""+codLst.value+"\">";

				var c4 = tblrow.insertCell(3);
					c4.vAlign = "top";
					c4.align = "center";
					c4.noWrap = true;
					var dat = datLst.value+"";
					var datVal = dat.substr(6,2)+" "+mthArr[parseInt(dat.substr(4,2),10)]+" "+dat.substr(2,2)+"<br>("+wekArr[parseInt(dat.substr(8,1),10)]+")";
					c4.innerHTML = datVal;
					c4.innerHTML+= "<input type=\"hidden\" name=\"hid_seldat[]\" value=\""+datVal+"\">";
					c4.innerHTML+= "<input type=\"hidden\" name=\"hid_oridat[]\" value=\""+dat+"\">";
				var c5 = tblrow.insertCell(4);
					c5.vAlign = "top";
					c5.align = "left";
					c5.innerHTML = timLst.value+"<input type=\"hidden\" name=\"hid_seltim[]\" value=\""+timLst.value+"\">";
				var c6 = tblrow.insertCell(5);
					c6.vAlign = "top";
					c6.align = "left";
					c6.innerHTML = ttlLst.value+"<input type=\"hidden\" name=\"hid_selttl[]\" value=\""+ttlLst.value+"\">";
				var c7 = tblrow.insertCell(6);
					c7.vAlign = "top";
					c7.align = "right";
					c7.noWrap = true;
					c7.innerHTML = ptsLst.value+"<input type=\"hidden\" name=\"hid_selpts[]\" value=\""+ptsLst.value+"\">";
				var c8 = tblrow.insertCell(7);
					c8.vAlign = "top";
					c8.align = "right";
					c8.noWrap = true;
					c8.innerHTML = feeLst.value+"<input type=\"hidden\" name=\"hid_selfee[]\" value=\""+feeLst.value+"\"><input type=\"hidden\" name=\"hid_seltrnfee[]\" value=\""+feetrnLst.value+"\">";
					if ((feetrnLst.value!="") && ((feetrnLst.value).replace(/,/,"")>0))
						c8.innerHTML+= "<br>"+feetrnLst.value+"@";
					chkRegCourseList(window.opener.document);
				} else
					alert("Course Booking Table is missing.");
			}	
		}
	} else
		alert("Form object is missing.");

}
function chkRegCourseList(docObj) {
	var tbl = docObj.getElementById("courselisttable");
	// Do a loop to re-sequence the # number, use cnt not i
	// Inside the loop, check course_code is existed or not
	var cnt = 0;
	var codstr = "";
	var msg = "";
	if ((tbl!=null) && (tbl.rows.length>1)) {
		for (i=1;i<tbl.rows.length; i++) {
			var tmpstr = tbl.rows[i].cells[2].innerHTML;
			if (codstr.indexOf(tmpstr)!=-1) {
				tbl.deleteRow(i);
				i--;
			} else {
				if (codstr!="")
					codstr+=",";
				codstr+=tmpstr;
				cnt++;
			}
			tbl.rows[i].cells[0].innerHTML = cnt;
		}
	}
}
function chgRegCourseListPage() {
	var f = document.getElementById("frm");
	f.submit();
}
function regOnlineonSend(crtprc) {
	var f = document.getElementById("regfrm");
	if (f!=null) {
		var filflg = true;
		var crsflg = true;
		var pkgflg = true;
		var agrflg = true;
		var emlflg = true;
		var telflg = true;
		msg = "";
		f.hid_sbm.value = "N";
		var emailTester = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})$/;
		var telTester = /^[0-9]{8}$/;
		var gvn = document.getElementById("txt_gvnnam");
		if (trim(gvn.value)=="") {
			if (msg!="")
				msg+=", ";
			gvn.className = "error";
			msg+= "Given Name";
			filflg = false;
		} else
			gvn.className = "";
		var srn = document.getElementById("txt_surnam");
		if (trim(srn.value)=="") {
			if (msg!="")
				msg+=", ";
			srn.className = "error";
			msg+= "Surame";
			filflg = false;
		} else
			srn.className = "";
		var trnee = document.getElementById("chk_trnee");
		var trntxt = document.getElementById("hid_trnee");
		if(!trnee.checked)
			trntxt.value = "";
		else
			trntxt.value  = getRadioValues(f.rdo_trnee);
		if ((trnee.checked)&&(trim(trntxt.value)=="")) {
			if (msg!="")
				msg+=", ";
			msg+= "Year of Trainee";
			filflg = false;
		}
		var cmp = document.getElementById("txt_cmpnam");
		if (trim(cmp.value)=="") {
			if (msg!="")
				msg+=", ";
			cmp.className = "error";
			msg+= "Firm/Company";
			filflg = false;
		} else
			cmp.className = "";
		var ttl = document.getElementById("txt_jobttl");
		if (trim(ttl.value)=="") {
			if (msg!="")
				msg+=", ";
			ttl.className = "error";
			msg+= "Job Title";
			filflg = false;
		} else
			ttl.className = "";
		var add = document.getElementById("txt_add");
		if (trim(add.value)=="") {
			if (msg!="")
				msg+=", ";
			add.className = "error";
			msg+= "Address";
			filflg = false;
		} else
			add.className = "";
		var tel = document.getElementById("txt_tel");
		if (trim(tel.value)=="") {
			if (msg!="")
				msg+=", ";
			tel.className = "error";
			msg+= "Telephone";
			filflg = false;
		} else if (!telTester.test(trim(tel.value))) {
			telflg = false;
			tel.className = "error";
		} else
			tel.className = "";
		var fax = document.getElementById("txt_fax");
		if (trim(fax.value)=="") {
			if (msg!="")
				msg+=", ";
			fax.className = "error";
			msg+= "Fax";
			filflg = false;
		} else if (!telTester.test(trim(fax.value))) {
			telflg = false;
			fax.className = "error";
		} else
			fax.className = "";
		var mob = document.getElementById("txt_mob");
		if ((trim(mob.value)!="")&&(!telTester.test(trim(mob.value)))) {
			telflg = false;
			mob.className = "error";
		} else
			mob.className = "";
		var eml = document.getElementById("txt_eml");
		if (trim(eml.value)=="") {
			if (msg!="")
				msg+=", ";
			eml.className = "error";
			msg+= "Email";
			filflg = false;
		} else if (!emailTester.test(trim(eml.value))) {
			emlflg = false;
			eml.className = "error";
		} else
			eml.className = "";
		courselistrefresh();
		var lst = f.chk_course;
		var ihv = document.getElementById("txt_schcode");
		var crt_chkbox = document.getElementById("chk_crt");
		ihv.className = "";
		if (!filflg) {
			alert("Please fill in the compulsory fields:\n"+msg);
		} else if (lst==null) {
			crsflg = false;
			alert("Please choose the courses you want to apply by clicking [Course List].");
		} else if ((f.chk_ihv.checked)&&(trim(ihv.value)=="")) {
			pkgflg = false;
			ihv.className = "error";
			alert("Please fill in your existing discount package reference code.");
		} else if (!f.chk_agr.checked) {
			agrflg = false;
			alert("To continue, please read and agree to our\nCourse Booking Terms & Conditions.");
		}
		if (!telflg) {
			alert("Invalid Telephone/Fax/Mobile. (e.g. 28017628)");
		}

		if (!emlflg) {
			alert("Invalid Email Format.\n(e.g. info@lexomnibus.com)");
		}

		if ((filflg)&&(crsflg)&&(pkgflg)&&(agrflg)&&(emlflg)&&(telflg)) {
			if (crt_chkbox.checked)
				if (lst.length > 0)
					f.hid_certif.value = lst.length *crtprc;
				else
					f.hid_certif.value = crtprc;
			else
				f.hid_certif.value = "N";
			//alert(f.hid_certif.value);
			f.hid_sbm.value = "Y";
			f.submit();
		}
	} else
		alert("Registration Form Object is missing");
}
function regOnlineonSend2() {
	var f = document.getElementById("regfrm");
	f.hid_sbm.value = "S";
	f.submit();
}
function certAlert(p) {
	var chkbox = document.getElementById("chk_crt");
	if (chkbox.checked)
		alert("By ticking this box, which means you agree to pay "+p+" per delegate per course for the Verification of Attendance Letter & Original Payment Receipt.");
}
function coursedetailspopup(code) {
	if (code!="")
		theWindow = window.open("course_details.php?code="+code, "course_details", "width=800,height=600,top=0,left=0,resizable=0,menubar=0,Scrollbars=1,status=1,channelmode=0,directories=0,fullscreen=0,location=0,titlebar=0,toolbar=0");
}
function initTime(h,m,s) {
	clock_h=h;
	clock_m=m;
	clock_s=s;
	clock_timer = document.getElementById('div_time');
	startTime();
}
function startTime() {
	clock_s++;
	if (clock_s==60) {
		clock_s=0;
		clock_m+=1;
	}
	if (clock_m==60) {
		clock_m=0;
		clock_h+=1;
	}
	if (clock_h==24)
		window.location.reload();
	if (clock_timer!=null)
		clock_timer.innerHTML="HK Time is "+h12(clock_h)+((clock_s%2)?"<font color=\"#FFFFFF\">:</font>":":")+leadingZero(clock_m)+" "+a12(clock_h);
	myTime=setTimeout('startTime()',1000);
}
function jomfrmchk() {
	// 1=Email, 2=Post, Else=Both
	var objF = document.getElementById("jomfrm");
	var num = 0;
	if (objF!=null) {
		document.getElementById('jomtbl_gen1').style.display = "none";
		document.getElementById('jomtbl_gen2').style.display = "none";
		document.getElementById('jomtbl_gen3').style.display = "none";
		document.getElementById('jomtbl_gen4').style.display = "none";
		document.getElementById('jomtbl_gen6').style.display = "none";	
		document.getElementById('jomtbl_pst').style.display = "none";
		document.getElementById('jomtbl_eml').style.display = "none";
		document.getElementById('jomtbl_gen5').style.display = "none";
		if ((objF.chk_eml.checked)||(objF.chk_pst.checked)) {
			document.getElementById('jomtbl_gen1').style.display = "";
			document.getElementById('jomtbl_gen2').style.display = "";
			document.getElementById('jomtbl_gen3').style.display = "";
			document.getElementById('jomtbl_gen4').style.display = "";
			document.getElementById('jomtbl_gen5').style.display = "";
			document.getElementById('jomtbl_gen6').style.display = "";
		}
		if (objF.chk_eml.checked) {
			document.getElementById('jomtbl_eml').style.display = "";
		}
		if (objF.chk_pst.checked) {
			document.getElementById('jomtbl_pst').style.display = "";
		}
	} else {
		alert("JavaScript Error: Form is null.");
	}
}
function jomsbmchk() {
	var frmJ = document.getElementById("jomfrm");
	var emailTester = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})$/;
	jomsub = true;
	if (frmJ!=null) {
		msg1 = "";
		msg2 = "";
		msg3 = "";
		msg4 = "";
		frmJ.hid_typ.value = "";
		frmJ.hid_fields.value = "";
		frmJ.hid_subfrm.value = "N";
		if ((frmJ.chk_eml.checked)||(frmJ.chk_pst.checked)) {
			frmJ.hid_typ.value = (frmJ.chk_eml.checked?"e":"")+""+(frmJ.chk_pst.checked?"p":"");
			if (trim(frmJ.txt_jomnam.value)=="") {
				jomsub = false;
				msg3 = "Your name";
			}
			if ((frmJ.chk_pst.checked)&&(trim(frmJ.txt_jomadd.value)=="")) {
				jomsub = false;
				msg3+=((msg3!="")?", ":"")+"Address";
			}
			if (frmJ.chk_eml.checked) {
				if (trim(frmJ.txt_jomeml.value)=="") {
					jomsub = false;
					msg3+=((msg3!="")?", ":"")+"Email";
				} else if (!emailTester.test(trim(frmJ.txt_jomeml.value))) {
					jomsub = false;
					msg4 = "Invalid Email format.";
				}
			}
			msg3 = ((msg3!="")?"Please fill in: \n"+msg3:"");
		} else {
			jomsub = false;
			msg1 = "Please choose the way to receive our course information (i.e. Email and/or Post).";
		}
		if ((frmJ.chk_cpd.checked)||(frmJ.chk_cpt.checked)||(frmJ.chk_olqe.checked)||(frmJ.chk_oth.checked)) {
			frmJ.hid_fields.value = (frmJ.chk_cpd.checked?"1":"")+""+(frmJ.chk_cpt.checked?"2":"")+""+(frmJ.chk_olqe.checked?"3":"")+""+(frmJ.chk_oth.checked?"4":"");
		} else {
			jomsub = false;
			msg2 = "Please tick what you are interested in (i.e. Legal Area, Business / Financial Area, OLQE and Others).";
		}
		if (jomsub) {
			frmJ.hid_subfrm.value = "Y";
			frmJ.submit();
		} else {
			alert( ((msg1!="")?"\n"+msg1+"\n":"")+((msg2!="")?"\n"+msg2+"\n":"")+((msg3!="")?"\n"+msg3+"\n":"")+((msg4!="")?"\n"+msg4+"\n":"") );
		}
	} else {
		alert("JavaScript Error: Form is null or not an object.");
	}
}
function sfusbmchk() {
	var frm = document.getElementById("sfufrm");
	var emailTester = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})$/;
	sfusub = true;
	if (frm!=null) {
		msg1 = "";
		msg2 = "";
		msg3 = "";
		frm.hid_fields.value = "";
		frm.hid_cat.value = "";
		frm.hid_subfrm.value = "N";

		if (trim(frm.txt_sfunam.value)=="") {
			sfusub = false;
			if (msg1!="")
				msg1+=", ";
			msg1+="Name";
		}
		if (trim(frm.txt_sfucom.value)=="") {
			sfusub = false;
			if (msg1!="")
				msg1+=", ";
			msg1+="Firm / Company";
		}
		if (trim(frm.txt_sfuttl.value)=="") {
			sfusub = false;
			if (msg1!="")
				msg1+=", ";
			msg1+="Job Title";
		}
		if (trim(frm.txt_sfuadd.value)=="") {
			sfusub = false;
			if (msg1!="")
				msg1+=", ";
			msg1+="Address";
		}
		if (trim(frm.txt_sfueml.value)=="") {
			sfusub = false;
			if (msg1!="")
				msg1+=", ";
			msg1+="Email Address";
		} else if (!emailTester.test(trim(frm.txt_sfueml.value))) {
			sfusub = false;
			msg2 = "Invalid Email format.";
		}
		if (trim(frm.txt_sfutel.value)=="") {
			sfusub = false;
			if (msg1!="")
				msg1+=", ";
			msg1+="Telephone";
		}
		if (msg1!="")
			msg1 = "Please fill in:\n"+msg1;
		if ((frm.chk_cpd.checked)||(frm.chk_cpt.checked)||(frm.chk_olqe.checked)||(frm.chk_oth.checked)) {
			frm.hid_fields.value = (frm.chk_cpd.checked?"1":"")+""+(frm.chk_cpt.checked?"2":"")+""+(frm.chk_olqe.checked?"3":"")+""+(frm.chk_oth.checked?"4":"");
		} else {
			sfusub = false;
			msg3 = "Please choose Area(s) you are focusing on (i.e. Legal Area, Business / Financial Area, OLQE and Others).";
		}
		frm.hid_cat.value = getCheckBoxValues(frm.chk_sfucat);
		if (sfusub) {
			frm.hid_subfrm.value = "Y";
			frm.submit();
		} else {
			alert( ((msg1!="")?"\n"+msg1+"\n":"")+((msg2!="")?"\n"+msg2+"\n":"")+((msg3!="")?"\n"+msg3+"\n":"") );
		}

	} else {
		alert("JavaScript Error: Form is null or not an object.");
	}
}

function sncsbmchk() {
	var frm = document.getElementById("sncfrm");
	var emailTester = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})$/;
	sncsub = true;
	if (frm!=null) {
		msg1 = "";
		msg2 = "";
		frm.hid_subfrm.value = "N";

		if ((trim(frm.txt_snceml.value)!="") && (!emailTester.test(trim(frm.txt_snceml.value)))) {
			sncsub = false;
			msg1 = "Invalid Email format.";
		}
		var catcnt = true;
		var catLst = frm.lst_snccat;
		for(i=1;i<catLst.length;i++) {
			if (catLst[i].value!=0)
				catcnt = false;
		}
		if (catcnt) {
			sncsub = false;
			msg2 = "Please at least pick one category you suggested.";
		}

		if (sncsub) {
			frm.hid_subfrm.value = "Y";
			frm.submit();
		} else {
			alert( ((msg1!="")?"\n"+msg1+"\n":"")+((msg2!="")?"\n"+msg2:"") );
		}

	} else {
		alert("JavaScript Error: Form is null or not an object.");
	}
}

