var bundleTotal; 				        // Total of all packages
var expensesTotal;				        // Total of all expenses (entered by user)
var hascable = gup("video");            // Customer has cable? flag
var hashsd = gup("hsi");                // Customer has HSD? flag
var hasphone = gup("voip");             // Customer has phone? flag
var existcust = gup("existcust");       // Generic existing customer flag
var existingcable = gup("videoplan");    // Customer's existing cable service
var existinghsd = gup("hsiplan");        // Customer's existing HSD service
var existingphone = gup("voipplan");     // Customer's existing phone service

window.onload = function()
{
	var pre=gup("pre");
	
	if (pre == '' && getElement('smartbox1_PreLabel') != null)
	    pre = getElement('smartbox1_PreLabel').innerHTML;
	    
	if (pre != "")
	{
	    //getElement('chkCable').checked = true;
	    //selectProduct(getElement('chkCable'), 'cable');
	    
	    //getElement('chkDP').checked = true;
	    //selectProduct(getElement('chkDP'), 'dp');
	    
	    getElement('chkwire').checked = true;
	    selectProduct(getElement('chkwire'), 'wire');
	    
	    if (existinghsd == "") {
	        getElement('chkHSD').checked = true;
	        selectProduct(getElement('chkHSD'), 'hsd');
	        document.frmBAB.hsdPackage[1].checked = true;
	    }
	    
	    //document.frmBAB.dpPackage[0].checked = true;
	    document.frmBAB.wirePackage[1].checked = true;
	}
	if (pre == "elite")
	    document.frmBAB.wirePackage[1].checked = true;
	if (pre == "natelite")
	    document.frmBAB.wirePackage[0].checked = true;
	if (pre != "")
	    calculateTotal();			
}

function getSiteID()
{
    var siteID = ''; 
    if (getElement('smartbox1_SiteIDLabel') != null)
	    siteID = getElement('smartbox1_SiteIDLabel').innerHTML;  

    return siteID;
}

function getCoDivFr()
{
    var codivfr = '';
    if (getElement("smartbox1_CoDivFrLabel") != null)
	    codivfr = getElement("smartbox1_CoDivFrLabel").innerHTML;
	    
	return codivfr;
}

function overbuild()
{
    // Determine if this is an overbuild situation
    var overbuildflag = gup("overbuild");
    var codivfr = getCoDivFr();
    
    if (overbuildflag == null)
        overbuildflag = '';
    
    for(x=0; x< SCoverbuilds.length; x++)
    {
        if (codivfr == SCoverbuilds[x])
          overbuildflag = 'SC';
    }

    if (codivfr == ECoverbuild)
        overbuildflag = 'wilson';
    
    return overbuildflag;
}

// Determine if this is a special offer from landing page situation
if (getElement("offerflag") != null)
    offerflag = getElement("offerflag").innerHTML;
else
    offerflag = "";

// Function to get form element
function getElement( which )
{
	if(document.getElementById != null)
		return document.getElementById( which );
	if(document.all != null)
		return document.all[which];
	if(document.layers != null)
		return document.layers[which];
	return null;
}

function selectProduct( checkbox, product )
{
    getElement('NoneSelected').style.display = 'none';
    
	var showRow = (navigator.appName.indexOf("Internet Explorer") != -1) ? "block" : "table-row";

	var myElement = getElement(product + 'Div');
	var myPricing = getElement(product + 'Pricing');
	var myOptions = getElement(product + 'Options');
	var myLink = getElement('lnkExpand' + product);
	
	// show or hide the selection DIV
	if(checkbox.checked)
	{
		if(product == 'cable' || product == 'hsd' || product == 'dp' || product == 'wire') {
			myElement.style.display = '';
			//myPricing.style.display = '';
	    }
	}
	else
	{
		if(product == 'cable' || product == 'hsd' || product == 'dp' || product == 'wire'){
			myElement.style.display = 'none';
			switch (product)
			{
			    case 'cable':
			        if (getElement('upgradetodigital') != null)
			            getElement('upgradetodigital').checked = false;
			        if (getElement('dvr') != null)
			            getElement('dvr').checked = false;
			        break;
			    case 'hsd':
			    	if (getElement('rrturbo') != null)
			            getElement('rrturbo').checked = false;
			        if (getElement('home_networking') != null)
			            getElement('home_networking').checked = false;
			        break;
			    case 'dp':
			        if (getElement('secondline') != null)
			            getElement('secondline').checked = false;
			        if (getElement('voicemail') != null)
			            getElement('voicemail').checked = false;
			        if (getElement('iop') != null)
			            getElement('iop').checked = false;
			        break;
			    default:
			        break;
			}			
			//myPricing.style.display = 'none';
	    }
	}		

	calculateTotal(false);
}

