﻿// JScript File
window.document.onkeydown=HandleAccessKeys;
window.document.onkeyup=HandleAccessKeys;

function HandleAccessKeys(evt)
{
    var eventObj, eventSrc;
    if (document.all)
    {
        eventObj = window.event;
        eventSrc = eventObj.srcElement;
    }
    else
    {
        eventObj = evt;
        eventSrc = eventObj.target;
    }
    
    if (eventObj.keyCode.toString()=="18")
    {
        var spans = document.getElementsByTagName("span");
        for (i=0;i<spans.length;i++)
        {
            if (spans[i].className=="accessKey")
            {
                if (eventObj.type=="keydown")
                {
                    spans[i].style.textDecoration="underline";
                }
                else
                {
                    spans[i].style.textDecoration="none";
                }
            }
        }
    } 
}

function ValidateContactForm(form)
{
    var formIsValid = true;
    var errorText = "";
    var elements = form.elements;
    
    document.getElementById("FormErrorMessages").innerHTML = "&nbsp;";
    
    for (i=0;i<elements.length;i++)
    {
        if (elements[i].nodeName.toLowerCase() == "input")
        {
            if (elements[i].id.indexOf("ContactNameTxt") != -1 && (elements[i].value == "" || elements[i].value == null))
            {
                errorText += "Name is required. ";
                formIsValid = false;
            }
            if (elements[i].id.indexOf("ContactPhoneNumberTxt") != -1)
            {
                if (elements[i].value == "" || elements[i].value == null)
                {
                    errorText += "Phone Number is required. ";
                    formIsValid = false;
                }
                else
                {
                    var phoneRegEx = /[-() ]/g;
                    var phnDigits = elements[i].value.replace(phoneRegEx,"");
                    if (parseFloat(phnDigits).toString().length != 10)
                    {
                        errorText += "Please provide a valid Area Code and Phone Number. ";
                        formIsValid = false;
                    }
                }
            }
            if (elements[i].id.indexOf("ContactEmailAddressTxt") != -1)
            {
                if (elements[i].value == "" || elements[i].value == null)
                {
                    errorText += "Email Address is required. ";
                    formIsValid = false;
                }
                else
                {
                    var emailRegEx = /^.+@.+\..{2,3}$/;
                    if (!(emailRegEx.test(elements[i].value))) { 
                        errorText += "Please enter a valid Email Address.\n";
                    }
                }
            }
        }
    }
    if (!formIsValid) {document.getElementById("FormErrorMessages").innerHTML = errorText}
    return formIsValid;
}
