﻿function isValidEmail(str) {
   return (str.indexOf(".") > 2) && (str.indexOf("@") > 0);
}
function echeck(str)
{
	var at="@"
	var dot="."
	var lat=str.indexOf(at)
	var lstr=str.length
	var ldot=str.indexOf(dot)

	if (str.indexOf(at)==-1){
	   alert("Invalid E-mail Address")
	   return false
	}

	if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
	   alert("Invalid E-mail Address")
	   return false
	}

	if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
	    alert("Invalid E-mail Address")
	    return false
	}

	 if (str.indexOf(at,(lat+1))!=-1){
	    alert("Invalid E-mail Address")
	    return false
	 }

	 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
	    alert("Invalid E-mail Address")
	    return false
	 }

	 if (str.indexOf(dot,(lat+2))==-1){
	    alert("Invalid E-mail Address")
	    return false
	 }

	 if (str.indexOf(" ")!=-1){
	    alert("Invalid E-mail Address")
	    return false
	 }

		 return true
}
function hidediv(div_id) 
{
	if (document.getElementById) 
	{ // DOM3 = IE5, NS6
		document.getElementById(div_id).style.visibility = 'hidden';
		document.getElementById(div_id).style.display = 'none';
	}
	else 
	{
		if (document.layers) 
		{ // Netscape 4
			document.div_id.visibility = 'hidden';
			document.div_id.display = 'none';
		}
		else 
		{ // IE 4
			document.all.div_id.style.visibility = 'hidden';
			document.all.div_id.style.display = 'none';
		}
	}
}

function showdiv(div_id) 
{
	if (document.getElementById) 
	{ // DOM3 = IE5, NS6
		document.getElementById(div_id).style.visibility = 'visible';
		document.getElementById(div_id).style.display = 'block';
	}
	else 
	{
		if (document.layers) 
		{ // Netscape 4
			document.div_id.visibility = 'visible';
			document.div_id.display = 'none';
		}
		else 
		{ // IE 4
			document.all.div_id.style.visibility = 'visible';
			document.all.div_id.style.display = 'none';
		}
	}
}
function change_image(img_id, img_src)
{
   document.getElementById(img_id).src = img_src;
}

function isCCValid(cardNumber, cardType)
{
	var isValid = false;
	var ccCheckRegExp = /[^\d ]/;
	isValid = !ccCheckRegExp.test(cardNumber);

	if (isValid)
	{
		var cardNumbersOnly = cardNumber.replace(/ /g,"");
		var cardNumberLength = cardNumbersOnly.length;
		var lengthIsValid = false;
		var prefixIsValid = false;
		var prefixRegExp;

		switch(cardType)
		{
		case "mastercard":
			lengthIsValid = (cardNumberLength == 16);
			prefixRegExp = /^5[1-5]/;
			break;

		case "visa":
			lengthIsValid = (cardNumberLength == 16 || cardNumberLength == 13);
			prefixRegExp = /^4/;
			break;

		case "amex":
			lengthIsValid = (cardNumberLength == 15);
			prefixRegExp = /^3(4|7)/;
			break;

		default:
			prefixRegExp = /^$/;
			alert("Card type not found");
		}

		prefixIsValid = prefixRegExp.test(cardNumbersOnly);
		isValid = prefixIsValid && lengthIsValid;
	}

	if (isValid)
	{
		var numberProduct;
		var numberProductDigitIndex;
		var checkSumTotal = 0;

		for (digitCounter = cardNumberLength - 1; digitCounter >= 0; digitCounter--)
		{
			checkSumTotal += parseInt (cardNumbersOnly.charAt(digitCounter));
			digitCounter--;
			numberProduct = String((cardNumbersOnly.charAt(digitCounter) * 2));
			for (var productDigitCounter = 0; productDigitCounter < numberProduct.length; productDigitCounter++)
			{
				checkSumTotal += 
				parseInt(numberProduct.charAt(productDigitCounter));
			}
		}

		isValid = (checkSumTotal % 10 == 0);
	}

	return isValid;
}
function getStateAbr(state_id) 
{
	switch (state_id) 
	{
		case "50": result = 'AL'; break;
		case "1": result = 'AK'; break;
		case "51": result = 'AZ'; break;
		case "2": result = 'AR'; break;
		case "3": result = 'CA'; break;
		case "4": result = 'CO'; break;
		case "5": result = 'CT'; break;
		case "6": result = 'DE'; break;
		case "7": result = 'DC'; break;
		case "8": result = 'FL'; break;
		case "9": result = 'GA'; break;
		case "10": result = 'HI'; break;
		case "11": result = 'ID'; break;
		case "12": result = 'IL'; break;
		case "13": result = 'IN'; break;
		case "14": result = 'IA'; break;
		case "15": result = 'KS'; break;
		case "16": result = 'KY'; break;
		case "17": result = 'LA'; break;
		case "18": result = 'ME'; break;
		case "19": result = 'MD'; break;
		case "20": result = 'MA'; break;
		case "21": result = 'MI'; break;
		case "22": result = 'MN'; break;
		case "23": result = 'MS'; break;
		case "24": result = 'MO'; break;
		case "25": result = 'MT'; break;
		case "26": result = 'NE'; break;
		case "27": result = 'NV'; break;
		case "28": result = 'NH'; break;
		case "29": result = 'NJ'; break;
		case "30": result = 'NM'; break;
		case "31": result = 'NY'; break;
		case "32": result = 'NC'; break;
		case "33": result = 'ND'; break;
		case "34": result = 'OH'; break;
		case "35": result = 'OK'; break;
		case "36": result = 'OR'; break;
		case "37": result = 'PA'; break;
		case "38": result = 'RI'; break;
		case "39": result = 'SC'; break;
		case "40": result = 'SD'; break;
		case "41": result = 'TN'; break;
		case "42": result = 'TX'; break;
		case "43": result = 'UT'; break;
		case "44": result = 'VT'; break;
		case "45": result = 'VA'; break;
		case "46": result = 'WA'; break;
		case "47": result = 'WV'; break;
		case "48": result = 'WI'; break;
		case "49": result = 'WY'; break;
		case "52": result = 'INTL'; break;
		default: result = '';
	}
	return result;
}
function strpos( haystack, needle, offset){ 
    var i = haystack.indexOf( needle, offset ); // returns -1
    return i >= 0 ? i : false;
}
function substr( f_string, f_start, f_length ) {
    if(f_start < 0) {
        f_start += f_string.length;
    }
 
    if(f_length == undefined) {
        f_length = f_string.length;
    } else if(f_length < 0){
        f_length += f_string.length;
    } else {
        f_length += f_start;
    }
 
    if(f_length < f_start) {
        f_length = f_start;
    }
 
    return f_string.substring(f_start, f_length);
}
function strlen( string ){
    return string.length;
}
function getCheckedValue(radioObj) {
	if(!radioObj)
		return "";
	var radioLength = radioObj.length;
	if(radioLength == undefined)
		if(radioObj.checked)
			return radioObj.value;
		//else
		//	return "";
	for(var i = 0; i < radioLength; i++) {
		if(radioObj[i].checked) {
			return radioObj[i].value;
		}
	}
	return "";
}
