//Open a popup window with a specified URL; Set scrolling, resizing, width and height
function openPopUp(winURL, winName, scrollBar, resizable, winWidth, winHeight) {
    var winOptions = 'menubar=no,toolbar=no,location=no,directories=no,status=no,scrollbars=' + scrollBar + ',resizable=' + resizable + ',width=' + winWidth + ',height=' + winHeight;
    window.open(winURL, winName, winOptions);
}

/* list of field names on each form that could be changed to error state */
var loginErrorEleList = ['username','password'];
var reviewRegisterEleList = ['username','confirm_username','password','confirm_password'];
var emptyReviewRegisterEleList = ['username','confirm_username','password','confirm_password','vehicleMakeSelect','vehicleModelSelect','vehicleYearSelect'];
var reviewAccordianEleList = ['vehicleMakeSelect','vehicleModelSelect','vehicleYearSelect'];
var reviewLoginEleList = ['username','password'];
var emptyReviewLoginEleList = ['username','password','vehicleMakeSelect','vehicleModelSelect','vehicleYearSelect'];
var forgotPasswordEleList = ['email'];
var changeEmailEleList = ['new_email','confirmed_email','password'];
var changePasswordEleList = ['current_password','new_password','confirmed_password'];
var registerErrorEleList = ['username','confirm_username','password','confirm_password'];;
/* Form Validations */
function checkLogin(form) {
    resetErrors(loginErrorEleList);
    var errorMsgList = new Array();
    var errorEleList = new Array();
    if (!form.username.value) {
        errorMsgList[errorMsgList.length] = 'Please enter your email address to sign in. (Example: emailaddress@domain.com)';
        errorEleList[errorEleList.length] = 'username';
    }
    if (form.username.value && !isValidEmail(form.username.value)) {
        errorMsgList[errorMsgList.length] = 'Please enter a valid email address format. (Example: emailaddress@domain.com)';
        errorEleList[errorEleList.length] = 'username';
    }
    if (!form.password.value) {
        errorMsgList[errorMsgList.length] = 'Please enter your password to sign in.';
        errorEleList[errorEleList.length] = 'password';
    }
    if (errorMsgList.length > 0) {
        var errorAsis = '<img src="/no_cache/ac/myatc_login_error_ac.asis" width="1" height="1" border="0" alt="" />';
        displayErrors(errorMsgList,errorEleList,errorAsis);
        clearPasswordFields(form);
        return false;
    } else {
        return true;
    }
}
function checkRegistration(form) {
    resetErrors(registerErrorEleList);
    var errorMsgList = new Array();
    var errorEleList = new Array();
    if (!form.email.value) {
        errorMsgList[errorMsgList.length] = 'Please enter your email address to complete your registration.';
        errorEleList[errorEleList.length] = 'username';
    }
    if (form.email.value && !isValidEmail(form.email.value)) {
        errorMsgList[errorMsgList.length] = 'Please enter a valid email address format. (Example: emailaddress@domain.com)';
        errorEleList[errorEleList.length] = 'username';
    }
    if (!form.confirmed_email.value) {
        errorMsgList[errorMsgList.length] = 'Please confirm your email address to complete your registration.';
        errorEleList[errorEleList.length] = 'confirm_username';
    }
    if (form.email.value && form.confirmed_email.value && form.email.value.toLowerCase() != form.confirmed_email.value.toLowerCase()) {
        errorMsgList[errorMsgList.length] = 'The email addresses entered do not match. Please double-check your email address and confirmation entries to complete your registration.';
        errorEleList[errorEleList.length] = 'username';
        errorEleList[errorEleList.length] = 'confirm_username';
    }
    if (!form.password.value) {
        errorMsgList[errorMsgList.length] = 'Please enter a password to complete your registration.';
        errorEleList[errorEleList.length] = 'password';
    }
    if (form.password.value && form.password.value.length < 5) {
        errorMsgList[errorMsgList.length] = 'The password entered has fewer than 5 characters. Please enter a longer password using 5 to 20 characters.';
        errorEleList[errorEleList.length] = 'password';
    }
    if (form.password.value && form.password.value.length > 20) {
        errorMsgList[errorMsgList.length] = 'The password entered has more than 20 characters. Please enter a shorter password using 5 to 20 characters.';
        errorEleList[errorEleList.length] = 'password';
    }

    if (form.password.value) {
        var ValidChars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890';
        for (var i=0; i<form.password.value.length; i++) {
            if (ValidChars.indexOf(form.password.value.charAt(i)) == -1) {
                errorMsgList[errorMsgList.length] = 'The password entered contains invalid characters. Please enter only letters and/or numbers.';
                errorEleList[errorEleList.length] = 'password';
                break;
            }
        }
    }
    if (!form.confirm_password.value) {
        errorMsgList[errorMsgList.length] = 'Please confirm your password to complete registration.';
        errorEleList[errorEleList.length] = 'confirm_password';
    }
    if (form.password.value && form.confirmed_password.value && form.password.value != form.confirmed_password.value) {
        errorMsgList[errorMsgList.length] = 'The passwords entered do not match. Please double-check your password and confirmation entries to complete your registration.';
        errorEleList[errorEleList.length] = 'password';
        errorEleList[errorEleList.length] = 'confirm_password';
    }
    var errorAsis = '<img src="/no_cache/ac/myatc_registration_error_ac.asis" width="1" height="1" border="0" alt="" />';
    if (errorMsgList.length > 0) {
        displayErrors(errorMsgList,errorEleList,errorAsis);
        clearPasswordFields(form);
        return false;
    } else {
        return true;
    }

}
function checkForgotPassword(form) {
    resetErrors(forgotPasswordEleList);
    var errorMsgList = new Array();
    var errorEleList = new Array();
    if (!form.email.value) {
        errorMsgList[errorMsgList.length] = 'Please enter your email address below and click "Send."';
        errorEleList[errorEleList.length] = 'email';
    }
    if (form.email.value && !isValidEmail(form.email.value)) {
        errorMsgList[errorMsgList.length] = 'Please enter a valid email address format. (Example: emailaddress@domain.com)';
        errorEleList[errorEleList.length] = 'email';
    }
    if (errorMsgList.length > 0) {
        displayErrors(errorMsgList,errorEleList);
        return false;
    } else {
        return true;
    }
}

