function getTestPID(){ return Number( document.getElementById( "testPID" ).value ); }
function getTestStyle(){ return Number( document.getElementById( "testStyle" ).value ); }
function testClick(){ showAbandonerPopup(); }
// above is for testing only

var iLLCPID = 2;
var iLWTPID = 6;

var iStyleEmail = 0;
var iStyleClick = 1;

var sAbandonerCookieID = "abandonerpu";
function getAbandonerCookie(){
  var sCookies = document.cookie;
  var re = new RegExp( sAbandonerCookieID + "[^;]+", "gim" );
  var oMatch = sCookies.match( re );
  return oMatch? String( oMatch ): "";
}
function getAbandonerCookieProcess(){
  var sCookie = getAbandonerCookie();
  var saSplit = sCookie? sCookie.split( "|" ): new Array();
  var sValue = saSplit && saSplit.length > 0? saSplit[ 1 ]: -1;
  return sValue;
}
function bCookieSet(){ return getAbandonerCookieProcess() != -1; }
function bCookieProcessMatchesCurrentProcess(){ 
  var sTemp = "," + getAbandonerCookieProcess() + ",";
  var re = new RegExp( "," + iGetPID() + ",", "gim" );
  return sTemp.match( re )? true: false;
}
function setAbandonerCookie(){
  var dt = new Date();
  var sExpire = "";
  var iProcess = iGetPID();
  var iCookieProcess = getAbandonerCookieProcess();
  var sDomain = String( document.location );
  var iTestID = 1;
  var sValue = iTestID + "|" + ( !bCookieProcessMatchesCurrentProcess() && bCookieSet()? iCookieProcess + "," : "" ) + iProcess;
  var sCookie = sAbandonerCookieID + "=" + sValue;
  dt.setDate( dt.getDate() + 90 );
  sExpire = ( dt.getMonth() + 1 ) + "/" + dt.getDate() + "/" + dt.getFullYear()
  sCookie += ";expires=" + sExpire + ";path=/;";
  document.cookie = sCookie; 
}
var bAbandonerShown = false;
function bAbandonerHasBeenShown(){ return bAbandonerShown; }
function setAbandonerShown( bIn ){ bAbandonerShown = bIn; }
function iGetPID(){ 
  var sLocation = String( document.location );
  var mIQ = sLocation.match( /iq=[0-9]+/gi ); 
  var iQ = String( mIQ ).replace( /iq=/gi, "" );
  var mIP = sLocation.match( /iProcess=[0-9]+/gi ); 
  var iP = String( mIP ).replace( /iProcess=/gi, "" );
  var iOut = -1;
  if ( sLocation.match( /[\/\\]+limited-liability-company[\/\\]+/gi ) || iQ == 27 || iP == 2 ){
    iOut = 2;
  } else if ( sLocation.match( /[\/\\]+legal-Wills[\/\\]+/gi ) || iQ == 49 || iP == 6 ){
    iOut = 6;
  }
  //iOut = getTestPID();
  return iOut;
}

