﻿// JScript File for Address Control Functions

var AdrLvl=0;
var BAdBuf="||||||||||";
var SAdBuf="|||||||||";
var CAdBuf="";
var AdrBuf="";
var ShpEnt=false;
var ShpSta="";
var AlwPOB=true;
var ConPOB=false;
var ShpPOB=false;

function SetCAd()
{
  if (FulAdr)
  {
		document.getElementById("adrConAdr_FstNam").value=CstFst;
		document.getElementById("adrConAdr_LstNam").value=CstLst;
		document.getElementById("adrConAdr_AdrLn1").value=CstAd1
		document.getElementById("adrConAdr_AdrLn2").value=CstAd2; EvlPOB("C","adrConAdr");
		document.getElementById("adrConAdr_AdrCty").value=CstCty;
		if (CstCou=="United States" || CstCou=="US" || CstCou=="USA") 
		{
			document.getElementById("adrConAdr_AdrSta").value=CstSta;
			document.getElementById("adrConAdr_AdrSta").style.display="";
			document.getElementById("adrConAdr_AdrPrv").style.display="none";
		}	
		else												 
		{
			document.getElementById("adrConAdr_AdrPrv").value=CstSta;	
			document.getElementById("adrConAdr_AdrSta").style.display="none";
			document.getElementById("adrConAdr_AdrPrv").style.display="";
		}
		document.getElementById("adrConAdr_AdrZip").value=CstZip;
		document.getElementById("adrConAdr_AdrCou").value=CstCou;
		document.getElementById("adrConAdr_AdrPho").value=CstPho;
		document.getElementById("adrConAdr_AdrEMl").value=CstEMl;
		document.getElementById("adrConAdr_AdrCEM").value=CstEMl;	
	}
	else
	{
		document.getElementById("txtConFst").value=CstFst;
		document.getElementById("txtConLst").value=CstLst;
		document.getElementById("txtConPho").value=CstPho;
		document.getElementById("txtConEMl").value=CstEMl;
		document.getElementById("txtConCEm").value=CstEMl;	
	}
}
	
function SetSAd()
{
	if (document.getElementById("chkShpCst").checked)
	{
		document.getElementById("adrShpAdr_FstNam").value=CstFst;
		document.getElementById("adrShpAdr_LstNam").value=CstLst;
		document.getElementById("adrShpAdr_AdrLn1").value=CstAd1
		document.getElementById("adrShpAdr_AdrLn2").value=CstAd2; EvlPOB("S","adrShpAdr");
		document.getElementById("adrShpAdr_AdrCty").value=CstCty;
		if (CstCou=="United States" || CstCou=="US" || CstCou=="USA") 
		{
			document.getElementById("adrShpAdr_AdrSta").value=CstSta;
			document.getElementById("adrShpAdr_AdrSta").style.display="";
			document.getElementById("adrShpAdr_AdrPrv").style.display="none";
		}	
		else												 
		{
			document.getElementById("adrShpAdr_AdrPrv").value=CstSta;	
			document.getElementById("adrShpAdr_AdrSta").style.display="none";
			document.getElementById("adrShpAdr_AdrPrv").style.display="";
		}
		document.getElementById("adrShpAdr_AdrZip").value=CstZip;
		document.getElementById("adrShpAdr_AdrCou").value=CstCou;
		document.getElementById("adrShpAdr_AdrPho").value=CstPho;
	}
	else
	{
		document.getElementById("adrShpAdr_FstNam").value="";
		document.getElementById("adrShpAdr_LstNam").value="";
		document.getElementById("adrShpAdr_AdrLn1").value="";
		document.getElementById("adrShpAdr_AdrLn2").value=""; EvlPOB("S","adrShpAdr");
		document.getElementById("adrShpAdr_AdrCty").value="";
		document.getElementById("adrShpAdr_AdrSta").value="";
		document.getElementById("adrShpAdr_AdrZip").value="";
		document.getElementById("adrShpAdr_AdrCou").value="United States";
		document.getElementById("adrShpAdr_AdrPho").value="";
		document.getElementById("adrShpAdr_AdrSta").style.display="";
		document.getElementById("adrShpAdr_AdrPrv").style.display="none";
	}
	return true;
}

