$(function(){
		
// Placeholder text
	
var inputs = new Array();

$(".placeholder").each(function(i){

	//set up the array of values
	inputs[i] = [$(this), $(this).val()];

	$(this)
	.focus(function(){
		if($(this).val() == inputs[i][1]){
			$(this).attr("value", "").removeClass("placeholder");
		}
	})
	.blur(function(){
		if($(this).val() == ""){
			$(this).attr("value", inputs[i][1]).addClass("placeholder");
		}
	});
});

// Custom Select

$("select").each(function(){
	$(this).wrap("<div class='selector'></div>");
	var span = "<span class='select'>"+$(this).children(":selected").text()+"</span>";
	$(this).before(span)
	.fadeTo(1, 0)
	.focus(function(){
		$(this).parents(".selector").addClass("focus");
	})
	.change(function(){
		$(this).siblings("span").text($(this).children(":selected").text());
	})
	.blur(function(){
		$(this).parents(".selector").removeClass("focus");
	});	
});

// Custom Checkbox
// <insert here>

$("input:checkbox").each(function(){
	//set up variables
	var elem = $(this).get();
	
	//wrap with the proper elements
	$(elem).wrap("<div class='checker'></div>");
	$(elem).wrap("<span>");
	
	//more variables
	var thespan = $(elem).parents("span");
	var thediv = $(elem).parents("div.checker");
	
	//hide normal input and add focus classes
	$(elem)
	.css("opacity", 0)
	//.hide()
	.focus(function(){
		thediv.addClass("focus");
	})
	.blur(function(){
		thediv.removeClass("focus");
	})
	.click(function(){
		if(!$(elem).attr("checked")){
			//box was just unchecked, uncheck span
			thespan.removeClass("checked");	
		}else{
			//box was just checked, check span
			thespan.addClass("checked");
		}
	});
	
	//handle defaults
	if($(elem).attr("checked")){
		//box is checked by default, check our box
		thespan.addClass("checked");	
	}
	
});

// Expanding Message box
/*$("textarea").keyup(function(){
	var text = $(this).val();
	var length = text.length;
	var cols = $(this).attr("cols");
	var rows = (Math.floor(length/cols))+1;
	
	if(rows > 4){
		$(this).attr("rows", rows);
	}
});*/
$('textarea').autogrow({
		minHeight: 45,
		lineHeight: 15
});
$("textarea")
.focus(function(){
	if($(this).val() == ""){
		$(this).css({
			'height' : "60px",
			'min-height' : "60px"
		});
	}
})
.blur(function(){
	if($(this).val() == "tell me all about your project here"){
		$(this).css({
			'height' : "45px",
			'min-height' : "45px"
		});
	}
});

//Reason Changer
	
	$("#reason").change(updateForm);
	
//Error Checking

	$("#email").blur(function(){
	
		var error = checkEmail($("#email").val());
		
		if(error != ""){
		
			$("#email_label").parents("li").addClass("error");
			
			var errorString = "<p class='error' id='email_error'>" + error + "</p>";
			$("#email_error").remove();
			$("#email").after(errorString);
		
		}else{
			
			$("#email_label").parents("li").removeClass("error");
			
			$("#email_error").remove();
			
		}
		
	});
	
	$("#email").keypress(function(){
	
		var error = checkEmail($("#email").val());		
		
		if(error == ""){
			
			$("#email_label").parents("li").removeClass("error");
			
			$("#email_error").remove();
		}
		
	});

	$("#name").blur(function(){
	
		var error = checkName($("#name").val());
		
		if(error != ""){
		
			$("#name_label").parents("li").addClass("error");
			
			var errorString = "<p class='error' id='name_error'>" + error + "</p>";
			
			$("#name_error").remove();
			$("#name").after(errorString);
			
		
		}else{
			
			$("#name_label").parents("li").removeClass("error");
			
			$("#name_error").remove();
			
		}
		
	});
	
	$("#name").keypress(function(){
	
		var error = checkName($("#name").val());		
		
		if(error == ""){
			
			$("#name_label").parents("li").removeClass("error");
			
			$("#name_error").remove();
			
		}
		
	});


	$("#project_name").blur(function(){
	
		var error = checkprojName($("#project_name").val());
		
		if(error != ""){
		
			var errorString = "<p class='error' id='project_name_error'>" + error + "</p>";
			$("#project_name_error").remove();
			$("#project_name").after(errorString);
		
			$("#project_name_label").parents("li").addClass("error");
		
		}else{
			
			$("#project_name_label").parents("li").removeClass("error");
			
			$("#project_name_error").remove();
			
		}
		
	});
	
	$("#project_name").keypress(function(){
	
		var error = checkprojName($("#project_name").val());		
		
		if(error == ""){
			
			$("#project_name_label").parents("li").removeClass("error");
			
			$("#project_name_error").remove();
		}
		
	});

	$("#job_type").change(function(){
		
		updateJobType();
		
		var error = checkJobType($("#job_type option:selected").val());	
		
		if(error == ""){
			
			$("#type_label").parents("li").removeClass("error");
			
		}else{
		
			$("#type_label").parents("li").addClass("error");
			
		}
		
	});
	
	$("#job_scope").change(function(){
		
		var error = checkJobScope($("#job_scope option:selected").val());	
		
		if(error == ""){
			
			$("#scope_label").parents("li").removeClass("error");
			
		}else{
		
			$("#scope_label").parents("li").addClass("error");
			
		}
		
	});

	$("#job_timeframe").change(function(){
		
		var error = checkJobTimeframe($("#job_timeframe option:selected").val());	
		
		if(error == ""){
			
			$("#timeframe_label").parents("li").removeClass("error");
			
		}else{
		
			$("#timeframe_label").parents("li").addClass("error");
			
		}
		
	});
	
	$("#job_budget").change(function(){
		
		var error = checkJobBudget($("#job_budget option:selected").val());	
		
		if(error == ""){
			
			$("#budget_label").parents("li").removeClass("error");
			
		}else{
		
			$("#budget_label").parents("li").addClass("error");
			
		}
		
	});


	
	$("#estimate_form").submit(function(){
	
		return checkWholeForm(this);
	
	});

	updateForm();
	
	//prevention stuff
	
	$(".selector, input, select, textarea").click(function(){
		$(this).parents("form").attr("action", "http://pixelmatrixdesign.com/contact/send");
	});
	
	//form submitter
	
	$("a.button").click(function(){
		$(this).parents("form").submit();
		return false;
	});
	
});


function updateForm(){
	var value = $("#reason option:selected").text();
	if(value=="to say hello"){
		
		//hide project details
	
		$("#job_info").slideUp(1000, "easeOutCirc");
		
		// change message helper text
		
		if($("#message").val() == "tell me all about your project here"){
		
			$("#message").val("what's on your mind?");
		
		}
		//change hidden input and action
		
		$("#formtype").val("message");
		
	}else{
		
		//show project details
	
		$("#job_info").slideDown(1000, "easeOutBounce");
		
		// change message helper text
		
		if($("#message").val() == "what's on your mind?"){
		
			$("#message").val("tell me all about your project here");
		
		}
		
		//change hidden input and action
		
		$("#formtype").val("request");
		
	}
}
