var JS_ADMIN_PREFIX = "ctl00_ContentPlaceHolder1_";
var JS_BUYER_PREFIX = "ctl00_ctl00_ContentMain_PrimarySection_";
var JS_BUYER_JUST_TOP_PREFIX = "ctl00_ContentMain_";

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function JS_MSwapImage(imgObj, imgName)
{
    var obj = document.getElementById(imgObj);
    alert(obj);
    alert(imgName);
    if (obj)
        obj.src = imgName;

}

function JS_GetForm()
{
    var theForm = document.forms['aspnetForm'];
    if (!theForm) {
        theForm = document.aspnetForm;
    }
    return theForm;
}
function JS_GetObject(frm, sObjectName)
{
    var obj = frm.all[sObjectName];
    return obj;
}
function JS_noAlphaComma() 
{
	var keyCode = window.event.keyCode;
	return (( keyCode >=48 && keyCode <= 57) || keyCode == 13);
}

function JS_ValidateExpDate(expMonth, expYear)
{

	var mon = expMonth;
	var yr = expYear;
	var dt=new Date();
	var currYear	=	dt.getYear();

	//Mozilla firefox returns 108 if year is 2008. So add 1900 for that.
	if (currYear < 1900)
	    currYear = eval(currYear) + 1900;
	var currMonth	=	dt.getMonth() + 1;
	if (yr<currYear || (mon<currMonth && yr<=currYear))
	{
		//alert('Invalid expiration period. Please enter valid expiration period.');
		return false;
	}
	return true;
}

function JS_ValidateCreditCard(ccNo, ccType)
{
	
	return JS_CheckCreditCard(ccNo, ccType);
/*
	if (bValidCard == true)
		bSubmit=true;
	else
	{
		alert("Please select correct credit card number and card type.");
		return false;
	}

	return bValidCard;
*/
}

function JS_CheckCreditCard(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 "798":
        lengthIsValid = (cardNumberLength == 16);
        prefixRegExp = /^5[1-5]/;
        break;

      case "799":
        lengthIsValid = (cardNumberLength == 16 || cardNumberLength == 13);
        prefixRegExp = /^4/;
        break;

      case "797": //ae
        lengthIsValid = (cardNumberLength == 15);
        prefixRegExp = /^3(4|7)/;
        break;

      case "796": //discover
        lengthIsValid = (cardNumberLength == 16);
        prefixRegExp = /^6011/;
        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));
      }
    }

    //alert(checkSumTotal );
    isValid = (checkSumTotal % 10 == 0);
  }

  return isValid;
}