function iGetStyle(){ 
  var bLoggedIn = String( document.cookie ).match( /TIMESTRING=[0-9]+/gim );
  var iOut = bLoggedIn? iStyleClick: iStyleEmail;
  //iOut = getTestStyle();
  return iOut
}
function getAbandonerPDFLink( iPID ){
  var sLink = "";
  switch ( iPID ) {
    case iLLCPID:
      sLink = "/PDF/LLC_070112_003.pdf";
      break;
    case iLWTPID:
      sLink = "/PDF/estate-planning-guide.pdf";
      break;
  }
  return sLink;
}
function getPDFID( iIn ){ return iIn - 1; }; // required for welcome subscribeNewsLetterPDF.asp.  The iPDFID's don't match
function closeAbandonerPopup(){
  hideObject( over )
}
function getStatusUpdateContent(){
  var iPID = iGetPID();
  var sThanksButton = "<input type='image' src='/img/button-close.jpg' onclick='closeAbandonerPopup()' style='margin:10px 0px 0px 0px;'>";
  var sStyle = "margin: 397px 0px 0px 0px;";
  var sThanksContent = "";
  var sOut = "";
  switch ( iPID ){
    case iLLCPID:
      sThanksContent = "<img src='/img/abandoner-thanks-llc.jpg' style='" + sStyle + "'>"
      break;
    case iLWTPID:
      sThanksContent = "<img src='/img/abandoner-thanks-ep.jpg' style='" + sStyle + "'>"
      break;
  }
  sOut = sThanksContent + "<br>" + sThanksButton;
  return sOut;
}
function updateResultsContent( sContent ){
  var obj = document.getElementById( 'apuContent' );
  obj.innerHTML = sContent;
}
function getAbandonerSubmitStr( oIn ){
  var sURL = "/welcome/subscribeNewsLetterPDF.asp";
  var sParams = "";
  for ( var i = 0; i < oIn.elements.length; i++ ){
    sParams += ( i == 0? "?": "&" ) + oIn.elements[ i ].name + "=" + oIn.elements[ i ].value
  }
  return sURL + sParams;
}
function abandonerSubmitHandler(){
  if (xmlHttp.readyState == AJAX_LOADED) {	
	var response = xmlHttp.responseText;  
  }  	  
}
function guideRequestSubmit( oIn ){
  var oField = oIn.elements[ "sEmail" ];
  var sVal = oField? oField.value.replace( /^[ ]+|[ ]+$/gi, "" ): "";
  var reEmail = /^[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/gi;
  var bOK = sVal.match( reEmail );
  var sResults = !bOK? "Invalid email address try again.": "";
  var sURL = "";
  if ( bOK ){
    sURL = getAbandonerSubmitStr( oIn );
    sendAjaxRequest( sURL, "GET", "", false, abandonerSubmitHandler );
    updateResultsContent( getStatusUpdateContent() );
  } else {
    alert( sResults );
    oField.focus();
  }
  return false;
}
function getAbandonerPopupContent(){
  var nl = "\n";
  var iPID = iGetPID();
  var iStyle = iGetStyle();
  var iPDFID = getPDFID( iPID )
  var sReferer = document.location;
  var sPDFLink = getAbandonerPDFLink( iPID );
  var sDivBackGround = iPID == iLLCPID? "abandoner-bg-llc.jpg": "abandoner-bg-ep.jpg";
  var sOut = "<div id='apuContent' style='border: solid #ffffff 1px; width: 260px; height: 600px; text-align: center; background-image: url( /img/" + sDivBackGround + " ); background-position: top left;'>" + nl;
  var sFormAction = "/welcome/subscribeNewsLetterPDF.asp";
  var sFormStyle = ( iStyle == iStyleEmail? "margin: 485px 0px 0px 0px; height: 30px; background-image: url( /img/Gradient.aspx?Direction=H&Length=30&StartColor=ededed&EndColor=e7e7e7&Format=jpeg ); background-repeat: repeat-x;": 
                                            "margin: 395px 0px 0px 0px; height: 80px;" );
  var sLoggedInContent = iPID == iLLCPID? "<img src='/img/abandoner-logged-in-llc.jpg' style='margin: 0px 0px 5px 0px;'>":
                                          "<img src='/img/abandoner-logged-in-ep.jpg' style='margin: 0px 0px 8px 0px;'>";
  if ( iStyle == iStyleEmail ){
    sOut += "<div id='oResults' ></div>";
    sOut += "<form name='frmMain' style='" + sFormStyle + "' action='" + sFormAction + "' method='get' onsubmit='return guideRequestSubmit( this );'>" + nl;
    sOut += "<input type='text' name='sEmail' id='sEmail' style='width: 137px;' style='text-aling: middle;' />" + nl + 
            "<input type='image' src='/img/button-submit-3.jpg' style='vertical-align: middle; margin: 0px 0px 5px 7px;'/>" + nl +
            "<input type='hidden' name='pdfID' value='" + iPDFID + "'>" + nl +
            "<input type='hidden' name='upid4campaign' value='1'/>" + nl +
            "<input type='hidden' name='referer' value='" + sReferer + "'>" + nl +
            "</form>";
  } else if ( iStyle == iStyleClick ){
    sOut += "<form style='" + sFormStyle + "'>" + 
            sLoggedInContent + 
            "<a href='" + sPDFLink + "' onclick='hideObject( over );' target='_blank'>" + 
            "<img src='/img/button-click-here.jpg' border='0'>" +
            "</a>" +
            "</form>";
  }
  sOut += "</div>";
  return sOut;
}
function showAbandonerPopup( oEvent ){
  var sContent = getAbandonerPopupContent();
  var sCaption = "More Information";
  var iSize = 250;
  var iX = ( screen.availWidth - iSize )/2;
  overlib( sContent,
           OFFSETY, 1,
           FIXX, iX,
           WIDTH, iSize,
           FGCOLOR, '#F8F8FF',
           TEXTFONT, 'Arial',
           TEXTSIZE, '10pt',
           BGCOLOR, '#78b0ed',
           TEXTCOLOR, '#000000',
           BORDER, 2,
           STICKY,
           CAPTION, sCaption,
           CLOSECLICK,
           CLOSECOLOR, "#ffffff",
           CLOSESIZE, "2pt;",
           CLOSETEXT, "<span style='font-weight: bold;'>[X]</span>",
           CAPCOLOR, '#F8F8FF',
           CAPTIONSIZE, "14px",
           CELLPAD, 0,0,0,0 );
}
function bShowAbandonerPopup(){
  return iGetPID() != -1 && !bCookieProcessMatchesCurrentProcess();
}
function ehAbandoner( oEvent ){
  var bPIDAndCookieOK = false;
  var bHasNotBeenShown = false;
  var bLocOK = oEvent.clientX > 160 && oEvent.clientY < 8;
  var bShownOK = false;
  try{
    bPIDAndCookieOK = bShowAbandonerPopup();
    bHasNotBeenShown = !bAbandonerHasBeenShown();
  } catch ( e ){}
  if ( bPIDAndCookieOK && bHasNotBeenShown && bLocOK ){
    try{
        showAbandonerPopup( oEvent );
        setAbandonerShown( true );
        bShownOK = true;
    }catch( e ){}
    if ( bShownOK ){
      setAbandonerCookie();
    }
  }
}
function initAbandonerEventHandler(){
  try{
    if ( window.addEventListener ){ 
      window.addEventListener( "mousemove", ehAbandoner, false )
    }else if ( document.attachEvent ){
      document.attachEvent( "onmousemove", ehAbandoner );
    }
  }catch( e ){}
}