function calculateTotal()
{
	getElement('NoneSelected').style.display = 'none';
	getElement('cablePricing').style.display = 'none';
	getElement('dvrPricing').style.display = 'none';
	getElement('hsdPricing').style.display = 'none';
	getElement('HomeNetPricing').style.display = 'none';
	getElement('dpPricing').style.display = 'none';
	getElement('addlinePricing').style.display = 'none';
	getElement('vmPricing').style.display = 'none';
	getElement('iopPricing').style.display = 'none';
	getElement('wirePricing').style.display = 'none';
	if (getElement('dvr') != null)
	    getElement('dvr').disabled = false;
	
	var total = 0.0;                    // Calculated total price
	var cableExpense = 0.0;             // Price of selected cable
	var hsdExpense = 0.0;               // Price of selected HSD
	var dpExpense = 0.0;                // Price of selected phone
	var homenetExpense = 0.0;           // Price of home networking
	var addlineExpense = 0.0;
	var voicemailExpense = 0.0;
	var iopExpense = 0.0;
	var dvrExpense = 0.0;
	var wireExpense = 0.0;
	
	var selectedcable = '';             // Code name of selected cable
	var selectedhsd = '';               // Code name of selected HSD
	var selecteddp = '';                // Code name of selected phone
	var selectedwire = '';
    
    var cablechecked = 0;               // Is cable checked? flag
    var hsdchecked = 0;                 // Is HSD checked? flag
    var dpchecked = 0;                  // Is Digital Phone checked? flag
    var wirechecked = 0;
    
	var cabletext = '';                 // Selected cable product text
	var cablepricing = '';              // Selected cable product price text
	var cablepricingdisclaimer = '';    // Cable disclaimer text
	var cabledescription = '';          // Selected cable service description

	var hsdtext = '';                   // Selected HSD product text
	var hsdpricing = '';                // Selected HSD product price text
	var hsdpricingdisclaimer = '';      // HSD disclaimer text
	var hsddescription = '';            // Selected HSD service description
	
	var homenettext = '';               // Home networking display vars
	var homenetpricing = '';
	var homenetdisclaimer = '';
	var homenetdescription = '';
	
	var voicemailtext = '';
	var voicemailpricing = '';
	var voicemaildescription = '';
	
	var dvrtext = '';
	var dvrpricing = '';
	var dvrdescription = '';
	
	var addlinetext = '';
	var addlinepricing = '';
	var addlinedescription = '';
	
	var ioptext = '';
	var ioppricing = '';
	var iopdescription = '';

	var dptext = '';                    // Selected Digital Phone text
	var dppricing = '';                 // Selected Digital Phone price text
	var dppricingdisclaimer = '';       // Phone disclaimer text
	var dpdescription = '';             // Selected Phone service description
	
	var wiretext = '';
	var wirepricing = '';
	var wiredisclaimer = '';
	var wiredescription = '';
	var wirepricingdisclaimer = '';
	
	var plgoffercable = '';
	var plgofferhsd = '';
	var plgofferphone = '';
	var plgflag = 0;
	
	if (getElement('toporderbutton') != null)
	    getElement('toporderbutton').style.display='';
	
	siteID = getSiteID();
	codivfr = getCoDivFr();
	overbuildflag = overbuild();
	
	var selectedValue = '';	
	
	// Default existing for PLG offers
	if (existingcable == "digital")
        plgoffercable = 'DC';
    if (existingcable == "cpst")
        plgoffercable = 'BC';
    if (existinghsd == 'RRStd')
        plgofferhsd = "RRSTD";
    if (existinghsd == 'RRTurbo')
        plgofferhsd = "RRTURBO";
    if (existingphone == 'DPNAT')
        plgofferphone = "DPNAT";
	
	// Get selected cable package
	
	if (getElement('chkCable') != null && getElement('chkCable').checked) {
	    cablechecked = 1;
	    var myElement = document.frmBAB.cablePackage;
		    
		if(myElement != null) 
		{	
			if (myElement.length > 1) {
			    for(x=0; x< myElement.length; x++)
			    {
				    if(myElement[x].checked) {
				         selectedValue = myElement[x].value;
				         getElement('cablePricing').style.display = '';
				    }
			    }
			} else {
			    if (myElement.checked) {
			        getElement('cablePricing').style.display = '';
			        selectedValue = myElement.value;
			    }
			}
			       
			if (selectedValue != '') 
			{
		        selectedcable += eval('cablePackCodes['+ selectedValue +']'); 
		    }      
 
		}
    }
    
    // Get selected HSD package
	if (getElement('chkHSD') != null && getElement('chkHSD').checked) {
	    hsdchecked = 1;
	    selectedValue = '';
	    var myElement = document.frmBAB.hsdPackage;
		if(myElement != null) 
		{
			if (myElement.length > 1) {
			    for(x=0; x< myElement.length; x++)
			    {
				    if(myElement[x].checked) {
					    selectedValue = myElement[x].value;
					    getElement('hsdPricing').style.display = '';
				    }
			    }
			} else {
			    if (myElement.checked) {
			        getElement('hsdPricing').style.display = '';
			        selectedValue = myElement.value;
			    }
			}
			
			if (selectedValue != '') 
			{
		        selectedhsd += eval('hsdPackCodes['+ selectedValue +']'); 
		    }
		}
    }
    
    // Get selected phone package
	if (getElement('chkDP') != null && getElement('chkDP').checked) {
	    dpchecked = 1;
	    selectedValue = '';
	    var myElement = document.frmBAB.dpPackage;
		if (myElement != null) 
		{
			if (myElement.length > 1) {
			    for(x=0; x< myElement.length; x++)
			    {
				    if(myElement[x].checked) {
					    selectedValue = myElement[x].value;
					    getElement('dpPricing').style.display = '';
				    }
			    }
			} else {
			    if (myElement.checked) {
			        getElement('dpPricing').style.display = '';
			        selectedValue = myElement.value;
			    }
			}
			if (selectedValue != '') 
			{
			    selecteddp += eval('dpPackCodes['+ selectedValue +']');
		    } 
	    }
	}

    /* Disable wireless if none of the other three boxes are checked
	if (existcust == 'N' && selectedcable == '' && selectedhsd == '' && selecteddp == '')
	{
	    getElement('chkwire').checked = false;
	    getElement('chkwire').disabled = true;
	    getElement('wireDiv').style.display = 'none';
	} else {
	    getElement('chkwire').disabled = false;
	} */
	
	var wirecontract = '';
	
	// Get selected wireless package
	if (getElement('chkwire') != null && getElement('chkwire').checked) {
	    
	    if (existcust == 'N' && selectedcable == '' && selectedhsd == '' && selecteddp == '') {
	        getElement('NoneSelected').style.display = '';
	        getElement('errormsg').innerHTML = 'You must order at least one other service from Time Warner Cable in order to qualify for Road Runner Mobile.';
	    } else {
	        getElement('NoneSelected').style.display = 'none';
	    } 
	    
	    wirecontract = wireContractValue();
	    
	    wirechecked = 1;
	    selectedValue = '';
	    var myElement = document.frmBAB.wirePackage;
		if (myElement != null) 
		{
			if (myElement.length > 1) {
			    for(x=0; x< myElement.length; x++)
			    {
				    if(myElement[x].checked) {
					    selectedValue = myElement[x].value;
					    getElement('wirePricing').style.display = '';
				    }
			    }
			} else {
			    if (myElement.checked) {
			        getElement('wirePricing').style.display = '';
			        selectedValue = myElement.value;
			    }
			}
			if (selectedValue != '') 
			{
			    selectedwire += eval('wirePackCodes['+ selectedValue +']');
			    getElement('deviceinfo').style.display = '';
		    }  else
		        getElement('deviceinfo').style.display = 'none';
	    }
	} else {
	    getElement('deviceinfo').style.display = 'none';
	}
	
	if (selectedwire == '')
	{
	    if (getElement('cradlepoint') != null) {
	        getElement('cradlepoint').checked = false;
	        getElement('cradlepoint').disabled = true;
	    }
	} else {
	    if (getElement('cradlepoint') != null)
	        getElement('cradlepoint').disabled = false;
	}
	
	/* Show Digital Access only if RR Basic and DP Carolinas are selected.
	if (getElement('DATriplePlay') != null) 
	{
        if (existcust == "N" && selectedhsd == "rrbasic" && selecteddp == "carolinas")
	        getElement('DATriplePlay').style.display = '';
	} else {
	    getElement('DATriplePlay').style.display = 'none';
	    if (selectedcable == 'digitalaccess') {
	        selectedcable = '';
	        document.frmBAB.cablePackage[1].checked = false;
	    }
	}*/
	
	
	// Add in cable total
	if(cablechecked == 1) 
	{            	
		if(selectedcable == 'digital')
		{
			getElement('cablePricing').style.display = '';
			 if (getElement('dvr') != null)
                getElement('dvr').disabled = false;
			cabletext = digitalCableName;	
			cabledescription = digitalCableDescription;	
			cablepricing = '$' + parseCurrency(digitalCablePrice) + '/month<br>for 6 months*';
			cableExpense = digitalCablePrice;
			cablepricingdisclaimer = digitalCableDisclaimer;
			plgoffercable = 'DC';
		}
		
		if(selectedcable == 'digitalaccess')
		{
			getElement('cablePricing').style.display = '';
			if (getElement('dvr') != null)
                getElement('dvr').disabled = false;
			cabletext = digitalAccessName;	
			cabledescription = digitalAccessDescription;	
			
			if ((selectedhsd == 'rrbasic' && selecteddp == 'carolinas') && ((hascable == '0' && hashsd == '0' &&  hasphone == '0') || (existcust == 'N' || offerflag != '')))
			{
			    cablepricing = '$' + parseCurrency(digitalAccessBundlePrice) + '/month<br>for 12 months*';
			    cableExpense = digitalAccessBundlePrice;
			} else {
			    cablepricing = '$' + parseCurrency(digitalAccessSalePrice) + '/month<br>for 12 months*';
			    cableExpense = digitalAccessSalePrice;
			}
			cablepricingdisclaimer = digitalAccessDisclaimer;
			plgoffercable = 'DC';
		}

		if(selectedcable == 'cpst')
		{
			getElement('cablePricing').style.display = '';
			if (getElement('dvr') != null) {
			    getElement('dvr').checked = false;
                getElement('dvr').disabled = true;
            }
			cabletext = CPSTName;
			cabledescription = CPSTDescription;
			    
			/*if ((selectedhsd == 'rrbasic' && selecteddp == 'carolinas') && ((hascable == '0' && hashsd == '0' &&  hasphone == '0') || (existcust == 'N' || offerflag != '')))
			{
			    cableExpense = CPSTPriceTriple;
			    cablepricing = '$' + parseCurrency(cableExpense) + "/month<br>for 12 months*"; 
			    cablepricingdisclaimer = '* Offer only available to new customers. Pricing does not include franchise fees or taxes.';
			} else {*/
			    /*if (selecteddp != 'national' && selectedcable != 'digital')
			    {
			        cableExpense = CPSTPriceSale;
			        cablepricing = '$' + parseCurrency(cableExpense) + "/month<br>for 12 months*"; 
			        cablepricingdisclaimer = '* Pricing does not include franchise fees or taxes. Regular rate for Basic Cable after 12 months.';
			    } else {*/
			        cableExpense = parseFloat(getElement('smartbox1_CPSTPriceLabel').innerHTML);
			        cablepricing = '$' + parseCurrency(cableExpense) + "/month*";
			        cablepricingdisclaimer = CPSTDisclaimer;
			    //}
			//}
			plgoffercable = 'BC';
		}
			    
		if(selectedcable == 'bst')
		{
            getElement('cablePricing').style.display = '';
            if (getElement('dvr') != null) {
			    getElement('dvr').checked = false;
                getElement('dvr').disabled = true;
            }
            cabletext = BSTName;
    	    cabledescription = BSTDescription;
    			
    	    cableExpense = parseFloat(getElement('smartbox1_BSTPriceLabel').innerHTML);
    	    
    	    /* BST offerflag was "BSTOffer"
			if (cableExpense > 7.95) {
			    cableExpense = BSTOfferPrice;
			    cablepricing = '$' + parseCurrency(BSTOfferPrice) + "/month<br>for 12 months*";		      
			} else { */
			    cableExpense = parseFloat(getElement('smartbox1_BSTPriceLabel').innerHTML);
			    cablepricing = '$' + parseCurrency(cableExpense) + "/month*";
			    offerflag = "";
			//}
			cablepricingdisclaimer = BSTDisclaimer;
			plgoffercable = 'BB';
		}
		
		// Digital Cable upgrades
        if (getElement('upgradetodigital') != null && getElement('upgradetodigital').checked) {
            getElement('cablePricing').style.display = '';
            cabletext = digitalCableName;
            cabledescription = digitalCableDescription;
            cableExpense = digitalUpgPrice;
            cablepricing = '$' + parseCurrency(cableExpense) + "/month<br>for 12 months*";
            cablepricingdisclaimer = digitalUpgDisclaimer;
            plgoffercable = 'DC';
        } 
        
        if (getElement('dvr') != null && getElement('dvr').checked) 
        {
            getElement('dvrPricing').style.display = '';
            dvrtext = DVRName;
            dvrdescription = DVRDescription;
            switch (siteID)
            {
                case '314':
                case '38':
                    if (overbuildflag == 'wilson')
                        dvrExpense = DVRPriceWilson;
                    else
                        dvrExpense = DVRPriceEastCar;
                    break;
                default:
                    dvrExpense = DVRPrice;
                    break;
            }
            dvrpricing = '$' + parseCurrency(dvrExpense) + "/month*";
            cablepricingdisclaimer = DVRDisclaimer;
            plgoffercable = 'DC';
        }
		
    }
    
	// Add in HSO total
	if(hsdchecked == 1)
	{             
        hsdpricingdisclaimer = HSDDisclaimer;
        // ROAD RUNNER STANDARD
		if(selectedhsd == 'rr')
		{
			getElement('hsdPricing').style.display = '';
			hsdtext = rrStdName;
			
			if (overbuildflag == 'wilson')
			    hsddescription = rrStdDescriptionOB;
			else    
			    hsddescription = rrStdDescription;
			
		
			// Has or is selecting Digital Cable	
			var bundleprice;		
			if (existingcable == 'digital' || selectedcable == 'digital' || (getElement('upgradetodigital') != null && getElement('upgradetodigital').checked)) {
			    // South Carolina (non-overbuild)?
			    
			    switch (overbuildflag)
			    {
			        case 'wilson':
			            bundleprice = rrStdPriceDCWilson;
			            break;
			        case 'SC':
			            bundleprice = rrStdPriceSummer;
			            break;
			        default:
			            if (siteID == '390') // South Carolina
			                bundleprice = rrStdPriceDCSC;
			            else
			                bundleprice = rrStdPriceDC;
			            break;			        
			    }		
			    hsdpricing = '$' + parseCurrency(bundleprice) + '/month**';
			    hsdExpense = bundleprice;	    		    
			} else {
			    switch (overbuildflag)
			    {
			        case 'wilson':
			            bundleprice = rrStdPriceCPSTWilsonChar;
			            break;
			        case 'SC':
			            bundleprice = rrStdPriceSummer;
			            break;
			        default:
			            if (siteID == '100') // Charlotte
			                bundleprice = rrStdPriceCPSTWilsonChar;
			            else
			                bundleprice = rrStdPriceCPST;
			            break;			        
			    }
			    hsdpricing = '$' + parseCurrency(bundleprice) + '/month**';
			    hsdExpense = bundleprice;
			}
			
			// Standalone
			/*if (hascable != '1' && selectedcable == '' && hasphone != '1' && selecteddp == '') 
			{
			    var standaloneprice;
			    switch (overbuildflag)
			    {
			        case 'wilson':
			            standaloneprice = rrStdPriceAloneWilson;
			            break;
			        case 'SC':
			            standaloneprice = rrStdPriceSummer;
			            break;
			        default:
			            standaloneprice = rrStdPriceAlone;
			            break;
			    }
			    hsdpricing = '$' + parseCurrency(standaloneprice) + '/month**';
			    hsdExpense = standaloneprice;		    
			}*/
			
			// Sale
			if (selectedcable != 'digital' && selectedcable != 'digitalaccess' && selecteddp != 'national' && existinghsd == "" && plgoffercable != 'DC') 
			{
			    
			    hsdpricing = '$' + parseCurrency(rrStdSale) + '/month for 6 months**';
			    hsdExpense = rrStdSale;
			    hsdpricingdisclaimer = HSDSaleDisclaimer;
			}	
			
			plgofferhsd = 'RRSTD';
		}
            
        // ROAD RUNNER TURBO
		if(selectedhsd == 'rrturbo')
		{
			getElement('hsdPricing').style.display = '';
			hsdtext = rrTurboName;
			
			if (overbuildflag == 'wilson')
			    hsddescription = rrTurboDescriptionOB;
			else
			    hsddescription = rrTurboDescription;
			
			var bundleprice;
			// Has or is selecting Digital Cable
			if (existingcable == 'digital' || selectedcable == 'digital' || (getElement('upgradetodigital') != null && getElement('upgradetodigital').checked)) {
			    // South Carolina (non-overbuild)?
			    switch (overbuildflag)
			    {
			        case 'wilson':
			            bundleprice = rrTurboPriceDCWilson;
			            break;
			        case 'SC':
			            bundleprice = rrTurboPriceSummer;
			            break;
			        default:
			            if (siteID == '390') // South Carolina
			                bundleprice = rrTurboPriceDCSC;
			            else
			                bundleprice = rrTurboPriceDC;
			            break;			        
			    }		
			    hsdpricing = '$' + parseCurrency(bundleprice) + '/month**';
			    hsdExpense = bundleprice;	  
			} else {
			    switch (overbuildflag)
			    {
			        case 'wilson':
			            bundleprice = rrTurboPriceCPSTWilsonChar;
			            break;
			        case 'SC':
			            bundleprice = rrTurboPriceSummer;
			            break;
			        default:
			            if (siteID == '100') // Charlotte
			                bundleprice = rrTurboPriceCPSTWilsonChar;
			            else
			                bundleprice = rrTurboPriceCPST;
			            break;			        
			    }
			    hsdpricing = '$' + parseCurrency(bundleprice) + '/month**';
			    hsdExpense = bundleprice;
			}
			    
			// Standalone
			/* if (hascable != '1' && selectedcable == '' && hasphone != '1' && selecteddp == '') {
			    var standaloneprice;
			    switch (overbuildflag)
			    {
			        case 'wilson':
			            standaloneprice = rrTurboPriceAloneWilson;
			            break;
			        case 'SC':
			            standaloneprice = rrTurboPriceSummer;
			            break;
			        default:
			            standaloneprice = rrTurboPriceAlone;
			            break;
			    }
			    hsdpricing = '$' + parseCurrency(standaloneprice) + '/month**';
			    hsdExpense = standaloneprice;
			} */
			
			// Sale
			if (selectedcable != 'digital' && selectedcable != 'digitalaccess' && selecteddp != 'national' && existinghsd == "" && plgoffercable != 'DC') 
			{
			    hsdpricing = '$' + parseCurrency(rrTurboSale) + '/month for 6 months**';
			    hsdExpense = rrTurboSale;
			    hsdpricingdisclaimer = HSDSaleDisclaimer;
			}
			
			plgofferhsd = 'RRTURBO';
		}
			
		// ROAD RUNNER BASIC
		if(selectedhsd == 'rrbasic')
		{
			getElement('hsdPricing').style.display = '';
			hsdtext = rrBasicName;
			
			if (overbuildflag == 'wilson')
			    hsddescription = rrBasicDescriptionOB;
			else
    			hsddescription = rrBasicDescription;
			
            /*if (hascable != '1' && selectedcable == '' && hasphone != '1' && selecteddp == '') 
            {*/
			    var standaloneprice;
			    switch (overbuildflag)
			    {
			        case 'wilson':
			            standaloneprice = rrBasicPriceAloneWilson;
			            break;
			        case 'SC':
			            standaloneprice = rrBasicPriceAloneSummer;
			            break;
			        default:
			            standaloneprice = rrBasicPriceAlone;
			            break;
			    }
			    hsdpricing = '$' + parseCurrency(standaloneprice) + '/month**';
			    hsdExpense = standaloneprice;
			/*} else {
			    if (overbuildflag == "wilson") {
			        hsdpricing = '$' + parseCurrency(rrBasicPriceAloneWilson) + '/month**';
			        hsdExpense = rrBasicPriceAloneWilson;
			    } else {
			        hsdpricing = '$' + parseCurrency(rrBasicPriceBundle) + '/month**';
			        hsdExpense = rrBasicPriceBundle;
			    }
			}*/
			
			if ((existcust == 'N'  || offerflag != '') && (selectedcable == 'digitalaccess') && selecteddp == 'carolinas')
			{
			    hsdpricing = '$' + parseCurrency(rrBasicPricePwrBundle) + '/month<br>for 12 months**';
			    hsdExpense = rrBasicPricePwrBundle;
			}
			plgofferhsd = 'RRBasic';
			
		}
            
        // ROAD RUNNER LITE
		if(selectedhsd == 'rrlite')
		{
			getElement('hsdPricing').style.display = '';
			hsdtext = rrLiteName;
			hsddescription = rrLiteDescription;
			
            /*if (selectedcable != 'digital' && selectedcable != 'digitalaccess' && selecteddp != 'national') {
			    hsdpricing = '$' + parseCurrency(rrLitePrice) + '/month<br>for 12 months**';
			    hsdExpense = rrLitePrice;
			} else {*/
			    hsdpricing = '$' + parseCurrency(rrLitePriceAlone) + '/month**';
			    hsdExpense = rrLitePriceAlone;
			//}	
			plgofferhsd = 'RRLite';		
		}
		
		// HSD Upgrade Optinos
		if (getElement('rrturbo') != null && getElement('rrturbo').checked) {
            getElement('hsdPricing').style.display = '';
            hsdtext = rrTurboName;
            if (overbuildflag == 'wilson')
			    hsddescription = rrTurboDescriptionOB;
			else
			    hsddescription = rrTurboDescription;
			hsdpricing = '$' + parseCurrency(rrTurboAddPrice) + '/month**';
			hsdExpense = rrTurboAddPrice;
			hsdpricingdisclaimer += rrTurboDisclaimer;
			plgofferhsd = 'RRTurbo';
        }
        
        if (getElement('home_networking') != null && getElement('home_networking').checked) 
        {
            getElement('HomeNetPricing').style.display = '';
            homenettext = homeNetworkName;
            homenetdescription = homeNetworkDescription;
            homenetExpense = homeNetworkPrice;
            /*switch (siteID)
            {
                // Greensboro & Charlotte
                case '56':
                case '100':
                    homenetExpense = homeNetworkPriceGBOCLT;
                    break;
                default:
                    homenetExpense = homeNetworkPrice;
                    break;
            }*/
            homenetpricing = '$' + parseCurrency(homenetExpense) + "/month**";
            hsdpricingdisclaimer += homeNetworkDisclaimer;
        } else {
            getElement('HomeNetPricing').style.display = 'none';
        }
		
    }
	
	
	// Add in Digital Phone total
	if(dpchecked == 1)
	{
		dppricingdisclaimer = dpDisclaimer;
		
		if(selecteddp == 'national')
		{
			getElement('dpPricing').style.display = '';
			dptext = dpNatName;
			dpdescription = dpNatDescription;
			
			//  Has or is selecting cable OR RR
			if ((hascable == '1' || selectedcable != '') || (hashsd == '1' || selectedhsd != '')) 
			{
                // Greensboro/South Carolina BST exception or Charlotte RR Lite exception
                if (((siteID == '56' || siteID == '390') && (existingcable == 'bst' || selectedcable == 'bst')) || (siteID == '100' && (existinghsd == 'rrlite' || existinghsd == 'rr768' || selectedhsd == 'rrlite' || selectedhsd == 'rr768'))) {
			        dppricing = '$' + parseCurrency(dpNatPriceAlone) + '/month***';
			        dpExpense = dpNatPriceAlone;
			    } else {
			        dppricing = '$' + parseCurrency(dpNatPriceDouble) + '/month***';
			        dpExpense = dpNatPriceDouble;
			    }				    
			}
			
			//  Has or is selecting cable AND RR			
			if((hascable == '1' || selectedcable != '') && (hashsd == '1' || selectedhsd != ''))		
			{
			    // Greensboro/South Carolina BST exception or Charlotte RR Lite exception
			    if (((siteID == '56' || siteID == '390') && (existingcable == 'bst' || selectedcable == 'bst')) || (siteID == '100' && (existinghsd == 'rrlite' || existinghsd == 'rr768' || selectedhsd == 'rrlite' || selectedhsd == 'rr768'))) {
			        dppricing = '$' + parseCurrency(dpNatPriceDouble) + '/month***';
			        dpExpense = dpNatPriceDouble;
			    } else {
			        dppricing = '$' + parseCurrency(dpNatPriceTriple) + '/month***';
			        dpExpense = dpNatPriceTriple;
			    }			    
			}
			
			//  No existing or selected cable or RR
			if (hascable != '1' && selectedcable == '' && hashsd != '1' && selectedhsd == '') {
			    dppricing = '$' + parseCurrency(dpNatPriceAlone) + '/month ***';
			    dpExpense = dpNatPriceAlone;
			}
			
			// DP Nat sale $19.95x12 through 8/31/09 -- available if DC not selected
			if (hasphone != '1' && selectedcable != 'digital' && selectedcable != 'digitalaccess' && plgoffercable != 'DC') {
                    dppricing = '<b><font color="#ff0000">Special Limited Time Offer!</font></b><br>$' + parseCurrency(dpNatPriceSale) + ' per month for 12 months***';
			        dpExpense = dpNatPriceSale;
			        dppricingdisclaimer = dpSaleDisclaimer;
			} 
			
			plgofferphone = 'DPNAT';		
			
		}
			
		if(selecteddp == 'carolinas')
		{
			getElement('dpPricing').style.display = '';
			dptext = dpCarName;
			dpdescription = dpCarDescription;
			
			//  Has or is selecting cable OR RR
			if ((hascable == '1' || selectedcable != '') || (hashsd == '1' || selectedhsd != '' )) 
			{
			    // Greensboro/South Carolina BST & Charlotte RR Lite exception
			    if (((siteID == '56' || siteID == '390') && (existingcable == 'bst' || selectedcable == 'bst')) || (siteID == '100' && (existinghsd == 'rrlite' || existinghsd == 'rr768' || selectedhsd == 'rrlite' || selectedhsd == 'rr768'))) {
			        dppricing = '$' + parseCurrency(dpCarPriceAlone) + '/month***';
			        dpExpense = dpCarPriceAlone;
			    } else {
			        dppricing = '$' + parseCurrency(dpCarPriceDouble) + '/month***';
			        dpExpense = dpCarPriceDouble;
			    }
			}
			
			//  Has or is selecting cable AND RR
			if ((hascable == '1' || selectedcable != '') && (hashsd == '1' || selectedhsd != '')) 
			{
			    // Greensboro/South Carolina BST & Charlotte RR Lite exception
			    if (((siteID == '56' || siteID == '390') && (existingcable == 'bst' || selectedcable == 'bst')) || (siteID == '100' && (existinghsd == 'rrlite' || existinghsd == 'rr768' || selectedhsd == 'rrlite' || selectedhsd == 'rr768'))) {
			        if (existcust == 'N' && selectedcable == 'cpst' && selectedhsd == 'rrlite') {
	                    dppricing = '$' + parseCurrency(dpCarPriceTriple) + '/month***';
			            dpExpense = dpCarPriceTriple;
			        } else {
			            dppricing = '$' + parseCurrency(dpCarPriceDouble) + '/month***';
			            dpExpense = dpCarPriceDouble;
			        }
			    } else {
			        dppricing = '$' + parseCurrency(dpCarPriceTriple) + '/month***';
			        dpExpense = dpCarPriceTriple;
			    }
			}
			
			//  No existing or selected cable or RR
			if (hascable != '1' && selectedcable == '' && hashsd != '1' && selectedhsd == '') 
			{
			    dppricing = '$' + parseCurrency(dpCarPriceAlone) + '/month***';
			    dpExpense = dpCarPriceAlone;
			}
			plgofferphone = 'DPCAR';			
		}
			
		if(selecteddp == 'local')
		{
			getElement('dpPricing').style.display = '';
			dptext = dpLocalName;
			dpdescription = dpLocalDescription;
			
			dppricingdisclaimer = dpLocalDisclaimer;
			if (hascable != '1' && selectedcable == '' && hashsd != '1' && selectedhsd == '') 
			{
			    if (siteID == '56' || siteID == '390') {
			        dppricing = 'Unavailable (must have Standard/Digital Cable or High Speed Online)';
			    } else {
			        dppricing = 'Unavailable (must have Cable or High Speed Online service)';
			    }
			    dpExpense = 0.0;
			} else {
			    if ((siteID == '56' || siteID == '390') && (existingcable == 'bst' || selectedcable == 'bst') && (hashsd == '0' || selectedhsd == '')) {
			        dppricing = 'Unavailable (must have Standard/Digital Cable or High Speed Online)';
			        dpExpense = 0.0;
			    } else {
			        /*if (selectedcable != 'digital' && selectedcable != 'digitalaccess' && selectedhsd != 'rrlite' && selectedhsd != 'rr' && selectedhsd != 'rrturbo') {
                    dppricing = '$' + parseCurrency(dpLocalPrice) + '/month for 12 months***';
			        dpExpense = dpLocalPrice;
			        } else { */
			            if ((hascable == '1' || selectedcable != '') && (hashsd == '1' || selectedhsd != '')) {
                            dppricing = '$' + parseCurrency(dpLocalTriple) + '/month***';
			                dpExpense = dpLocalTriple;
			            } else {
			                dppricing = '$' + parseCurrency(dpLocalDouble) + '/month***';
			                dpExpense = dpLocalDouble;
			            }
			        // }
			    }
			}
			
			plgofferphone = 'DPLOCAL';	
		}
		
		// Phone Upgrade Optinos
		if (getElement('secondline') != null && getElement('secondline').checked) {
		    getElement('addlinePricing').style.display = '';
            
            addlinedescription = AddLineDescription;
            addlineprice = AddLineNatPrice;
            addlinetext = AddLineName;
            
            if (selecteddp == 'local' || existingphone == 'DPLOCAL') {
                addlinetext = AddLineLocalName;
                addlineprice = AddLineLocalPrice;
            }
            if (selecteddp == 'carolinas' || existingphone == 'DPCAR' || existingphone == 'DPCARUNL' || existingphone == 'DPIOPCARUNL') {
                addlinetext = AddLineCarName;
                addlineprice = AddLineCarPrice;
            }
            if (selecteddp == 'national' || existingphone == 'DPNAT' || existingphone == 'DPNATION' || existingphone == 'DPIOPNAT') {
                addlinetext = AddLineNatName;
                addlineprice = AddLineNatPrice;
            }
            
            addlinepricing = '$' + parseCurrency(addlineprice) + '/month***';
            addlineExpense = addlineprice;
            dppricingdisclaimer += AddLineDisclaimer;
        } else {
            getElement('addlinePricing').style.display = 'none';
        }
        
        if (getElement('voicemail') != null && getElement('voicemail').checked) {
		    getElement('vmPricing').style.display = '';
            voicemailtext = VoiceMailName;
            voicemaildescription = VoiceMailDescription;
            voicemailpricing = '$' + parseCurrency(VoiceMailPrice) + '/month';
            voicemailExpense = VoiceMailPrice;
        } else {
            getElement('vmPricing').style.display = 'none';
        }
        
        if (getElement('iop') != null && getElement('iop').checked) {
		    getElement('iopPricing').style.display = '';
            ioptext = IOPName;
            iopdescription = IOPDescription;
            ioppricing = '$' + parseCurrency(IOPPrice) + '/month';
            iopExpense = IOPPrice;
        } else {
            getElement('iopPricing').style.display = 'none';
        }
	}
	
	// Number of core services selected (for Mobile pricing)
	var numberofselected = 0;
	if (selectedcable != "" || existingcable != "")
	    numberofselected++;
	if (selectedhsd != "" || existinghsd != "")
	    numberofselected++;
	if (selecteddp != "" || existingphone != "")
	    numberofselected++;
	    
	// Add in wireless
	// Add in Digital Phone total
	getElement('freecarddisclaimer').style.display = 'none';
	if(wirechecked == 1)
	{		
		wirepricingdisclaimer = '^' + wireDisclaimer;
		
		if(selectedwire == 'natelite')
		{
			getElement('wirePricing').style.display = '';
			wiretext = wireNatEliteName;
			wiredescription = wireNatEliteDescription;
			
			if (numberofselected == 0 || wirecontract == "N")
			{
			    wireExpense = wireNatElitePriceMSRP;
			    wirepricing = '$' + parseCurrency(wireNatElitePriceMSRP) + '/month^';
			} else {
			    switch (numberofselected){
			        case 1:
			        case 2:
			            if (selectedhsd != '' || existinghsd != '') {
			                wirepricing = '$' + parseCurrency(wireNatElitePriceRR) + '/month<br>FIRST MONTH FREE^';
	                        wireExpense = wireNatElitePriceRR;
	                        wirepricingdisclaimer = "^ Free month applies if ordering or maintaining Road Runner service in addition to ordering the 4G National Elite plan." + wireDisclaimer;
	                    } else {
	                        wirepricing = '$' + parseCurrency(wireNatElitePriceVidPhone) + '/month^';
	                        wireExpense = wireNatElitePriceVidPhone;
	                    }
	                    break;
	                case 3:
	                    wirepricing = '$' + parseCurrency(wireNatElitePriceRR) + '/month<br>FIRST MONTH FREE^';
	                    wireExpense = wireNatElitePriceRR;
	                    wirepricingdisclaimer = "^ Free month applies if ordering or maintaining Road Runner service in addition to ordering the 4G National Elite plan." + wireDisclaimer;
	                    break;
	                default:
	                    break;	                
			    }		
			}
			
			getElement('cardtype').innerHTML = wireCardDual;
			
			if (wirecontract != "N") {
			    if ((selectedhsd != "" || existinghsd != "") && (selectedcable != "" || existingcable != "" || selecteddp != "" || existingphone != "")) {
			        getElement('cardprice').innerHTML = wireCardDualPriceContractRR;
			        getElement('freecarddisclaimer').innerHTML = wireCardDualFreeDisclaimer;
			        getElement('freecarddisclaimer').style.display = '';
			    } else
			        getElement('cardprice').innerHTML = wireCardDualPriceContractNoRR;
			} else
			    getElement('cardprice').innerHTML = wireCardDualPrice;
		}
		
		if(selectedwire == '4gelite')
		{
			getElement('wirePricing').style.display = '';
			wiretext = wire4GEliteName;
			wiredescription = wire4GEliteDescription;
			
			if (numberofselected == 0 || wirecontract == "N")
			{
			    wireExpense = wire4GElitePriceMSRP;
			    wirepricing = '$' + parseCurrency(wire4GElitePriceMSRP) + '/month^';
			} else {			
			    switch (numberofselected){
			        case 1:
			        case 2:
			            if (selectedhsd != '' || existinghsd != '') {
			                wirepricing = '$' + parseCurrency(wire4GElitePriceRR) + '/month^';
	                        wireExpense = wire4GElitePriceRR;
	                    } else {
	                        wirepricing = '$' + parseCurrency(wire4GElitePriceVidPhone) + '/month^';
	                        wireExpense = wire4GElitePriceVidPhone;
	                    }
	                    break;
	                case 3:
	                    wirepricing = '$' + parseCurrency(wire4GElitePriceRR) + '/month^';
	                    wireExpense = wire4GElitePriceRR;
	                    break;
	                default:
	                    break;	                
			    }
			}
			
			getElement('cardtype').innerHTML = wireCardSingle;
			
			if (wirecontract == "N")
			    getElement('cardprice').innerHTML = wireCardSinglePrice;
			else
			    getElement('cardprice').innerHTML = wireCardSinglePriceContract;	
		}
		
		if(selectedwire == '4gchoice')
		{
			getElement('wirePricing').style.display = '';
			wiretext = wire4GChoiceName;
			wiredescription = wire4GChoiceDescription;
			
			if (numberofselected == 0 || wirecontract == "N")
			{
			    wireExpense = wire4GChoicePriceMSRP;
			    wirepricing = '$' + parseCurrency(wire4GChoicePriceMSRP) + '/month^';
			} else {			
			    switch (numberofselected){
			        case 1:
			        case 2:
			            if (selectedhsd != '' || existinghsd != '') {
			                wirepricing = '$' + parseCurrency(wire4GChoicePriceRR) + '/month^';
	                        wireExpense = wire4GChoicePriceRR;
	                    } else {
	                        wirepricing = '$' + parseCurrency(wire4GChoicePriceVidPhone) + '/month^';
	                        wireExpense = wire4GChoicePriceVidPhone;
	                    }
	                    break;
	                case 3:
	                    wirepricing = '$' + parseCurrency(wire4GChoicePriceRR) + '/month^';
	                    wireExpense = wire4GChoicePriceRR;
	                    break;
	                default:
	                    break;	                
			    }
			}	
			
			
			getElement('cardtype').innerHTML = wireCardSingle;
			
			if (wirecontract == "N")
			    getElement('cardprice').innerHTML = wireCardSinglePrice;
			else
			    getElement('cardprice').innerHTML = wireCardSinglePriceContract;		
		}
		
		if (getElement('cradlepoint').checked)
		{
		    getElement('cradlepointtext').style.display='';
		    getElement('cradlepointprice').style.display='';
		} else {
		    getElement('cradlepointtext').style.display='none';
		    getElement('cradlepointprice').style.display='none';
		}
	}

	total = cableExpense + dvrExpense + hsdExpense + dpExpense + homenetExpense + addlineExpense + voicemailExpense + iopExpense + wireExpense;
	//total = fixFloat(total);
	total = parseCurrency(total);
	if (getElement('bundlePrice') != null) {
	    getElement('bundlePrice').innerHTML = '$' + total;
	   
	    getElement('displaycabletext').innerHTML = cabletext + '<br>';
	    getElement('displaycabledescription').innerHTML = cabledescription;
	    getElement('displaycablepricing').innerHTML = cablepricing;
	    getElement('displaycabledisclaimer').innerHTML = cablepricingdisclaimer;
	 
	    getElement('displayhsdtext').innerHTML = hsdtext + '<br>';
	    getElement('displayhsddescription').innerHTML = hsddescription;
	    getElement('displayhsdpricing').innerHTML = hsdpricing;
	    getElement('displayhsddisclaimer').innerHTML = hsdpricingdisclaimer;
	
	    getElement('displaydptext').innerHTML = dptext + '<br>';	
	    getElement('displaydpdescription').innerHTML = dpdescription;
	    getElement('displaydppricing').innerHTML = dppricing;
	    getElement('displaydpdisclaimer').innerHTML = dppricingdisclaimer;
	    
	    getElement('displaydvrtext').innerHTML = dvrtext + '<br>';	
	    getElement('displaydvrdescription').innerHTML = dvrdescription;
	    getElement('displaydvrpricing').innerHTML = dvrpricing;

	    getElement('displayhomenettext').innerHTML = homenettext + '<br>';	
	    getElement('displayhomenetdescription').innerHTML = homenetdescription;
	    getElement('displayhomenetpricing').innerHTML = homenetpricing;
	    
	    getElement('displayaddlinetext').innerHTML = addlinetext + '<br>';	
	    getElement('displayaddlinedescription').innerHTML = addlinedescription;
	    getElement('displayaddlinepricing').innerHTML = addlinepricing;
	    
	    getElement('displayvmtext').innerHTML = voicemailtext + '<br>';	
	    getElement('displayvmdescription').innerHTML = voicemaildescription;
	    getElement('displayvmpricing').innerHTML = voicemailpricing;
	    
	    getElement('displayioptext').innerHTML = ioptext + '<br>';	
	    getElement('displayiopdescription').innerHTML = iopdescription;
	    getElement('displayioppricing').innerHTML = ioppricing;
	    
	    getElement('displaywiretext').innerHTML = wiretext + '<br>';	
	    getElement('displaywiredescription').innerHTML = wiredescription;
	    getElement('displaywirepricing').innerHTML = wirepricing;
	    getElement('displaywiredisclaimer').innerHTML = wirepricingdisclaimer;
	    getElement('RRMPLGOffer').innerHTML = wiretext;
	}
	
	// If upgrade to digital is checked, include Digital Cable in PLG offer
	if (getElement('upgradetodigital') != null && getElement('upgradetodigital').checked)
		plgoffercable = 'DC';
		
    
    
    
	
	if (getElement('dvr') != null && getElement('dvr').checked)
		plgoffercable = 'DC';		
		
	if (getElement('rrturbo') != null && getElement('rrturbo').checked)
		plgofferhsd = 'RRTURBO';
	
	// PLG
	var plgoffers = '';
	plgoffers += plgoffercable;
	if (plgofferhsd != '') {
	    if (plgoffers != '')
	        plgoffers += "_";
	    plgoffers += plgofferhsd;
	}
	if (plgofferphone != '') {
	    if (plgoffers != '')
	        plgoffers += "_";
	    plgoffers += plgofferphone;
	}
	
	var referencetype = gup('referencetype');
	if (referencetype == null || referencetype == '')
	    referencetype = '';
	else
	    referencetype = '&referencetype=' + referencetype;
	    
	if (plgoffers != "" && getElement('smartbox1_PLGOfferLabel_' + plgoffers) != null) 
	{ 
            var plgorderbuttonurl = "smartbox_routing_plg.aspx?wireless=";
	        if (selectedwire != "")
	            plgorderbuttonurl += selectedwire;
	        else
	            plgorderbuttonurl += "N";
	        plgorderbuttonurl += "&contract=" + wirecontract;
	        plgorderbuttonurl += "&play=" + numberofselected;
	        
	        plgorderbuttonurl += getElement('smartbox1_PLGURLLabel_' + plgoffers).innerHTML;
	
	        getElement('PLGOffer').innerHTML = getElement('smartbox1_PLGOfferLabel_' + plgoffers).innerHTML;
            getElement('PLGPrice').innerHTML = '$' + getElement('smartbox1_PLGPriceLabel_' + plgoffers).innerHTML;
            getElement('PLGOrderButton').innerHTML = '<a href="#" onclick="javascript:plgorder(' + "'" + plgorderbuttonurl + referencetype + "'" + ');"><img src="../images/button_ordernow.gif" alt="Order Now" width="123" height="30" border="0" /></a>';
            if (selectedwire != "")
            {
                getElement('plgrrmtable').style.display = '';
                getElement('RRMPLGPrice').innerHTML = '$' + wireExpense;
            } else {
                getElement('plgrrmtable').style.display = 'none';
            }         
            plgflag = 1;
    }    
    
    var upgradesflag = 0;
    
    //if (selectedwire != '')
    //    plgflag = 0;
    
    // Check if any upgrade options are check (hide PLG if there are)
    if ((getElement('tiers') != null && getElement('tiers').checked) || (getElement('sports') != null && getElement('sports').checked) || (getElement('home_networking') != null && getElement('home_networking').checked) || (getElement('secondline') != null && getElement('secondline').checked) || (getElement('voicemail') != null && getElement('voicemail').checked) || (getElement('iop') != null && getElement('iop').checked))
        upgradesflag = 1;
    
    if (getElement('plgtable') != null) {
        if (plgflag == 1 && upgradesflag == 0 && ((existingcable == "" && selectedcable != "") || (existinghsd == "" && selectedhsd != "") || (existingphone == "" || selecteddp != ""))) 
        {  
            getElement('plgtable').style.display = '';
            if (getElement('smartbox1_PowerBundle') != null)
                getElement('smartbox1_PowerBundle').style.display = 'none';
        } else {
            getElement('plgtable').style.display = 'none';
            if (getElement('smartbox1_PowerBundle') != null)
                getElement('smartbox1_PowerBundle').style.display = '';
        }
    }
}