function checkMakeModelYear(form) {
    if (!form.vehicleModelSelect.value || !form.vehicleYearSelect.value || !form.vehicleMakeSelect.value) {
        resetErrors(emptyReviewRegisterEleList);
      } else {
        resetErrors(reviewRegisterEleList);
    }
    var errorMsgList = new Array();
    var errorEleList = new Array();
    if (!form.username.value) {
        errorMsgList[errorMsgList.length] = 'Please enter your email address to complete your registration.';
        errorEleList[errorEleList.length] = 'username';
    }
    if (form.username.value && !isValidEmail(form.username.value)) {
        errorMsgList[errorMsgList.length] = 'Please enter a valid email address format. (Example:emailaddress@domain.com)';
        errorEleList[errorEleList.length] = 'username';
    }
    if (!form.confirmed_email.value) {
        errorMsgList[errorMsgList.length] = 'Please confirm your email address to complete your registration.';
        errorEleList[errorEleList.length] = 'confirm_username';
    }
    if (!form.password.value) {
        errorMsgList[errorMsgList.length] = 'Please enter a password to complete your registration.';
        errorEleList[errorEleList.length] = 'password';
    }
    if (!form.confirm_password.value) {
        errorMsgList[errorMsgList.length] = 'Please confirm your password to complete your registration.';
        errorEleList[errorEleList.length] = 'confirm_password';
    }
    if (!form.vehicleMakeSelect.value) {
        errorMsgList[errorMsgList.length] = 'Please select a make to submit your review.';
        errorEleList[errorEleList.length] = 'vehicleMakeSelect';
    }
    if (!form.vehicleModelSelect.value) {
        errorMsgList[errorMsgList.length] = 'Please select a model to submit your review.';
        errorEleList[errorEleList.length] = 'vehicleModelSelect';
    }
    if (!form.vehicleYearSelect.value) {
        errorMsgList[errorMsgList.length] = 'Please select a year to submit your review.';
        errorEleList[errorEleList.length] = 'vehicleYearSelect';
    }
    var errorAsis = '<img src="/no_cache/ac/myatc_registration_error_ac.asis" width="1" height="1" border="0" alt="" />';

    if (errorMsgList.length > 0) {
        displayErrors(errorMsgList,errorEleList,errorAsis);
        return false;
    } else {
        return true;
    }
}
function checkReviewLogin(form) {
    if (!form.vehicleModelSelect.value || !form.vehicleYearSelect.value || !form.vehicleMakeSelect.value) {
        resetErrors(emptyReviewLoginEleList);
      } else {
        resetErrors(reviewLoginEleList);
    }
    var errorMsgList = new Array();
    var errorEleList = new Array();

    if (!form.username.value) {
        errorMsgList[errorMsgList.length] = 'Please enter your email address to sign in. (Example: emailaddress@domain.com)';
        errorEleList[errorEleList.length] = 'username';
    }
    if (form.username.value && !isValidEmail(form.username.value)) {
        errorMsgList[errorMsgList.length] = 'Please enter a valid email address format. (Example: emailaddress@domain.com)';
        errorEleList[errorEleList.length] = 'username';
    }
    if (!form.password.value) {
        errorMsgList[errorMsgList.length] = 'Please enter your password to sign in.';
        errorEleList[errorEleList.length] = 'password';
    }
    if (!form.vehicleMakeSelect.value) {
        errorMsgList[errorMsgList.length] = 'Please select a make to submit your review.';
        errorEleList[errorEleList.length] = 'vehicleMakeSelect';
    }
    if (!form.vehicleModelSelect.value) {
        errorMsgList[errorMsgList.length] = 'Please select a model to submit your review.';
        errorEleList[errorEleList.length] = 'vehicleModelSelect';
    }
    if (!form.vehicleYearSelect.value) {
        errorMsgList[errorMsgList.length] = 'Please select a year to submit your review.';
        errorEleList[errorEleList.length] = 'vehicleYearSelect';
    }
    var errorAsis = '<img src="/no_cache/ac/myatc_registration_error_ac.asis" width="1" height="1" border="0" alt="" />';

    if (errorMsgList.length > 0) {
        displayErrors(errorMsgList,errorEleList,errorAsis);
        return false;
    } else {
        return true;
    }
}


