/* Author: Thomas Pietrosanti

*/

$( function(){
	var position = 0;
	
	/*	--Opening animation no longer working - has something changed with switchClass?--
	$("#cardHolder section").addClass("start")

	$("#about"  ).removeClass("front"      ).switchClass("start", "front",       1500);
	$("#press"  ).removeClass("front-left" ).switchClass("start", "front-left",  1500);
	$("#hvac"   ).removeClass("front-right").switchClass("start", "front-right", 1500);
	$("#formfab").removeClass("mid-right"  ).switchClass("start", "mid-right",   1500);
	$("#support").removeClass("back-right" ).switchClass("start", "back-right",  1500);
	$("#contact").removeClass("back"       ).switchClass("start", "back",        1500);
	$("#news"   ).removeClass("back-left"  ).switchClass("start", "back-left",   1500);
	$("#coil"   ).removeClass("mid-left"   ).switchClass("start", "mid-left",    1500);
	*/

	$("#cardHolder section").hover( 
		function(){ 
			if( !$(this).hasClass("swap") )
			{
				$(this).stop(true, true).addClass("up").animate({top: '-=10'}, 500);
			}
		},
		function(){ 
			if( !$(this).hasClass("swap") && $(this).hasClass("up") )
			{
				$(this).stop(true, true).removeClass("up").animate({top: '+=10'}, 500); 
			}
		}
	).click(
		function(){
			if( !$(this).hasClass("front") )
			{
				$(this).parent().find(".front").stop(true, true).removeAttr('style').addClass("swap").removeClass("up");
				$(this).stop(true, true).removeAttr('style').addClass("swap").removeClass("up");
				
				var myClass = $(this).attr("class");
				var left = $(this).position().left;
				var top = $(this).position().top;
				
				$(this).parent().find(".front").fadeTo(500, .5, function(){
					var me = $(this);
					$(this).animate(
						{"top": top, "left": left}, 
						500, 
						"easeOutQuart",
						function()
						{
							me.switchClass("front", myClass,0);
							me.fadeTo(500, 1, function(){ $(this).removeClass("swap") });
						}
					);
				});
				
				$(this).fadeTo(500, .5, function(){
					var me2 = $(this);
					$(this).animate(
						{
							"top": $(this).parent().find(".front").position().top, 
							"left": $(this).parent().find(".front").position().left
						}, 
						500, 
						"easeOutQuart",
						function()
						{
							me2.switchClass(myClass,"front", 0);
							me2.fadeTo(500, 1, function(){ $(this).removeClass("swap") });
						}
					);
				});
				
				/*
				$(this).parent().find(".front").removeAttr('style').switchClass("front", $(this).attr("class"), 1000);
				$(this).removeAttr('style').switchClass($(this).attr("class"), "front", 1000);
				*/
			}
			else //Cards have special actions when clicked in the 'front' position
			{
				switch( $(this).attr("id") )
				{
					case "hvac":
						window.location = "hvac/rectangular-duct/";
					break;
					case "formfab":
						window.location = "forming-fabrication/fenestration/";
					break;
					case "coil":
						window.location = "/coil-metal-processing/steel-service-centers/cut-to-length.asp";
					break;
					case "press":
						window.location = "/metal-stamping/press-feeds/light-gage.asp";
					break;
					case "support":
						window.location = "/aftermarket-support-services/";
					break;
				}
			}
		}
	);
	
	$("#contactSubmit").click( function(){
		$.ajax(
			{
				url:"/mail.asp",
				type: "post",
				dataType: "json",
				data: "fName="      + encodeURIComponent($("#fName"   ).val()) +
							"&fEmail="    + encodeURIComponent($("#fEmail"  ).val()) + 
							"&fQuestion=" + encodeURIComponent($("#fMessage").val()),
				beforeSend: function(){
					$("#loadingMsg").hide();
					$("#loadingImg").show();
					$("#loadingOverlay").show();
				},
				complete: function(){
					setTimeout( function(){$("#loadingOverlay").fadeOut(1000)}, 2000);
				},
				success: function(response){
					$("#fName"   ).val("");
					$("#fEmail"  ).val("");
					$("#fMessage").val("");

					$("#loadingMsg").html(response.message);
					$("#loadingMsg").show();
					$("#loadingImg").hide();
				},
				error: function(jqXHR, textStatus, errorThrown){
					 alert(errorThrown);
				}
			}
		);
		return false;
	});
});
