/*
script name: form_validater
Version: 1.0
Developped By: Caleb Peters
date: 12/13/09
*/
$(function(){
	function validateInput(itemValue, validInput){
	 var input = $('#' + itemValue + 'Div .input').val();
		if(input == ""){
		$('#' + itemValue + 'error').remove();
		$('#' + itemValue + 'Div .jqTransformInputInner div').append('<label id="' + itemValue + 'error" class="error" for="req-' + itemValue + '">This field is required.</label>');
		return 1;
		}
		if(validInput.test(input)){
			$('#' + itemValue + 'error').remove();
			return 0;
		}else{
		$('#' + itemValue + 'error').remove();
		$('#' + itemValue + 'Div .jqTransformInputInner div').append('<label id="' + itemValue + 'error" class="error" for="req-' + itemValue + '">This is not a valid entry.</label>');
		return 1;
		}
	}
	
	function validateState(){
		var state = $('#state').val();
		if(state == ""){
			$('#stateError').remove();
			$('#stateDiv #test').append('<p id="stateError">Select a State</p>');
			return 1;
		}
		$('#stateError').remove();
		return 0;
	}

	//when the form is submited shit will hit the fan.	
	$('#orderForm').jqTransform().bind('submit', function() {
		var inputError = 0;		
		var formInput = new Array("name","email","phone","address","city","zip");
		var validInput = new Array(/[a-zA-Z ]$/, /^[a-zA-Z0-9._]+@[a-zA-Z0-9.]+\.[a-zA-Z]{2,4}$/, /^\(?(\d{3})\)?[- ]?(\d{3})[- ]?(\d{4})$/,/[a-zA-Z0-9. ]$/, /[a-zA-Z., ]$/, /^\d{5}(-\d{4})?$/ );
		
		for (i=0; i < formInput.length; i++) {
			inputError += validateInput(formInput[i], validInput[i]);
		}
		
		inputError += validateState();
		
		if(!inputError){ //if inputError is not true Submit via ajax
			$(this).ajaxSubmit({
				success: function() {
					$('#orderForm').hide();
					$('#form-wrap').append("<p class='thanks'>Thanks! Your request has been sent.</p>");
				}
			});
		}
		return false;
    }); 
});