/**
 * @author fro_Ost
 */
$(window).load (function() {
     // this loads after all elements on the page has been downloaded
     //alert("done!");
	 mainObject.slide();
});

var mainObject = {
	
	init : function() {
		
		$('li > ul').slideUp();
		//alert("init ready!");
		/**
		 * clears inputs, select and textarea
		 * and focus on the #name
		 */
		$("input:text").val('');
		$("#temat option[value='']").attr('selected', 'selected');
		$("#message").val('');
		$("#name").focus();
		
		var myForm = $("#kontaktForm");
		
		myForm.submit(function(e) {
			
			e.preventDefault();
			
			myForm.validate({
			     
			    rules: {
					name: "required",
					email: {
					    required: true,
					    email: true
					},
					temat: "required",
					message: {
						required: true,
						rangelength: [15, 255]
					}
			    },
			    messages: {
					name:  "Podaj imię",
					email: {					     
					    required: "Podaj adres email",
					    email: "To nie jest adres email"					    
					},
					temat: "Wybierz temat",
					message: {
						required: "Co chcesz nam przekazać?",
						rangelength: "Min 15 znaków, max 255"
					}
			    },
			    success: function(label) {			     
			    	label.text("ok").addClass("success");				
			    }
			    
			}).form();
			
			if(myForm.valid()) {
				
				var name = $("#name").val();
				var email = $("#email").val();
				var subject = $("#temat :selected").text();
				var msg = $("#message").val();
				var values = "name="+name+"&email="+email+"&temat="+subject+"&msg="+msg;
				//alert(values);
				
				/*
				
				FOR TESTING
				
				function showTick() {
					$(".accept").animate({top: +77, opacity: 1}, 750, "easeOutBounce");
				}
				$("#left").html("<div id=\"sent\"><h5>Email został wysłany, dziękujemy za kontakt!</h5><div class=\"accept\"></div><div class=\"email\"></div></div>");
				$(".email").animate({left: +256, opacity: 1}, 500, "easeOutSine", showTick);
				
				*/
				
				$.ajax({
					
				    type: "POST",
				    data: values,
				    url: "php/mail.php",
				    dataType: "json",
				    success: function( data ) {
						
						//alert(data.email);
						function showTick() {
							$("#tick_img").animate({top: +77, opacity: 1}, 750, "easeOutBounce");
						}
						$("#left").html("<div id=\"sent\"><h5>Email został wysłany, dziękujemy za kontakt!</h5><div id=\"tick_img\"></div><div id=\"mail_img\"></div></div>");
						$("#mail_img").animate({left: +256, opacity: 1}, 500, "easeOutSine", showTick);
					
					},
				    error: function(XMLHttpRequest, textStatus, errorThrown) {
						
						alert ("Oops, wystąpił błąd podczas przesyłania wiadomości, spróbuj jeszcze raz: "+textStatus);
						
					}
					
				}); //end of ajax
				
			} // end myForm.valid()
			
		}); // end myForm.submit();
		
	}, // end of init
	
	slide : function() {
		
		this.navLi = $("#pageLinks > li").hover(
		
			function(){
				// mouseover
				$(this).find("> ul").stop(true, true).slideDown(650, "easeInOutQuart");
			},
			function(){
				// mouseout
				$(this).find("> ul").stop(true, true).fadeOut(100);
			}
			
		);
	}

} // end of mainObject