function clearoption(buttongroup)
{
   if (buttongroup.length > 0) {
        for (i=0; i < buttongroup.length; i++) 
        { 
            if (buttongroup[i].checked == true) {  
               buttongroup[i].checked = false;
            }
        }
   } else {
        buttongroup.checked = false;
   }
   calculateTotal(false);
}

function getComboString()
{
    var comboString = "";
    
    if(getElement('chkCable') != null && getElement('chkCable').checked)
	{
		    var selectedValue = '';
		    var myElement = document.frmBAB.cablePackage;
		    if (myElement != null) 
		    {
		        if (myElement.length > 1) {
		            for(x=0; x< myElement.length; x++)
		            {
			            if(myElement[x].checked)
				             selectedValue = myElement[x].value;
		            }
		        } else {
		            if(myElement.checked)
		                selectedValue = myElement.value;
		        }
		    }	
		    if (selectedValue != '') 
		            comboString += eval('cablePackCodes[' + selectedValue + ']');
	    }
	
	comboString += ':';
	
    if(getElement('chkHSD') != null && getElement('chkHSD').checked) 
    {

		    var selectedValue = '';
		    var myElement = document.frmBAB.hsdPackage;
		    if (myElement != null) 
		    {
		        if (myElement.length > 1) {
		            for(x=0; x< myElement.length; x++)
		            {
			            if(myElement[x].checked)
				            selectedValue = myElement[x].value;
		            }
		        } else {
		            if(myElement.checked)
		                selectedValue = myElement.value;
		        }
		    }
		        if (selectedValue != '') 
		            comboString += eval('hsdPackCodes[' + selectedValue + ']');
	}
	
	comboString += ':'
    
	if(getElement('chkDP') != null && getElement('chkDP').checked) 
	{
		    var selectedValue = '';
		    var myElement = document.frmBAB.dpPackage;
		    if (myElement != null) 
		    {
		        if (myElement.length > 1) {
		            for(x=0; x< myElement.length; x++)
		            {
			            if(myElement[x].checked)
				            selectedValue = myElement[x].value;
		            }
		        } else {
		            if(myElement.checked)
		                selectedValue = myElement.value;
		        }
		    }
		    if (selectedValue != '')
		        comboString += eval('dpPackCodes[' + selectedValue + ']');
	}
	
	comboString += ':';
	
	if(getElement('chkwire') != null && getElement('chkwire').checked) 
	{
		    
		    var selectedValue = '';
		    var myElement = document.frmBAB.wirePackage;
		    if (myElement != null) 
		    {
		        if (myElement.length > 1) {
		            for(x=0; x< myElement.length; x++)
		            {
			            if(myElement[x].checked)
				            selectedValue = myElement[x].value;
		            }
		        } else {
		            if(myElement.checked)
		                selectedValue = myElement.value;
		        }
		    }
		    if (selectedValue != '')
		        comboString += eval('wirePackCodes[' + selectedValue + ']');
	}	
	
	return comboString;
}

