function GetHTML(url){
  var HTML='';
  var idx=0;
  idx = url.indexOf('=');
  HTML = url.substr(idx+1,url.length);
  return HTML;
}

function FmtNumber(gCurVal,timing,decimal,MaxLen,type) {
   S = gCurVal.value;
   len = S.length;
   newStr = '';
   neg = 0;
   for (i=0; i<len; i++){
      if (S.substr(i,1) != ' ' && S.substr(i,1) != '$' && S.substr(i,1) != ',' && S.substr(i,1) != '(' && S.substr(i,1) != ')'){
         newStr = newStr + S.substr(i,1);
         if (isNaN(S.substr(i,1)) && S.substr(i,1) != '.' && S.substr(i,1) != '-'){
            alert ('A non-numeric found in this entry.');
            gCurVal.value = '0';
            gCurVal.select();
            gCurVal.focus();
            return
         }
      }else{
         if (S.substr(i,1) == '(')
            neg = 1;
         }
   }
   if (neg == 1){
      newStr = '-' + newStr;
   }
   curVal = newStr;
   if (timing == 'EXIT'){
      var dc='.';
      var gc=',';
      var nc='(';
      var cs='$';
      if (type != 'M'){cs='';}
//      W=curVal.length + 6;
      dec='1';
      for (i=0;i<decimal;i++){dec = dec + '0';}
      var N=Math.abs(Math.round(curVal*dec));
      var S=((N<10)?'00':((N<100)?'0':''))+N;
      S=cs+((curVal<0)?nc:'')+Group(S.substring(0,(S.length-2)))+dc+S.substring((S.length-2),S.length)+((curVal<0&&nc=='(')?')':'');
         gCurVal.value = PadStr(S,' ',MaxLen,'R');
   }else{
      gCurVal.value = PadStr(newStr,' ',MaxLen,'R');
      gCurVal.select();
      gCurVal.focus();
   }
}

function PadStr(S,Str,Len,Just){
   var NewStr = '';
   var NewLen = Len - S.length;
   for (i=0;i<NewLen;i++){NewStr = NewStr + Str;}
   return NewStr + S;
}

function Group(S) {
    var gc=',';
    return (S.length<4)?S:(Group(S.substring(0,S.length-3))+gc+S.substring(S.length-3,S.length));
}

function FmtAlpha(strData, fmtCode){
//
// Format a string to either 1-Uppercase, 2-Lowercase, or 3-Titlecase
//
   newStr = ''
   if (fmtCode ==  '1'){
      strData = strData.toUpperCase()
      strData = ReplaceString(strData,'=','%3D')
      return strData
   }
   if (fmtCode == '2'){
      strData = strData.toLowerCase()
      strData = ReplaceString(strData,'=','%3D')
      return strData
   }
   if (fmtCode == '3'){
      newStr = ''
      newStr = ReplaceString(strData,'_',' ')
      strData = newStr
      newStr = strData.toLowerCase()
      strData = newStr
      newStr = ''
      max = strData.length
      for (i=0; i < max; i++){
         if (i == 0 || strData.substr(i-1,1) == ' '){
             newStr += strData.substr(i,1).toUpperCase()
         }else if (i == 0 || strData.substr(i-1,1) == '\''){
             newStr += strData.substr(i,1).toUpperCase()
         }else if (i == 0 || strData.substr(i-1,1) == '.'){
             newStr += strData.substr(i,1).toUpperCase()
         }else{
             newStr += strData.substr(i,1)
         }
      }
   }
   newStr = ReplaceString(newStr,'=','%3D')
   return newStr
}

function ReplaceString(strData, lookFor, replaceWith){
//
// Replace all occurances of a substring with a specified substring
// within the data object.
//
    newStr = ''
    var testStr = strData
    if (testStr.indexOf(lookFor) != -1) {
       myArray = testStr.split(lookFor)
       for (i=0; i < myArray.length; i++){
          if (i != myArray.length-1){
             newStr += myArray[i] + replaceWith
          }else{
             newStr += myArray[i]
          }
       }
   }else{
       newStr = strData
   }
   return newStr
}

function ChkNumber(strString)
   //  check for valid numeric strings	
   {
   var strValidChars = "0123456789.-";
   var strChar;
   var newStr = '';

   if (strString.length == 0) return newStr;

   //  test strString consists of valid characters listed above
   for (i = 0; i < strString.length ; i++)
      {
      strChar = strString.charAt(i);
      newStr = newStr + strChar;
      if (strValidChars.indexOf(strChar) == -1)
         {
         newStr = '';
         alert('Non-numeric found.');
         return newStr;
         }
      }
   return newStr;
   }


