//$Id: upgradefunctions.js,v 451660d058a0 2010/06/22 20:45:21 jhsu $

document.write("<meta http-equiv=\"cache-control\" content=\"max-age=3600\">");
document.write("<script src=\"/js/ajaxfunctions.js\"></script>");

function DisplayUpgradeOverlay(corpId, fromPage, type)
{ 
    var f = document.eligibilitychecker;
    var getString = "";
    
    // Get the value in the form.  
    if(type == 'setZip' || type == 'setZipAddaLine')
    {
        var zip = document.zipentry.zip.value; 
        getString = "&setZip="+zip;
        if (corpId)
        	getString = getString + "&corpId="+corpId;
    }
    else if(corpId && f)
    {
        var actiontype = f.actiontype.value;
        if(actiontype == 'runCheck')
        {
            var phoneNumber = "";
            phoneNumber = phoneNumber+f.phone1.value+f.phone2.value+f.phone3.value;    
            
            if(f.ssn)
                var ssn = f.ssn.value;
                
           getString = "&ssn="+ssn+"&phoneNumber="+phoneNumber+"&actiontype="+actiontype;
        }
        else if(actiontype == 'submitContactInfo')
        {
            var contactType = GetContactValue(f.contactType);  

            if(contactType == 'noThanks')
            {
                HideOverlay();
                return;    
            }
            
            var eligibilityDate = f.eligibilityDate.value;
            var phoneNumber = f.phoneNumber.value;
            var email = f.email.value; 
            
            getString = "&email="+email+"&phoneNumber="+phoneNumber+"&contactType="+contactType+"&actiontype="+actiontype+"&eligibilityDate="+eligibilityDate;
        }            
    }
    
	
	if (fromPage)
	{
		if (type == 'addaline' || type == 'setZipAddaLine')
			getString = getString + '&pageTag=' + fromPage;
		else
			getString = getString + '&fromPage=' + fromPage;
	}
    // Create the XMLHttpRequest object.
    c = CreateHTMLRequestor();

    // if the XMLHttpRequest object is in any state other than 0 (unitialized), then stop the current request.
    if (c && c.readyState!=0)
    {
        c.abort();
    }

    // Set the function that handles changes in state.
    c.onreadystatechange = processUpgradeInfo;

    // Send the request.
    if (type == 'addaline' || type == 'setZipAddaLine')
    	pageUrl = '/product/addlinefamily_popup.htm?overlay=1&corpId='+corpId+getString;
    else
    	pageUrl = '/popups/upgradechooser.htm?carrierCorpId='+corpId+getString;

	//alert('retriving page '+pageUrl);
  
    c.open("GET", pageUrl, true);
    c.send(null);
    
    //Because firefox appears to remember form values
    //reset action type once done processing action
    if(f && f.actiontype)
        f.actiontype.value = "";
}

function processUpgradeInfo()
{
    // only if req shows "complete"
    if (c.readyState == 4)
    {
        if (c.status == 200) // Numeric code returned from server. 200 means "OK".
        {
        	DisplayUpgradeText(c.responseText);
        } else {
            alert("There was a problem retrieving the HTML data:\n" +
                c.statusText);
        }
    }
}

function DisplayUpgradeText(responseHTML)
{
    // Get xslt xml transfrom
    display = document.getElementById('upgradeoverlay');

    if (responseHTML && display)
    {
        display.innerHTML = responseHTML;
        display.style.display = "inline-block";
    }  
}

function GetContactValue(buttonname)
{
    for (var i=0; i < buttonname.length; i++)
    {
        if (buttonname[i].checked)
        {
            var fieldname = buttonname[i].value;
        }
    }
    
    return fieldname;
}

 
function DisplayContinueButton(continueElem)
{
    if(document.getElementById('individual') != undefined)
        document.getElementById('individual').className='hideIt';
    
    if(document.getElementById('family') != undefined)
        document.getElementById('family').className='hideIt';
    
    if(document.getElementById('addedlines') != undefined)
        document.getElementById('addedlines').className='hideIt';
    
    continueElem.className='displayIt';            
}  

 
function DisplayInitialOverlay(event, setCorpId, fromPage, type)
{
    var posY = 0; 
    theBody = document.getElementsByTagName('BODY')[0];
    
    //Create the background opaque transparency div
    transparencyDiv = document.createElement('div');
    transparencyDiv.id = 'overlaytransparency';
    transparencyDiv.style.left = 0+"px"; 
    transparencyDiv.style.top = 1 + "px";
    transparencyDiv.style.zIndex= 9998; 
    transparencyDiv.style.height = theBody.clientHeight+ "px";
    
    //Create the container for the overlay popup
    upgradeoverlayDiv = document.createElement('div');
    upgradeoverlayDiv.id = 'upgradeoverlay';

    var scrOfX = 0, scrOfY = 0;
    if( typeof( window.pageYOffset ) == 'number' ) {
        //Netscape compliant
        scrOfY = window.pageYOffset;
        scrOfX = window.pageXOffset;
    } else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
        //DOM compliant
        scrOfY = document.body.scrollTop;
        scrOfX = document.body.scrollLeft;
    } else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
        //IE6 standards compliant mode
        scrOfY = document.documentElement.scrollTop;
        scrOfX = document.documentElement.scrollLeft;
    }

    upgradeoverlayDiv.style.top = (scrOfY+100) + 'px';
	upgradeoverlayDiv.style.visibility = "visible";
    upgradeoverlayDiv.style.display = "inline-block";
    upgradeoverlayDiv.style.zIndex = 9999; 
    
    theBody.appendChild(transparencyDiv);    
    theBody.appendChild(upgradeoverlayDiv);

    //When user comes from phone finder then carrier should be preslected
    var phoneFinderForm = document.phoneFinder;
    var corpId;
    if(setCorpId)
    	corpId = setCorpId;
    
    if(phoneFinderForm)
    {  
        var serviceCorpId = phoneFinderForm.serviceCorpId;
        var numSelected = 0;
        
        if(serviceCorpId)
        {
            for(var i=0; i < serviceCorpId.length; i++)
            {
                if(serviceCorpId[i].checked)
                {
                    numSelected++;
                    serviceSelected = serviceCorpId[i].value;       
                }
            }
        }
        if(numSelected == 1)
            corpId = serviceSelected;
    }    
     
    //Now get the display to put in the overlay
    setTimeout("DisplayUpgradeOverlay('"+corpId+"', '"+fromPage+"', '"+type+"')", 0);
   
    posX = document.documentElement.clientWidth/2 - upgradeoverlayDiv.clientWidth/2;
    upgradeoverlayDiv.style.left = posX + 'px';
}   

function HideOverlay(noRefresh)
{
   var theBody = document.getElementsByTagName('BODY')[0];
   var overlayDiv = document.getElementById("upgradeoverlay");
   
   if(overlayDiv)
   {     
        theBody.removeChild(overlayDiv);    
        
        var transparencyDiv = document.getElementById("overlaytransparency");
        theBody.removeChild(transparencyDiv);
		if( !noRefresh )
			window.location.href = window.location.href;
    }
    else   
        window.close();
}