//this file is a javascript validation collection.
//please feel free to use this script.
//this is my own & my collegue javascript collection.
//can be free to use for doing project under Vintedge.Pte. Ltd.
function checkreset() {
    if (confirm('This will lose your changes, do you want to continue?')) {
        //if click OK, reset the form, otherwise do nothing 
        document.forms[0].reset()
    }
} 

function ismaxlength(obj){
	var mlength=obj.getAttribute? parseInt(obj.getAttribute("maxlength")) : ""
	if (obj.getAttribute && obj.value.length>mlength)
	obj.value=obj.value.substring(0,mlength)
}

function checkDate(mm,dd,yyyy){
	leapyear =false;
	validdate=true;
	//alert(mm+dd+yyyy);
	
	if( yyyy%4 == 0 ){
		leapyear=true;
		//alert("Leap Year");
	}
	
	if( mm==1 || mm==3 || mm==5 || mm==7 || mm==8 || mm==10 || mm==12 ){
		if(dd > 31){ 
			validdate=false; 
		}
	}
	else if(mm==4 || mm==6 || mm==9 || mm==11){
		if(dd > 30){ 
			validdate=false; 
		}
	}
	else if(mm == 2){
		if(leapyear==true){
			if(dd > 29){ 
				validdate=false; 
			}
		}
		else{
			if(dd > 28){ 
				validdate=false; 
			}
		}
	}
	if(validdate == false){
		alert("Date is not valid.");
		return 0;
		
	}
	else{
		return 1;
	}
	
	
}

function openWindow(url) {
	parameter = "width=610,height=440,toolbar=no,scrollbars=no,resizable=no";
	var v = window.open(url,'_blank',parameter);
}

function reset() {
	document.form1orms[0].reset();
}

function check_email(address) {
	//var emailPat = /^((\w|\.|\_)+)@(\[\d{1,3}(\.\d{1,3}){3}]|[A-Za-z]\w*(\.[A-Za-z]\w*)+)$/;
	var emailPat = /^[a-zA-Z][\w\.-]*[a-zA-Z0-9]@[a-zA-Z0-9][\w\.-]*[a-zA-Z0-9]\.[a-zA-Z][a-zA-Z\.]*[a-zA-Z]$/;
	var matchArray = address.match(emailPat);
	if (matchArray == null)
		return false;
	else
		return true;
}

function isDigit() {
    if (event.keyCode < 48 || event.keyCode > 57) { event.returnValue = false; }
}

function isDigit_Netscape(e) {
    if ((navigator.appName.indexOf("Netscape") != -1) || (navigator.appName.indexOf("Opera") != -1)) {
        if ((e.keyCode == 32) || (e.keyCode == 59) || (e.keyCode == 61) || (e.keyCode == 109) || (e.keyCode == 188) || ((e.keyCode >= 65) && (e.keyCode <= 90)) || ((e.keyCode >= 190) && (e.keyCode <= 192)) || ((e.keyCode >= 219) && (e.keyCode <= 222))) { e.preventDefault() = false; }
    }
}

function trim(inputString)
{
	var retValue = inputString;
	var ch = retValue.substring(0, 1);

	while (ch == " ")
	{ // Check for space at the start of the string
		retValue = retValue.substring(1, retValue.length);
		ch = retValue.substring(0, 1);
	}

	ch = retValue.substring(retValue.length-1, retValue.length);

	while (ch == " ")
	{ // Check for spaces at the end of the string
		retValue = retValue.substring(0, retValue.length-1);
		ch = retValue.substring(retValue.length-1, retValue.length);
	}
	
	return retValue;
}