function checkReviewAccordian(form) {
        resetErrors(reviewAccordianEleList);
    var errorMsgList = new Array();
    var errorEleList = new Array();

    if (!form.vehicleMakeSelect.value) {
        errorMsgList[errorMsgList.length] = 'Please select a make to submit your review.';
        errorEleList[errorEleList.length] = 'vehicleMakeSelect';
    }
    if (!form.vehicleModelSelect.value) {
        errorMsgList[errorMsgList.length] = 'Please select a model to submit your review.';
        errorEleList[errorEleList.length] = 'vehicleModelSelect';
    }
    if (!form.vehicleYearSelect.value) {
        errorMsgList[errorMsgList.length] = 'Please select a year to submit your review.';
        errorEleList[errorEleList.length] = 'vehicleYearSelect';
    }
    var errorAsis = '<img src="/no_cache/ac/myatc_registration_error_ac.asis" width="1" height="1" border="0" alt="" />';

    if (errorMsgList.length > 0) {
        displayErrors(errorMsgList,errorEleList,errorAsis);
        return false;
    } else {
        return true;
    }
}


function checkChangeEmail(form) {
    resetErrors(changeEmailEleList);
    var errorMsgList = new Array();
    var errorEleList = new Array();
    if (!form.new_email.value) {
        errorMsgList[errorMsgList.length] = 'Please enter your new email address to change your current email address.';
        errorEleList[errorEleList.length] = 'new_email';
    }
    if (form.new_email.value && !isValidEmail(form.new_email.value)) {
        errorMsgList[errorMsgList.length] = 'Please enter a valid email address format. (Example: emailaddress@domain.com)';
        errorEleList[errorEleList.length] = 'new_email';
    }
    if (!form.confirmed_email.value) {
        errorMsgList[errorMsgList.length] = 'Please confirm your new email address before saving your change.';
        errorEleList[errorEleList.length] = 'confirmed_email';
    }
    if (form.new_email.value && form.confirmed_email.value && form.new_email.value.toLowerCase() != form.confirmed_email.value.toLowerCase()) {
        errorMsgList[errorMsgList.length] = 'The email addresses entered do not match. Please double-check your email address and confirmation entries before saving your change.';
        errorEleList[errorEleList.length] = 'new_email';
        errorEleList[errorEleList.length] = 'confirmed_email';
    }
    if (!form.password.value) {
        errorMsgList[errorMsgList.length] = 'Please enter your password to save your new email address.';
        errorEleList[errorEleList.length] = 'password';
    }
    if (errorMsgList.length > 0) {
        displayErrors(errorMsgList,errorEleList);
        clearPasswordFields(form);
        return false;
    } else {
        return true;
    }
}
function checkChangePassword(form) {
    resetErrors(changePasswordEleList);
    var errorMsgList = new Array();
    var errorEleList = new Array();
    if (!form.current_password.value) {
        errorMsgList[errorMsgList.length] = 'So we can be sure you are the member of this account, please enter your current password before you save your new password.';
        errorEleList[errorEleList.length] = 'current_password';
    }
    if (!form.new_password.value) {
        errorMsgList[errorMsgList.length] = 'Please enter your new password to change your current password.';
        errorEleList[errorEleList.length] = 'new_password';
    }
    if (form.new_password.value && form.new_password.value.length < 5) {
        errorMsgList[errorMsgList.length] = 'The password entered has fewer than 5 characters. Please enter a shorter password using 5 to 20 characters.';
        errorEleList[errorEleList.length] = 'new_password';
    }
    if (form.new_password.value && form.new_password.value.length > 20) {
        errorMsgList[errorMsgList.length] = 'The password entered has more than 20 characters. Please enter a shorter password using 5 to 20 characters.';
        errorEleList[errorEleList.length] = 'new_password';
    }
    if (form.new_password.value) {
        var ValidChars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890';
        for (var i=0; i<form.new_password.value.length; i++) {
            if (ValidChars.indexOf(form.new_password.value.charAt(i)) == -1) {
                errorMsgList[errorMsgList.length] = 'The password entered contains invalid characters. Please enter only letters and/or numbers.';
                errorEleList[errorEleList.length] = 'new_password';
                break;
            }
        }
    }
    if (!form.confirmed_password.value) {
        errorMsgList[errorMsgList.length] = 'Please confirm your new password before saving your change.';
        errorEleList[errorEleList.length] = 'confirmed_password';
    }
    if (form.new_password.value && form.confirmed_password.value && form.new_password.value != form.confirmed_password.value) {
        errorMsgList[errorMsgList.length] = 'The passwords entered do not match. Please double-check your password and confirmation entries before saving your change.';
        errorEleList[errorEleList.length] = 'new_password';
        errorEleList[errorEleList.length] = 'confirmed_password';
    }
    if (errorMsgList.length > 0) {
        displayErrors(errorMsgList,errorEleList);
        clearPasswordFields(form);
        return false;
    } else {
        return true;
    }
}

