
// this function will get the keycode
function getKeyCode(e) {
	if (window.event) {
		return window.event.keyCode;
	} else if (e) {
		return e.which;
	} else {
		return null;
	}
}
// this function will allow numeric entry only.
function keyRestrict(e, validchars) {
	var key='', keychar='';
	key = getKeyCode(e);

	if (key == null) return true;

	keychar = String.fromCharCode(key);
	keychar = keychar.toLowerCase();
	validchars = validchars.toLowerCase();
	if (validchars.indexOf(keychar) != -1) {
		return true;
	}
	if ( key==null || key==0 || key==8 || key==9 || key==13 || key==27 ) {
		return true;
	}

	return false;
}

// this function will validate email entry.
function isValidEmail(asEmail) {
	if(window.RegExp && asEmail) {
		var regstr1 = "(@.*@)|(\\.\\.)|(@\\.)|(\\.@)|(^\\.)"
		var regstr2 = "^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$"
		var regExp1 = new RegExp(regstr1)
		var regExp2 = new RegExp(regstr2)
		var regExp3 = /[^a-zA-Z0-9\-_.@]/
		if(!(!regExp1.test(asEmail) && regExp2.test(asEmail) && !regExp3.test(asEmail)) || !(asEmail.indexOf("@")>=0)) {
			return false;
		}
		return true;
	}
}

//function to check valid email address
function isValidEmail2(asEmail) {
	var loRegExp = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;

	// search email text for regular exp matches
	if(loRegExp.test(asEmail) == false) {
		return false;
    } 
    return true; 
}

// Newletter Subscription
function ufSubscribe() {
	var loForm = document.frmMember;
	
	if (loForm.cbxNewsLetter.checked) {
		loForm.hfNewsletter.value = "Y";
	} else {
		loForm.hfNewsletter.value = "N";
	}
}

// submit validation
function ufSubmit() {
	var loForm = document.frmMember;
	var lsErrMsg = "";
	var lbProceed = false;

	if (loForm.ddlbAnswer.value=="") {
		lsErrMsg = "Answer to this week episode is required.";
		loForm.ddlbAnswer.focus();
	} else if (loForm.ddlbSalutation.value=="") {
		lsErrMsg = "Salutation is required.";
		loForm.ddlbSalutation.focus();
	} else if (loForm.txtFirstName.value=="") {
		lsErrMsg = "First Name is required.";
		loForm.txtFirstName.focus();
	} else if (loForm.txtLastName.value=="") {
		lsErrMsg = "Last Name is required.";
		loForm.txtLastName.focus();
	} else if (loForm.ddlbGender.value=="") {
		lsErrMsg = "Gender is required.";
		loForm.ddlbGender.focus();
	} else if ((loForm.ddlbDayDOB.value=="") || (loForm.ddlbMonthDOB.value=="") || (loForm.ddlbYearDOB.value=="")) {
		lsErrMsg = "Date Of Birth is required.";
		loForm.ddlbDayDOB.focus();
	} else if (loForm.txtNationality.value=="") {
		lsErrMsg = "Nationality is required.";
		loForm.txtNationality.focus();
	} else if (loForm.txtNRIC.value=="") {
		lsErrMsg = "NRIC / Passport is required.";
		loForm.txtNRIC.focus();
	} else if (loForm.txtHandPhoneNo.value=="") {
		lsErrMsg = "Handphone No. is required.";
		loForm.txtHandPhoneNo.focus();
	} else if (loForm.txtEmail.value == "" || loForm.txtEmail.value == null || !isNaN(loForm.txtEmail.value) || (loForm.txtEmail.value).charAt(0) == ' ') {
		lsErrMsg = "E-mail is required.";
		loForm.txtEmail.focus();
	} else if (!(isValidEmail(loForm.txtEmail.value))) {
		lsErrMsg = "A valid E-mail address is required.";
		loForm.txtEmail.focus();
	} else if (loForm.taMailingAddress.value=="") {
		lsErrMsg = "Mailing Address is required.";
		loForm.taMailingAddress.focus();
	} else if (loForm.txtPostalCode.value=="") {
		lsErrMsg = "Postal Code is required.";
		loForm.txtPostalCode.focus();
	} else if (loForm.txtCountry.value=="") {
		lsErrMsg = "Country is required.";
		loForm.txtCountry.focus();
	} else if (loForm.txtOccupation.value=="") {
		lsErrMsg = "Occupation is required.";
		loForm.txtOccupation.focus();
	} else if (!(loForm.cbxTAC.checked)) {
		lsErrMsg = "Please read the Terms and Conditions and select the option.";
		loForm.cbxTAC.focus()
	} else {
		lsErrMsg = "";
		lbProceed = true;
	}

	if (lbProceed) {
		loForm.action="contests_process.php";
		loForm.submit();
	} else {
		alert(lsErrMsg)	;
	}

}

function ufGenerate() {
	var loForm = document.frmWinner;
	var lsErrMsg = "";
	var lbProceed = false;
	
	if (loForm.txtUserID.value=="") {
		lsErrMsg = "User ID is required.";
		loForm.txtUserID.focus();
	} else if (loForm.txtPassword.value=="") {
		lsErrMsg = "User ID is required.";
		loForm.txtPassword.focus();
	} else {
		lsErrMsg = "";
		lbProceed = true;
	}
	
	if (lbProceed) {
		loForm.action="sif_generate_winner.php";
		loForm.hfAuthenticate.value = "yes";
		loForm.submit();
	} else {
		alert(lsErrMsg)	;
	}
}

function ufMemberList() {
	var loForm = document.frmMemberList;
	var lsErrMsg = "";
	var lbProceed = false;
	
	if (loForm.ddlbWeek.value=="") {
		lsErrMsg = "Week episode is required.";
		loForm.ddlbWeek.focus();
	} else {
		lsErrMsg = "";
		lbProceed = true;
	}
	
	if (lbProceed) {
		loForm.action="sif_member_list.php#ListTag";
		loForm.hfGenerateList.value = "yes";
		loForm.submit();
	} else {
		alert(lsErrMsg)	;
	}
}


function ufCancel() {
	location.replace("contests_login.php");
}

// validate login
function ufLogin() {
	var loForm = document.frmLogin;
	var lsErrMsg = "";
	var lbProceed = false;

	if (loForm.txtEmail.value == "" || loForm.txtEmail.value == null || !isNaN(loForm.txtEmail.value) || (loForm.txtEmail.value).charAt(0) == ' ') {
		lsErrMsg = "Username is required.";
		loForm.txtEmail.focus();
	} else if (!(isValidEmail(loForm.txtEmail.value))) {
		lsErrMsg = "A valid E-mail address is required for Username.";
		loForm.txtEmail.focus();
	} else if (loForm.txtPassword.value=="") {
		lsErrMsg = "Password is required.";
		loForm.txtPassword.focus();
	} else {
		lsErrMsg = "";
		lbProceed = true;
	}

	if (lbProceed) {
		loForm.action="contests_login.php";
		loForm.hfValidate.value = "yes";
		loForm.submit();
	} else {
		alert(lsErrMsg)	;
	}

}