function check_form(){
		


if (trim(document.getElementById("txtName").value) == "") {
    alert("Please key in your name.");
    document.getElementById("txtName").focus();
    return;
}

if (trim(document.getElementById("txtNric").value) == "") {
    alert("Please key in your IC number.");
    document.getElementById("txtNric").focus();
    return;
}

if (trim(document.getElementById("txtAge").value) == "") {
    alert("Please key in your age.");
    document.getElementById("txtAge").focus();
    return;
}


if ((document.form1.rbtnGender[0].checked == false ) && ( document.form1.rbtnGender[1].checked == false ) ){
	alert("Please select your gender.");
	return;
}

if (trim(document.getElementById("txtContactNo").value) == "") {
    alert("Please key in your contact number.");
    document.getElementById("txtContactNo").focus();
    return;
}

if (trim(document.getElementById("txtContactNo").value).length > 0) {
    if (((document.form1.txtContactNo.value.indexOf('9') != 0) && (document.form1.txtContactNo.value.indexOf('8') != 0) && (document.form1.txtContactNo.value.indexOf('6') != 0)) || (document.form1.txtContactNo.value.length < 8)) {
        alert("Your contact number format does not seem to be correct. Please re-enter.");
        document.getElementById("txtContactNo").focus();
        return;
    }
}

if ((trim(document.getElementById("txtEmailAdd").value) == "" || !check_email(document.getElementById("txtEmailAdd").value))) {
    alert("Please key in a valid email.");
    document.getElementById("txtEmailAdd").focus();
    return;
}



if (trim(document.getElementById("txtOccupation").value) == "") {
    alert("Please key in your occupation.");
    document.getElementById("txtOccupation").focus();
    return;
}



document.form1.submit();
}



function checkTellFriends(){
	/*
	if(document.form1.message.value == ""){
		alert("Please insert your message!");
		document.form1.message.focus();
		return 0;
	}
	*/
	//email cannot be the same as sender
	if(document.form1.e1.value != ""){
		if(document.form1.e1.value == document.form1.youremail.value){
			alert("Refer to friend email cannot be duplicated as sender email. Please check your friend email address"); 
			return;
		}
	}
	if(document.form1.e2.value != ""){
		if(document.form1.e2.value == document.form1.youremail.value){
			alert("Refer to friend email cannot be duplicated as sender email. Please check your friend email address"); 
			return;
		}
	}
	if(document.form1.e3.value != ""){
		if(document.form1.e3.value == document.form1.youremail.value){
			alert("Refer to friend email cannot be duplicated as sender email. Please check your friend email address"); 
			return;
		}
	}
	
	
	//----end the same with sender

	if (trim(document.form1.yourname.value) == ""){
		alert("Please key in your name.");
		document.form1.yourname.focus();
		return;
	}
	if (document.form1.youremail.value == "" || !check_email(document.form1.youremail.value)){
		alert("Please key in your valid email.");
		document.form1.youremail.focus();
	return;
	}
	
	if (trim(document.form1.f1.value) == ""){
		alert("Please key in your friend #1 name.");
		document.form1.f1.focus();
		return;
	}
	if (document.form1.e1.value == "" || !check_email(document.form1.e1.value)){
		alert("Please key in your friend #1 valid email.");
		document.form1.e1.focus();
	return;
	}

	//check for email validation friend num 2-5
	if(document.form1.e2.value != ""){
		if (!check_email(document.form1.e2.value)){
			alert("Please key in your friend #2 valid email.");
			document.form1.e2.focus();
		return;
		}
	}
	if(document.form1.e3.value != ""){
		if (!check_email(document.form1.e3.value)){
			alert("Please key in your friend #3 valid email.");
			document.form1.e3.focus();
		return;
		}
	}
	

	
	
	//check for name and email must be fill in together 2-5. eg. you must fill the name if you keyin the email. and also otherwise
	if( (document.form1.f2.value == "" && document.form1.e2.value != "") || (document.form1.f2.value != "" && document.form1.e2.value == "") ){ 
		alert("Name and Email friend #2 is not complete"); 
		document.form1.f2.focus();
		return;
	}
	if( (document.form1.f3.value == "" && document.form1.e3.value != "") || (document.form1.f3.value != "" && document.form1.e3.value == "") ){ 
		alert("Name and Email friend #3 is not complete"); 
		document.form1.f3.focus();
		return;
	}
	
	
	
	//check friend email cannot be the same. eg. if email not blank... email1 != email2 email2 != email3 etc......
	if( (document.form1.e1.value == document.form1.e2.value) || (document.form1.e1.value == document.form1.e3.value)){
			alert("Refer to friend email cannot be duplicated. Please check your friend email address"); 
			return;
		}
	
	if(document.form1.e2.value != ""){
		
		if((document.form1.e2.value == document.form1.e3.value)){
			alert("Refer to friend email cannot be duplicated. Please check your friend email address"); 
			return;
		}
	}
	
	


	alert("Thank you! An E-card has been sent to your friends.");
	
//send the form	
document.form1.submit();
}