/* ############# utility validation functions ############ */

/* Handle the UI changes for error conditions */
function displayErrors(errorMsgList,errorEleList,errorAsis) {
    var errorTxt = '';
    if (errorMsgList.length > 1) {
        errorTxt += '<ul>';
        for (var i=0; i<errorMsgList.length; i++) {
            errorTxt += '<li>' + errorMsgList[i] + '</li>';
        }
        errorTxt += '</ul>';
    } else {
        errorTxt += errorMsgList[0] + '<br />';
    }
    var asis = errorAsis || '';

    var errorMsgEle = document.getElementById('errorMsg');
    errorMsgEle.innerHTML = errorTxt + asis;
    var errorContainer = document.getElementById('errorContainer');
    if (document.getElementById('review-login-page') || document.getElementById('review-accordian-page')) {
        errorMsgEle.className = 'alert';
        errorContainer.className = 'clearfix';
    }
    errorContainer.style.display = 'block';
    for (var i=0; i<errorEleList.length; i++) {
        var errorIconEle = document.getElementById(errorEleList[i] + 'Error');
        var errorLabelEle = document.getElementById(errorEleList[i] + 'Label');
        errorIconEle.style.display = 'inline';
        errorLabelEle.style.color = '#f00';
    }
}
function clearPasswordFields(form) {
    for (i = 0; i < form.elements.length; i++) {
        if (form.elements[i].type == 'password') {
            form.elements[i].value = "";
        }
    }
}
/* On each submit, clear any previous errors to make way for new ones, if needed */
function resetErrors(errorEleList) {
    var errorContainer = document.getElementById('errorContainer');
    errorContainer.style.display = 'none';
    for (var i=0; i<errorEleList.length; i++) {
        var errorIconEle = document.getElementById(errorEleList[i] + 'Error');
        var errorLabelEle = document.getElementById(errorEleList[i] + 'Label');
        errorIconEle.style.display = 'none';
        errorLabelEle.style.color = '#000';
    }
}
function isValidEmail(addy) {
    // there must be >= 1 character before @, so we
    // start looking at character position 1
    // (i.e. second character)
    var i = 1;
    // look for @
    while ((i < addy.length) && (addy.charAt(i) != "@")) {
        i++;
    }
    if ((i >= addy.length) || (addy.charAt(i) != "@")) {
        return false;
    } else {
        i += 2;
    }
    // look for .
    while ((i < addy.length) && (addy.charAt(i) != ".")) {
        i++;
    }
    // there must be at least one character after the .
    if ((i >= addy.length - 1) || (addy.charAt(i) != ".")) {
        return false;
    } else {
        return true;
    }
}
function checkCompare(form,type,current) {
    var inputType = type;
    var alerts = '';
    var totalChecked = 0;
    for (var i=0; i<form.compare.length; i++) {
        if (form.compare[i].checked) {
            totalChecked++;
        }
    }
    if((totalChecked < 2) && (inputType=='button')) {
        alerts += 'To use this feature, please select two or three cars to compare.\n';
    }
    if (totalChecked > 3) {
        alerts += 'Please select only three cars to compare at one time.\n';
        current.checked = false;
    }
    if (alerts) {
        alert(alerts);
    }
    else if(inputType=='button') {
        document.compare.submit();
    }
}
function confirmDelete() {
    var agree=confirm("Are you sure you want to delete this car bookmark?");
    if (agree) {
        return true ;
    } else {
        return false ;
    }
}
/* My Profile */
function toggleZipField() {
    if (document.update_profile.foreign_user.checked) {
        document.update_profile.zip.style.background = "#AAAAAA";
        document.update_profile.zip.value = "";
        document.update_profile.zip.disabled = true;
    } else {
        document.update_profile.zip.style.background = "#FFFFFF";
        document.update_profile.zip.disabled = false;
    }
}
function updateMakeModelFields(i) {
    var yearFormEle = eval('document.update_profile.year_' + i);
    var makeDrop = document.getElementById('makeDrop' + i);
    var modelDrop = document.getElementById('modelDrop' + i);
    var makeField = document.getElementById('makeField' + i);
    var modelField = document.getElementById('modelField' + i);

    if (yearFormEle.value == '1980 or older') {
            makeDrop.style.display = 'none';
            modelDrop.style.display = 'none';
            makeField.style.display = 'block';
            modelField.style.display = 'block';
    } else {
            makeDrop.style.display = 'block';
            modelDrop.style.display = 'block';
            makeField.style.display = 'none';
            modelField.style.display = 'none';
    }
}
function loadProfilePage() {
    toggleZipField();
    for (i=0;i<document.update_profile.elements.length;i++) {
        var elementName = document.update_profile.elements[i].name;
        if (elementName.indexOf('make_') != -1 && elementName.indexOf('freeform') == -1) {
            var userCarDropIndex = elementName.substring(5);
            updateMakeModelFields(userCarDropIndex);
        }
    }
}
function deleteUserCar(carId,addCarCount) {
    var query = '?';
    var formParams = '?';
    formParams += "add_car=" + addCarCount;

    for (i=0;i<document.update_profile.elements.length;i++) {
        if (document.update_profile.elements[i].type != 'checkbox' || document.update_profile.elements[i].checked) {
            formParams += "&" + document.update_profile.elements[i].name + "=" + document.update_profile.elements[i].value;
        }
    }

    window.location = "/myatc/my_profile.xhtml" + formParams + "&delete_car=" + carId + "#user_cars";
}
function updateProfileFields(addCarCount) {
    var query = '?';
    var formParams = '?';
    formParams += "add_car=" + addCarCount;

    for (i=0;i<document.update_profile.elements.length;i++) {
        if (document.update_profile.elements[i].type != 'checkbox' || document.update_profile.elements[i].checked) {
            formParams += "&" + document.update_profile.elements[i].name + "=" + document.update_profile.elements[i].value;
        }
    }

    window.location = "/myatc/my_profile.xhtml" + formParams + "#user_cars";
}
function deleteSavedCar(bookmarkId,delPrevPage,bookmarkCarId) {
    if (delPrevPage && delPrevPage != "null") {
        redirectTo(delPrevPage);
    } else {
        if (popwin && popwin.open) popwin.close();
        document.getElementById('car_' + bookmarkId + '_row').style.display = 'none';
        var carCountEle = document.getElementById('carCount');
        var carCount = parseInt(carCountEle.innerHTML);
        carCountEle.innerHTML = (carCount - 1);
        var hdrCarCountEle = document.getElementById('headerCarCount');
        var hdrCarCount = parseInt(hdrCarCountEle.innerHTML);
        hdrCarCountEle.innerHTML = (hdrCarCount - 1);
        var form = document.compare;
        if (form) {
            for (var i=0; i<form.compare.length; i++) {
                if (form.compare[i].checked && form.compare[i].value == bookmarkCarId) {
                    form.compare[i].checked = false;
                }
            }
        }
        if (hdrCarCount - 1 <= 1) {
            redirectTo('/myatc/my_cars.xhtml');
        }
    }
}
function deleteSavedSearch(bookmarkId,delPrevPage) {
    if (delPrevPage) {
        redirectTo(delPrevPage);
    } else {
        if (popwin && popwin.open) popwin.close();
        document.getElementById('srchRow_' + bookmarkId).style.display = 'none';
        var searchCountEle = document.getElementById('searchCount');
        var searchCount = parseInt(searchCountEle.innerHTML);
        searchCountEle.innerHTML = (searchCount - 1);
        var hdrSearchCountEle = document.getElementById('headerSearchCount');
        var hdrSearchCount = parseInt(hdrSearchCountEle.innerHTML);
        hdrSearchCountEle.innerHTML = (hdrSearchCount - 1);
        if (hdrSearchCount - 1 < 1) {
            redirectTo('/myatc/my_searches.xhtml');
        }
    }
}