function SelCou(CID)
{
	var Cou=document.getElementById(CID+"_AdrCou");
	var Sta=document.getElementById(CID+"_AdrSta");
	var Prv=document.getElementById(CID+"_AdrPrv");
	try
	{
		if (Cou.value=="United States")
		{
			Sta.style.display="";
			Prv.style.display="none";
		}
		else
		{
			Sta.style.display="none";
			Prv.style.display="";
		}
	}
	catch(Err)
	{
	}
}

function AdrPop(ANm)
{
	var Ret=false;
	if (document.getElementById(ANm+"_FstNam").value>"" || document.getElementById(ANm+"_LstNam").value>"") Ret=true;
	return Ret;
}

function ChkCon()
{
	var Ret=true;
	var Buf="";
	var Msg=""
	var FNm=document.getElementById("txtConFst").value;
	var LNm=document.getElementById("txtConLst").value;
	var Pho=document.getElementById("txtConPho").value;
	var EMl=document.getElementById("txtConEMl").value;
	var CEm=document.getElementById("txtConCEm").value;
	if (Ret && FNm=="") { Msg="Check First Name";										Ret=false; } 
	Buf+=FNm + "|"; 
	if (Ret && LNm=="") { Msg="Check Last Name";										Ret=false; } 
	Buf+=LNm + "|"; 
	if (Ret && Pho=="") { Msg="Check Daytime Phone";								Ret=false; } 
	Buf+=Pho + "|"; 
	if (Ret && EMl=="") { Msg="Check Email Address";								Ret=false; } 
	Buf+=EMl + "|"; 
	if (Ret && EMl!=CEm) { Msg="Check Email Address Confirmation";	Ret=false; } 
	document.getElementById("txtAdrMsg").innerHTML=Msg;
	if (Ret) CAdBuf=Buf;
	return Ret;
}

