var state = 'visible';
function showhide(document, form, layer_ref) {
    if (form.creditcards[1].checked) { state = 'hidden'; }
    else { state = 'visible'; }
    if (document.all) {
        //IS IE 4 or 5 (or 6 beta)
        eval("document.all." + layer_ref + ".style.visibility = state");
    }
    if (document.layers) {
        //IS NETSCAPE 4 or below
        document.layers[layer_ref].visibility = state;
    }
    if (document.getElementById && !document.all) {
        maxwell_smart = document.getElementById(layer_ref);
        maxwell_smart.style.visibility = state;
    }
}


function validator(form, url) {
    //alert("Validating");
    var valid = false;

    if (form.email != null) {
        if (form.email.value == "") {
            alert("Please enter an email.");
            form.email.focus();
            return (false);
        }
        var match = form.email.value.match(/.*\@.*\.*\..{2,3}/);
        if (match) valid = match[0].length == form.email.value.length;
        if (!valid) {
            alert("Invalid email address, please re-enter email.");
            form.email.focus();
            return (false);
        }
    }
    valid = false;

    if (form.email2 != null) {
        if (form.email2.value == "") {
            alert("Please re-enter email.");
            form.email2.focus();
            return (false);
        }
        var match = form.email2.value.match(/.*\@.*\.*\..{2,3}/);
        if (match) valid = match[0].length == form.email2.value.length;
        if (!valid) {
            alert("Invalid email address, please re-enter email.");
            form.email2.focus();
            return (false);
        }
    }
    valid = false;

    if (form.corpname != null) {
        if (form.corpname.value == "") {
            alert("Please enter a business name.");
            form.corpname.focus();
            return (false);
        }
    }
    valid = false;

    if (form.contactfirst != null) {
        if (form.contactfirst.value == "") {
            alert("Please enter a contact first name.");
            form.contactfirst.focus();
            return (false);
        }
    }
    valid = false;

    if (form.contactlast != null) {
        if (form.contactlast.value == "") {
            alert("Please enter a contact last name.");
            form.contactlast.focus();
            return (false);
        }
    }
    valid = false;


    if (form.phone2 != null) {
        var match = form.phone2.value.match(/((|\()\d{3}(|\)|\.|-)\d{3}(\.|-)\d{4}\sx\d{3,5}|(|\()\d{3}(|\)|\.|-)\d{3}(\.|-)\d{4})/);
        if (match) valid = (match[0].length == form.phone2.value.length && form.phone2.value.length > 0);
        if (!valid) {
            alert("Please enter a daytime phone number.\r\n(Format: ###-###-#### or ###-###-### x###)");
            form.phone2.focus();
            return (false);
        }
    }
    valid = false;


    if (form.rphone2 != null) {
        var match = form.rphone2.value.match(/((|\()\d{3}(|\)|\.|-)\d{3}(\.|-)\d{4}\sx\d{3,5}|(|\()\d{3}(|\)|\.|-)\d{3}(\.|-)\d{4})/);
        if (match) valid = (match[0].length == form.rphone2.value.length && form.rphone2.value.length > 0);
        if (!valid) {
            alert("Please enter a daytime phone number.\r\n(Format: ###-###-#### or ###-###-### x###)");
            form.rphone2.focus();
            return (false);
        }
    }
    valid = false;

    if (url !== undefined) {
	switch(url) {
           case "application-i8":
    		if (form.contactphone1 != null) {
		        var match = form.contactphone1.value.match(/\d{3}/);
		        if (match) valid = (match[0].length == form.contactphone1.value.length && form.contactphone1.value.length > 0);
        		if (!valid) {
			        alert("Please enter a daytime phone number.\r\n(Format: ###-###-#### or ###-###-### x###)");
			        form.contactphone1.focus();
            			return (false);
        		}
    		}
    		valid = false;

    		if (form.contactphone2 != null) {
		        var match = form.contactphone2.value.match(/\d{3}/);
		        if (match) valid = (match[0].length == form.contactphone2.value.length && form.contactphone2.value.length > 0);
        		if (!valid) {
			        alert("Please enter a daytime phone number.\r\n(Format: ###-###-#### or ###-###-### x###)");
			        form.contactphone2.focus();
            			return (false);
        		}
    		}
    		valid = false;

    		if (form.contactphone3 != null) {
		        var match = form.contactphone3.value.match(/\d{4}/);
		        if (match) valid = (match[0].length == form.contactphone3.value.length && form.contactphone3.value.length > 0);
        		if (!valid) {
			        alert("Please enter a daytime phone number.\r\n(Format: ###-###-#### or ###-###-### x###)");
			        form.contactphone3.focus();
            			return (false);
        		}
    		}
    		valid = false;

    		if (form.contactphone4 != null && form.contactphone4.value !== "") {
		        var match = form.contactphone4.value.match(/\d{2, 6}/);
		        if (match) valid = (match[0].length == form.contactphone4.value.length);
        		if (!valid || match !== null) {
			        alert("Please enter a daytime phone number.\r\n(Format: ###-###-#### or ###-###-### x###)");
			        form.contactphone4.focus();
            			return (false);
        		}
    		}
    		valid = false;
		break;
		break;
 
	}

    }
    else{

    if (form.contactphone1 != null) {
        //if(form.contactphone1.value == "")
        var match = form.contactphone1.value.match(/((|\()\d{3}(|\)|\.|-)\d{3}(\.|-)\d{4}\sx\d{3,5}|(|\()\d{3}(|\)|\.|-)\d{3}(\.|-)\d{4})/);
        if (match) valid = (match[0].length == form.contactphone1.value.length && form.contactphone1.value.length > 0);
        if (!valid) {
            alert("Please enter a daytime phone number.\r\n(Format: ###-###-#### or ###-###-### x###)");
            form.contactphone1.focus();
            return (false);
        }
    }
    valid = false;

    if (form.contactphone2 != null) {
        //if(form.contactphone2.value == "")
        var match = form.contactphone2.value.match(/((|\()\d{3}(|\)|\.|-)\d{3}(\.|-)\d{4}\sx\d{3,5}|(|\()\d{3}(|\)|\.|-)\d{3}(\.|-)\d{4})/);
        if (match) valid = (match[0].length == form.contactphone2.value.length && form.contactphone2.value.length > 0);
        if (!valid) {
            alert("Please enter a daytime phone number.\r\n(Format: ###-###-#### or ###-###-### x###)");
            form.contactphone2.focus();
            return (false);
        }
    }
    valid = false;

    if (form.contactphone3 != null) {
        //if(form.contactphone3.value == "")
        var match = form.contactphone3.value.match(/((|\()\d{3}(|\)|\.|-)\d{3}(\.|-)\d{4}\sx\d{3,5}|(|\()\d{3}(|\)|\.|-)\d{3}(\.|-)\d{4})/);
        if (match) valid = (match[0].length == form.contactphone3.value.length && form.contactphone3.value.length > 0);
        if (!valid) {
            alert("Please enter a daytime phone number.\r\n(Format: ###-###-#### or ###-###-### x###)");
            form.contactphone3.focus();
            return (false);
        }
    }
    valid = false;

    }

    if (form.faxnumber1 != null) {
        //if(form.faxnumber1.value == "")
        var match = form.faxnumber1.value.match(/((|\()\d{3}(|\)|\.|-)\d{3}(\.|-)\d{4}\sx\d{3,5}|(|\()\d{3}(|\)|\.|-)\d{3}(\.|-)\d{4})/);
        if (match) valid = (match[0].length == form.faxnumber1.value.length && form.faxnumber1.value.length > 0);
        if (!valid) {
            alert("Please enter a faxnumber.\r\n(Format: ###-###-####)");
            form.faxnumber1.focus();
            return (false);
        }
    }
    valid = false;

    if (form.faxnumber2 != null) {
        //if(form.faxnumber2.value == "")
        var match = form.faxnumber2.value.match(/((|\()\d{3}(|\)|\.|-)\d{3}(\.|-)\d{4}\sx\d{3,5}|(|\()\d{3}(|\)|\.|-)\d{3}(\.|-)\d{4})/);
        if (match) valid = (match[0].length == form.faxnumber2.value.length && form.faxnumber2.value.length > 0);
        if (!valid) {
            alert("Please enter a faxnumber.\r\n(Format: ###-###-####)");
            form.faxnumber2.focus();
            return (false);
        }
    }
    valid = false;


    if (form.faxnumber3 != null) {
        //if(form.faxnumber3.value == "")
        var match = form.faxnumber3.value.match(/((|\()\d{3}(|\)|\.|-)\d{3}(\.|-)\d{4}\sx\d{3,5}|(|\()\d{3}(|\)|\.|-)\d{3}(\.|-)\d{4})/);
        if (match) valid = (match[0].length == form.faxnumber3.value.length && form.faxnumber3.value.length > 0);
        if (!valid) {
            alert("Please enter a faxnumber.\r\n(Format: ###-###-####)");
            form.faxnumber3.focus();
            return (false);
        }
    }
    valid = false;



    if (form.email2 != null & form.email != null) {
        if (form.email2.value != form.email.value) {
            alert("Emails must match.");
            form.email2.focus();
            return (false);
        }
    }
    valid = false;

    if (form.businessaddr != null) {
        if (form.businessaddr.value == "") {
            alert("Please enter a business address.");
            form.businessaddr.focus();
            return (false);
        }
    }
    valid = false;

    if (form.city != null) {
        if (form.city.value == "") {
            alert("Please enter a city.");
            form.city.focus();
            return (false);
        }
    }
    valid = false;

    if (form.state != null) {
        if (form.state.value == "none") {
            alert("Please enter a state.");
            form.city.focus();
            return (false);
        }
    }
    valid = false;

    if (form.zipcode != null) {
        if (!form.zipcode.value.match(/\d{5}/)) {
            alert("Please enter a valid zipcode.");
            form.zipcode.focus();
            return (false);
        }
    }
    valid = false;

    if (form.cardvolume != null) {
        if (form.cardvolume.value == "none" && form.creditcards[0].checked) {
            alert("Please indicate your monthly sales");
            form.cardvolume.focus();
            return (false);
        }
    }
    valid = false;

    if (form.monthestablished != null) {
        if (form.monthestablished.value == "none") {
            alert("Date your business was established");
            form.monthestablished.focus();
            return (false);
        }
    }

    if (form.yearestablished != null) {
        if (form.yearestablished.value == "") {
            alert("Date your business was established.");
            form.yearestablished.focus();
            return (false);
        }
        else {
            switch (isInteger(form.yearestablished)) {
                case false:
                    alert(" Please enter a valid year business was established")
                    form.yearestablished.focus();
                    return (false);
                    break;
            }
        }
    }
    valid = false;

    if (form.creditcards != null) {
        if (form.creditcards.value == "none") {
            alert("Does your business presently accept credit cards");
            form.creditcards.focus();
            return (false);
        }
    }
    valid = false;

    if (form.howhear != null) {
        if (form.howhear.value == "") {
            alert("Please select how you heard about us");
            form.howhear.focus();
            return (false);
        }
    }

    return true;

}

function goform() {
    document.getElementById('appform').submit();
}

function isEmpty(s) {
    return ((s == null) || (s.length == 0))
}

function isDigit(c) {
    return ((c >= "0") && (c <= "9"))
}

function isInteger(s) {
    var i;

    if (isEmpty(s))
        if (isInteger.arguments.length == 1) { return 0; }
    else { return (isInteger.arguments[1] == true); }

    for (i = 0; i < s.length; i++) {
        var c = s.charAt(i);
        if (!isDigit(c)) { return false; }
    }
    return true;
}

function capitalizeMe(obj) {
    var val;
    val = obj.value;
    var newVal;
    newVal = '';
    val = val.split(' ');
    for (var c = 0; c < val.length; c++) {
        newVal += val[c].substring(0, 1).toUpperCase() +
        val[c].substring(1, val[c].length) + ' ';
    }
    obj.value = newVal;
}