// field type validation
function validateEmail(form, index, msg)
{
    msg = typeof(msg) != 'undefined' ? msg : 'Please enter a valid email address. Format: user@company.com';
    var src = new String( form.elements[index].value );
    var emailRegExp = /^(([A-Za-z0-9]+_+)|([A-Za-z0-9]+\-+)|([A-Za-z0-9]+\.+)|([A-Za-z0-9]+\++))*[A-Za-z0-9]+@((\w+\-+)|(\w+\.))*\w{1,63}\.[A-Za-z0-9]{1,50}$/
    if (!emailRegExp.test(src))
    {
        alert(msg);
        form.elements[index].focus();
        return false;
    }
    return true;
}

function validateFieldNotEmpty(form, index, text)
{
    if ((form.elements[index].type == 'text' || form.elements[index].type == 'textarea' || form.elements[index].type == 'password') && 
        (form.elements[index].value.length == 0 || form.elements[index].value == form.elements[index].defaultText))
    {
        alert(text);
        form.elements[index].focus();
        return false;
    }
    return true;
}

function validateFieldChecked(form, index, text)
{
    if (form.elements[index].type == 'checkbox' && form.elements[index].checked != true)
    {
        alert(text);
        form.elements[index].focus();
        return false;
    }
    return true;
}

function validateFieldSelected(form, index, text)
{
    if (form.elements[index].type == 'select-one' && form.elements[index].options[0].selected == true)
    {
        alert(text);
        form.elements[index].focus();
        return false;
    }
    return true;
}

// common forms
function validateLoginForm(form)
{
    if (!validateFieldNotEmpty(form, 0, 'Please enter your fax number.'))
        return false;
        
    if (!validateFieldNotEmpty(form, 1, 'Please enter your password.'))
        return false;
        
    return true;
}

function validateTestDriveForm(form)
{
    if (!validateEmail(form, 0))
        return false;
        
    return true;
}

function validateLNPForm(form)
{
    if (!validateFieldNotEmpty(form, 0, 'Please enter area code.'))
        return false;
        
    if (!validateFieldNotEmpty(form, 1, 'Please enter exchange.'))
        return false;
        
    if (!validateFieldNotEmpty(form, 2, 'Please enter line.'))
        return false;
        
    return true;
}

function toggleBox(szDivID, iState) // 1 visible, 0 hidden
{
    if(document.layers)       //NN4+
    {
        if (!document.layers[szDivID])
            return;

        document.layers[szDivID].display = iState ? "block" : "none";
    }
    else if(document.getElementById)      //gecko + IE 5+
    {
        var obj = document.getElementById(szDivID);
        if (!obj)
            return;
        obj.style.display = iState ? "block" : "none";
    }
    else if(document.all)    // IE 4
    {
        if (!document.all[szDivID])
            return;
        document.all[szDivID].style.display = iState ? "block" : "none";
    }
}

function closeAllBox()
{
    var IdPrefix = "ques_";
    for (var i=1; i <=100; i++)
    {
        var Id = IdPrefix + i;
        toggleBox(Id,0);
    }
}