function ChkAdr(ANm,Typ)
{
	var Ret=true;
	var Buf="";
	var Msg="";
	var Nam="";
	var Adr="";
	var Cty="";
	var Sta="";
	var Cou="";
	var Zip="";
	var EMl="";
	var BTp=0;
	if (Typ=="P")
	{
		if (Ret && document.getElementById(ANm+"_CmpNam").value=="") { Msg="Check Company Name";		Ret=false; } 
		Buf+=document.getElementById(ANm+"_CmpNam").value + "|"; 
		BTp=1*document.getElementById(ANm+"_CmpDLs").selectedIndex;
		if (Ret && BTp<=0) { Msg="Check Business Type"; Ret=false; }
		Buf+=BTp+"|";
		if (Ret && BTp==4 && document.getElementById(ANm+"_CmpDsc").value=="") { Msg="Check Business Description";		Ret=false; } 
		Buf+=document.getElementById(ANm+"_CmpDsc").value + "|"; 
		if (Ret && document.getElementById(ANm+"_FedIDN").value=="") { Msg="Check Federal ID Number";		Ret=false; } 
		Buf+=document.getElementById(ANm+"_FedIDN").value + "|"; 
		Buf+=document.getElementById(ANm+"_AdrFAX").value + "|"; 
	}
	if (Ret && document.getElementById(ANm+"_FstNam").value=="") { Msg="Check First Name";		Ret=false; } 
	Buf+=document.getElementById(ANm+"_FstNam").value + "|"; 
	if (Ret && document.getElementById(ANm+"_LstNam").value=="") { Msg="Check Last Name";		Ret=false; } 
	Buf+=document.getElementById(ANm+"_LstNam").value + "|"; 
	Nam=document.getElementById(ANm+"_FstNam").value+document.getElementById(ANm+"_LstNam").value;
	if (Ret && document.getElementById(ANm+"_AdrLn1").value=="") 
	{ 
		Msg="Check Address";				
		Ret=false; 
	} 
	else 
	{
		if (EvlPOB(Typ,ANm))
		{
		  if (!AlwPOB)
		  {
				Ret=false;
				Msg="Address cannot be a PO Box with FedEx guaranteed shipping";
			}
		}
	}
	Buf+=document.getElementById(ANm+"_AdrLn1").value + "|" + document.getElementById(ANm+"_AdrLn2").value + "|";
	if (Ret && document.getElementById(ANm+"_AdrCty").value=="") 
	{ 
		Msg="Check City";					
		Ret=false; 
	} 
	else 
	{
	  Cty=document.getElementById(ANm+"_AdrCty").value;
	}
	Buf+=document.getElementById(ANm+"_AdrCty").value + "|";
	if (Ret)
	{
		Cou=document.getElementById(ANm+"_AdrCou").value;
		if (Cou=="United States")
		{	
			if (document.getElementById(ANm+"_AdrSta").value=="") { Msg="Check Ship State";		 Ret=false; } 
			Sta=document.getElementById(ANm+"_AdrSta").value;
		}
		else
		{
			if (document.getElementById(ANm+"_AdrPrv").value=="") { Msg="Check Ship Province";	 Ret=false; } 
			Sta=document.getElementById(ANm+"_AdrPrv").value;  
		}
	}
	Buf+=Sta + "|" + Cou + "|"
	if (Ret && document.getElementById(ANm+"_AdrZip").value=="") 
	{ 
		Msg="Check Zip Code";			
		Ret=false; 
	} 
	else 
  {
    Zip=document.getElementById(ANm+"_AdrZip").value;
	}
	Buf+=document.getElementById(ANm+"_AdrZip").value + "|";
	if (Ret && document.getElementById(ANm+"_AdrPho").value=="") { Msg="Check Phone";				 Ret=false; } 
	Buf+=document.getElementById(ANm+"_AdrPho").value + "|";
	if (Typ=="C" || Typ=="P")
	{
		if (Ret && (document.getElementById(ANm+"_AdrEMl").value=="" || document.getElementById(ANm+"_AdrEMl").value!=document.getElementById(ANm+"_AdrCEM").value)) 
		{ 
			Msg="Check Contact Email";	
			Ret=false; 
		}
		else
		{
			EMl=document.getElementById(ANm+"_AdrEMl").value;
		}
		Buf+=document.getElementById(ANm+"_AdrEMl").value+"|"
	}
	else EMl="";
	if (Typ=="C") 
	{ 
		document.getElementById("txtAdrMsg").innerHTML=Msg;
	  BAdBuf=Buf; AdrLvl=0; ShpEnt=false;
	  if (Ret) 
	  {
			document.getElementById("txtAdrMsg").innerHTML="Checking Bill To Address City State and Zip";
			ShpSta=Sta;
			ChkCSZ(Cty,Sta,Zip,Cou,EMl);
		}
	}
	if (Typ=="S") 
	{ 
		SAdBuf=Buf; AdrLvl=1; 
		if (Ret) 
		{
		  ShpEnt=true;
		  if (AlwPOB || !ShpPOB)
		  {
				document.getElementById("txtAdrMsg").innerHTML="Checking Ship To Address City State and Zip";
				if (ShpEnt) ShpSta=Sta;
				ChkCSZ(Cty,Sta,Zip,Cou,EMl);
			}
			else
			{
			  Ret=false;
				document.getElementById("txtAdrMsg").innerHTML="Address cannot be a PO Box";
			}
		}
		else
		{
		  if (Nam>"")
		  {
		    ShpEnt=true;
				document.getElementById("txtAdrMsg").innerHTML=Msg;		  
		  }
		  else
		  {
		    ShpEnt=false;
		    if (AlwPOB || !ConPOB)
				{
					Ret=true;
					document.getElementById("txtAdrMsg").innerHTML="";
				}
				else
				{
					Ret=false;
					document.getElementById("txtAdrMsg").innerHTML="Address cannot be a PO Box";
				}
		  }
		}
	}
	if (Typ=="P")
	{
		document.getElementById("txtPrfMsg").innerHTML=Msg;		  
		PAdBuf=Buf; AdrLvl=2;
		if (Ret) ChkCSZ(Cty,Sta,Zip,Cou,EMl);
	}
	return Ret;
}

