﻿// JavaScript Document
var serviceLevelChecked
var checkedForm

//                Mnthly   Now        Level     - index
var slPricing = [[149.95, 149.95], // Navigator - 0
                 [99.95, 99.95],   // Executive - 1
                 [79.95, 79.95],   // Unlimited - 2
                 [129.95, 0]];     // Basic     - 3

function checkServiceLevel() {
    serviceLevelChecked = "null"
    var form = window.document.forms[1];
    for (var i = 0; i < slPricing.length; i++) {
        if (form.ServiceLevel[i].checked) {
            serviceLevelChecked = i;
            return true;
        }
    }
    if (serviceLevelChecked == "null") {
        alert('Please choose a service level.');
        return false;
    }
}

function serviceTotals() {
    var form = window.document.forms[1];
    if (checkServiceLevel()) {
        form.TotalChargedNow.value = slPricing[serviceLevelChecked][0];
        form.MonthlyCharge.value = slPricing[serviceLevelChecked][1];
        form.TotalChargedNowV.value = slPricing[serviceLevelChecked][0];
        form.MonthlyChargeV.value = slPricing[serviceLevelChecked][1];
    }
}

function finalCheck() {
    var form = window.document.forms[1];
    checkServiceLevel();
    if (serviceLevelChecked == "null")
        return false;
    MM_validateForm('FirstName', '', 'R', 'Name', '', 'R', 'Address', '', 'R', 'City', '', 'R', 'Zip', '', 'R', 'Phone', '', 'R', 'Email', '', 'R', 'HowDidYouHearOfUs', '', 'R', 'SourcesUsed', '', 'R', 'RisEmail');

    if (document.MM_returnValue == true && serviceLevelChecked != "null") {
        // verify Emails match
        if (form.Email.value != form.Email2.value) {
            alert("Your E-mail addresses don't match.");
            return false;
        }
        //alert('Submitting form');
        form.submit();
    } else {
        return false;
    }

}

function MM_validateForm() { //v4.0
    var i, p, q, nm, test, num, min, max, errors = '', args = MM_validateForm.arguments;
    for (i = 0; i < (args.length - 2); i += 3) {
        test = args[i + 2]; val = MM_findObj(args[i]);
        if (val) {
            nm = val.name;
            if ((val = val.value) != "") {
                if (test.indexOf('isEmail') != -1) {
                    p = val.indexOf('@');
                    if (p < 1 || p == (val.length - 1)) errors += '- ' + nm + ' must contain an e-mail address.\n';
                }
                //if (nm == 'Name') {
                //    p = val.indexOf(' ');
                //    if (p < 1) errors += '- ' + nm + ' cannot start with space and must contain at least a first and last name.\n';
                //}
            } else if (test != 'R') {
                if (isNaN(val)) errors += '- ' + nm + ' must contain a number.\n';
                if (test.indexOf('inRange') != -1) {
                    p = test.indexOf(':');
                    min = test.substring(8, p); max = test.substring(p + 1);
                    if (val < min || max < val) errors += '- ' + nm + ' must contain a number between ' + min + ' and ' + max + '.\n';
                }
            } else if (test.charAt(0) == 'R') errors += '- ' + nm + ' is required.\n';
        }
    } if (errors) alert('The following error(s) occurred:\n' + errors);
    document.MM_returnValue = (errors == '');
}

function MM_findObj(n, d) { //v4.01
    var p, i, x; if (!d) d = document; if ((p = n.indexOf("?")) > 0 && parent.frames.length) {
        d = parent.frames[n.substring(p + 1)].document; n = n.substring(0, p);
    }
    if (!(x = d[n]) && d.all) x = d.all[n]; for (i = 0; !x && i < d.forms.length; i++) x = d.forms[i][n];
    for (i = 0; !x && d.layers && i < d.layers.length; i++) x = MM_findObj(n, d.layers[i].document);
    if (!x && d.getElementById) x = d.getElementById(n); return x;
}

