normalStyle = {
    'border-color':'blue',
    'background-color':'#FFFFFF'
};
errorStyle = {
    'border-color':'red',
    'background-color':'#FFFFA7'
};

$(document).ready(function(){
    $('#capcha img').css('border', '1px solid black');
    $('#submit_button').click(formSubmit);
});


function formSubmit(){
    err = true;
    o = $('input[type=text]');
    o.css(normalStyle);
    $.each(o, function(k,e){
        e.value = trim(e.value, '');
        if(e.id !='organization' & e.id !='address' & e.id !='city' & e.id !='state' & e.id !='zipcode' & e.id !='phone' & e.id !='fax' & e.id !='comments' ){
            if(empty($(e).val())){
                err = false;
                setError($(e));
            }
        }
    })

    if(!is_valid_email($('#email').val())){
        err = false;
        setError($('#email'));
    }

    return err;
}

function empty (mixed_var) {
    var key;
    if (mixed_var === "" ||
        mixed_var === 0 ||
        mixed_var === "0" ||
        mixed_var === null ||
        mixed_var === false ||
        mixed_var === undefined
        ){
        return true;
    }

    if (typeof mixed_var == 'object') {
        for (key in mixed_var) {
            return false;
        }
        return true;
    }

    return false;
}

function setError(e){
    e.focus(function(){
        $(this).css(normalStyle);
    });
    e.css(errorStyle);
}

function is_valid_email (email)
{
    return /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/.test(email);
}


function isZip(s){
    reZip = new RegExp(/(^\d{5}$)|(^\d{5}-\d{4}$)/);
    if (!reZip.test(s)) {
        return false;
    }
    return true;
}

function trim(str, chars) {
	return ltrim(rtrim(str, chars), chars);
}

function ltrim(str, chars) {
	chars = chars || "\\s";
	return str.replace(new RegExp("^[" + chars + "]+", "g"), "");
}

function rtrim(str, chars) {
	chars = chars || "\\s";
	return str.replace(new RegExp("[" + chars + "]+$", "g"), "");
}