function CAdBck(result,eventArgs)
{
  var Lst;
  var Pwd;
	Lst=result.split("|");
  if (Lst[0]=="OK")
  {
    switch (AdrLvl)
    {
    case 0:
      if (AdrPop("adrShpAdr"))
      {
				document.getElementById("txtAdrMsg").innerHTML="Checking Ship To Address";
				ChkAdr("adrShpAdr","S");
			}
			else
		  {
				ChkAdr("adrShpAdr","S");
				AdrBuf=BAdBuf+SAdBuf;
				SavAdr(OrdIDN,AdrBuf);
				document.getElementById("txtAdrMsg").innerHTML="Evaluate Shipping - Please Wait";
				if (!PrcPnd)
				{
				  ReqSCs();
				}
		  }
		  break;
		case 1:
			document.getElementById("txtAdrMsg").innerHTML="Address Check Complete - Getting Ship Services";
			AdrBuf=BAdBuf+SAdBuf;
			SavAdr(OrdIDN,AdrBuf);
			if (!PrcPnd)
			{
			  ReqSCs();
			}
			break;
		case 2:
		  document.getElementById("txtPrfMsg").innerHTML="";
		  Pwd=document.getElementById("txtNewPwd").value;
		  UpdPrf(CstIDN,PAdBuf,Pwd);
			break;
		}
	}
	else
  {
    AdrCmp(false);
    if (AdrLvl==0 || AdrLvl==1)	document.getElementById("txtAdrMsg").innerHTML=Lst[1];  
    if (AdrLvl==2)							document.getElementById("txtPrfMsg").innerHTML=Lst[1];  	
  }	
}

function SAdBck(result,eventArgs)
{
	var Lst;
	Lst=result.split("|");
  if (Lst[0]=="OK")
  {
    AdrCmp(true);
  }
  else
  {
		alert(Lst[1]);
		AdrCmp(false);
  }
}

function ChkPOB()
{
	var Ret=false;
	if (ShpEnt)
	{
		if (ShpPOB) Ret=true;
	}
	else
	{
		if (ConPOB) Ret=true;
	}
	return Ret;
}

function EvlPOB(Typ,ANm)
{
  var Ret=false;
  var Adr="";
	if (Typ=="C") ConPOB=false;
	if (Typ=="S") ShpPOB=false;
  Adr=document.getElementById(ANm+"_AdrLn1").value;
	if (Adr.indexOf("PO Box")>=0 || Adr.indexOf("P.O. Box")>=0)
	{
	  if (Typ=="C") ConPOB=true;
		if (Typ=="S") ShpPOB=true;
		if (!AlwPOB) document.getElementById(ANm+"_AdrLn1").focus();
		Ret=true;
	}
	else
	{
		Adr=document.getElementById(ANm+"_AdrLn2").value;
		if (Adr.indexOf("PO Box")>=0 || Adr.indexOf("P.O. Box")>=0)
		{
			if (Typ=="C") ConPOB=true;
			if (Typ=="S") ShpPOB=true;
			if (!AlwPOB) document.getElementById(ANm+"_AdrLn2").focus();
			Ret=true;
		}
	}
	return Ret;
}

function ReqSCs()
{
	document.getElementById("txtAdrMsg").innerHTML="Evaluate Shipping - Please Wait";
	if (ShpEnt) GetSCs(BusGrp,CstIDN,SAdBuf,PrdIDN,ExpSel,OrdTyp); else GetSCs(BusGrp,CstIDN,BAdBuf,PrdIDN,ExpSel,OrdTyp);
}
