//<![CDATA[
var uri = "ajax";
var currStep = 1;
var numberOfNumbers = 0;
var numberOfReferrals = 0;
var openDisplay = false;
var lock=false;
var secs;
var timerID = null;
var timerRunning = false;
var delay = 1000;
var chargeTotal = 0.00;
var pinFreeCost = 0.00;
var didCost = 0.00;
var numGCost = 19.95;
var totalDIDCost = 0.00;
var planCosts = Array();
var planCity = Array();
var numStoredDIDs = 0;
var batchNameIndex=0;
var deftFollowMeNums = new Array();
var pid = "";
function encodeURL(str) {
    var retStr = encodeURI(str);
    retStr = retStr.replace(/#/g,'%27');
    retStr = retStr.replace(/\|/g,'%7C');
    retStr = retStr.replace(/\\/g,'%5C');
    retStr = retStr.replace(/~/g,'%7E');
    retStr = retStr.replace(/`/g,'%60');
    return retStr;
}
function num2dollars(n_value) {
	// validate input
	if (isNaN(Number(n_value)))
		return 'ERROR';

	// save the sign
	var b_negative = Boolean(n_value < 0);
	n_value = Math.abs(n_value);

	// round to 1/100 precision, add ending zeroes if needed
	var s_result = String(Math.round(n_value * 1e2) % 1e2 + '00').substring(0, 2);
	
	// separate all orders
	var b_first = true;
	var s_subresult;
	while (n_value >= 1) {
		s_subresult = (n_value >= 1e3 ? '00' : '') + Math.floor(n_value % 1e3);
		s_result = s_subresult.slice(-3) + (b_first ? '.' : ',') +  s_result;
		b_first = false;
		n_value = n_value / 1e3;
	}
	// add at least one integer digit
	if (b_first)
		s_result = '0.' +  s_result;

	// apply formatting and return
	return b_negative
		? '($' + s_result + ')'
		: '$' + s_result;
}

function getFaultErrorString(resp, deft) {
    var returnValue = deft;
    var startError = resp.indexOf("<faultstring");
    if(startError == -1) startError = resp.indexOf("<faultcode");
    if(startError != -1) {
      startError = resp.indexOf(">", startError)+1;
      var endError = resp.indexOf("<", startError);
      var errorString = resp.substring(startError, endError);
      if(errorString.indexOf("Duplicate customer login") != -1) returnValue = errorCheckingName;
      if(errorString.indexOf("Duplicate customer name") != -1) returnValue = errorCheckingName;
      if(errorString.indexOf("Duplicate account id") != -1) returnValue = numberAlreadyTaken;
      if(errorString.indexOf("No payment method defined") != -1) returnValue = errorNoCreditCardOnFile;
      if(errorString.indexOf("This transaction has been declined") != -1) returnValue = errorTransactionDenied;
      if(errorString.indexOf("credit card number is invalid") != -1) returnValue = smallCCNumberError;
      if(errorString.indexOf("null") != -1) returnValue = errorSystemDown;
      if(errorString.indexOf("MysqlDataSource") != -1) returnValue = errorSystemDown;
      if((errorString.indexOf("Internal") != -1) && 
          (errorString.indexOf("error") != -1)) returnValue = errorSystemDown;
    }
    return returnValue;
}
function initializeTimer() {
    secs = 300;
    stopTimer();
    startTimer();
}
function stopTimer() {
    if(timerRunning) clearTimeout(timerID)
    timerRunning = false
}
function startTimer() {
    if (secs==0) {
        stopTimer();
        alert(GlobafonTimeoutIncentive);
    } else {
        self.status = secs;
        secs = secs - 1;
        timerRunning = true;
        timerID = self.setTimeout("startTimer()", delay);
    }
}
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];
}
function getParameter (parameterName) {
    var queryString=window.top.location.search.substring(1);
    // Add "=" to the parameter name (i.e. parameterName=value)
    parameterName = parameterName + "=";
    if ( queryString.length > 0 ) {
        // Find the beginning of the string
        begin = queryString.indexOf ( parameterName );
        // If the parameter name is not found, skip it, otherwise return the value
        if ( begin != -1 ) {
          // Add the length (integer) to the beginning
          begin += parameterName.length;
          // Multiple parameters are separated by the "&" sign
          end = queryString.indexOf ( "&" , begin );
          if ( end == -1 ) {
              end = queryString.length
          }
          // Return the string
          return unescape ( queryString.substring ( begin, end ) );
        }
        // Return "" if no parameter has been found
        return "";
    }
    return "";
}
function encrypt(num) {
    var newNum = num;
    return newNum;
}
function trim(str) { 
    if (str != null) {
        var i; 
        for (i=0; i<str.length; i++) {
            if (str.charAt(i)!=" ") {
                str=str.substring(i,str.length); 
                break;
            } 
        } 
        for (i=str.length-1; i>=0; i--) {
            if (str.charAt(i)!=" ") {
                str=str.substring(0,i+1); 
                break;
            } 
        } 
        if (str.charAt(0)==" ") {
            return ""; 
        } else {
            return str; 
        }
    }
}
function checkValidEmail(email) {
    var valid = 1;
    if(email == "") {
        valid = 0;
    } else {
        var indexOfAmp = email.indexOf("@");
        if(indexOfAmp > 0) {
   var indexOfPeriod = email.indexOf(".", indexOfAmp);
   if((indexOfPeriod == -1) || 
       ((indexOfPeriod+1) == email.length)) {
       valid = 0;
   }
        } else {
   valid = 0;
        }
    }
    return valid;
}
function guessZip(form) {
    document.getElementById('zipWait').innerHTML= "<img src='../images/wait16.gif' alt=''>";
    if(form.country.value == "United States") {
        var fullUri = uri+"?"+ADDRESS+"="+
        form.address.value+","+form.city.value+" "+
        form.state.value;
        new Ajax.Request(encodeURL(fullUri),{
   onComplete: function(transport) {
       displayZipResults(transport.responseText, form);
   }
        });
    }
}
function displayZipResults(response, form) {
    document.getElementById('zipWait').innerHTML= "";
    var firstOption = response.indexOf("<address>");
    if(firstOption != -1) {
        firstOption = response.indexOf(">", firstOption)+1;
        var endOfOption = response.indexOf("<", firstOption);
        form.zip.value=response.substring(firstOption, endOfOption);
    }
}
function hideCC() {
    document.getElementById('paymentCreditCard').style.visibility='hidden';
    document.getElementById('paymentCreditCard').style.display='none';
    document.getElementById('cashAmtSpan').style.visibility='visible';
    document.getElementById('cashAmtSpan').style.display='block';
}
function hideCash() {
    document.getElementById('paymentCreditCard').style.visibility='visible';
    document.getElementById('paymentCreditCard').style.display='block';
    document.getElementById('cashAmtSpan').style.visibility='hidden';
    document.getElementById('cashAmtSpan').style.display='none';
}
function getPhoneTypeIcon(index) {
    var image = "";
    if(index == 0) image = "&nbsp;<img src='../images/questionIcon.gif' alt=''>";
    if(index == 1) image = "&nbsp;<img src='../images/mobileIcon.gif' alt=''>";
    if(index == 2) image = "&nbsp;<img src='../images/phoneIcon.gif' alt=''>";
    return image;
}
function copyAddress(form) {
    if(!form.midinit.value || (form.midinit.value == "")) {
        form.pay_name.value=form.firstname.value+" "+form.lastname.value;
    } else {
        form.pay_name.value=form.firstname.value+" "+
        form.midinit.value+" "+
        form.lastname.value;
    }
    form.pay_address.value=form.address.value;
    form.pay_city.value=form.city.value;
    form.pay_state.value=form.state.value;
    form.pay_zip.value=form.zip.value;
    form.pay_country.value=form.country.value;
}
function displaySection(step, blockAccess, did) {
    var stepStr = step+'';
    var allowAccess = true;
    if(!openDisplay && blockAccess) {
        if(step > currStep) allowAccess = false;
    }
    if(allowAccess) {
        if(step < currStep) {
        } else if(step == currStep) {
            if(step == 2) {
                document.getElementById('nextStep1').innerHTML="";
            } else if(step == 3) {
                document.getElementById('nextStep2').innerHTML="";
            } else if(step == 4) {
                document.getElementById('nextStep3').innerHTML="";
            } else if(step == 5) {
                document.getElementById('nextStep4').innerHTML="";
            }
        }
        var acctDiv = 'acctInfo';
        if(blockAccess) {
            if(did && (did == true)) {
                acctDiv = 'DIDDiv';
            } else {
                acctDiv = 'pinFreeDiv';
            }
        }
        document.getElementById('addrInfo').style.visibility='hidden';
        document.getElementById('addrInfo').style.display='none';
        var elem = document.getElementById('acctInfo');
        if(elem) {
            elem.style.visibility='hidden';
            elem.style.display='none';
        }
        elem = document.getElementById('DIDDiv');
        if(elem) {
            elem.style.visibility='hidden';
            elem.style.display='none';
        }
        elem = document.getElementById('pinFreeDiv');
        if(elem) {
            elem.style.visibility='hidden';
            elem.style.display='none';
        }
        document.getElementById('payInfo').style.visibility='hidden';
        document.getElementById('payInfo').style.display='none';
        document.getElementById('orderConfirmation').style.visibility='hidden';
        document.getElementById('orderConfirmation').style.display='none';
        document.getElementById('referrals').style.visibility='hidden';
        document.getElementById('referrals').style.display='none';
        if(step == 1) {
            document.getElementById('addrInfo').style.visibility='visible';
            document.getElementById('addrInfo').style.display='block';
            if(blockAccess) {
                document.getElementById('steps').innerHTML=step1;
                document.getElementById('stepSpan').innerHTML=step1TabAdd;
            } else {
                document.getElementById('stepSpan').innerHTML=step1TabEdit;
            }
        } else if(step == 2) {
            document.getElementById(acctDiv).style.visibility='visible';
            document.getElementById(acctDiv).style.display='block';
            if(blockAccess) {
                document.getElementById('stepSpan').innerHTML=step2TabAdd;
                document.getElementById('steps').innerHTML=step2;
            } else {
                document.getElementById('stepSpan').innerHTML=step2TabEdit;
            }
       } else if(step == 3) {
           document.getElementById('payInfo').style.visibility='visible';
           document.getElementById('payInfo').style.display='block';
           if(blockAccess) {
               document.getElementById('stepSpan').innerHTML=step3TabAdd;
               document.getElementById('steps').innerHTML=step3;
           } else {
               document.getElementById('stepSpan').innerHTML=step3TabEdit;
           }
       } else if(step == 4) {
           openDisplay = true;
           document.getElementById('orderConfirmation').style.visibility='visible';
           document.getElementById('orderConfirmation').style.display='block';
           if(blockAccess) {
               document.getElementById('stepSpan').innerHTML=step4TabAdd;
               document.getElementById('steps').innerHTML=step4;
           } else {
               document.getElementById('stepSpan').innerHTML=step4TabEdit;
           }
       } else if(step == 5) {
           document.getElementById('referrals').style.visibility='visible';
           document.getElementById('referrals').style.display='block';
           if(blockAccess) {
               document.getElementById('stepSpan').innerHTML=step5TabAdd;
               document.getElementById('steps').innerHTML=step5;
           } else {
               document.getElementById('stepSpan').innerHTML=step5TabEdit;
           }
       }
   }
}
function validateInput(step, create, form) {
    if(create && (step > currStep)) return;
    try{
        switch(step) {
            case 5:
                document.getElementById('errorMsg16').innerHTML="";
                for(k=0; k<numberOfReferrals.length; k++) {
                    var refEmail = document.getElementById('refEmail'+(i+1)).value;
                    var refNum = document.getElementById('refMobile'+(i+1)).value;
                    document.getElementById('refMobile'+(i+1)).value=refNum.replace(/\D/g,'');
                    var isValidEmail = checkValidEmail(refEmail);
                    document.getElementById('errorMsg16').innerHTML=emptyEmail;
                }
                if(document.getElementById('errorMsg16').innerHTML=="") {
                    try{
                        if(!lock) {
                            lock=true;
                            sendReferrals(form);
                        }
                    }catch(e){lock=false;}
                }
                break;
            case 3:
                document.getElementById('errorMsg6').innerHTML="";
                document.getElementById('errorMsg7').innerHTML="";
                document.getElementById('errorMsg8').innerHTML="";
                document.getElementById('errorMsg9').innerHTML="";
                var cash = 0;
                try {
                    var radioObj = form.paymentType;
                    for(i = 0; i < radioObj.length; i++) {
                        if(radioObj[i].checked) {
                            if(radioObj[i].value == "cash") {
                                cash = 1;
                                form.credit_limit_warning.value="0";
                            }
                        }
                    }
                } catch(e) {}
                var success = 0;
                if(cash == 0) {
                    var number = form.number.value;
                    var cvv = form.cvv.value;
                    number = number.replace(/\D/g,'');
                    cvv = cvv.replace(/\D/g,'');
                    form.number.value=number;
                    form.cvv.value=cvv;
                    if(form.number.value == "") {
                        document.getElementById('errorMsg6').innerHTML=emptyCCNumberError;
                    } else if(form.number.value.length < 10) {
                        document.getElementById('errorMsg6').innerHTML=smallCCNumberError;
                    } else if(form.cvv.value == "") {
                        document.getElementById('errorMsg7').innerHTML=emptyCVVError;
                    } else if(form.cvv.value.length < 2) {
                        document.getElementById('errorMsg7').innerHTML=smallCVVError;
                    } else if(form.card_month.value == "") {
                        document.getElementById('errorMsg9').innerHTML=emptyCardMonth;
                    } else if(form.card_year.value == "") {
                        document.getElementById('errorMsg9').innerHTML=emptyCardYear;
                    } else if((form.pay_name.value == "") ||
                        (form.pay_address.value == "") ||
                        (form.pay_city.value == "")) {
                        document.getElementById('errorMsg8').innerHTML=emptyPayInfo;
                    } else {success = 1;}
                } else {
                    if(create && pid && (pid == "2")) {
                        success = 0;
                        document.getElementById('errorMsg6').innerHTML="Need Credit Card to buy this products";
                    } else {
                        success = 1;
                    }
                }
                if(success == 1){
                    try{
                        if(!lock) {
                            lock=true;
                            if(cash == 0) form.amount.value = chargeTotal;
                            updatePaymentInfo(create, form);
                        }
                    }catch(e){lock=false;}
                }
                break;
            case 6:
                if(processAccountsBeforeCreation (create, form)) {
                    try{
                        if(!lock) {
                            lock=true;
                            form.amount.value = chargeTotal;
                            createAccounts(create, true, false, form);
                        }
                    }catch(e){lock=false;}
                }
                break;
            case 7:
                if(processAccountsBeforeCreation (create, form)) {
                    try{
                        if(!lock) {
                            lock=true;
                            form.amount.value = numGCost;
                            createAccounts(create, false, true, form);
                        }
                    }catch(e){lock=false;}
                }
                break;
            case 2:
                if(processAccountsBeforeCreation (create, form)) {
                    try{
                        if(!lock) {
                            lock=true;
                            if(document.addCustomerForm) {
                                if(pid && (pid == "2")) {
                                    document.getElementById('CCChargeTotal').innerHTML=aChargeOfPart1+chargeTotal+aChargeOfPart1;
    //                                createAccounts(create, true, false, form);
  //                              } else {
//                                    createAccounts(create, false, false, form);
                                }
                                createAccounts(create, false, false, form);
                            } else {
                                createAccounts(create, false, false, form);
                            }
                            /*
                            if(document.addCustomerForm && 
                               document.getElementsByName('pin') && 
                               document.getElementsByName('pin').value) {
                                createAccounts(create, true, false, form);
                            } else {
                                if(document.addCustomerForm) {
                                    var createNumG = document.getElementById("numGCheckbox").checked;
                                    createAccounts(create, false, createNumG, form);
                                } else {
                                    createAccounts(create, false, false, form);
                                }
                            }
                            */
                        }
                    }catch(e){lock=false;}
                }
                break;
            case 1:
                document.getElementById('errorMsg1').innerHTML="";	
                document.getElementById('errorMsg2').innerHTML="";
                document.getElementById('errorMsg3').innerHTML="";
                document.getElementById('errorMsg4').innerHTML="";
                document.getElementById('errorMsg10').innerHTML="";	
                document.getElementById('errorMsg11').innerHTML="";
                document.getElementById('errorMsg12').innerHTML="";
                document.getElementById('errorMsg13').innerHTML="";
                var phone1 = form.phone1.value;
                var phone2 = form.phone2.value;
                var faxnum = "";
                if(create) faxnum = form.faxnum.value;
                phone1 = phone1.replace(/\D/g,'');
                phone2 = phone2.replace(/\D/g,'');
                faxnum = faxnum.replace(/\D/g,'');
                form.phone1.value=phone1;
                form.phone2.value=phone2;
                if(form.coupon) form.coupon.value=trim(form.coupon.value);
                if(create) form.faxnum.value=faxnum;
                if(create) { 
                    form.name.value=form.firstname.value+
                        " "+form.lastname.value;
                    form.login.value=form.email.value;
                    form.password.value=gen();
                }
                isValidEmail = checkValidEmail(form.email.value);
                if(form.firstname.value == "") {
                    document.getElementById('errorMsg10').innerHTML=emptyFirstName;
                } else if(form.lastname.value == "") {
                    document.getElementById('errorMsg11').innerHTML=emptyLastName;
                } else if(isValidEmail == 0) {
                    document.getElementById('errorMsg4').innerHTML=emptyEmail;
                } else if((form.phone1.value == "") && (form.phone2.value == "")) {
                    if(form.phone2.value == "") {
                        document.getElementById('errorMsg3').innerHTML=emptyMobilePhone;
                    } else if(form.phone1.value == "") {
                        document.getElementById('errorMsg2').innerHTML=emptyPhone;
                    }
                } else if((form.phone1.value.length < 8) && (form.phone2.value.length < 8)) {
                    if(form.phone2.value.length < 8) {
                        document.getElementById('errorMsg3').innerHTML=shortMobilePhone;
                    } else if(form.phone1.value.length < 8) {
                        document.getElementById('errorMsg2').innerHTML=shortPhone;
                    }
                } else if(form.address.value == "") {
                    document.getElementById('errorMsg12').innerHTML=emptyAddress;
                } else if(form.zip.value == "") {
                    document.getElementById('errorMsg13').innerHTML=emptyZip;
                } else {
                    try{
                        if(!lock) {
                            lock=true;
                            validateUserInfo(create, form);
                        }
                    }catch(e){lock=false;}
                }
                break;
        }
    } catch(e) {
    //alert(e.description);
        switch(step) {
            case 1:
                document.getElementById('errorMsg1').innerHTML=errorEnteringInfo;
                break;
            case 2:
                document.getElementById('errorMsg5').innerHTML=errorEnteringInfo;
                break;
            case 3:
                document.getElementById('errorMsg6').innerHTML=errorEnteringInfo;
                break;
            case 5:
                document.getElementById('errorMsg16').innerHTML=errorEnteringInfo;
                break;
        }
    }
}
function processAccountsBeforeCreation (create, form) {
    var success = false;
    //document.getElementById('errorMsg18').innerHTML="";
    document.getElementById('errorMsg14').innerHTML="";
    document.getElementById('errorMsg5').innerHTML="";
    /*
    var numGRadio = document.getElementsByName("numberG");
    var numGValue = "";
    if(numGRadio) {
        for(var i=0; i<numGRadio.length; i++) {
            if(numGRadio[i].checked) {
                numGValue = numGRadio[i].value
            }
        }
    }
    */
    if(form.num1.value == "") {
        document.getElementById('errorMsg5').innerHTML=emptyRegNumbers;
    } else if(pid && (pid == "2") &&
        (document.getElementById('myDIDs').innerHTML == "")) {
        document.getElementById('errorMsg14').innerHTML=emptyRegNumbers;
//    } else if(document.getElementById("numGCheckbox").checked && (numGValue == "")) {
//        document.getElementById('errorMsg18').innerHTML=emptyRegNumbers;
    } else {
        var i = 0;
        var foundEnd = 0;
        do {
            if(document.getElementById('num'+(i+1))) {
                cleanupNumber('num'+(i+1), document.getElementById('num'+(i+1)).value.replace(/\D/g,''), form);
                i++;
            } else {
                foundEnd = 1;
            }
        } while(foundEnd == 0);
        form.h323_password.value =gen();
        if(create || form.batch_name.value=="") {
            form.batch_name.value="";
            form.activation_date.value=TODAY_STR;
            if((form.firstname.value != "") && 
                (form.lastname.value != "")) {
                form.batch_name.value=
                    form.firstname.value.substring(0,1)+
                    form.lastname.value.substring(0,2).toUpperCase();
            } else if(form.firstname.value != "") {
                form.batch_name.value=
                form.firstname.value.substring(0,3).toUpperCase();
            } else if(form.lastname.value != "") {
                form.batch_name.value=
                form.lastname.value.substring(0,3).toUpperCase();
            } else {
                form.batch_name.value=
                    form.name.value.substring(0,2).toUpperCase();
            }
        }
        form.number.value=encrypt(form.number.value);
        success = true;
    }
    return success;
}
var nameIndex=0;
function displayCreateUserResults(response, create, form) {
    try {
        document.getElementById('plsWait').innerHTML= "";
        if(response.indexOf("fault") != -1) {
            if(response.toLowerCase().indexOf("duplicate customer name") != -1) {
                nameIndex++;
                form.name.value=form.firstname.value+" "+form.lastname.value+nameIndex;
                validateUserInfo(create, form);
            } else if(response.toLowerCase().indexOf("duplicate customer login") != -1) {
                nameIndex++;
                form.login.value=form.firstname.value+"."+form.lastname.value+nameIndex;
                validateUserInfo(create, form);
            } else {
            //alert(response);
                document.getElementById('errorMsg1').innerHTML=getFaultErrorString(response, errorCheckingName);
                lock=false;
            }
        } else if(response == "") {
            lock=false;
            document.getElementById('errorMsg1').innerHTML=errorSystemDown;
        } else if(response.indexOf("fault") == -1) {
            if(create) {
                var i_customer = response;
                document.getElementById('i_customerSpan').innerHTML=
                "<input type='hidden' name='i_customer' value='"+i_customer+"'>";
                currStep=2;
                pid = gup("pid");
                if(pid && pid == "2") {
                    if(!isCountryUSA()) {
                        document.getElementById('followMeLabelBoth').style.display = "none";
                        document.getElementById('followMeLabelFixedOnly').style.display = "block";
                    }
                    displaySection(currStep, true, true);
                } else {
                    displaySection(currStep, true, false);
                }
                var phone1Populated = false;
                if(document.addCustomerForm.phone1.value != "") {
                    addNumber('document.addCustomerForm');
                    document.addCustomerForm.num1.value = document.addCustomerForm.phone1.value;
                    document.addCustomerForm.regPhoneType1.selectedIndex=2;
                    document.getElementById('unknownPhoneType1').innerHTML=getPhoneTypeIcon(2);
                    phone1Populated = true;
                    deftFollowMeNums[0]=document.addCustomerForm.phone1.value;
                }
                if(document.addCustomerForm.phone2.value != "") {
                    addNumber('document.addCustomerForm');
                    if(phone1Populated) {
                        document.addCustomerForm.num2.value = document.addCustomerForm.phone2.value;
                        document.addCustomerForm.regPhoneType2.selectedIndex=1;
                        document.getElementById('unknownPhoneType2').innerHTML=getPhoneTypeIcon(1);
                        deftFollowMeNums[1]=document.addCustomerForm.phone2.value;
                    } else {
                        document.addCustomerForm.num1.value = document.addCustomerForm.phone2.value;
                        document.addCustomerForm.regPhoneType1.selectedIndex=1;
                        document.getElementById('unknownPhoneType1').innerHTML=getPhoneTypeIcon(1);
                        deftFollowMeNums[0]=document.addCustomerForm.phone2.value;
                    }
                }
                loadDeftFollowMeNums();
                initializeTimer();
            } else {
                alert(infoUpdatedSuccess);
            }
            lock=false;
        } else {
            document.getElementById('errorMsg1').innerHTML=nameAlreadyTaken;
            lock=false;
        }
    } catch(e) {
        document.getElementById('errorMsg1').innerHTML=errorCheckingName;
        lock=false;
    }
}
function validateUserInfo(create, form) {
    var address = form.address.value;
    var baddr1 = "", baddr2 = "", baddr3 = "", baddr4 = "", baddr5 = "";
    if (address.length <= 40) {
        baddr1=address;
    } else {
        var lastSpaceFirstLine = address.substring(0, 40).lastIndexOf(" ");
        baddr1 = address.substring(0, lastSpaceFirstLine);
        address = address.substring(lastSpaceFirstLine);
        if (address.length <= 40) {
            baddr2 = address;
        } else {
            lastSpaceFirstLine = address.substring(0, 40).lastIndexOf(" ");
            baddr2 = address.substring(0, lastSpaceFirstLine);
            address = address.substring(lastSpaceFirstLine);
            if (address.length <= 40) {
                baddr3 = address;
            } else {
                lastSpaceFirstLine = address.substring(0, 40).lastIndexOf(" ");
                baddr3 = address.substring(0, lastSpaceFirstLine);
                address = address.substring(lastSpaceFirstLine);
                if (address.length <= 40) {
                    baddr4 = address;
                } else {
                    lastSpaceFirstLine = address.substring(0, 40).lastIndexOf(" ");
                    baddr4 = address.substring(0, lastSpaceFirstLine);
                    baddr5 = address.substring(lastSpaceFirstLine);
                }
            }
        }
    }
    var fullUri = uri;
    if(create) {
        fullUri += "?"+ACTION+"="+ACTION_CREATE_CUSTOMER+
            "&"+"coupon"+"="+form.coupon.value;
    } else {
        fullUri += "?"+ACTION+"="+ACTION_UPDATE_CUSTOMER+
        "&"+I_CUSTOMER+"="+form.i_customer.value;
    }
    var type = gup("type");
    if((!type || type == "") && form.type) type = form.type.value;
    fullUri += 
        "&"+TYPE+"="+type+
        "&"+SESS_ID+"="+SESSION_ID+
        "&"+NAME+"="+form.name.value+
        "&"+OPENING_BALANCE+"="+form.opening_balance.value+
        "&"+I_LANG+"="+form.i_lang.value+
        "&"+COMPANY_NAME+"="+form.companyname.value+
        "&"+SALUTATION+"="+form.salutation.value+
        "&"+FIRST_NAME+"="+form.firstname.value+
        "&"+MIDINIT+"="+form.midinit.value+
        "&"+LAST_NAME+"="+form.lastname.value+
        "&"+BADDR1+"="+baddr1+
        "&"+BADDR2+"="+baddr2+
        "&"+BADDR3+"="+baddr3+
        "&"+BADDR4+"="+baddr4+
        "&"+BADDR5+"="+baddr5+
        "&"+CITY+"="+form.city.value+
        "&"+STATE+"="+form.state.value+
        "&"+ZIP+"="+form.zip.value+
        "&"+COUNTRY+"="+form.country.value+
        "&"+NOTE+"="+form.note.value+
        "&"+FAXNUM+"="+form.faxnum.value+
        "&"+CONT1+"="+form.cont1.value+
        "&"+PHONE1+"="+form.phone1.value+
        "&"+CONT2+"="+form.cont2.value+
        "&"+PHONE2+"="+form.phone2.value+
        "&"+EMAIL+"="+form.email.value+
        "&"+BCC+"="+form.bcc.value+
        "&"+LOGIN+"="+form.login.value+
        "&"+PASSWORD+"="+form.password.value+
        "&"+CREDIT_LIMIT+"="+form.credit_limit.value+
        "&"+CREDIT_LIMIT_WARNING+"="+form.credit_limit_warning.value+
        "&"+ISO_4217+"=USD";
    if(form.username) {
        fullUri += "&"+"username"+"="+form.username.value;
    }
    if(create && form.i_rep) {
        fullUri += "&"+I_REP+"="+form.i_rep.value;
    }
//alert(encodeURL(fullUri));
    document.getElementById('plsWait').innerHTML= validatingInfoPlsWait;
    new Ajax.Request(encodeURL(fullUri),{
        onComplete: function(transport) {
            displayCreateUserResults(transport.responseText, create, form);
        }
    });
}
function displayCreateAccountResults(response, create, createDID, createNumG, form) {
    try {
        //alert(response);
        document.getElementById('plsWait2').innerHTML= "";
        if(document.getElementById('plsWait8')) document.getElementById('plsWait8').innerHTML= "";
        if(document.getElementById('plsWait9')) document.getElementById('plsWait9').innerHTML= "";
        if(response.indexOf("fault") == -1) {
            if(create) {
                if(!createDID) {
                    var pin = response;
                    document.getElementById('pinSpan').innerHTML=
                    "<input type='hidden' name='pin' id='pin' value='"+pin+"'>";
                }
                if(!createDID && pid && (pid == "2")) {
                    createAccounts(create, true, false, form)
                } else {
                    currStep=3;
                    displaySection(currStep, true);
                    initializeTimer();
                }
            } else {
                if(createDID) {
                    alert(didOrderSuccess+num2dollars(totalDIDCost));
                    window.location.reload();
                } else if(createNumG) {
                    var numGIAccount = response;
                    var numG = getNumG();
                    document.getElementById('numGOptions').innerHTML= 
                        "<input type='hidden' name='i_accountNumG' id='i_accountNumG' value='"+numGIAccount+"'>"+
                        "<input type='hidden' name='numG' id='numG' value='"+numG+"'>";
                    form.amount.value=numGCost;
                    makePayment(false, form, "cc", "numG");
                } else {
                    alert(infoUpdatedSuccess);
                }
            }
        } else {
            if(response.toLowerCase().indexOf("valid batch required") != -1) {
                batchNameIndex++;
                form.batch_name.value=form.batch_name.value+batchNameIndex;
                //alert("calling createAccounts()");
                createAccounts(create, createDID, createNumG, form);
            } else {
                var errorMsg = numberAlreadyTaken;
                if(response.indexOf("<offset") != -1) {
                    var offsetStart = response.indexOf("<offset");
                    offsetStart = response.indexOf(">", offsetStart)+1;
                    var offsetEnd = response.indexOf("<", offsetStart);
                    var repeatedNumber = response.substring(offsetStart, offsetEnd);
                    errorMsg += " ("+document.getElementById('num'+repeatedNumber).value+")";
                }
                errorMsg += "<br>";
                document.getElementById('errorMsg14').innerHTML=getFaultErrorString(response, errorMsg);
                document.getElementById('errorMsg5').innerHTML=getFaultErrorString(response, errorMsg);
            }
        }
    } catch(e) {
        document.getElementById('errorMsg5').innerHTML=errorAddingNumbers;
    }
    lock=false;
}
function createAccounts(create, createDID, createNumG, form) {
//alert("createAccounts: Init createDID="+createDID+" createNumG="+createNumG)
    var address = form.address.value;
    var baddr1 = "", baddr2 = "", baddr3 = "", baddr4 = "", baddr5 = "";
    if (address.length <= 40) {
        baddr1=address;
    } else {
        var lastSpaceFirstLine = address.substring(0, 40).lastIndexOf(" ");
        baddr1 = address.substring(0, lastSpaceFirstLine);
        address = address.substring(lastSpaceFirstLine);
        if (address.length <= 40) {
            baddr2 = address;
        } else {
            lastSpaceFirstLine = address.substring(0, 40).lastIndexOf(" ");
            baddr2 = address.substring(0, lastSpaceFirstLine);
            address = address.substring(lastSpaceFirstLine);
            if (address.length <= 40) {
                baddr3 = address;
            } else {
                lastSpaceFirstLine = address.substring(0, 40).lastIndexOf(" ");
                baddr3 = address.substring(0, lastSpaceFirstLine);
                address = address.substring(lastSpaceFirstLine);
                if (address.length <= 40) {
                    baddr4 = address;
                } else {
                    lastSpaceFirstLine = address.substring(0, 40).lastIndexOf(" ");
                    baddr4 = address.substring(0, lastSpaceFirstLine);
                    baddr5 = address.substring(lastSpaceFirstLine);
                }
            }
        }
    }

    var fullUri = uri;
//alert("fullUri1="+fullUri);
    if(create) {
        fullUri +=
            "?"+ACTION+"="+ACTION_CREATE_ACCOUNTS+
            "&"+"coupon"+"="+form.coupon.value;
    } else if(createNumG || createDID) {
        fullUri +=
            "?"+ACTION+"="+ACTION_CREATE_ACCOUNTS;
    } else {
        fullUri +=
            "?"+ACTION+"="+ACTION_UPDATE_ACCOUNTS;
    }
//alert("fullUri2="+fullUri);
    var type = gup("type");
    if((!type || type == "") && form.type) type = form.type.value;
    fullUri += 
        "&"+TYPE+"="+type+
        "&"+SESS_ID+"="+SESSION_ID+
        "&"+NAME+"="+form.name.value+
        "&"+LOGIN+"="+form.login.value+
        "&"+PASSWORD+"="+form.password.value+
        "&"+BILLING_MODEL+"="+form.billing_model.value+
        "&"+I_CUSTOMER+"="+form.i_customer.value+
        "&"+BATCH_NAME+"="+form.batch_name.value+
        "&"+OPENING_BALANCE+"="+form.opening_balance.value+
        "&"+ACTIVATION_DATE+"="+form.activation_date.value+
        "&"+EXPIRATION_DATE+"="+form.expiration_date.value+
        "&"+LIFE_TIME+"="+form.life_time.value+
        "&"+I_LANG+"="+form.i_lang.value+
        "&"+H323_PASSWORD+"="+form.h323_password.value+
        "&"+EMAIL+"="+form.email.value+
        //"&"+CREDIT_LIMIT+"="+form.credit_limit.value+
        "&"+COMPANY_NAME+"="+form.companyname.value+
        "&"+SALUTATION+"="+form.salutation.value+
        "&"+FIRST_NAME+"="+form.firstname.value+
        "&"+MIDINIT+"="+form.midinit.value+
        "&"+LAST_NAME+"="+form.lastname.value+
        "&"+BADDR1+"="+baddr1+
        "&"+BADDR2+"="+baddr2+
        "&"+BADDR3+"="+baddr3+
        "&"+BADDR4+"="+baddr4+
        "&"+BADDR5+"="+baddr5+
        "&"+CITY+"="+form.city.value+
        "&"+STATE+"="+form.state.value+
        "&"+ZIP+"="+form.zip.value+
        "&"+COUNTRY+"="+form.country.value+
        "&"+NOTE+"="+form.note.value+
        "&"+FAXNUM+"="+form.faxnum.value+
        "&"+CONT1+"="+form.cont1.value+
        "&"+PHONE1+"="+form.phone1.value+
        "&"+CONT2+"="+form.cont2.value+
        "&"+PHONE2+"="+form.phone2.value+
        "&"+BCC+"="+form.bcc.value+
        "&"+CREDIT_LIMIT_WARNING+"="+form.credit_limit_warning.value+
        "&"+ISO_4217+"=USD";
//alert("fullUri3="+fullUri);
    if(createDID) {
        for(var i=0; i<numStoredDIDs; i++) {
            var i_accountDID = document.getElementById("i_accountDID"+(i+1));
            if(!i_accountDID) {
                var didNum = document.getElementById("didNum"+(i+1)).innerHTML;
                var planId = document.getElementById("planId"+(i+1)).value;
                var followMe = new Array();
                var myDID = document.getElementById("myDIDs").innerHTML;
                var followMeListStart = myDID.toLowerCase().indexOf("<span id='followmelist"+(i+1)+"'>")
                if(followMeListStart == -1) followMeListStart = myDID.toLowerCase().indexOf("<span id=\"followmelist"+(i+1)+"\">");
                if(followMeListStart == -1) followMeListStart = myDID.toLowerCase().indexOf("<span id=followmelist"+(i+1)+">");
                followMeListStart = myDID.indexOf(">",followMeListStart)+1;
                var followMeListEnd = myDID.toLowerCase().indexOf("</span>", followMeListStart);
                var followMeList = myDID.substring(followMeListStart, followMeListEnd);
                followMeListStart = followMeList.indexOf("&nbsp;");
                var count = 0;
                while(followMeListStart != -1) {
                    followMeListStart += 6;
                    followMeListEnd = followMeList.indexOf("<", followMeListStart);
                    if(followMeListEnd == -1) {
                        followMe[count++] = followMeList.substring(followMeListStart);
                    } else {
                        followMe[count++] = followMeList.substring(followMeListStart, followMeListEnd);
                    }
                    followMeListStart = followMeList.indexOf("&nbsp;", followMeListStart);
                }
                // Add to message
                fullUri += "&did"+(i+1)+"="+didNum;
                if((create == false) && document.getElementById('i_accountDID'+(i+1))) {
                    fullUri += "&i_accountNum"+(i+1)+"="+document.getElementById('i_accountDID'+(i+1)).value;
                }
                fullUri +=
                    "&"+I_PRODUCT+(i+1)+"="+planId;
                for(var j = 0; j<followMe.length; j++) {
                    fullUri += "&num"+(i+1)+"_"+(j+1)+"="+followMe[j];
                    document.getElementById("followMeNumbers").innerHTML += " "+followMe[j];
                }
                document.getElementById("didNumber").innerHTML += " "+didNum;
            }
        }
        fullUri +=
            "&"+BATCH_NAME+"="+form.batch_name.value;

    } else {
        fullUri +=
            "&"+I_PRODUCT+"="+form.i_product.value;
//alert("fullUri4="+fullUri);
        //if(create) {
            for(i = 0; i<numberOfNumbers; i++) {
                fullUri += "&num"+(i+1)+"="+document.getElementById('num'+(i+1)).value;
                fullUri += "&regPhoneType"+(i+1)+"="+document.getElementById('regPhoneType'+(i+1)).value;
                if(create == false) {
                    fullUri += "&i_accountNum"+(i+1)+"="+document.getElementById('i_accountNum'+(i+1)).value;
                }
            }
        //}
//alert("fullUri5="+fullUri);
        if(createNumG) {
            var numG = getNumG();
            if(numG != "") {
                var index = 1;
                if(create) index = numberOfNumbers+1;
                fullUri += "&num"+index+"="+numG;
                fullUri += "&regPhoneType"+index+"="+"numG";
                if(!create && document.getElementById('i_accountNumG')) {
                    fullUri += "&i_accountNum"+index+"="+document.getElementById('i_accountNumG').value;
                }
            }
        } 
    }
//alert("fullUri6="+fullUri);

    if(createNumG && !document.addCustomerForm) {
        document.getElementById('plsWait9').innerHTML= creatingAccountsPlsWait;
    } else if(createDID && !document.addCustomerForm) {
        document.getElementById('plsWait8').innerHTML= creatingAccountsPlsWait;
    } else {
        document.getElementById('plsWait2').innerHTML= creatingAccountsPlsWait;
    }
//alert("fullUri7="+fullUri);
    new Ajax.Request(encodeURL(fullUri),{
        onComplete: function(transport) {
            displayCreateAccountResults(transport.responseText, create, createDID, createNumG, form);
        }
    });
}
function getNumG() {
    var numG = "";
    var numGRadio = document.getElementsByName("numberG");
    if(numGRadio) {
        for(var i=0; i<numGRadio.length; i++) {
            if(numGRadio[i].checked) {
                numG = numGRadio[i].value;
            }
        }
    }
    return numG;
}
function formatNumber(origNum) {
    var newNum = origNum;
    try {
        if(origNum && (origNum.length == 11) && (origNum.substr(0,1) == "1")) {
            newNum = "+"+origNum.substr(0,1)+"("+origNum.substr(1,3)+
                     ")"+origNum.substr(4,3)+"-"+origNum.substr(7);
        }
    } catch (e) {}
    return newNum;
}
function displayConfirmScreen(response, create, form, prefAccessNum) {
    currStep=4;
    displaySection(currStep, true);
    document.getElementById('rightTableHdr').innerHTML=printImage;
    document.getElementById('confirmFirstName').innerHTML=document.addCustomerForm.firstname.value+"&nbsp;"+document.addCustomerForm.midinit.value+"&nbsp;";
    document.getElementById('confirmLastName').innerHTML=document.addCustomerForm.lastname.value;
    document.getElementById('confirmAddress').innerHTML=document.addCustomerForm.address.value;
    document.getElementById('confirmCity').innerHTML=document.addCustomerForm.city.value;
    document.getElementById('confirmState').innerHTML=document.addCustomerForm.state.value;
    document.getElementById('confirmZip').innerHTML=document.addCustomerForm.zip.value;
    document.getElementById('confirmPhone1').innerHTML=formatNumber(document.addCustomerForm.phone1.value);
    document.getElementById('confirmPhone2').innerHTML=formatNumber(document.addCustomerForm.phone2.value);
    var regNums = "";
    var i=0;
    for(i=0; i<numberOfNumbers; i++) {
        try{
            var rNum = formatNumber(document.getElementById('num'+(i+1)).value);
            if(rNum.length > 2) {
                regNums+=rNum;
                if((i+1)<numberOfNumbers)regNums+="<br>";
            }
        }catch(e){}
    }
    document.getElementById('regNums').innerHTML=regNums;
    document.getElementById('confirmPIN').innerHTML=document.addCustomerForm.pin.value;
    
    var paymentType = form.paymentType.value;
    if(!paymentType) {
        var paymentTypeLength = form.paymentType.length;
        i=0;
        for(i = 0; i < paymentTypeLength; i++) {
            if(form.paymentType[i].checked) {
                paymentType = form.paymentType[i].value;
            }
        }
    }
    if(paymentType == "cash") {
        document.getElementById('planDesc').innerHTML=planDescCash1+form.amount.value;
        document.getElementById('planDesc').innerHTML+=planDescCash2;
        document.getElementById('paymentTypeHeading').innerHTML=paymentMethodHrdCash;
        document.getElementById('paymentTypeDesc').innerHTML=paymentMethodDescCashPart1+
        form.amount.value+paymentMethodDescCashPart2+
        form.amount.value+paymentMethodDescCashPart3;
    } else {
        document.getElementById('planDesc').innerHTML=planDescCC1;
        document.getElementById('planDesc').innerHTML+="20";
        if(form.periodicPayment) {
            if(form.periodicPayment.length > 0) {
                if(form.periodicPayment[0].checked==true) {
                    document.getElementById('planDesc').innerHTML+=planDescCC2;
                } else {
                    document.getElementById('planDesc').innerHTML+=planDescCC3;
                }
            }
        }
        document.getElementById('paymentTypeHeading').innerHTML=paymentMethodHrdCC;
        document.getElementById('paymentTypeDesc').innerHTML=paymentMethodDescCC1+form.amount.value+paymentMethodDescCC2;
        for(var i=0; i<planCosts.length; i++) {
            var currentDIDCost = planCosts[i];
            var currentDIDCountryCity = planCity[i];
            document.getElementById('paymentTypeDesc').innerHTML+=
            "<br><em>- "+currentDIDCost+paymentMethodDescCC3+currentDIDCountryCity+"</em>";
        }
        document.getElementById('confirmPaymentMethod').innerHTML=document.addCustomerForm.payment_method.value;
        var card = document.addCustomerForm.number.value;
        var newCard = "";
        i=0;
        for (i = 0; i < (card.length - 4); i++) {
            newCard += "X";
        }
        newCard += card.substring(card.length - 4, card.length);
        document.getElementById('confirmNumber').innerHTML=newCard;
    }
    document.getElementById('accessNums').innerHTML=formatNumber(prefAccessNum);
    document.getElementById('confirmLogin').innerHTML=document.addCustomerForm.login.value;
    document.getElementById('confirmPassword').innerHTML=document.addCustomerForm.password.value;
    if(document.getElementById('currentBalance')) {
        getBalance(form, document.getElementById('currentBalance'));
        if(form.coupon.value != "") {
            document.getElementById('referralExtra').innerHTML=referralExtra;
        }
    }
}
function displayPaymentResults(response, create, form, paymentType) {
    try {
        document.getElementById('plsWait3').innerHTML= "";
        if(response.indexOf("fault") == -1) {
            if(create) {
                stopTimer();
                if((pid) && (pid == "2")) {
                    lock=false;
                    makePayment(create, form, paymentType, "did", response);
                    // Send DID request email.
                    sendDIDCountryRequest();
                } else {
                    displayPopupDIDPromo(response, paymentType);
                }
            } else {
                alert(infoUpdatedSuccess);
            }
        } else {
            //alert(response);
            document.getElementById('errorMsg6').innerHTML=getFaultErrorString(response, errorProcessingCC);
        }
    } catch(e) {
alert(e.description);
        document.getElementById('errorMsg6').innerHTML=errorProcessingCC;
    }
    lock=false;
}
function updatePaymentInfo(create, form) {
    var fullUri = uri +
        "?"+ACTION+"="+ACTION_UPDATE_PAYMENT;
    if(create && form.coupon && (form.coupon.value != "")) {
        fullUri +=
            "&"+"coupon"+"="+form.coupon.value;
    }
    var paymentType = form.paymentType.value;
    var i=0;
    if(!paymentType) {
        var paymentTypeLength = form.paymentType.length;
        for(i = 0; i < paymentTypeLength; i++) {
            if(form.paymentType[i].checked) {
                paymentType = form.paymentType[i].value;
            }
        }
    }
    if(!create) paymentType = "cc";
    var type = gup("type");
    if((!type || type == "") && form.type) type = form.type.value;
    fullUri += 
        "&"+TYPE+"="+type+
        "&"+SESS_ID+"="+SESSION_ID+
        "&"+I_CUSTOMER+"="+form.i_customer.value+
        "&"+I_LANG+"="+form.i_lang.value+
        "&pin="+form.pin.value+
        "&"+PAYMENT_METHOD+"="+form.payment_method.value+
        "&"+PAYMENT_TYPE+"="+paymentType+
        "&"+NUMBER+"="+form.number.value+
        "&"+NAME+"="+form.pay_name.value+
        "&"+ZIP+"="+form.pay_zip.value+
        "&"+ADDRESS+"="+form.pay_address.value+
        "&"+CITY+"="+form.pay_city.value+
        "&"+STATE+"="+form.pay_state.value+
        "&"+COUNTRY+"="+form.pay_country.value+
        "&"+CARD_YEAR+"="+form.card_year.value+
        "&"+CARD_MONTH+"="+form.card_month.value+
        "&"+CVV+"="+form.cvv.value;
    if(form.username) {
        fullUri += "&"+"username"+"="+form.username.value;
    }
    if(create) {
        fullUri +=
            "&"+AMOUNT+"="+form.amount.value;
    } else {
        fullUri +=
            "&"+AMOUNT+"="+"0";
    }
    if(form.periodicPayment) {
        if(form.periodicPayment.length > 0) {
            if(form.periodicPayment[0].checked==true) {
              fullUri += "&periodicPayment=TRUE";
            } else {
              fullUri += "&periodicPayment=FALSE";
            }
        }
    }
    try {
        if((pid && (pid == "2") && form.allowSMSDID.checked) || 
           (pid && (pid != "2") && form.allowSMSPinFree.checked)) {
            fullUri+="&"+SEND_SMS+"=TRUE";
        }
    } catch(e) {}
    i=0;
    for(i = 0; i<numberOfNumbers; i++) {
        fullUri += "&num"+(i+1)+"="+document.getElementById('num'+(i+1)).value;
        fullUri += "&regPhoneType"+(i+1)+"="+document.getElementById('regPhoneType'+(i+1)).value;
    }
//alert("updatePaymentInfo(): fullUri="+encodeURL(fullUri));
    document.getElementById('plsWait3').innerHTML= payingPlsWait;
    new Ajax.Request(encodeURL(fullUri),{
        onComplete: function(transport) {
            displayPaymentResults(transport.responseText, create, form, paymentType);
        }
    });
}
function sendReferrals(form) {
    var fullUri = uri+
        "?"+ACTION+"="+ACTION_SEND_REFERRALS;
    for(i=0; i<numberOfReferrals; i++) {
        var refName = document.getElementById('refName'+(i+1)).value;
        var refEmail = document.getElementById('refEmail'+(i+1)).value;
        var refNum = document.getElementById('refMobile'+(i+1)).value;
        fullUri +=
            "&refName"+(i+1)+"="+refName+
            "&refEmail"+(i+1)+"="+refEmail+
            "&refNum"+(i+1)+"="+refNum;
    }
    fullUri +=
        "&"+SESS_ID+"="+SESSION_ID+
        "&"+FIRST_NAME+"="+form.firstname.value+
        "&"+LAST_NAME+"="+form.lastname.value+
        "&"+NAME+"="+form.name.value+
        "&"+I_LANG+"="+form.i_lang.value;
    if(form.i_rep) {
        fullUri += "&"+I_REP+"="+form.i_rep.value;
    }
    document.getElementById('plsWait5').innerHTML= sendingPlsWait;
    new Ajax.Request(encodeURL(fullUri),{
        onComplete: function(transport) {
            document.getElementById('plsWait5').innerHTML= "";
            if(transport.responseText.indexOf("fault") == -1) {
                alert(referralsSent);
                window.location.reload();
            } else {
                document.getElementById('errorMsg16').innerHTML=getFaultErrorString(transport.responseText, errorEnteringInfo);
            }
            lock=false;
        }
    });
}
function sendDIDCountryRequest() {
    var otherCountryElem = document.getElementById("otherCountry");
    var otherCityElem = document.getElementById("otherCountry");
    var otherCountry = "";
    var otherCity = "";
    if(otherCountryElem) otherCountry = otherCountryElem.value;
    if(otherCityElem) otherCity = otherCityElem.value;
    
    var fullUri = uri+
        "?"+ACTION+"="+ACTION_REQUEST_DID_NUMBER;
    fullUri +=
        "&"+"otherCountry"+"="+otherCountry+
        "&"+"otherCity"+"="+otherCity+
        "&"+SESS_ID+"="+SESSION_ID+
        "&"+FIRST_NAME+"="+form.firstname.value+
        "&"+LAST_NAME+"="+form.lastname.value+
        "&"+NAME+"="+form.name.value+
        "&"+I_LANG+"="+form.i_lang.value;
    if(form.i_rep) {
        fullUri += "&"+I_REP+"="+form.i_rep.value;
    }
    new Ajax.Request(encodeURL(fullUri),{
        onComplete: function(transport) {
            var response = transport.responseText;
            if(response.indexOf("fault") != -1) {
                alert(response);
            }
        }
    });
}
function makePayment(create, form, payType, acctType, prefAccessNum) {
    // POS
    //makePayment(false, document.editCustomerForm, 'cash', 'pinFree');
    // CC
    //makePayment(false, document.editCustomerForm, 'cc', 'pinFree');
    if(!lock) {
        lock=true;
        var error1 = document.getElementById('errorMsg15');
        var error2 = document.getElementById('errorMsg17');
        var error3 = document.getElementById('errorMsg18');
        var plsWait1 = document.getElementById('plsWait4');
        var plsWait2 = document.getElementById('plsWait7');
        var plsWaitPromoDID = document.getElementById('plsWaitPromoDID');
        if(error1) error1.innerHTML="";
        if(error2) error2.innerHTML="";
        if(error3) error3.innerHTML="";
        var fullUri = uri+
            "?"+ACTION+"="+ACTION_MAKE_PAYMENT;
        var paymentAmount = "";
        if((payType == "cash") || (acctType == "numG") || create) {
            paymentAmount = form.amount.value;
        } else {
            var i=0;
            var amountRechargeLength = form.amountRecharge.length;
            for(i = 0; i < amountRechargeLength; i++) {
                if(form.amountRecharge[i].checked) {
                    if(form.amountRecharge[i].value == "other") {
                        paymentAmount = form.amountRechargeOther.value;
                    } else {
                        paymentAmount = form.amountRecharge[i].value;
                    }
                }
            }
        }
        paymentAmount = paymentAmount.replace(/\D[.]/g,'');

        var type = gup("type");
        if((!type || type == "") && form.type) type = form.type.value;
        fullUri += 
            "&"+TYPE+"="+type+
            "&"+SESS_ID+"="+SESSION_ID+
            "&"+I_CUSTOMER+"="+form.i_customer.value+
            "&"+I_LANG+"="+form.i_lang.value+
            "&"+AMOUNT+"="+paymentAmount+
            "&"+PAYMENT_TYPE+"="+payType+
            "&"+PAYMENT_METHOD+"="+form.payment_method.value;
        if(form.username) {
            fullUri += "&"+"username"+"="+form.username.value;
        }
        if(pid && pid == "2") fullUri += "&"+"pid"+"="+pid;
        if(document.addCustomerForm) fullUri += "&"+"firstTime"+"="+"true";
        if(plsWait1) plsWait1.innerHTML=payingPlsWait;
        if(plsWait2) plsWait2.innerHTML=payingPlsWait;
        if(document.getElementById('plsWait3')) document.getElementById('plsWait3').innerHTML= payingPlsWait;
        if(plsWaitPromoDID) plsWaitPromoDID.innerHTML=payingPlsWait;
        //alert("makePayment(): fullUri="+encodeURL(fullUri));
        new Ajax.Request(encodeURL(fullUri),{
            onComplete: function(transport) {
                if(plsWait1) plsWait1.innerHTML="";
                if(plsWait2) plsWait2.innerHTML="";
                if(document.getElementById('plsWait3')) document.getElementById('plsWait3').innerHTML="";
                if(transport.responseText.indexOf("fault") == -1) {
                    if(document.addCustomerForm) {
                        displayConfirmScreen(transport.responseText, create, form, prefAccessNum);
                    } else {
                        if(acctType == "numG") {
                            document.getElementById('numGTitle').style.visibility='hidden';
                            document.getElementById('numGTitle').style.display='none';
                            document.getElementById('numGOptions').innerHTML+= "<span style='text-align:center'>Mi N&uacute;mero G es:<br>" + document.getElementById('numG').value + "</span>";
                            document.getElementById('orderGBtn').innerHTML = "";
                            alert(numGOrderSuccess+num2dollars(numGCost));
                        } else {
                            alert(payUpdatedSuccess);
                            window.location.reload();
                        }
                    }
                } else {
//alert(transport.responseText);
                    if(error1) error1.innerHTML=getFaultErrorString(transport.responseText, errorAmountTooSmall)+"<br>";
                    if(error2) error2.innerHTML=getFaultErrorString(transport.responseText, errorAmountTooSmall)+"<br>";
                    if(error3) error3.innerHTML=getFaultErrorString(transport.responseText, errorAmountTooSmall)+"<br>";
                }
                lock=false;
            }
        });
    }
}
function togglePFCost() {
    if(document.getElementById("pfDeposit").checked) {
        chargeTotal += 20;
    } else {
        chargeTotal -= 20;
    }
    updateTotal(chargeTotal, "");
}
function addNumber(form) {
    if(pinFreeCost == 0) {
        pinFreeCost = 20;
        chargeTotal += pinFreeCost;
        updateTotal(chargeTotal, "");
    }
    if(numberOfNumbers < 10) {
        var firstTime = 0;
        if(numberOfNumbers == 0) {
            firstTime = 1;
        }
        try {
            numberOfNumbers++;
            var addNumbersTableStr = "";
            for(var i=0; i<numberOfNumbers; i++) {
                var value = "";
                var i_acctValue = "";
                var index = 0;
                if(firstTime == 1) {
                    value = document.getElementById('phone1').value;
                } else if((i+1)<numberOfNumbers){
                    value = document.getElementById('num'+(i+1)).value;
                    i_acctValue = document.getElementById('i_accountNum'+(i+1)).value;
                    index = document.getElementById('regPhoneType'+(i+1)).selectedIndex;
                }
                if(!document.getElementById('coupon')) {
                    addNumbersTableStr += "<input type=\"checkbox\" id=\"deleteNum"+(i+1)+"\" name=\"deleteNum"+(i+1)+"\" value=\""+(i+1)+"\">";
                }
                addNumbersTableStr += "<select id='regPhoneType"+(i+1)+"' name='regPhoneType"+(i+1)+"' "+
                    "style=\"width:50px\" ";
//                if(form) {
                    addNumbersTableStr += "onChange=\"document.getElementById('unknownPhoneType"+(i+1)+"').innerHTML="+
                    "getPhoneTypeIcon("+form+".regPhoneType"+(i+1)+".selectedIndex);\"";
//                }
                addNumbersTableStr += ">";
                addNumbersTableStr += "<option value=''";
                if(index == 0)addNumbersTableStr += " selected";
                addNumbersTableStr += ">"+typeOfPhone+"</option>";
                addNumbersTableStr += "<option value='mobile'";
                if(index == 1)addNumbersTableStr += " selected";
                addNumbersTableStr += ">"+typeMobile+"</option>";
                addNumbersTableStr += "<option value='fixed'";
                if(index == 2)addNumbersTableStr += " selected";
                addNumbersTableStr += ">"+typeHome+"</option></select>";
                addNumbersTableStr += "<input type='text' name='num"+(i+1)+"' id='num"+(i+1)+"' value='"+value+"' onchange=\"javascript:cleanupNumber('num"+(i+1)+"', "+form+".num"+(i+1)+".value, this.form)\" style=\"width:70px\" >";
                addNumbersTableStr += "<input type='hidden' name='i_accountNum"+(i+1)+"' id='i_accountNum"+(i+1)+"' value='"+i_acctValue+"'>";

                var image = getPhoneTypeIcon(index);
                addNumbersTableStr += "<span id='unknownPhoneType"+(i+1)+"'>"+image+"</span>";
                if((i+1)<numberOfNumbers)addNumbersTableStr += "<br>";
            }
            document.getElementById('moreNumbers').innerHTML=addNumbersTableStr;
        } catch(e) {
            //alert(e.description);
            document.getElementById('errorMsg5').innerHTML=errorAddingNumbers;
        }
    }
}
function addReferals(form, limit) {
    var limitVal = 10;
    if(!limit) limitVal = 1000000;
    if(numberOfReferrals < limitVal) {
        var firstTime = 0;
        if(numberOfReferrals == 0) {
            firstTime = 1;
        }
        try {
            numberOfReferrals++;
            var addNumbersTableStr = "<table align=\"center\" "+
                "style=\"text-align:center;width:698px;\">";
            for(var i=0; i<numberOfReferrals; i++) {
                var name = "";
                var email = "";
                var number = "";
                if((firstTime != 1) && ((i+1)<numberOfReferrals)){
                    name = document.getElementById('refName'+(i+1)).value;
                    email = document.getElementById('refEmail'+(i+1)).value;
                    number = document.getElementById('refMobile'+(i+1)).value;
                }
                addNumbersTableStr += "<tr>";
                addNumbersTableStr += "<td>"+nameString+":&nbsp;<input type=\"text\" id=\"refName"+(i+1)+"\" name=\"refName"+(i+1)+"\" value=\""+name+"\"></td>";
                addNumbersTableStr += "<td>"+emailString+":&nbsp;<input type=\"text\" id=\"refEmail"+(i+1)+"\" name=\"refEmail"+(i+1)+"\" value=\""+email+"\"></td>";
                addNumbersTableStr += "<td>"+mobileString+":&nbsp;<input type=\"text\" id=\"refMobile"+(i+1)+"\" name=\"refMobile"+(i+1)+"\" value=\""+number+"\" "+
                    "onchange=\"javascript:cleanupNumber('refMobile"+(i+1)+"', "+form+".refMobile"+(i+1)+".value, this.form)\"></td>";
                addNumbersTableStr += "</tr>";
            }
            document.getElementById('moreReferals').innerHTML=addNumbersTableStr;
        } catch(e) {
            //alert(e.description);
            document.getElementById('errorMsg5').innerHTML=errorAddingNumbers;
        }
    }
}
function deleteNums(form) {
    var confirmStr = confirmDel+"\n";
    for(i = 0; i < numberOfNumbers; i++) {
        if(document.getElementById('deleteNum'+(i+1)).checked == true) {
            confirmStr += document.getElementById('num'+(i+1)).value+"\n";
        }
    }
    var answer = confirm(confirmStr);
    if (answer && !lock) {
        lock=true;
        try {
            var fullUri = uri+
                "?"+ACTION+"="+ACTION_DELETE_ACCOUNTS;
            var j=1;
            for(i = 0; i < numberOfNumbers; i++) {
                if(document.getElementById('deleteNum'+(i+1)).checked == true) {
                    fullUri +=
                        "&"+I_ACCOUNT+j+"="+document.getElementById('i_accountNum'+(i+1)).value;
                    j++;
                }
            }
            document.getElementById('plsWait2').innerHTML=deletingAccountsPlsWait;
            new Ajax.Request(encodeURL(fullUri),{
                onComplete: function(transport) {
                    document.getElementById('plsWait2').innerHTML= "";
                    if(transport.responseText.indexOf("fault") == -1) {
                        window.location.reload();
                    } else {
                        //alert(transport.responseText);
                        document.getElementById('errorMsg5').innerHTML=getFaultErrorString(transport.responseText, errorDeletingAccounts);
                    }
                    lock=false;
                }
            });
        } catch(e) {alert(e.description);lock=false;}
    }
}
function deleteNumG() {
    lock=true;
    try {
        var fullUri = uri+
            "?"+ACTION+"="+ACTION_DELETE_ACCOUNTS+
            "&"+I_CUSTOMER+"="+document.editCustomerForm.i_customer.value+
            "&"+NAME+"="+document.editCustomerForm.name.value+
            "&"+I_ACCOUNT+"1="+document.getElementById('i_accountNumG').value+
            "&"+TYPE+"="+"numG";
        //alert(fullUri);
        document.getElementById('plsWait9').innerHTML=deletingAccountsPlsWait;
        new Ajax.Request(encodeURL(fullUri),{
            onComplete: function(transport) {
                document.getElementById('plsWait18').innerHTML= "";
                if(transport.responseText.indexOf("fault") == -1) {
                } else {
                    //alert(transport.responseText);
                    document.getElementById('errorMsg5').innerHTML=getFaultErrorString(transport.responseText, errorDeletingAccounts);
                }
                lock=false;
            }
        });
    } catch(e) {
        alert(e.description);
        lock=false;
//        document.getElementById("numGCheckbox").checked = true;
    }
}
function deleteDID(offset) {
    lock=true;
    try {
        var fullUri = uri+
            "?"+ACTION+"="+ACTION_DELETE_ACCOUNTS+
            "&"+I_CUSTOMER+"="+document.editCustomerForm.i_customer.value+
            "&"+NAME+"="+document.editCustomerForm.name.value+
            "&"+TYPE+"="+"did";
        if(offset) {
            fullUri +=
                "&"+I_ACCOUNT+"1="+document.getElementById('i_accountDID'+offset).value;
        } else {
            var count = 1;
            while(document.getElementById('i_accountDID'+count)) {
                fullUri +=
                    "&"+I_ACCOUNT+count+"="+document.getElementById('i_accountDID'+count).value;
                count++;
            }
        }
        //alert(fullUri);
        document.getElementById('plsWait9').innerHTML=deletingAccountsPlsWait;
        new Ajax.Request(encodeURL(fullUri),{
            onComplete: function(transport) {
                document.getElementById('plsWait18').innerHTML= "";
                if(transport.responseText.indexOf("fault") == -1) {
                } else {
                    //alert(transport.responseText);
                    document.getElementById('errorMsg5').innerHTML=getFaultErrorString(transport.responseText, errorDeletingAccounts);
                }
                lock=false;
            }
        });
    } catch(e) {
        alert(e.description);
        lock=false;
//        document.getElementById("numGCheckbox").checked = true;
    }
}
function getBalance(form, balSpan) {
    var fullUri = uri+
        "?"+ACTION+"="+ACTION_GET_BALANCE+
        "&"+NAME+"="+form.name.value;
    new Ajax.Request(encodeURL(fullUri),{
        onComplete: function(transport) {
                //alert(transport.responseText);
                //alert("document.editCustomerForm.balanceSpan="+document.editCustomerForm.balanceSpan);
                //alert(balSpan);
            if(transport.responseText.indexOf("fault") == -1) {
                balSpan.innerHTML = transport.responseText;
            } else {
                alert(transport.responseText);
            }
        }
    });
}
function checkIfSelectedOther(value, spanId) {
    if(value == 'other') document.getElementById(spanId).style.display = "block";
}
function getDIDCountries(countrySpan) {
    if(countrySpan == 'didSpan') {
        document.getElementById('didCountriesTitleSpan').innerHTML = didCountry;
        document.getElementById('didCountriesSpan').innerHTML = "<img src='../images/wait16.gif' alt=''>"+
        "<a href=\"javascript:getDIDCountries("+countrySpan+");\">"+
        "<img src=\"../images/icons/reload.gif\" alt=\"reload\"></a>";
        document.getElementById('didCitiesTitleSpan').innerHTML = "";
        document.getElementById('didCitiesSpan').innerHTML = "";
        document.getElementById('didPlansSpan').innerHTML = "";
        document.getElementById('didNumbersTitleSpan').innerHTML = "";
        document.getElementById('didNumbersSpan').innerHTML = "";
    }
    var fullUri = uri+
        "?"+ACTION+"="+ACTION_GET_DID_COUNTRIES;
    new Ajax.Request(encodeURL(fullUri),{
        onComplete: function(transport) {
            if(transport.responseText.indexOf("fault") == -1) {
                var resp = transport.responseText;
                var countriesSelect;
                if(countrySpan == 'didSpan') {
                    countriesSelect = "<select id='didCountries' name='didCountries' "+
                        "style=\"width:120px\" onChange=\"javascript:getDIDCities('"+countrySpan+"');\">";
                    countriesSelect += "<option value='' selected></option>";
                } else {
                    countriesSelect = "<select id='mostCalledCountry' name='mostCalledCountry'  tabindex='15'"+
                        "style=\"width:120px\" onChange=\"javascript:getDIDCities('"+countrySpan+"');\">";
                    countriesSelect += "<option value='' selected></option>";
                }
                var indexTagStart = resp.indexOf("<DIDCountryList");
                while(indexTagStart != -1) {
                    var countryName = "";
                    var countryId = "";
                    indexTagStart = resp.indexOf("<CountryName", indexTagStart);
                    if(indexTagStart != -1) {
                        indexTagStart = resp.indexOf(">", indexTagStart)+1;
                        var indexTagEnd = resp.indexOf("<", indexTagStart);
                        countryName = resp.substring(indexTagStart, indexTagEnd);
                    }
                    indexTagStart = resp.indexOf("<CountryId", indexTagStart);
                    if(indexTagStart != -1) {
                        indexTagStart = resp.indexOf(">", indexTagStart)+1;
                        var indexTagEnd = resp.indexOf("<", indexTagStart);
                        countryId = resp.substring(indexTagStart, indexTagEnd);
                    }
                    countriesSelect += "<option value='"+countryId+"'>"+countryName+"</option>";
                    indexTagStart = resp.indexOf("<CountryName", indexTagStart);
                }
                if(countrySpan == 'didSpan') {
                    countriesSelect += "</select>";
                    document.getElementById('didCountriesSpan').innerHTML = countriesSelect;
                } else {
                    countriesSelect += "<option value='other'>OTRO</option>";
                    countriesSelect += "</select>";
                    countriesSelect += "<span id='otherCountrySpan' style='display:none'>";
                    countriesSelect += "    <br>Otro Pa&iacute;s y Ciudad:<br><input type='text' name='otherCountry' id='otherCountry' value=''>";
                    countriesSelect += "</span>";
                    document.getElementById('mostCalledCountrySpan').innerHTML = countriesSelect;
                }
            } else {
                alert(transport.responseText);
            }
        }
    });
}
function getDIDCities(citySpan) {
    
    if(citySpan == 'didSpan') {
        document.getElementById('didCitiesTitleSpan').innerHTML = didCity;
        document.getElementById('didCitiesSpan').innerHTML = "<img src='../images/wait16.gif' alt=''>";
        document.getElementById('didPlansSpan').innerHTML = "";
        document.getElementById('didNumbersTitleSpan').innerHTML = "";
        document.getElementById('didNumbersSpan').innerHTML = "";
    } else if(citySpan == 'mostCalledCountrySpan') {
        document.getElementById('mostCalledCityTitleSpan').style.display = "block";
        document.getElementById('mostCalledCitySpan').innerHTML = "<img src='../images/wait16.gif' alt=''>";
    }
    var country = "";
    var didCountries = document.getElementById("didCountries");
    if(didCountries) {
        country = didCountries.value;
    }
    //alert("didCountries="+didCountries);
    //alert("didCountries.text="+didCountries.text);
    var value = "";
    if(citySpan != 'didSpan') {
        document.getElementById('otherCountrySpan').style.display = "none";        
        var mostCalledCountry = document.getElementById('mostCalledCountry');
        country = mostCalledCountry.options[mostCalledCountry.selectedIndex].value;
        checkIfSelectedOther(country, 'otherCountrySpan');
    }
    if(country != "other") {
        //if(document.addCustomerForm) {
        //    chargeTotal -= didCost;
        //    updateTotal(chargeTotal, "did");
        //}
        //didCost = 0;
        //if(country == "") {
        //    removeProduct('did');
        //} else {
        //    addProduct('did');
        //}
        var fullUri = uri+
            "?"+ACTION+"="+ACTION_GET_DID_CITIES+
            "&"+COUNTRY+"="+country;
        new Ajax.Request(encodeURL(fullUri),{
            onComplete: function(transport) {
                if(transport.responseText.indexOf("fault") == -1) {
                    var resp = transport.responseText;
                    var citySelect;
                    if(citySpan == 'didSpan') {
                        citySelect = "<select id='didCities' name='didCities' "+
                            "style=\"width:150px\" onChange=\"javascript:getDIDNumbers('"+citySpan+"');\">";
                    } else {
                        citySelect = "<select id='mostCalledCity' name='mostCalledCity'  tabindex='16'"+
                            "style=\"width:120px\" onChange=\"javascript:getDIDNumbers('"+citySpan+"');\">";
                    }
                    var indexTagStart = resp.indexOf("<DIDCityList");
                    citySelect += "<option value='' selected></option>";                    
                    while(indexTagStart != -1) {
                        var cityName = "";
                        var vendorId = "";
                        indexTagStart = resp.indexOf("<CityName", indexTagStart);
                        if(indexTagStart != -1) {
                            indexTagStart = resp.indexOf(">", indexTagStart)+1;
                            var indexTagEnd = resp.indexOf("<", indexTagStart);
                            cityName = resp.substring(indexTagStart, indexTagEnd);
                        }
                        indexTagStart = resp.indexOf("<VendorName", indexTagStart);
                        if(indexTagStart != -1) {
                            indexTagStart = resp.indexOf(">", indexTagStart)+1;
                            var indexTagEnd = resp.indexOf("<", indexTagStart);
                            vendorId = resp.substring(indexTagStart, indexTagEnd);
                        }
                        citySelect += "<option value='"+vendorId+"'>"+cityName+"</option>";
                        indexTagStart = resp.indexOf("<CityName", indexTagStart);
                    }
                    if(citySpan == 'didSpan') {
                        citySelect += "</select>";
                        document.getElementById('didCitiesSpan').innerHTML = citySelect;
                    } else {
                        citySelect += "<option value='other'>OTRO</option>";
                        citySelect += "</select>";
                        citySelect += "<span id='otherCitySpan' style='display:none'>";
                        citySelect += "    <br>Otra Ciudad:<br><input type='text' name='otherCity' id='otherCity' value=''>";
                        citySelect += "</span>";
                        document.getElementById('mostCalledCitySpan').innerHTML = citySelect;
                    }
                } else {
                    alert(transport.responseText);
                }
            }
        });
    }
}
function getDIDNumbers(numberSpan) {
    if(numberSpan == 'didSpan') {
        document.getElementById('didPlansSpan').innerHTML = didPlans;
        document.getElementById('didNumbersTitleSpan').innerHTML = didNumbers;
        document.getElementById('didNumbersSpan').innerHTML = "<img src='../images/wait16.gif' alt=''>";
    }
    //if(document.addCustomerForm) {
    //    chargeTotal -= didCost;
    //    updateTotal(chargeTotal, "did");
    //}
    //didCost = 0;
    var country = "";
    var didCountries = document.getElementById("didCountries");
    if(didCountries) {
        country = didCountries.value;
    }
    var vendor = "";
    var cityName = "";
    var didCities = document.getElementById("didCities");
    if(didCities) {
        vendor = didCities.value;
        cityName = didCities.options[didCities.selectedIndex].text;
    }
    //alert("didCities="+didCities);
    //alert("didCities.text="+didCities.text);
    if(numberSpan != 'didSpan') {
        document.getElementById('otherCitySpan').style.display = "none";        
        var mostCalledCity = document.getElementById('mostCalledCity');
        vendor = mostCalledCity.options[mostCalledCity.selectedIndex].value;
        checkIfSelectedOther(vendor, 'otherCitySpan');
    }
    if((numberSpan == 'didSpan') && (vendor != "other")) {
        var currentDIDs = new Array();
        var count = 1;
        var didNum = document.getElementById("didNum"+count);
        while(didNum) {
            currentDIDs[count-1] = didNum.value;
            count++;
            didNum = document.getElementById("didNum"+count);
        }
        var fullUri = uri+
            "?"+ACTION+"="+ACTION_GET_DID_LIST+
            "&"+COUNTRY+"="+country+
            "&"+VENDOR+"="+vendor;
        new Ajax.Request(encodeURL(fullUri),{
            onComplete: function(transport) {
                if(transport.responseText.indexOf("fault") == -1) {
                    var resp = transport.responseText;
                    var indexTagStart = resp.indexOf("<DIDList");
                    var numberSelect = country+"-"+cityName+"<br>";
                    var listCount = 0;
                    var storeCount = 0;
                    while((indexTagStart != -1) && (storeCount < 3)) {
                        var didNum = "";
                        indexTagStart = resp.indexOf("<DIDName"+(listCount+1), indexTagStart);
                        if(indexTagStart != -1) {
                            indexTagStart = resp.indexOf(">", indexTagStart)+1;
                            var indexTagEnd = resp.indexOf("<", indexTagStart);
                            didNum = resp.substring(indexTagStart, indexTagEnd);
                        }
                        var abbrDidNum = "";
                        indexTagStart = resp.indexOf("<DIDAbbrName"+(listCount+1), indexTagStart);
                        if(indexTagStart != -1) {
                            indexTagStart = resp.indexOf(">", indexTagStart)+1;
                            var indexTagEnd = resp.indexOf("<", indexTagStart);
                            abbrDidNum = resp.substring(indexTagStart, indexTagEnd);
                        }
                        var success = true;
                        for(var i=0; (i<currentDIDs.length) && success; i++) {
                            if(currentDIDs[i] == didNum) success = false;
                        }
                        if(success) {
                            numberSelect += "<input type=\"radio\" name=\"didNumber\" value=\""+didNum+"\" >"+abbrDidNum+"<br>";
                            storeCount++;
                        }
                        listCount++;
                        indexTagStart = resp.indexOf("<DIDName"+(listCount+1), indexTagStart);
                    }
                    var count = 1;
                    var didCosts = "";
                    var indexTagStart = resp.indexOf("<DIDPlans"+count);
                    while(indexTagStart != -1) {
                        var productId = "";
                        indexTagStart = resp.indexOf("<DIDProductId", indexTagStart);
                        if(indexTagStart != -1) {
                            indexTagStart = resp.indexOf(">", indexTagStart)+1;
                            var indexTagEnd = resp.indexOf("<", indexTagStart);
                            productId = resp.substring(indexTagStart, indexTagEnd);
                        }
                        var productDesc = "";
                        indexTagStart = resp.indexOf("<DIDProductDesc", indexTagStart);
                        if(indexTagStart != -1) {
                            indexTagStart = resp.indexOf(">", indexTagStart)+1;
                            var indexTagEnd = resp.indexOf("<", indexTagStart);
                            productDesc = resp.substring(indexTagStart, indexTagEnd);
                        }
                        indexTagStart = resp.indexOf("<DIDCost", indexTagStart);
                        if(indexTagStart != -1) {
                            indexTagStart = resp.indexOf(">", indexTagStart)+1;
                            var indexTagEnd = resp.indexOf("<", indexTagStart);
                            planCosts[count - 1] = resp.substring(indexTagStart, indexTagEnd);
                            planCity[count - 1] = country+"-"+cityName;
                        }
                        var productName = "";
                        if(productId == "773") {
                            productName = plan773;
                        } else if(productId == "824") {
                            productName = plan824;
                        } else if(productId == "960") {
                            productName = plan960;
                        } else if(productId == "963") {
                            productName = plan963;
                        } else if(productId == "964") {
                            productName = plan964;
                        }
                        //productName = country+"-"+cityName+"<br>"+productName;
                        didCosts += "<input type=\"radio\" name=\"i_product2\" value=\""+productId+"\" ";
                        didCosts += "onclick=\"javascript:setProduct('did', "+planCosts[count - 1]+", '"+productId+"');\" ";
                        //didCosts += "onclick=\"javascript:removeProduct('did');didCost=parseFloat("+planCosts[count - 1]+");addProduct('did');setPlanDescription('"+productId+"');\" ";
                        if(count == 1) {
                            didCosts += " checked";
                            setProduct('did', planCosts[count - 1], productId);
                        }
                        didCosts += " ><span id=\"i_product_"+productId+"\">"+productName+"</span><br>";
                        count++;
                        indexTagStart = resp.indexOf("<DIDPlans"+count);
                    }
                    document.getElementById('didPlansSpan').innerHTML += "<br>"+didCosts;
                    addProduct('did');

                    document.getElementById('didNumbersSpan').innerHTML = numberSelect;
                } else {
                    //alert(e.description);
                    alert(transport.responseText);
                }
            }
        });
    }
}
function getDIDNumber(numberSpan) {
    lock=false;
    var country = "";
    var didCountries = document.getElementById("mostCalledCountry");
    if(didCountries) {
        country = didCountries.value;
    }
    var vendor = "";
    var cityName = "";
    var didCities = document.getElementById("mostCalledCity");
    if(didCities) {
        vendor = didCities.value;
        cityName = didCities.options[didCities.selectedIndex].text;
    }
    var fullUri = uri+
        "?"+ACTION+"="+ACTION_GET_DID_LIST+
        "&"+COUNTRY+"="+country+
        "&"+VENDOR+"="+vendor;
    new Ajax.Request(encodeURL(fullUri),{
        onComplete: function(transport) {
            if(transport.responseText.indexOf("fault") == -1) {
                var resp = transport.responseText;
                var indexTagStart = resp.indexOf("<DIDList");
                var numberSelect = country+"-"+cityName+"<br>";
                if(indexTagStart != -1) {
                    var didNum = "";
                    indexTagStart = resp.indexOf("<DIDName1", indexTagStart);
                    if(indexTagStart != -1) {
                        indexTagStart = resp.indexOf(">", indexTagStart)+1;
                        var indexTagEnd = resp.indexOf("<", indexTagStart);
                        didNum = resp.substring(indexTagStart, indexTagEnd);
                    }
                    var abbrDidNum = "";
                    indexTagStart = resp.indexOf("<DIDAbbrName1", indexTagStart);
                    if(indexTagStart != -1) {
                        indexTagStart = resp.indexOf(">", indexTagStart)+1;
                        indexTagEnd = resp.indexOf("<", indexTagStart);
                        abbrDidNum = resp.substring(indexTagStart, indexTagEnd);
                    }
                    document.getElementById(numberSpan).innerHTML = abbrDidNum+
                        "\n<input type='hidden' name='didNumber' value='"+didNum+"'/>";
                }
                var count = 1;
                indexTagStart = resp.indexOf("<DIDPlans"+count);
                while(indexTagStart != -1) {
                    var productId = "";
                    var productDesc = "";
                    var productName = "";
                    var planCost = "";
                    var planCostPromo = "";
                    indexTagStart = resp.indexOf("<DIDProductId", indexTagStart);
                    if(indexTagStart != -1) {
                        indexTagStart = resp.indexOf(">", indexTagStart)+1;
                        indexTagEnd = resp.indexOf("<", indexTagStart);
                        productId = resp.substring(indexTagStart, indexTagEnd);
                    }
                    indexTagStart = resp.indexOf("<DIDProductDesc", indexTagStart);
                    if(indexTagStart != -1) {
                        indexTagStart = resp.indexOf(">", indexTagStart)+1;
                        indexTagEnd = resp.indexOf("<", indexTagStart);
                        productDesc = resp.substring(indexTagStart, indexTagEnd);
                    }
                    indexTagStart = resp.indexOf("<DIDCost", indexTagStart);
                    if(indexTagStart != -1) {
                        indexTagStart = resp.indexOf(">", indexTagStart)+1;
                        indexTagEnd = resp.indexOf("<", indexTagStart);
                        planCost = resp.substring(indexTagStart, indexTagEnd);
                    }
                    if(productId == "773") {
                        productName = promoPlan773Description;
                        planCost = promoPlan773Cost;
                        planCostPromo = promoPlan773Cost;
                    } else if(productId == "824") {
                        productName = promoPlan824Description;
                        planCost = promoPlan824Cost;
                        planCostPromo = promoPlan824Cost;
                    } else if(productId == "960") {
                        productName = promoPlan960Description;
                        planCost = promoPlan960Cost;
                        planCostPromo = promoPlan960Cost;
                    } else if(productId == "963") {
                        productName = promoPlan963Description;
                        planCost = promoPlan963Cost;
                        planCostPromo = promoPlan963Cost;
                    } else if(productId == "964") {
                        productName = promoPlan964Description;
                        planCost = promoPlan964Cost;
                        planCostPromo = promoPlan964Cost;
                    }
                    document.getElementById("promoPlanHidden").innerHTML += 
                        "<input type='hidden' id='i_product2_"+count+"' name='i_product2_"+count+"' value='"+productId+"'/>"+
                        "<input type='hidden' id='i_product_"+productId+"' name='i_product_"+productId+"' value='"+productName+"'/>"+
                        "<input type='hidden' id='productDesc_"+count+"' name='productDesc_"+count+"' value='"+productDesc+"'/>"+
                        "<input type='hidden' id='planCost_"+count+"' name='planCost_"+count+"' value='"+planCost+"'/>"+
                        "<input type='hidden' id='planCostPromo_"+count+"' name='planCostPromo_"+count+"' value='"+planCostPromo+"'/>";
                    count++;
                    indexTagStart = resp.indexOf("<DIDPlans"+count);
                }
            } else {
                //alert(e.description);
                alert(transport.responseText);
            }
        }
    });
}
function promoDIDSelectInternet(hasInternet) {
    var count = 1;
    var promoCost = 20.00;
    document.getElementById("nextStepPromoDID").style.display="block";
    document.getElementById("nextStepPromoDID").style.visibility="visible";
    if(hasInternet) {
        var planElem = document.getElementById("i_product2_"+count);
        var foundPlan = false;
        while(planElem && !foundPlan) {
            if((planElem.value == "773") || (planElem.value == "964")) {
                document.getElementById("planUnlimitedPromoPrice").innerHTML = 
                    num2dollars(parseFloat(document.getElementById("planCostPromo_"+count).value)); 
                document.getElementById("planUnlimitedPrice").innerHTML = 
                    num2dollars(parseFloat(document.getElementById("planCost_"+count).value)); 
                document.getElementById("promoPlanLimited").style.display = "none"; 
                document.getElementById("promoPlanLimited").style.visibility = "hidden"; 
                document.getElementById("promoPlanUnlimited").style.display = "block"; 
                document.getElementById("promoPlanUnlimited").style.visibility = "visible"; 
                foundPlan = true;
                promoCost += parseFloat(document.getElementById("planCostPromo_"+count).value);
            }
            count++;
            planElem = document.getElementById("i_product2_"+count);
        }
    } else {
        planElem = document.getElementById("i_product2_"+count);
        foundPlan = false;
        while(planElem && !foundPlan) {
            if((planElem.value != "773") && (planElem.value != "964")) {
                document.getElementById("planLimitedPromoPrice").innerHTML = 
                    num2dollars(parseFloat(document.getElementById("planCostPromo_"+count).value)); 
                document.getElementById("planLimitedPrice").innerHTML = 
                    num2dollars(parseFloat(document.getElementById("planCost_"+count).value)); 
                document.getElementById("promoPlanLimited").style.display = "block"; 
                document.getElementById("promoPlanLimited").style.visibility = "visible"; 
                document.getElementById("promoPlanUnlimited").style.display = "none"; 
                document.getElementById("promoPlanUnlimited").style.visibility = "hidden"; 
                document.getElementById("promoPlanLimitedDesc").innerHTML = 
                    document.getElementById("i_product_"+planElem.value).value;
                foundPlan = true;
                promoCost += parseFloat(document.getElementById("planCostPromo_"+count).value);
            }
            count++;
            planElem = document.getElementById("i_product2_"+count);
        }
    }
    document.getElementById("promoTotal").innerHTML = "TOTAL "+num2dollars(promoCost);
}
function setProduct(productName, planCost, productId) {
    if(productName == "did") {
        if((productId == "773") || (productId == "964")) {
            toggleFollowMeVisibility("didSpan4", true);
        } else {
            toggleFollowMeVisibility("didSpan4", false);
        }
    }
    didCost=parseFloat(planCost);
    addProduct(productName);
    setPlanDescription(productId);
}
function setPlanDescription(productId) {
    var planDesc = "";
    if(productId == "773") {
        planDesc = plan773Details;
    } else if(productId == "824") {
        planDesc = plan824Details;
    } else if(productId == "960") {
        planDesc = plan960Details;
    } else if(productId == "963") {
        planDesc = plan963Details;
    } else if(productId == "964") {
        planDesc = plan964Details;
    }
    document.getElementById("planDescription").innerHTML = planDesc;
}
function placeOrderButton(buttonSpan) {
    document.getElementById(buttonSpan).innerHTML = 
        "<img src=\"../images/ordenarAhoraSmall.jpg\" alt=\"orderNow\"><br>"+
        "<span class=\"style7\">"+didChargeNotice+"</span>";
}
function displayOrderGBtn(option) {
    if(option == "yes") {
        document.getElementById('orderGBtn').innerHTML = 
            "<br><table><tr>"+
            "<td><span class=\"style7\">"+GChargeNotice+"</span></td>"+
            "</tr></table>";
        addProduct("numG")
        getNumGOptions();
    } else {
        document.getElementById('orderGBtn').innerHTML = "";
        if(document.addCustomerForm) {
            removeProduct("numG")
        }
    }
}
function updateTotal(value, type) {
    if(document.editCustomerForm) {
        if(type == "did") {
           document.getElementById('totalDID').innerHTML = "Total: "+num2dollars(totalDIDCost);
        } else if(type == "numG"){
           document.getElementById('totalNUMG').innerHTML = "Total: "+num2dollars(numGCost);
        }
    } else {
       document.getElementById('total').innerHTML = "Total: "+num2dollars(value);
    }
}
function getNumGOptions() {
    var fullUri = uri+
        "?"+ACTION+"="+ACTION_GET_NUM_G_LIST;
    document.getElementById('numGOptions').innerHTML="<br><img src='../images/wait30.gif' alt=''>";
    new Ajax.Request(encodeURL(fullUri),{
        onComplete: function(transport) {
            document.getElementById('numGOptions').innerHTML="";
            if(transport.responseText.indexOf("fault") == -1) {
                var resp = transport.responseText;
                var indexTagStart = resp.indexOf("<AvailableNumG");
                var numberSelect = "<br>N&uacute;meros G Disponibles:<br>";
                var count = 0;
                while((indexTagStart != -1) && (count < 3)) {
                    var numG = "";
                    indexTagStart = resp.indexOf("<Num"+(count+1), indexTagStart);
                    if(indexTagStart != -1) {
                        indexTagStart = resp.indexOf(">", indexTagStart)+1;
                        var indexTagEnd = resp.indexOf("<", indexTagStart);
                        numG = resp.substring(indexTagStart, indexTagEnd);
                    }
                    numberSelect += "<input type=\"radio\" name=\"numberG\" value=\""+numG+"\" >"+numG+"<br>";
                    count++;
                    indexTagStart = resp.indexOf("<Num"+(count+1), indexTagStart);
                }
                document.getElementById('numGOptions').innerHTML=numberSelect;
            } else {
                alert(transport.responseText);
            }
        }
    });
}
function sendWelcomeLetter(form) {
    if(!lock) {
        lock=true;
        var fullUri = uri+
            "?"+ACTION+"="+ACTION_SEND_WELCOME+
            "&"+I_CUSTOMER+"="+form.i_customer.value+
            "&pin="+form.pin.value+
            "&"+PAYMENT_METHOD+"="+form.payment_method.value+
            "&"+NUMBER+"="+form.number.value;
        if(pid && pid == "2") fullUri += "&"+"pid"+"="+pid;
        for(var i = 0; i<numberOfNumbers; i++) {
            fullUri += "&num"+(i+1)+"="+document.getElementById('num'+(i+1)).value;
        }
        document.getElementById('plsWait6').innerHTML="<br><img src='../images/wait30.gif' alt=''>";
        new Ajax.Request(encodeURL(fullUri),{
            onComplete: function(transport) {
                document.getElementById('plsWait6').innerHTML="";
                if(transport.responseText.indexOf("fault") == -1) {
                    alert(welcomeSent);
                } else {
                    alert(transport.responseText);
                }
                lock=false;
            }
        });
    }
}
function deleteRef(form) {
    var fullUri = uri+
        "?"+ACTION+"="+ACTION_DELETE_REFERRAL;
    var confirmStr = confirmDel+"\n";
    var name = "";
    var tag = "";
    for(i = 0; i < form.numReferrals.value; i++) {
        if(document.getElementById('deleteRef'+(i+1)).checked == true) {
            name = document.getElementById('recipientName'+(i+1)).innerHTML;
            tag = document.getElementById('recipientTag'+(i+1)).innerHTML;
            confirmStr += name+"\n";
            fullUri += "&"+REFERRAL_TAG+"="+tag;
        }
    }
    var answer = confirm(confirmStr);
    if (answer) {
        new Ajax.Request(encodeURL(fullUri),{
            onComplete: function(transport) {
                if(transport.responseText.indexOf("fault") == -1) {
                    window.location.reload();
                } else {
                    alert(transport.responseText);
                }
            }
        });
    }
}
function resendRef(form) {
    var fullUri = uri+
        "?"+ACTION+"="+ACTION_RESEND_REFERRAL;
    var confirmStr = confirmResend+"\n";
    var name = "";
    var tag = "";
    for(i = 0; i < form.numReferrals.value; i++) {
        if(document.getElementById('resendRef'+(i+1)).checked == true) {
            name = document.getElementById('recipientName'+(i+1)).innerHTML;
            tag = document.getElementById('recipientTag'+(i+1)).innerHTML;
            confirmStr += name+"\n";
            fullUri += "&"+REFERRAL_TAG+"="+tag;
        }
    }
    fullUri +=
        "&"+SESS_ID+"="+SESSION_ID+
        "&"+FIRST_NAME+"="+form.firstname.value+
        "&"+LAST_NAME+"="+form.lastname.value+
        "&"+NAME+"="+form.name.value+
        "&"+I_LANG+"="+form.i_lang.value;
    if(form.i_rep) {
        fullUri += "&"+I_REP+"="+form.i_rep.value;
    }
    var answer = confirm(confirmStr);
    if (answer) {
        new Ajax.Request(encodeURL(fullUri),{
            onComplete: function(transport) {
                if(transport.responseText.indexOf("fault") == -1) {
                    window.location.reload();
                } else {
                    alert(transport.responseText);
                }
            }
        });
    }
}
function isCountryUSA() {
    var isUSA = false;
    var country = document.getElementById("country").value.toLowerCase();
    if((country == "united states") ||
            (country == "eeuu") ||
            (country == "usa") ||
            (country == "estados unidos")) {
        isUSA = true;
    }
    return isUSA;
}
function cleanupNumber(inputField, value, form) {
    var country = document.getElementById("country").value.toLowerCase();
    if(value) value = value.replace(/\D/g,'');
    if((value != "") && (value.substr(0,1) != "1") && isCountryUSA()) {
        value = "1"+value;
        document.getElementById(inputField).value = value;
    }
    if((value != "") && (value.substr(0,2) != "54") && 
        (country == "argentina")) {
        if(value.length > 8) {
            value = "54"+value;
        } else {
            value = "5411"+value;
        }
        document.getElementById(inputField).value = value;
    }
    if((value != "") && (value.substr(0,2) != "56") && 
        (country == "chile")) {
        value = "56"+value;
        document.getElementById(inputField).value = value;
    }
    if((value != "") && (value.substr(0,2) != "57") && 
        (country == "colombia")) {
        if(value.length > 7) {
            value = "57"+value;
        } else {
            value = "571"+value;
        }
        document.getElementById(inputField).value = value;
    }
    if((value != "") && (value.substr(0,3) != "506") && 
        (country == "costa rica")) {
        if(value.length == 8) {
            value = "506"+value;
        }
        document.getElementById(inputField).value = value;
    }
    if((value != "") && (value.substr(0,1) != "1") && 
        (country.indexOf("dominican") != -1)) {
        if(value.length == 7) {
            value = "1767"+value;
        } else if(value.length == 10) {
            value = "1"+value;
        }
        document.getElementById(inputField).value = value;
    }
    if((value != "") && (value.substr(0,2) != "59") && 
        (country == "ecuador")) {
        if(value.length > 7) {
            value = "59"+value;
        } else {
            value = "592"+value;
        }
        document.getElementById(inputField).value = value;
    }
    if((value != "") && (value.substr(0,3) != "502") && 
        (country == "guatemala")) {
        if(value.length == 8) {
            value = "502"+value;
        }
        document.getElementById(inputField).value = value;
    }
    if((value != "") && (value.substr(0,3) != "504") && 
        (country == "honduras")) {
        if(value.length == 8) {
            value = "504"+value;
        }
        document.getElementById(inputField).value = value;
    }
    if((value != "") && (value.substr(0,2) != "52") && 
        ((country == "mexico") ||
         (country == "m\u00E9xico"))) {
        if(value.length == 10) {
            value = "521"+value;
        } else if(value.length > 10) {
            value = "52"+value;
        } else {
            value = "52155"+value;
        }
        document.getElementById(inputField).value = value;
    }
    if((value != "") && (value.substr(0,3) != "505") && 
        (country == "nicaragua")) {
        if(value.length == 8) {
            value = "505"+value;
        }
        document.getElementById(inputField).value = value;
    }
    if((value != "") && (value.substr(0,3) != "507") && 
        ((country == "panama") ||
         (country == "panam\u00E1"))) {
        if(value.length == 8) {
            value = "507"+value;
        }
        document.getElementById(inputField).value = value;
    }
    if((value != "") && (value.substr(0,2) != "51") && 
        ((country == "peru") ||
         (country == "per\u00FA"))) {
        if(value.length > 8) {
            value = "51"+value;
        } else {
            value = "511"+value;
        }
        document.getElementById(inputField).value = value;
    }
    if((value != "") && (value.substr(0,3) != "503") && 
        (form.country.value.indexOf("salvador") != -1)) {
        if(value.length == 8) {
            value = "503"+value;
        }
        document.getElementById(inputField).value = value;
    }
    if((value != "") && 
        ((value.substr(0,1) == "6") || (value.substr(0,1) == "9")) && 
        ((country == "spain") ||
            (country == "espana") ||
            (country == "espa\u00F1a"))) {
        value = "34"+value;
        document.getElementById(inputField).value = value;
    }
}
/*
function addRep(form) {
    var fullUri = uri+
        "?"+ACTION+"="+ACTION_ADD_REP+
        "&"+FIRST_NAME+"="+form.firstname.value+
        "&"+LAST_NAME+"="+form.lastname.value+
        "&"+EMAIL+"="+form.email.value+
        "&"+PHONE1+"="+form.phone.value+
        "&"+LOGIN+"="+form.login.value+
        "&"+PASSWORD+"="+form.password.value+
        "&"+"repType="+form.repType.value;
    if(form.i_parent.value && (form.i_parent.value != "null")) {
        fullUri += "&i_parent="+form.i_parent.value;
    }
    document.getElementById("status").innerHTML = "<img src='../images/wait16.gif' alt=''>Please Wait";
    alert(encodeURL(fullUri));
    new Ajax.Request(encodeURL(fullUri),{
        onComplete: function(transport) {
            if(transport.responseText.indexOf("fault") == -1) {
                alert("Representative "+form.firstname.value+" "+form.lastname.value+" Added Successfully!");
                window.location.reload();
            } else {
                alert(transport.responseText);
            }
        }
    });
}
*/
function displayPopupDIDPromo(prefAccessNum, paymentType) {
    var didCountries = null;
    if(document.addCustomerForm) {
        didCountries = document.getElementById("mostCalledCountry");
    } else {
        didCountries = document.getElementById("didCountries");
    }
    var selectedCountry = didCountries.options[didCountries.selectedIndex].text;
    var selectedCountryValue = didCountries.options[didCountries.selectedIndex].value;
    var didCities = null;
    if(document.addCustomerForm) {
        didCities = document.getElementById("mostCalledCity");
    } else {
        didCities = document.getElementById("didCities");
    }
    var selectedCity = "";
    var selectedCityValue = "";
    if(didCities) {
        selectedCity = didCities.options[didCities.selectedIndex].text;
        selectedCityValue = didCities.options[didCities.selectedIndex].value;
    }
    if((selectedCountry != "") && (selectedCountryValue != "other") &&
       (selectedCity != "") && (selectedCityValue != "other")) {
        var winWidth = getWinWidth();
        var xPos = 0;
        if(winWidth > 600) xPos = (winWidth - 600) / 2;
        customFunctionCreateWindow(promoDIDfile+'?paymentType='+paymentType+
            '&prefAccessNum='+prefAccessNum+
            '&txt='+selectedCountry+', '+selectedCity,
            '600','700',""+xPos,'100', null, 
            function(){didPromoNotInterested(prefAccessNum, paymentType);},
            function(){getDIDNumber("promoDID");});
    } else {
        didPromoNotInterested(prefAccessNum, paymentType);
    }
}
function getPromoDID() {
    var promoDID = document.getElementById("promoDIDSpan");
    promoDID.style.display="block";
    promoDID.style.visibility="visible";
}
function didPromoNotInterested(prefAccessNum, paymentType) {
    lock=false;
    if(document.addCustomerForm) {
        makePayment(true, document.addCustomerForm, paymentType, 'pinFree', prefAccessNum, true);
    } else {
        makePayment(false, document.editCustomerForm, paymentType, 'pinFree', prefAccessNum);
    }
}
function changeTOC() {
    var nextStep = document.getElementById('nextStep1');
    if(document.getElementById('toc').checked) {
        nextStep.style.visibility='visible';
        nextStep.style.display='block';
    } else {
        nextStep.style.visibility='hidden';
        nextStep.style.display='none';
    }
}
function hideTopUp(showSpan) {
    var show = document.getElementById(showSpan);
    document.getElementById("topupSpan").style.visibility='hidden';
    document.getElementById("topupSpan").style.display='none';
    document.getElementById("updatePaymentSpan").style.visibility='hidden';
    document.getElementById("updatePaymentSpan").style.display='none';
    document.getElementById("paymentHistorySpan").style.visibility='hidden';
    document.getElementById("paymentHistorySpan").style.display='none';
    show.style.visibility='visible';
    show.style.display='block';
}
function toggleFollowMeVisibility(id, d) {
    var show = document.getElementById(id);
    if(d == true) {
        show.style.visibility='hidden';
        show.style.display='none';
    } else {
        show.style.visibility='visible';
        show.style.display='block';
    }
    
}
function toggleProductVisability(spanName) {
    var show = document.getElementById(spanName);
    if(show.style.visibility == "hidden") {
        show.style.visibility='visible';
        show.style.display='block';
    } else {
        show.style.visibility='hidden';
        show.style.display='none';
    }
}
function toggleProductAvail(tag, name) {
    if(tag.checked) {
        if(name == 'numG') {
            displayOrderGBtn("yes");
        } else {
            //addProduct(name);
            getDIDCountries('didSpan');
        }
    } else {
        var answer;
        if((name == 'did') && document.getElementById("i_accountDID")) {
            answer = confirm(cancelDID);
        } else if((name == 'numG') && 
            document.getElementById("i_accountNumG")) {
            answer = confirm(cancelNumG);
        } else {
            answer = confirm(loosePreferencesContinue);
        }
        if (answer) {
            removeProduct(name);
        } else {
            tag.checked = true;
        }
    }
}
function removeProduct(name) {
    /*
    if(name == "numG") {
        if(document.getElementById("i_accountNumG")) {
            deleteNumG();
        }
        document.getElementById('numGTitle').style.visibility='visible';
        document.getElementById('numGTitle').style.display='block';
        if(document.editCustomerForm) {
            document.getElementById('totalNUMGRow').style.visibility='hidden';
            document.getElementById('totalNUMGRow').style.display='none';
            document.getElementById('nextStep4').style.visibility='hidden';
            document.getElementById('nextStep4').style.display='none';
        }
        chargeTotal -= numGCost;
        updateTotal(chargeTotal, "numG");
        document.getElementById("numGCheckbox").checked = false;
        document.getElementById("numGOptions").innerHTML = "";
        var conn = document.getElementsByName("broadBandConnection");
        for(var i=0; i<conn.length; i++) {
            if(conn[i].value == "no") {
                conn[i].checked = true;
            }
        }
        document.getElementById("numGOptions").innerHTML="";
        document.getElementById("orderGBtn").innerHTML="";
    } else if(name == "did") {
    */
        if(document.getElementById("i_accountNumG")) {
            deleteDID();
        }
        if(document.editCustomerForm) {
            document.getElementById('totalDIDRow').style.visibility='hidden';
            document.getElementById('totalDIDRow').style.display='none';
            document.getElementById('nextStep3').style.visibility='hidden';
            document.getElementById('nextStep3').style.display='none';
        }
        chargeTotal = 0;
        totalDIDCost = 0;
        didCost = 0;
        updateTotal(chargeTotal, "did");
//        document.getElementById("didCheckbox").checked = false;
        document.getElementById("didCountriesTitleSpan").innerHTML="";
        document.getElementById("didCountriesSpan").innerHTML="";
        document.getElementById("didCitiesTitleSpan").innerHTML="";
        document.getElementById("didCitiesSpan").innerHTML="";
        document.getElementById("didPlansSpan").innerHTML="";
        document.getElementById("didNumbersTitleSpan").innerHTML="";
        document.getElementById("didNumbersSpan").innerHTML="";
        document.getElementById("didSpan").innerHTML="";
        document.getElementById("followMeNumberSpan").innerHTML="";
        document.getElementById("followMeNumberSpan").innerHTML="";
        document.getElementById("addFollowMeNumberSpan").innerHTML="";
        document.getElementById("myDIDs").innerHTML="";
        getDIDCountries('didSpan');
//    }
}
function addProduct(name) {
    /*
    if(name == "numG") {
        if(document.editCustomerForm) {
            document.getElementById('totalNUMGRow').style.visibility='visible';
            document.getElementById('totalNUMGRow').style.display='block';
            document.getElementById('nextStep4').style.visibility='visible';
            document.getElementById('nextStep4').style.display='block';
        }
        var conn = document.getElementsByName("broadBandConnection");
        for(var i=0; i<conn.length; i++) {
            if(conn[i].value == "yes") {
                conn[i].checked = true;
            }
        }
        document.getElementById("numGCheckbox").checked = true;
        chargeTotal += numGCost;
        updateTotal(chargeTotal, "numG");
    } else if(name == "did") {
        document.getElementById("didCheckbox").checked = true;
    }
    */
}
function addFollowMe(field) {
    var followMeValue = field.value;
    var newValue = followMeValue.replace(/\D/g,'');
    if(newValue != "") {
        var currentValuesStr = document.getElementById("followMeNumberSpan").innerHTML;
        var currentValues = new Array();
        if(currentValuesStr == "") {
            currentValues[0] = "<table><tr><td><img src='../images/icons/num01-orange.gif' alt='1'></td>"+
            "<td style='width:85px'><span id='followMeNum1'>"+followMeValue+"</span></td><td>"+
            "<a href=\"javascript:moveFollowMeUp("+0+");\"><img src='../images/up.gif' alt=''></a>&nbsp;"+
            "<a href=\"javascript:moveFollowMeDown("+0+");\"><img src='../images/down.gif' alt=''></a>&nbsp;"+
            "<a href=\"javascript:removeFollowMe("+0+");\"><img src='../images/del.gif' alt=''></a></td></tr>";
        } else {
            var splitStr = "</tr>";
            if(currentValuesStr.indexOf(splitStr) == -1) splitStr = "</TR>";
            currentValues = currentValuesStr.split(splitStr);
            var orderNum = "0"+currentValues.length;
            if(orderNum.length == 3) orderNum = ""+currentValues.length;
            currentValues[currentValues.length-1] = "<tr><td><img src='../images/icons/num"+orderNum+"-orange.gif' alt='"+orderNum+"'></td>"+
            "<td style='width:85px'><span id='followMeNum"+(currentValues.length)+"'>"+followMeValue+"</span></td><td>"+
            "<a href=\"javascript:moveFollowMeUp("+(currentValues.length-1)+");\"><img src='../images/up.gif' alt=''></a>&nbsp;"+
            "<a href=\"javascript:moveFollowMeDown("+(currentValues.length-1)+");\"><img src='../images/down.gif' alt=''></a>&nbsp;"+
            "<a href=\"javascript:removeFollowMe("+(currentValues.length-1)+");\"><img src='../images/del.gif' alt=''></a></td></tr>";
        }
        document.getElementById("followMeNumberSpan").innerHTML=currentValues.join("</tr>")+"</table>";
        //alert(document.getElementById("followMeNumberSpan").innerHTML)
    }
    field.value = "";
}
function moveFollowMeUp(index) {
    var currentValuesStr = document.getElementById("followMeNumberSpan").innerHTML;
    var splitStr = "</tr>";
    if(currentValuesStr.indexOf(splitStr) == -1) splitStr = "</TR>";
    var currentValues = currentValuesStr.split(splitStr);
    if((currentValues.length != 1) && (index != 0)) {
        var indexOrderNumStart = currentValues[index].indexOf("images/icons/num");
        indexOrderNumStart += 16;
        var indexOrderNumEnd = currentValues[index].indexOf("-", indexOrderNumStart);
        var orderNumPrev = "0"+(parseInt(currentValues[index].substring(indexOrderNumStart, indexOrderNumEnd))-1);
        var orderNum = "0"+parseInt(currentValues[index].substring(indexOrderNumStart, indexOrderNumEnd));
        if(index == 1) {
            var tempStr = currentValues[0];
            tempStr = tempStr.replace("<table>", "");
            currentValues[0] = "<table>"+currentValues[index];
            currentValues[1] = tempStr;
        } else if(index == (currentValues.length-1)) {
            var tempStr = currentValues[index];
            tempStr = tempStr.replace("</table>", "");
            currentValues[index] = currentValues[index-1]+"</table>";
            currentValues[index - 1] = tempStr;
        } else {
            var tempStr = currentValues[index - 1];
            currentValues[index - 1] = currentValues[index];
            currentValues[index] = tempStr;
        }
        //alert("index="+index)
        //alert("Pre currentValues[index-1]="+currentValues[index-1]);
        //alert("Pre currentValues[index]="+currentValues[index]);
        currentValues[index-1] = currentValues[index-1].replace("num"+orderNum+"-orange", "num"+orderNumPrev+"-orange");
        currentValues[index]   = currentValues[index].replace("num"+orderNumPrev+"-orange", "num"+orderNum+"-orange");;
        currentValues[index-1] = currentValues[index-1].replace("moveFollowMeUp("+index+");", "moveFollowMeUp("+(index-1)+");");
        currentValues[index]   = currentValues[index].replace("moveFollowMeUp("+(index-1)+");", "moveFollowMeUp("+index+");");
        currentValues[index-1] = currentValues[index-1].replace("moveFollowMeDown("+index+");", "moveFollowMeDown("+(index-1)+");");
        currentValues[index]   = currentValues[index].replace("moveFollowMeDown("+(index-1)+");", "moveFollowMeDown("+index+");");
        currentValues[index-1] = currentValues[index-1].replace("removeFollowMe("+index+");", "removeFollowMe("+(index-1)+");");
        currentValues[index]   = currentValues[index].replace("removeFollowMe("+(index-1)+");", "removeFollowMe("+index+");");
        currentValues[index-1] = currentValues[index-1].replace("followMeNum"+(index+1), "followMeNum"+index);
        currentValues[index]   = currentValues[index].replace("followMeNum"+index, "followMeNum"+(index+1));
        //alert("Post currentValues[index-1]="+currentValues[index-1]);
        //alert("Post currentValues[index]="+currentValues[index]);
    }
    document.getElementById("followMeNumberSpan").innerHTML=currentValues.join("</tr>");
}
function moveFollowMeDown(index) {
    var currentValuesStr = document.getElementById("followMeNumberSpan").innerHTML;
    var splitStr = "</tr>";
    if(currentValuesStr.indexOf(splitStr) == -1) splitStr = "</TR>";
    var currentValues = currentValuesStr.split(splitStr);
    if((currentValues.length != 1) && (index != (currentValues.length - 1))) {
        var indexOrderNumStart = currentValues[index].indexOf("images/icons/num");
        indexOrderNumStart += 16;
        var indexOrderNumEnd = currentValues[index].indexOf("-", indexOrderNumStart);
        var orderNumPrev = "0"+(parseInt(currentValues[index].substring(indexOrderNumStart, indexOrderNumEnd)));
        var orderNum = "0"+(parseInt(currentValues[index].substring(indexOrderNumStart, indexOrderNumEnd))+1);
        //alert("orderNumPrev="+orderNumPrev+" orderNum="+orderNum)
        //alert("index="+index+" index+1="+(index+1))
        if(index == (currentValues.length - 2)) {
            var tempStr = currentValues[index+1];
            tempStr = tempStr.replace("</table>", "");
            currentValues[index+1] = currentValues[index]+"</table>";
            currentValues[index] = tempStr;
        } else if(index == 0) {
            var tempStr = currentValues[index];
            tempStr = tempStr.replace("<table>", "");
            currentValues[index] = "<table>"+currentValues[index+1];
            currentValues[index + 1] = tempStr;
        } else {
            var tempStr = currentValues[index+1];
            currentValues[index+1] = currentValues[index];
            currentValues[index] = tempStr;
        }
        //alert("index="+index)
        //alert("Pre currentValues[index+1]="+currentValues[index+1]);
        //alert("Pre currentValues[index]="+currentValues[index]);
        currentValues[index+1] = currentValues[index+1].replace("num"+orderNumPrev+"-orange", "num"+orderNum+"-orange");
        currentValues[index]   = currentValues[index].replace("num"+orderNum+"-orange", "num"+orderNumPrev+"-orange");
        currentValues[index+1] = currentValues[index+1].replace("moveFollowMeUp("+index+");", "moveFollowMeUp("+(index+1)+");");
        currentValues[index]   = currentValues[index].replace("moveFollowMeUp("+(index+1)+");", "moveFollowMeUp("+index+");");
        currentValues[index+1] = currentValues[index+1].replace("moveFollowMeDown("+index+");", "moveFollowMeDown("+(index+1)+");");
        currentValues[index]   = currentValues[index].replace("moveFollowMeDown("+(index+1)+");", "moveFollowMeDown("+index+");");
        currentValues[index+1] = currentValues[index+1].replace("removeFollowMe("+index+");", "removeFollowMe("+(index+1)+");");
        currentValues[index]   = currentValues[index].replace("removeFollowMe("+(index+1)+");", "removeFollowMe("+index+");");
        currentValues[index+1] = currentValues[index+1].replace("followMeNum"+(index+1), "followMeNum"+(index+2));
        currentValues[index]   = currentValues[index].replace("followMeNum"+(index+2), "followMeNum"+(index+1));
        //alert("Post currentValues[index+1]="+currentValues[index+1]);
        //alert("Post currentValues[index]="+currentValues[index]);
    }
    document.getElementById("followMeNumberSpan").innerHTML=currentValues.join("</tr>");
}
function removeFollowMe(index) {
    var currentValuesStr = document.getElementById("followMeNumberSpan").innerHTML;
    var splitStr = "</tr>";
    if(currentValuesStr.indexOf(splitStr) == -1) splitStr = "</TR>";
    var currentValues = currentValuesStr.split(splitStr);
    currentValues.splice(index, 1);
    if(index == 0) {
        if(currentValues.length == 1) {
            currentValues[0] = "";
        } else {
            currentValues[0] = "<table>"+currentValues[0];
        }
    } else if(index == currentValues.length) {
        currentValues[currentValues.length-1] += "</table>";
    }
    for(var i=index; i<currentValues.length; i++) {
        var orderNum = i+2;
        orderNum = "0"+orderNum;
        if(orderNum.length == 3) orderNum = i+2;
        var orderNumPrev = i+1;
        orderNumPrev = "0"+orderNumPrev;
        if(orderNumPrev.length == 3) orderNumPrev = i+1;
        currentValues[i] = currentValues[i].replace("num"+orderNum+"-orange", "num"+orderNumPrev+"-orange");
        currentValues[i] = currentValues[i].replace("removeFollowMe("+(i+1)+");", "removeFollowMe("+i+");");
    }
    document.getElementById("followMeNumberSpan").innerHTML=currentValues.join("</tr>");
}
function addFollowMeField() {
    var inputField = document.getElementById("addFollowMeNumberSpan").innerHTML;
    if(inputField != "") {
        addFollowMe(document.getElementById("newFollowMe"));
    }
    inputField = "<br><input type='text' name='newFollowMe' id='newFollowMe' value=''>&nbsp;"+
        "<a href=\"javascript:addFollowMe(document.getElementById('newFollowMe'));\" style='vertical-align:bottom'>"+
        "<img src='../images/add.gif' alt='' border='0'></a>";
    document.getElementById("addFollowMeNumberSpan").innerHTML=inputField;
}
function addMyDID() {
    document.getElementById("errorMsg14").innerHTML = "";
    var myDID = document.getElementById("myDIDs");
    var isEdit = document.getElementById("isEdit");
    var outStr = myDID.innerHTML;
    var followMe = new Array();
    var followMeList = document.getElementById("followMeNumberSpan").innerHTML;
    var count = 1;
    var indexFollowMeStart = followMeList.indexOf("followMeNum"+count);
    while(indexFollowMeStart != -1) {
        indexFollowMeStart = followMeList.indexOf(">", indexFollowMeStart)+1;
        var indexFollowMeEnd = followMeList.indexOf("<", indexFollowMeStart);
        followMe[count-1] = followMeList.substring(indexFollowMeStart, indexFollowMeEnd);
        count++;
        indexFollowMeStart = followMeList.indexOf("followMeNum"+count, indexFollowMeStart);
    }
    if(count == 1) {
        document.getElementById("errorMsg14").innerHTML = "<br>No Follow Me Numbers Selected";
    } else {
        if(isEdit) {
            var offset = document.getElementById("followMeoffset").value;
            
            var tagStart = outStr.toLowerCase().indexOf("<span id='followmelist"+offset+"'>");
            if(tagStart == -1) tagStart = outStr.toLowerCase().indexOf("<span id=\"followmelist"+offset+"\">");
            if(tagStart == -1) tagStart = outStr.toLowerCase().indexOf("<span id=followmelist"+offset+">");
            tagStart = outStr.indexOf(">", tagStart)+1;
            var tagEnd = outStr.toLowerCase().indexOf("</span", tagStart);
            var endOutStr = outStr.substring(tagEnd);
            outStr = outStr.substring(0, tagStart);
            for(var i=0; i<followMe.length; i++) {
                var orderNum = i+1;
                orderNum = "0"+orderNum;
                if(orderNum.length == 3) orderNum = ""+(i+1);
                outStr += "<img src='../images/icons/num"+orderNum+"-orange.gif' alt='"+orderNum+"' style='vertical-align:text-top'>";
                outStr += "&nbsp;"+followMe[i];
                if((i+1)<followMe.length) outStr += "<br>";
            }
            outStr += endOutStr;
            myDID.innerHTML = outStr;
            updateFollowMeOrder(followMe, offset);
        } else {
            var didNum = "";
            var radioObj = document.getElementsByName("didNumber");
            if(radioObj) {
                if(!radioObj.length) {
                    didNum = radioObj.value;
                } else {
                    for(i = 0; i < radioObj.length; i++) {
                        if(radioObj[i].checked) {
                            didNum = radioObj[i].value;
                        }
                    }
                }
            }
            if(!didNum || (didNum == "")) {
                document.getElementById("errorMsg14").innerHTML = "<br>No DID Selected";
            } else {
                var didNumbersSpanElements = document.getElementById("didNumbersSpan").innerHTML.split("<");
                var planDesc = didNumbersSpanElements[0];
                var planId = "";
                var radioObj = document.getElementsByName("i_product2");
                if(radioObj) {
                    if(!radioObj.length) {
                        planId = radioObj.value;
                        planDesc = document.getElementById("i_product_"+planId).innerHTML;
                    } else {
                        for(i = 0; i < radioObj.length; i++) {
                            if(radioObj[i].checked) {
                                planId = radioObj[i].value;
                                planDesc = document.getElementById("i_product_"+planId).innerHTML;
                            }
                        }
                    }
                }
                if(document.addCustomerForm && (planId != "773") && (planId != "964") && (planId != "824")) {
                    if(confirm(didPromoUpgrade(didCost))) {
                        if(planId == "975") {
                            planId = "773";
                            planDesc = document.getElementById("i_product_773").innerHTML;
                        } else if((planId == "960") || (planId == "963")) {
                            planId = "964";
                            planDesc = document.getElementById("i_product_964").innerHTML;
                        }
                    }
                }
                if(planId == "") {
                    document.getElementById("errorMsg14").innerHTML = "<br>No Plan Selected";
                } else {
                    document.getElementById('nextStep3').style.visibility='visible';
                    document.getElementById('nextStep3').style.display='block';
                    outStr = outStr.replace(/<TBODY>/g, "");
                    outStr = outStr.replace(/<\/TBODY>/g, "");
                    if(numStoredDIDs == 0) {
                        outStr = "<div style='font-size:12px; padding-top:6px'><u>"+myDirectLines+"</u></div><br><table><tr style=\"vertical-align:top\">";
                    } else if((numStoredDIDs % 4) == 0) {
                        outStr = outStr.substring(0, outStr.length - 5)+"r style=\"vertical-align:top\">";
                    } else{
                        var lastIndexOfTable = outStr.lastIndexOf("</table>");
                        if(lastIndexOfTable == -1) lastIndexOfTable = outStr.lastIndexOf("</TABLE>");
                        outStr = outStr.substring(0, lastIndexOfTable);
                        var lastIndexOfTr = outStr.lastIndexOf("</tr>");
                        if(lastIndexOfTr == -1) lastIndexOfTr = outStr.lastIndexOf("</TR>");
                        outStr = outStr.substring(0, lastIndexOfTr);
                    }
                    numStoredDIDs++;
                    outStr += "<td style='padding-right: 10px'><table><tr>";
                    outStr += "<td style='width:80px; font-size:12px; color:#FF6020'>";
                    outStr += "<span id='didNum"+numStoredDIDs+"'>"+didNum+"</span>";
                    outStr += "</td>";
                    outStr += "<td style='width:14px'>";
                    outStr += "<a href=\"javascript:editMyDID('"+numStoredDIDs+"');\"><img src='../images/edit.gif' alt='edit'></a>";
                    outStr += "</td>";
                    outStr += "<td style='width:14px'>";
                    outStr += "<a href=\"javascript:removeMyDID('"+numStoredDIDs+"');\"><img src='../images/del.gif' alt='borrar'></a>";
                    outStr += "</td>";
                    outStr += "</tr><tr>";
                    outStr += "<td colspan='3'><span id='plan"+numStoredDIDs+"'>"+planDesc+"</span><input type=\"hidden\" id=\"planId"+numStoredDIDs+"\" name=\"planId"+numStoredDIDs+"\" value=\""+planId+"\"></td>";
                    outStr += "</tr><tr>";
                    outStr += "<td colspan='3'><span id='followMeList"+numStoredDIDs+"'>";
                    for(var i=0; i<followMe.length; i++) {
                        var orderNum = i+1;
                        orderNum = "0"+orderNum;
                        if(orderNum.length == 3) orderNum = (i+1);
                        outStr += "<img src='../images/icons/num"+orderNum+"-orange.gif' alt='"+i+"' style='vertical-align:text-top'>";
                        outStr += "&nbsp;"+followMe[i];
                        if((i+1)<followMe.length) outStr += "<br>";
                    }
                    outStr += "</span></td>";
                    outStr += "</tr></table></td></tr></table>";
                    document.getElementById("didCountriesTitleSpan").innerHTML="";
                    document.getElementById("didCountriesSpan").innerHTML="";
                    document.getElementById("didCitiesTitleSpan").innerHTML="";
                    document.getElementById("didCitiesSpan").innerHTML="";
                    document.getElementById("didPlansSpan").innerHTML=planDesc;
                    document.getElementById("didNumbersTitleSpan").innerHTML="";
                    document.getElementById("didNumbersSpan").innerHTML=didNum;
                    document.getElementById("didSpan").innerHTML="";
                    document.getElementById("followMeNumberSpan").innerHTML="";
                    document.getElementById("followMeNumberSpan").innerHTML="";
                    document.getElementById("addFollowMeNumberSpan").innerHTML="";
                    loadDeftFollowMeNums();
                    chargeTotal += didCost;
                    totalDIDCost += didCost;
                    if(document.editCustomerForm) {
                        document.getElementById('totalDIDRow').style.visibility='visible';
                        document.getElementById('totalDIDRow').style.display='block';
                        document.getElementById('nextStep3').style.visibility='visible';
                        document.getElementById('nextStep3').style.display='block';
                    }
                    updateTotal(chargeTotal, "did");
                    getDIDCountries('didSpan');
                }
                myDID.innerHTML = outStr;
            }
        }
    }
}
function editMyDID(offset) {
    var didNum = document.getElementById("didNum"+offset).innerHTML;
    var plan = document.getElementById("plan"+offset).innerHTML;
    var followMe = new Array();
    var myDID = document.getElementById("myDIDs").innerHTML;
    var followMeListStart = myDID.toLowerCase().indexOf("<span id='followmelist"+offset+"'>")
    if(followMeListStart == -1) followMeListStart = myDID.toLowerCase().indexOf("<span id=\"followmelist"+offset+"\">");
    if(followMeListStart == -1) followMeListStart = myDID.toLowerCase().indexOf("<span id=followmelist"+offset+">");
    followMeListStart = myDID.indexOf(">",followMeListStart)+1;
    var followMeListEnd = myDID.toLowerCase().indexOf("</span>", followMeListStart);
    var followMeList = myDID.substring(followMeListStart, followMeListEnd);
    followMeListStart = followMeList.indexOf("&nbsp;");
    var count = 0;
    while(followMeListStart != -1) {
        followMeListStart += 6;
        followMeListEnd = followMeList.indexOf("<", followMeListStart);
        if(followMeListEnd == -1) {
            followMe[count++] = followMeList.substring(followMeListStart);
        } else {
            followMe[count++] = followMeList.substring(followMeListStart, followMeListEnd);
        }
        followMeListStart = followMeList.indexOf("&nbsp;", followMeListStart);
    }
    document.getElementById("didCountriesTitleSpan").innerHTML="<a href=\"javascript:getDIDCountries('didSpan');\">M&aacute;s Lineas</a>";
    document.getElementById("didCountriesSpan").innerHTML="";
    document.getElementById("didCitiesTitleSpan").innerHTML="";
    document.getElementById("didCitiesSpan").innerHTML="";
    document.getElementById("didPlansSpan").innerHTML="L&iacute;nea Directa:";
    document.getElementById("didNumbersTitleSpan").innerHTML=plan;
    document.getElementById("didNumbersSpan").innerHTML=didNum;
    document.getElementById("didSpan").innerHTML="<span id='isEdit'><input type='hidden' name='followMeoffset' value='"+offset+"'></span>";
    document.getElementById("followMeNumberSpan").innerHTML="";
    for(var i=0; i<followMe.length; i++) {
        addFollowMeField();
        document.getElementById("newFollowMe").value=followMe[i];
        addFollowMe(document.getElementById("newFollowMe"));
    }
}
function loadDeftFollowMeNums() {
    if(deftFollowMeNums) {
        for(var i=0; i<deftFollowMeNums.length; i++) {
            addFollowMeField();
            document.getElementById("newFollowMe").value=deftFollowMeNums[i];
            addFollowMe(document.getElementById("newFollowMe"));
        }
    }
}
function removeMyDID(offset) {
    deleteDID(offset);
    if(numStoredDIDs == 1) {
        document.getElementById("myDIDs").innerHTML = "";
        document.getElementById('nextStep3').style.visibility='hidden';
        document.getElementById('nextStep3').style.display='none';
    } else {
        var outStr = document.getElementById("myDIDs").innerHTML;
        outStr = outStr.replace(/<TBODY>/g, "");
        outStr = outStr.replace(/<\/TBODY>/g, "");
        var divStr = "<td style='padding-right: 10px'>";
        var indexOffsetStart = outStr.toLowerCase().indexOf(divStr);
        if(indexOffsetStart == -1) {
            divStr = "<td style=\"padding-right: 10px\">";
            indexOffsetStart = outStr.toLowerCase().indexOf(divStr);
        }
        //alert(offset);
        if(offset > 1) {
            for(var i=1; i<offset; i++) {
                indexOffsetStart = outStr.toLowerCase().indexOf(divStr, indexOffsetStart+1);
            }
        }
        divStr = "</span></td></tr></table>";
        var indexOffsetEnd = outStr.toLowerCase().indexOf(divStr, indexOffsetStart);
        //alert("indexOffsetStart="+indexOffsetStart+" indexOffsetEnd="+indexOffsetEnd)
        indexOffsetEnd += divStr.length;
        outStr = outStr.substring(0, indexOffsetStart)+outStr.substring(indexOffsetEnd);
        //alert("outStr="+outStr)
        for(var i=parseInt(offset); i<numStoredDIDs; i++) {
            //alert("Pre "+outStr);
            outStr = outStr.replace("editMyDID('"+(i+1)+"')", "editMyDID('"+i+"')");
            outStr = outStr.replace("removeMyDID('"+(i+1)+"')", "removeMyDID('"+i+"')");
            outStr = outStr.replace("<span id='didNum"+(i+1)+"'", "<span id='didNum"+i+"'");
            outStr = outStr.replace("<SPAN id=didNum"+(i+1), "<span id=didNum"+i);
            outStr = outStr.replace("<span id='plan"+(i+1)+"'", "<span id='plan"+i+"'");
            outStr = outStr.replace("<SPAN id=plan"+(i+1), "<span id=plan"+i);
            outStr = outStr.replace("<input type='hidden' id='planId"+(i+1)+"' name='planId"+(i+1)+"'", "<input type'hidden' id='planId"+i+"' name='planId"+i+"'");
            outStr = outStr.replace("<INPUT type=hidden id=planId"+(i+1)+" name=planId"+(i+1)+" ", "<input type'hidden' id='planId"+i+"' name='planId"+i+"' ");
            outStr = outStr.replace("followMeList"+(i+1), "followMeList"+i);
            //alert("Post "+outStr);
        }
        document.getElementById("myDIDs").innerHTML = outStr;
    }
    numStoredDIDs--;
}
function storeNumG() {
    var myDID = document.getElementById("myNumG").innerHTML;
}
function updateFollowMeOrder(orderTable, offset) {
    var fullUri = uri+
        "?"+ACTION+"="+ACTION_UPDATE_FOLLOW_ME+
        "?"+NAME+"="+form.name.value+
        "&"+SESSION_ID+"="+form.sessionId.value+
        "&"+I_ACCOUNT+"="+document.getElementById('i_accountDID'+offset).value;
    for(var i=0; i<orderTable.length; i++) {
        fullUri += "&num"+(i+1)+"="+orderTable[i];
    }
    //alert(encodeURL(fullUri));
    new Ajax.Request(encodeURL(fullUri),{
        onComplete: function(transport) {
            if(transport.responseText.indexOf("fault") == -1) {
                //window.location.reload();
            } else {
                alert(transport.responseText);
            }
        }
    });
}
function getWinWidth() {
  var width = 0;
  if( typeof( window.innerWidth ) == 'number' ) {
    width = window.innerWidth;
  } else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
    width = document.documentElement.clientWidth;
  } else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
    width = document.body.clientWidth;
  }
  return width;
}
function submenuProductos(inside)
{
	var submenu = document.getElementById('submenu_productos');
	
	if(inside==1)
		submenu.style.display = 'block';
	else
		submenu.style.display = 'none';
}
function submenuProductos2(inside)
{
	var submenu = document.getElementById('submenu_productos2');
	
	if(inside==1)
		submenu.style.display = 'block';
	else
		submenu.style.display = 'none';
}
function submenuCustomers(inside)
{
	var submenu = document.getElementById('submenu_customers');
	
	if(inside==1)
		submenu.style.display = 'block';
	else
		submenu.style.display = 'none';
}
function submenuRepresentatives(inside)
{
	var submenu = document.getElementById('submenu_representatives');
	
	if(inside==1)
		submenu.style.display = 'block';
	else
		submenu.style.display = 'none';
}
function submenuEmails(inside)
{
	var submenu = document.getElementById('submenu_emails');
	
	if(inside==1)
		submenu.style.display = 'block';
	else
		submenu.style.display = 'none';
}
// this deletes the cookie when called
function Delete_Cookie( name, path, domain ) {
    if ( Get_Cookie( name ) ) document.cookie = name + "=" +
        ( ( path ) ? ";path=" + path : "") +
        ( ( domain ) ? ";domain=" + domain : "" ) +
        ";expires=Thu, 01-Jan-1970 00:00:01 GMT";
}
// this fixes an issue with the old method, ambiguous values
// with this test document.cookie.indexOf( name + "=" );
function Get_Cookie( check_name ) {
    // first we'll split this cookie up into name/value pairs
    // note: document.cookie only returns name=value, not the other components
    var a_all_cookies = document.cookie.split( ';' );
    var a_temp_cookie = '';
    var cookie_name = '';
    var cookie_value = '';
    var b_cookie_found = false; // set boolean t/f default f
    
    for ( i = 0; i < a_all_cookies.length; i++ ) {
        // now we'll split apart each name=value pair
        a_temp_cookie = a_all_cookies[i].split( '=' );
        // and trim left/right whitespace while we're at it
        cookie_name = a_temp_cookie[0].replace(/^\s+|\s+$/g, '');
        // if the extracted name matches passed check_name
        if ( cookie_name == check_name ) {
            b_cookie_found = true;
            // we need to handle case where cookie has no value but exists (no = sign, that is):
            if ( a_temp_cookie.length > 1 ) {
                cookie_value = unescape( a_temp_cookie[1].replace(/^\s+|\s+$/g, '') );
            }
            // note that in cases where cookie is initialized but no value, null is returned
            return cookie_value;
            break;
        }
        a_temp_cookie = null;
        cookie_name = '';
    }
    if ( !b_cookie_found ) {
        return null;
    }
}
function addRep(form) {
    var i_customerObj = document.getElementById("i_customer");
    var i_customer = "";
    if(i_customerObj) {
        i_customer = i_customerObj.options[i_customerObj.selectedIndex].value;
    } else {
        i_customer = form.i_parent.value
    }
    var repTypeObj = document.getElementById("repType");
    var repType = repTypeObj.options[repTypeObj.selectedIndex].value;
    var fullUri = uri+
        "?"+ACTION+"="+ACTION_ADD_REP+
        "&"+TYPE+"="+gup("type", form)+
        "&"+FIRST_NAME+"="+form.firstname.value+
        "&"+LAST_NAME+"="+form.lastname.value+
        "&"+PHONE1+"="+form.phone.value+
        "&"+EMAIL+"="+form.email.value+
        "&"+LOGIN+"="+form.login.value+
        "&"+PASSWORD+"="+form.password.value+
        "&"+I_CUSTOMER+"="+i_customer+
        "&"+SESS_ID+"="+SESSION_ID+
        "&"+"repType"+"="+repType;
    alert(encodeURL(fullUri));
    document.getElementById("status").innerHTML = "<img src='../images/wait16.gif' alt=''>Please Wait";
    new Ajax.Request(encodeURL(fullUri),{
        onComplete: function(transport) {
            var response = transport.responseText;
            if(response.indexOf("fault") == -1) {
                //alert("Representative "+form.firstname.value+" "+form.lastname.value+" Added Successfully!");
                document.getElementById("status").innerHTML="New Representative Created Successfully!";
            } else {
                alert(response);
            }
        }
    });
}
function delRep(form) {
    var repValue = "";
    try {
        var radioObj = form.i_rep;
        for(i = 0; i < radioObj.length; i++) {
            if(radioObj[i].checked) {
                repValue = radioObj[i].value;
            }
        }
    } catch(e) {}
    var rep = repValue.split(";");
    if(rep[1]) {
        var answer = confirm("Are you sure you want to remove representative "+rep[1]+"?");
        if(answer) {
            document.getElementById("status").innerHTML = "<img src='../images/wait16.gif' alt=''>Please Wait";
            var fullUri = uri+
                "?"+ACTION+"="+ACTION_DEL_REP+
                "&"+TYPE+"="+gup("type", form)+
                "&"+I_REP+"="+rep[0]+
                "&"+SESS_ID+"="+SESSION_ID;
            new Ajax.Request(fullUri,{
                onComplete: function(transport) {
                    var response = transport.responseText;
                    if(response.indexOf("fault") == -1) {
                        alert("Representative "+rep[1]+" Removed Successfully!");
                        window.location.reload();
                    } else {
                        alert(response);
                    }
                }
            });
        }
    }
}
//]]>