function FmtPhone(gField){
   var crLf = String.fromCharCode(13,10)
   testVar = gField.value
   if (testVar == ''){ return testVar }
   testVar = ReplaceString(testVar,"(","")
   testVar = ReplaceString(testVar,")","")
   testVar = ReplaceString(testVar,"-","")
   testVar = ReplaceString(testVar," ","")
   testVar = ReplaceString(testVar,".","")
   testVar = ReplaceString(testVar,"+","")
   testVar = ReplaceString(testVar,"/","")
   if (testVar.length > 10){return testVar}
   if (testVar.length < 10 && testVar.length < 7){
      alert("An insufficient number of characters has been entered or" + crLf + "the data entered was in the wrong format.")
      gField.focus()
      gField.value = ''
   }
   if (testVar.length == 10){
      testVar = "(" + testVar.substr(0,3) + ") " + testVar.substr(3,3) + "-" + testVar.substr(6)
   }
   if (testVar.length == 7){
      testVar = testVar.substr(0,3) + "-" + testVar.substr(3,4)
   }
   gField.value = testVar
   return testVar
}

function CheckEmail(gField){
   var emailVar = gField.value
   var pass
   if (emailVar == ''){ return emailVar }
   pass = true
   if (!emailVar.indexOf('@') || !emailVar.indexOf('.')){
      pass = false
   }
   if (emailVar.substr(0,emailVar.indexOf('@')) == '' || emailVar.substr(0,emailVar.indexOf('.')) == '' || emailVar.substr(emailVar.indexOf('.')+1,1) == ''){
      pass = false
   }
   if (emailVar.substr(emailVar.indexOf('@')+1,1) == '.'){
      pass = false
   }
   if (pass == false){
      alert("Check e-mail address entry. E-mail address is invalid.")
      gField.value = ''
   }else{
     emailVar = FmtAlpha(emailVar,2)
     gField.value = emailVar
   }
   return pass
}

function VerifyPassword(gField1, gField2){
   if (gField1.value == '' || gField2.value == ''){return}
   if (gField1.value != gField2.value){
      alert("Your passwords do not match, please try again.")
      gField1.value = ''
      gField2.value = ''
      gField1.focus()
   }
}

function CheckDate(THISDATE) {
  if (THISDATE.value == ""){return ""}
	var err=0
        var regExp
        var okVar = THISDATE.value
	a=THISDATE.value
	if (a.length != 10) err=1
	b = a.substring(0, 2)// month
	c = a.substring(2, 3)// '/'
	d = a.substring(3, 5)// day
	e = a.substring(5, 6)// '/'
	f = a.substring(6, 10)// year
        okVar = b+'/'+d+'/'+f
	if (b<1 || b>12) err = 1
	if (d<1 || d>31) err = 1
	if (f<1900) err = 1
	if (b==4 || b==6 || b==9 || b==11){
		if (d==31) err=1
	}
	if (b==2){
		var g=parseInt(f/4)
		if (isNaN(g)) {
			err=1
		}
		if (d>29) err=1
		if (d==29 && ((f/4)!=parseInt(f/4))) err=1
	}
	if (err==1) {
		alert(THISDATE.value + ' is not a valid date. Please re-enter. - mm/dd/yyyy');
                THISDATE.select()
		THISDATE.value = ""
                THISDATE.focus()
	}else{
            THISDATE.value=okVar
        }
}

function checkURL(theUrl){
  if(theUrl.value.match(/^(http|ftp)\:\/\/\w+([\.\-]\w+)*\.\w{2,4}(\:\d+)*([\/\.\-\?\&\%\#]\w+)*\/?$/i) ||
     theUrl.value.match(/^mailto\:\w+([\.\-]\w+)*\@\w+([\.\-]\w+)*\.\w{2,4}$/i)){
    return true;
  } else {
    alert("Invalid web address.");
    theUrl.value='';
    return false;
  }
}

function SwitchBillShip(){ 
   if (document.orddetail.SameBill.checked){
     document.orddetail.SFName.value = document.orddetail.FName.value;
     document.orddetail.SMName.value = document.orddetail.MName.value;
     document.orddetail.SLName.value = document.orddetail.LName.value;

     document.orddetail.SAddr1.value = document.orddetail.Addr1.value;
     document.orddetail.SAddr2.value = document.orddetail.Addr2.value;
     document.orddetail.SCity.value = document.orddetail.City.value;
     document.orddetail.SState.value = document.orddetail.State.value;
     document.orddetail.SPostalCode.value = document.orddetail.PostalCode.value;
     document.orddetail.SCountry.value = document.orddetail.Country.value;
     document.orddetail.SPhone.value = document.orddetail.Phone.value;
   }else{
     document.orddetail.SFName.value = '';
     document.orddetail.SMName.value = '';
     document.orddetail.SLName.value = '';
     document.orddetail.SAddr1.value = '';
     document.orddetail.SAddr2.value = '';
     document.orddetail.SCity.value = '';
     document.orddetail.SState.value = '';
     document.orddetail.SPostalCode.value = '';
     document.orddetail.SCountry.value = '';
     document.orddetail.SPhone.value = '';
   }
}