function getUpgradesString()
{
	var upgradesString = '';
	
	// Digital Cable upgrades
    if (getElement('upgradetodigital') != null && getElement('upgradetodigital').checked) {
        if (upgradesString.length > 0)
	        upgradesString += ':';
	    upgradesString += 'DigCable995x12';
    }
    
	if (getElement('dvr') != null && getElement('dvr').checked) {
	    if (upgradesString.length > 0)
	        upgradesString += ':';
	    upgradesString += 'DVR';
	    }	
		 
    // Road Runner upgrades
	if (getElement('rrturbo') != null && getElement('rrturbo').checked) {
        if (upgradesString.length > 0)
	        upgradesString += ':';
	    upgradesString += 'RRTurbo-Upg';
    }
    
    if (getElement('home_networking') != null && getElement('home_networking').checked) {
	    if (upgradesString.length > 0)
	        upgradesString += ':';
	    upgradesString += 'WRR-Upg';
	    }   
    
	var comboString = getComboString();
	
    // Digital Phone upgrades
	var voipplan = gup("voipplan");  
	if (getElement('secondline') != null && getElement('secondline').checked) {
        var secondlinecode = "DPNat-2nd";
	    if (voipplan == "DPLOCAL" || voipplan == "DPIOPLOCAL" || comboString.indexOf('local') != -1)
	        secondlinecode = 'DPLocal-2nd';
	    if (voipplan == "DPCARUNL" || voipplan == "DPIOPCARUNL" || comboString.indexOf('carolinas') != -1)
	        secondlinecode = 'DPCar-2nd';
	    if (voipplan == "DPNAT" || voipplan == "DPNATIONAL" || voipplan == "DPIOPNAT" || comboString.indexOf('national') != -1)
	        secondlinecode = 'DPNat-2nd';
	    if (upgradesString.length > 0)
	        upgradesString += ':';
	    upgradesString += secondlinecode;
	    }  
	    
	if (getElement('voicemail') != null && getElement('voicemail').checked) {
	    if (upgradesString.length > 0)
	        upgradesString += ':';
	    upgradesString += 'VoiceMail';
	    }

	if (getElement('iop') != null && getElement('iop').checked) {
	    if (upgradesString.length > 0)
	        upgradesString += ':';
	    upgradesString += 'IOP';
	}
	
	// Road Runner Mobile upgrades
	if (getElement('cradlepoint') != null && getElement('cradlepoint').checked)
	{
	    if (upgradesString.length > 0)
	        upgradesString += ':';
	    upgradesString += 'CradlePointPHS300';
	}
	
	return upgradesString;
}

