﻿// JavaScript Document
String.prototype.Trim = function() { 
	return this.replace(/(^\s*)|(\s*$)/g, ""); 
} 

function checkdate(input) {
	var validformat=/^\d{2}\/\d{2}$/; //Basic check for format validity
	var returnval=false;
	if(input.value != "") {
		if (!validformat.test(input.value))
			alert("Invalid Date Format. Please enter MM/YY.");
		else{ //Detailed check for valid date ranges
			var yearfield="20"+input.value.split("/")[1];
			var monthfield=input.value.split("/")[0];
			var dayobj = new Date(yearfield, monthfield-1, 1);
			if ((dayobj.getMonth()+1!=monthfield)||(dayobj.getFullYear()!=yearfield))
				alert("Invalid Date Format. Please correct and submit again.");
			else
				returnval=true;
		}
		return returnval;
	} else {
		return false;
	}
}

function checkMail(email) {
	var x = email;
	var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (filter.test(x)) return true;
	else return false;
}

function checkFg(myForm) {
	email = myForm.email;
	var sendFlag = true;
	if (email.value.Trim() == "" && sendFlag){
		alert("Please enter your email.");
		sendFlag = false;
		email.focus();
	} else if (!checkMail(email.value.Trim()) && sendFlag) {
		alert("Invalid email format, please re-enter.");
		sendFlag = false;
		email.focus();
	}
	if (sendFlag) {
		myForm.method = "POST";
		myForm.action += "?goSend";
	}
	return sendFlag;
}

function checkReg(myForm) {
	username = myForm.username;
	password = myForm.password;
	cname = myForm.cname;
	email = myForm.email;
	phone = myForm.phone;
	digitOnly = /[^0-9]/;
	var sendFlag = true;

	if (username.value.Trim() == "" && sendFlag){
		alert("Please enter an username.");
		sendFlag = false;
		username.focus();
	}

	if (password.value.Trim() == "" && sendFlag){
		alert("Please enter a password.");
		sendFlag = false;
		password.focus();
	}

	if (cname.value.Trim() == "" && sendFlag){
		alert("Please enter your name.");
		sendFlag = false;
		cname.focus();
	}
	
	if (phone.value.Trim() == "" && sendFlag){
		alert("Please enter your phone no.");
		sendFlag = false;
		phone.focus();
	} 
	if (digitOnly.test(phone.value) && sendFlag){
		alert("Please enter digit only for your phone no.");
		sendFlag = false;
		phone.focus();
	}	
	
	if (email.value.Trim() == "" && sendFlag){
		alert("Please enter your email.");
		sendFlag = false;
		email.focus();
	} else if (!checkMail(email.value.Trim()) && sendFlag) {
		alert("Invalid email format, please re-enter.");
		sendFlag = false;
		email.focus();
	}
	
	if (sendFlag) {
		myForm.method = "POST";
		myForm.action += "?goReg";
		myForm.submit();
	}
}

function checkCart(myForm) {	
	qty = myForm.qty;
	digitOnly = /[^0-9]/;
	var sendFlag = true;
		
	if (qty.value.Trim() == "" && sendFlag){
		alert("Please enter the quantity.");
		sendFlag = false;
		qty.focus();
	} 
	if (digitOnly.test(qty.value) && sendFlag){
		alert("Please enter valid integer.");
		sendFlag = false;
		qty.focus();
	}	
	
	if (sendFlag) {
		myForm.method = "POST";
		myForm.action += "?goBuy";
		myForm.submit();
	}
}

function checkPurchase(myForm)
{
	cname = myForm.cname;
	phone = myForm.phone;
	email = myForm.email;
	addr = myForm.addr;	
	cardno = document.getElementsByName('cardno[]');
	cardholder = myForm.cardholder;
	expirydate = myForm.expirydate;
	digitOnly = /[^0-9]/;
	
	expirydate = myForm.expirydate;
	
	var sendFlag = true;

	if (cname.value.Trim() == "" && sendFlag){
		alert("Please enter Login ID.");
		sendFlag = false;
		cname.focus();
	} 
	if (phone.value.Trim() == "" && sendFlag){
		alert("Please enter your phone no.");
		sendFlag = false;
		phone.focus();
	} 
	if (digitOnly.test(phone.value) && sendFlag){
		alert("Please enter digit only for your phone no.");
		sendFlag = false;
		phone.focus();
	}	
	
	if (email.value.Trim() == "" && sendFlag){
		alert("Please enter your email.");
		sendFlag = false;
		email.focus();
	} else if (!checkMail(email.value.Trim()) && sendFlag) {
		alert("Invalid email format, please re-enter.");
		sendFlag = false;
		email.focus();
	}
		
	if (addr.value.Trim() == "" && sendFlag){
		alert("Please enter the delivery address.");
		sendFlag = false;
		addr.focus();
	} 

	/*for (var i = 0; i < cardno.length; i++) {
		if (cardno[i].value.length != 4 && sendFlag) {
			alert("Invalid Credit card format.");
			sendFlag = false;
			cardno[i].focus();
		}
		if (digitOnly.test(cardno[i].value) && sendFlag) {
			alert("Invalid Credit card format.");
			sendFlag = false;
			cardno[i].focus();
		}
	}
	if (cardholder.value.Trim() == "" && sendFlag){
		alert("Please enter the card holder name.");
		sendFlag = false;
		cardholder.focus();
	} 
	
	if (expirydate.value.Trim() == "" && sendFlag){
		alert("Please enter the card expiry date.");
		sendFlag = false;
		expirydate.focus();
	}
	
	if (!checkdate(expirydate) && sendFlag){

		sendFlag = false;
		expirydate.focus();
	}*/
	
	if (sendFlag) {
		myForm.method = "POST";
		myForm.action += "?goLogin";
		myForm.submit();
	}
}

function checkLogin(myForm)
{
	username = myForm.username;
	password = myForm.password;
	var sendFlag = true;
	
	if (username.value.Trim() == "" && sendFlag){
		alert("Please enter Login ID.");
		sendFlag = false;
		username.focus();
	} 
	
	if (password.value.Trim() == "" && sendFlag){
		alert("Please enter password.");
		sendFlag = false;
		password.focus();
	} 
	
	if (sendFlag) {
		myForm.method = "POST";
		myForm.action += "?goLogin";
	}
	return sendFlag
}