function deleteCookie(name, path, domain) {
    if (getCookie(name)) {
        document.cookie = name + "=" +
        ((path) ? "; path=" + path : "") +
        ((domain) ? "; domain=" + domain : "") +
        "; expires=Thu, 01-Jan-70 00:00:01 GMT";
    }
}

    var zipFormat = /[0-9][0-9][0-9][0-9][0-9]/;
function validateZip(form) {
    hideNVSNLcheckboxmessage();
    hideZipErrorMessage();
    if(form.newsletter.checked) {
        if(!form.address.value || form.address.value.length < 5 || form.address.value == '00000' || !form.address.value.match(zipFormat) || document.getElementById("marketZipError").value == 'true') {
            //NL Checked and INValid zip
            showZipErrorMessage();
            return false;
        }
        else {//valid zip (only if checkbox is checked)
            return true;
        }
    }
    else {//unchecked
        if(form.address.value) {
            if( form.address.value.length < 5 || form.address.value == '00000' || !form.address.value.match(zipFormat) || document.getElementById("marketZipError").value == 'true') {
                //NL UNChecked and zip has a value but is INValid zip
                showZipErrorMessage();
                showNVSNLcheckboxmessage();
                return false;
            }
            else {//NL UNChecked and Valid zip
                showNVSNLcheckboxmessage();
                return false;
            }
        }
        else //unchecked and no zip value
        {
            return true;
        }

    }
    return true;
}