// Installation charges calculator link clicked
function installcharges(plg)
{
	var comboString = getComboString();
	var upgradesString = getUpgradesString();
	var existCustParam = '';
	if (existcust != '')
	   existCustParam = existcust;
	else
		existCustParam = 'Y';
	if (plg == 'plg')
		plgparam = 'Y';
	else
		plgparam = 'N';
	window.open('install_calculator.cfm?bundle=' + comboString + '&upgrades=' + upgradesString + '&existcust=' + existCustParam + '&plg=' + plgparam, 'installwindow', 'resizable=0,location=0,width=438,height=500,scrollbars=1');
}

// Order button clicked, send to routing
function order()
{
	var queryString = '';
	var upgradesString = '';
	var otheroffersString = '';
	var needsAnd = false;
	
	// Build the query string

	var comboString = getComboString();
	
	if(comboString.length > 0 )	{
		queryString += needsAnd ? '&' : '';
		needsAnd = true;
		queryString += 'bundle=' + comboString;
	}
	
	if(existingcable != null || existinghsd != null || existingphone != null) 
	{
	    queryString += needsAnd ? '&' : '';
		needsAnd = true;
		queryString += 'existing=' + existingcable + ':' + existinghsd + ':' + existingphone;
	}
	
	// UPGRADES
    var upgradesString = getUpgradesString();    
	
	if (upgradesString.length > 0) {
	    queryString += needsAnd ? '&' : '';
	    queryString += 'upgrades=' + upgradesString;
	}
	
	// Add price sheet variable
	siteID = getSiteID();
	codivfr = getCoDivFr();
	overbuildflag = overbuild();
	
    codivfr = codivfr.replace(/:/g, "-");
        
    var psheet = "";
    
    if (siteID == "" || codivfr == "")
        psheet = "";
    else 
        psheet += "&psheet=BSTCPST2010-" + siteID + "-" + codivfr;
    
    queryString += psheet + "&siteID="+siteID;
	
	// Existing customer flag
	var existCustParam = gup("existcust");
	if (existCustParam != null && existCustParam != "")
	   queryString += '&existcust=' + existCustParam;
	
	// Reference type
	var refTypeParam = gup("referencetype");
    if (refTypeParam != null && refTypeParam != "")
       queryString += '&referencetype=' + refTypeParam;
       
    // Maintrax number
    if (getElement("smartbox1_MainTraxLabel") != null)
	   queryString += '&maintrax=' + getElement("smartbox1_MainTraxLabel").innerHTML;    
    
    // Overbuild flag
    overbuildflag = overbuild();
    if (overbuildflag != null && overbuildflag != "")
       queryString += '&overbuild=' + overbuildflag;
    
    // Special offer flag
    if (offerflag != null && offerflag != "") {
       queryString += '&offerflag=' + offerflag;
       queryString += '&existcust=N';
       }
	
	errorflag = 0;
	
	// Don't if no boxes are checked!
	if(upgradesString == "" && comboString == ":::")
	{
	    getElement('NoneSelected').style.display = '';
	    getElement('errormsg').innerHTML = 'Please select at least one sevice to order.';
	    errorflag = 1;
	} 
	
	// Don't if Mobile is checked but no contract option selected!
	wirecontract = '';
	if (getElement('wireContract') != null)
	    wirecontract = wireContractValue();
	    
	wireoptionchk = comboString.charAt(comboString.length - 1);
	if (getElement('chkwire') != null && getElement('chkwire').checked && wirecontract == '' && wireoptionchk != ":")
	{
	    getElement('NoneSelected').style.display = '';
	    getElement('errormsg').innerHTML = 'Please select an option for the Road Runner Mobile 2-year contract.';
	    errorflag = 1;
	}
	
	if (wireoptionchk == ':' && wirecontract != '')
	{
	    getElement('NoneSelected').style.display = '';
	    getElement('errormsg').innerHTML = 'Please select a Road Runner Mobile service.';
	    errorflag = 1;
	}
	
	// Don't if Mobile service is selected but nothing else is (new customers)
	if (existcust == "N" && comboString.length > 3 && comboString.substring(0,3) == ":::")
	{
	    getElement('NoneSelected').style.display = '';
	    getElement('errormsg').innerHTML = 'You must order at least one other service from Time Warner Cable in order to qualify for Road Runner Mobile.';
	    errorflag = 1;
	} 
	
	if (wirecontract != '')
	{
	    queryString += "&mobilecontract=" + wirecontract;
	}
	
	// Digital Phone Local
	if (existcust == "N" && comboString.indexOf('local') == 2)
	{
	    getElement('NoneSelected').style.display = '';
	    getElement('errormsg').innerHTML = 'You must have Cable or High Speed Online service to order Digital Phone Local.';
	    errorflag = 1;
	 }
	
	
	if (errorflag == 0) {
	    window.open(orderPageURL + '?' + queryString);
	    //window.location = orderPageURL + '?' + queryString;
	}
}

