/**
 * Purpose: Provide Javascript for the contact page
 * Requirements: JQuery 1.2.6 or higher
 *
 * $Date: $
 * $Rev: $
 */

var contactNotice = "#contactNotice";
var emailNotice = "#emailNotice";
var phoneNotice = "#phoneNotice";

$(document).ready(function() {

    // Check form before submitting
    $("#submit").click(function() {
        // Clear the form of messages
        $(contactNotice).parent().css('display', 'none');
        $(emailNotice).parent().css('display', 'none');
        $(phoneNotice).parent().css('display', 'none');
        var message = false;

        // Check contact name
        if (!validContact()) {
            addMessage(contactNotice, "Please enter the name of the person we should contact");
            message = true;
        }

        // Check email address
        if (!validEmail()) {
            addMessage(emailNotice, "Please enter your e-mail address");
            message = true;
        }

        // Check phone number
        if (!validPhone()) {
            addMessage(phoneNotice, "Please enter your phone number");
            message = true;
        }

        // Display the message if there is anything
        if (message) {
            return false;
        }
    });
});

function validContact() {
    var value = $("#formContact").val();

    // Check length
    if (value.length < 2 || value.length > 20) {
        return false;
    }

    return true;
}

function validEmail() {
    var value = $("#email").val();

    if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(value)) {
        return true;
    }

    return false;
}

function validPhone() {
    var value = $("#phone").val();

    // Check length
    value = String(value).replace(/\D/g, '');
    if (value.length != 10) {
        return false;
    }

    return true;
}

function addMessage(selector, message) {
    $(selector).html(message);
    $(selector).parent().fadeIn("fast").css('display', 'table-row');
}