function showZipErrorMessage() {
  document.getElementById('zipmessage').className = 'search-form-error';
  document.getElementById('invalidzipmessage').style.display  = 'block';
}

function hideZipErrorMessage() {
    document.getElementById('zipmessage').className = '';
    document.getElementById('invalidzipmessage').style.display  = 'none';
}
function showNVSNLcheckboxmessage() {
  document.getElementById('NVSNLcheckboxmessage').style.display  = 'block';
}

function hideNVSNLcheckboxmessage() {
    document.getElementById('NVSNLcheckboxmessage').style.display  = 'none';
}


function validMarketZip() {
    zip = document.getElementById("zip-code").value;
    MarketManager.getMarketByZipCode(zip, marketCallBack);
}

var marketCallBack = function (data) {
    if (data.zipCode != null) {
        document.saveAlerts.marketZipError.value = "false";
    } else {
        document.saveAlerts.marketZipError.value = "true";
    }
}

// workaround for the onload body event
function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      if (oldonload) {
        oldonload();
      }
      func();
    }
  }
}



/**
 * Temp Replacements for JQuery functionality
 * @function alternateTableRowClasses
 * @funtion toggleTableRowClassOnHover
 * */
function alternateTableRowClasses(id, evenRowClass, OddRowClass) {
    var table = $(id);
    table.select('tr:nth-child(even) th').each(function(el) {
        el.addClassName(evenRowClass);
    });
    table.select('tr:nth-child(even) td').each(function(el) {
        el.addClassName(evenRowClass);
    });
    table.select('tr:nth-child(odd) th').each(function(el) {
        el.addClassName(OddRowClass);
    });
    table.select('tr:nth-child(odd) td').each(function(el) {
        el.addClassName(OddRowClass);
    });
};

function toggleTableRowClassOnHover(id, activeClass) {
    $(id).select('tr').each(function(row) {
        row.observe('mouseover', function() {row.addClassName(activeClass);});
        row.observe('mouseout', function() {row.removeClassName(activeClass);});
    });

    
};
