//reloads the window if Netscape4 resized
function MM_reloadPage(init) 
{
	if (init==true) with (navigator) 
  	{
  		if ((appName=="Netscape")&&(parseInt(appVersion)==4)) 
  		{
    		document.MM_pgW=innerWidth; 
    		document.MM_pgH=innerHeight; 
    		onresize=MM_reloadPage; 
    	}
    }
  	else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH)
  	{
  		location.reload();
  	}
}
MM_reloadPage(true);


// opens new popup window
var newWin=null;

function newWindow(sURL)
{
	if(newWin && !newWin.closed)
	{
		newWin.close();
	}
	newWin=window.open(sURL,"new","height=550,resizable=yes,screenX=30,screenY=30,top=30,left=30,scrollbars=yes,width=650");	
}


// automatically places the cursor in the first input box
function placeFocus() 
{
	if (document.forms.length > 0) 
	{
		var field = document.forms[0];
		for (i = 0; i < field.length; i++) 
		{
			if ((field.elements[i].type == "text") || (field.elements[i].type == "textarea") || (field.elements[i].type.toString().charAt(0) == "s")) 
			{
				document.forms[0].elements[i].focus();
				break;
     		}
  		}
	}
}

// function for rollovers
function imgOff(imgName)
{
	document.images[imgName].src = eval(imgName + "off.src");
}

function imgOver(imgName)
{
	document.images[imgName].src = eval(imgName + "over.src");
}


function isCardMatch (cardType, cardNumber)
{
	
	cardType = cardType.toLowerCase();
	cardType = cardType.substring(0,3);

	cardNumber = NumOnly(cardNumber);

	cardChecks = true;

	if(cardType == "vis" && !isVisa(cardNumber))
		cardChecks = false;
	if ((cardType == "mas") && (!isMasterCard(cardNumber)))
		cardChecks = false;
	if  ( (cardType == "ame")  && (!isAmericanExpress(cardNumber)) )
 		cardChecks = false;
	if ((cardType == "dis") && (!isDiscover(cardNumber)))
		cardChecks = false;
	if ((cardType == "jcb") && (!isJCB(cardNumber)))
		cardChecks = false;
	if ((cardType == "din") && (!isDinersClub(cardNumber)))
		cardChecks = false;
	if ((cardType == "car") && (!isCarteBlanche(cardNumber)))
		cardChecks = false;
	if ((cardType == "enr") && (!isEnRoute(cardNumber)))
		cardChecks = false;
	

	if(!cardChecks)
	{
		return " - The card number you entered is not valid\n";
	}
	else
	{
		return "";
	}
}  // END FUNCTION CardMatch()

function NumOnly(numberString)
{
	returnString = ""
	for(i = 0; i < numberString.length; i++)
	{
		if(numberString.charCodeAt(i) >= 48 && numberString.charCodeAt(i) <= 57)
		{
			returnString = returnString + numberString.charAt(i);
		}
	}
	return returnString;
}


function isCreditCard(st) {
  // Encoding only works on cards with less than 19 digits
  if (st.length > 19)
    return (false);
  sum = 0; mul = 1; l = st.length;
  for (i = 0; i < l; i++) {
    digit = st.substring(l-i-1,l-i);
    tproduct = parseInt(digit ,10)*mul;
    if (tproduct >= 10)
      sum += (tproduct % 10) + 1;
    else
      sum += tproduct;
    if (mul == 1)
      mul++;
    else
      mul--;
  }
  if ((sum % 10) == 0)
    return (true);
  else
    return (false);
} // END FUNCTION isCreditCard()

function isVisa(cc)
{
  if (((cc.length == 16) || (cc.length == 13)) &&
      (cc.substring(0,1) == 4))
    return isCreditCard(cc);
  return false;
}  // END FUNCTION isVisa()

function isMasterCard(cc)
{
  firstdig = cc.substring(0,1);
  seconddig = cc.substring(1,2);
  if ((cc.length == 16) && (firstdig == 5) &&
      ((seconddig >= 1) && (seconddig <= 5)))
    return isCreditCard(cc);
  return false;
} // END FUNCTION isMasterCard()

function isAmericanExpress(cc)
{
  firstdig = cc.substring(0,1);
  seconddig = cc.substring(1,2);
  if ((cc.length == 15) && (firstdig == 3) &&
      ((seconddig == 4) || (seconddig == 7)))
    return isCreditCard(cc);
  return false;

} // END FUNCTION isAmericanExpress()

function isDinersClub(cc)
{
  firstdig = cc.substring(0,1);
  seconddig = cc.substring(1,2);
  if ((cc.length == 14) && (firstdig == 3) &&
      ((seconddig == 0) || (seconddig == 6) || (seconddig == 8)))
    return isCreditCard(cc);
  return false;
}

function isCarteBlanche(cc)
{
  return isDinersClub(cc);
}

function isDiscover(cc)
{
  first4digs = cc.substring(0,4);
  if ((cc.length == 16) && (first4digs == "6011"))
    return isCreditCard(cc);
  return false;
} // END FUNCTION isDiscover()

function isEnRoute(cc)
{
  first4digs = cc.substring(0,4);
  if ((cc.length == 15) &&
      ((first4digs == "2014") ||
       (first4digs == "2149")))
    return isCreditCard(cc);
  return false;
}

function isJCB(cc)
{
  first4digs = cc.substring(0,4);
  if ((cc.length == 16) &&
      ((first4digs == "3088") ||
       (first4digs == "3096") ||
       (first4digs == "3112") ||
       (first4digs == "3158") ||
       (first4digs == "3337") ||
       (first4digs == "3528")))
    return isCreditCard(cc);
  return false;
} // END FUNCTION isJCB()
