﻿function findCampus(zipcode) {
    var campus = document.getElementById('Campus');
    campus.options.length = 0;
    campus.options[0] = new Option('Select One', '');

    for (var i = 0; i < arrCampusZip.length; i++) {
        if (arrCampusZip[i][2].indexOf(zipcode) >= 0) {
            // add this campus to drop down.
            campus.options[campus.options.length] = new Option(arrCampusZip[i][1], arrCampusZip[i][0]);
            //
            showFlash("California");
            if (arrCampusZip[i][1] == "Stockton") {
                showFlash("FresnoStockton");
            }
            if (arrCampusZip[i][1] == "Fresno") {
                showFlash("FresnoStockton");
            }

            if (arrCampusZip[i][1] == "Morrow") {
                showFlash("Morrow");
            }
            if (arrCampusZip[i][1] == "Jacksonville") {
                showFlash("Jacksonville");
            }
            if (arrCampusZip[i][1] == "Bakersfield") {
                showFlash("Bakersfield");
            }            
            
        }
    }
    if (campus.options.length == 1) {
        
        if (arrCampusZip[3] == undefined) {
            // Must be ACT only 2 campuses
            campus.options[campus.options.length] = new Option(arrCampusZip[0][1], arrCampusZip[0][0]);
            if (arrCampusZip[1] != undefined)
                campus.options[campus.options.length] = new Option(arrCampusZip[1][1], arrCampusZip[1][0]);

        }
        else {
            // didn't find zip, default to SD=5 or Gardena=7
            campus.options[campus.options.length] = new Option(arrCampusZip[7][1], arrCampusZip[7][0]);
            campus.options[campus.options.length] = new Option(arrCampusZip[5][1], arrCampusZip[5][0]);                    
            if (window.location.href.toLowerCase().indexOf('newstartuei.com') >= 0 ) {
                // Also Add Stockton as default choice
                campus.options[campus.options.length] = new Option(arrCampusZip[12][1], arrCampusZip[12][0]);
            }
        }

    }

    if (campus.options.length == 2) {
        campus.selectedIndex = 1;
        campusChanged();
    }
    else {
        var program = document.getElementById('Program');
        program.options.length = 0;
        program.options[0] = new Option('Select One', '');
    }

}

function isValidEmailAddress(emailAddress) {
    var pattern = new RegExp(/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i);
    return pattern.test(emailAddress);
};

function formCheck() {
    var formobj = document.forms[0];
    var fieldRequired = Array("FirstName", "LastName", "City", "State", "Zip", "DaytimePhone", "Email", "Campus", "Program", "understand");
    var fieldDescription = Array("First Name", "Last Name", "City", "State", "Zip", "Phone", "Email", "Campus", "Program", "Check Agreement");
    var alertMsg = "Please complete the following fields:\n";

    var l_Msg = alertMsg.length;

    for (var i = 0; i < fieldRequired.length; i++) {
        var obj = formobj.elements[fieldRequired[i]];
        if (obj) {
            switch (obj.type) {
                case "select-one":
                    if (obj.selectedIndex == -1 || obj.options[obj.selectedIndex].value == "") {
                        alertMsg += " - " + fieldDescription[i] + "\n";
                    }
                    break;
                case "select-multiple":
                    if (obj.selectedIndex == -1) {
                        alertMsg += " - " + fieldDescription[i] + "\n";
                    }
                    break;
                case "text":
                case "textarea":
                    if (obj.value == "" || obj.value == null) {
                        alertMsg += " - " + fieldDescription[i] + "\n";
                    }
                    break;
                case "checkbox":
                    if (!obj.checked) {
                        alertMsg += " - " + fieldDescription[i] + "\n";
                    }
                    break;    
                default:
            }
            if (obj.type == undefined) {
                var blnchecked = false;
                for (var j = 0; j < obj.length; j++) {
                    if (obj[j].checked) {
                        blnchecked = true;
                    }
                }
                if (!blnchecked) {
                    alertMsg += " - " + fieldDescription[i] + "\n";
                }
            }
        }
    }

    // check for valid zip	
    if (!IsNumeric(formobj.Zip.value)) {
        alertMsg += " - Zip, 5 digits only\n";
    }


    //check for valid phone
    if (!validPhone(formobj.DaytimePhone.value)) {
        alertMsg += " - Phone, invalid entry\n";
    }

    if (!isValidEmailAddress(formobj.Email.value)) {
        alertMsg += " - Email, invalid entry\n";
    }


    if (alertMsg.length == l_Msg) {
        return true;
    } else {
        alert(alertMsg);
        return false;
    }

}

function validPhone(phone) {
    var regexObj = /^\(?([0-9]{3})\)?[-. ]?([0-9]{3})[-. ]?([0-9]{4})$/;
    if (regexObj.test(phone)) {
        return true;
    } else {
        // Invalid phone number
        return false;
    }

}

function IsNumeric(strString)
//  check for valid numeric strings	
{
    var strValidChars = "0123456789";
    var strChar;
    var blnResult = true;

    if (strString.length == 0) return false;

    //  test strString consists of valid characters listed above
    for (i = 0; i < strString.length && blnResult == true; i++) {
        strChar = strString.charAt(i);
        if (strValidChars.indexOf(strChar) == -1) {
            blnResult = false;
        }
    }
    return blnResult;
}

function campusChanged() {

    var campus = document.getElementById('Campus');
    var program = document.getElementById('Program');

    var selectedCampus = campus.options[campus.selectedIndex].value;
    var availablePrograms = campusList[selectedCampus];

    program.options.length = 0;
    program.options[0] = new Option('Select One', '');

    if (availablePrograms) {
        for (var i = 0; i < availablePrograms.length; i++) {
            var curProgram = availablePrograms[i];
            program.options[program.options.length] = new Option(curProgram, curProgram);
        }
    }
    if (program.options.length > 1) {
        program.disabled = false;
    }
    else {
        program.disabled = true;
    }
}