// Get wireless contract option value
function wireContractValue()
{
    wirecontract = '';
    
    // Determine if contract option is checked and get its value
    contractoption = document.frmBAB.wireContract;
    
    if (contractoption != null)
    {
        if (contractoption.length > 1) {
		    for(x=0; x< contractoption.length; x++)
		    {
			    if(contractoption[x].checked) {
				    wirecontract = contractoption[x].value;
			    }
		    }
		}
    }
	    
	return wirecontract;
}

// PLG Order routing
function plgorder(url)
{   
    var wirecontract = wireContractValue();
    if (getElement('plgrrmtable').style.display != "none")
    {  
        if (wirecontract != "")
        {
            window.open(url);
        } else {
            getElement('NoneSelected').style.display = '';
	        getElement('errormsg').innerHTML = 'Please select an option for the Road Runner Mobile 2-year contract.';
	    }
    } else {
        window.open(url);
    } 
}


function fixFloat( num )
{
	return (Math.round(num*Math.pow(10,2)))/Math.pow(10,2);
}

// Display to two decimal points
function parseCurrency(s)
{
    if(!isNaN(s))
	{
		var stringNum = s + '';
		if(stringNum.indexOf('.') < 0)
			stringNum += '.';
		while((stringNum.length - stringNum.indexOf('.')) <= 2)
		{
			stringNum += '0';
		}
		    stringNum = stringNum.replace(/(\d+\.\d{2})\d*/, '$1');
			return stringNum;
		}
		else
			return '0.00';
}


// Function for getting URL parameter values
function gup(name)
{  
    name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");  
    var regexS = "[\\?&]"+name+"=([^&#]*)";  
    var regex = new RegExp( regexS );  
    var results = regex.exec( window.location.href );  
    if( results == null )    
        return "";  
    else    
        return results[1];
}