$(document).ready(
	function()
	{
	
		jQuery.validator.messages.required = "";
		
		$("#formComplaint").bind("invalid-form.validate", function(e, validator) {
			var err = validator.numberOfInvalids();
			if (err) {
				$("div.errorBox div.message").html("Znaleziono " + err + " błędów");
				$("div.errorBox").show();
			} 
			else {
				$("div.errorBox").hide();
			}
		});
		var vForm = $("#formComplaint").validate({
			onkeyup: false,
			//errorLabelContainer: $("div.errorBox"),
			submitHandler: function() {
				$("div.errorBox").hide();
				formData = {
					formFirmName: $("input[name=formFirmName]").val(),
					formFirmAddress: $("input[name=formFirmAddress]").val(),
					formFirmOwner: $("input[name=formFirmOwner]").val(), 
					formFirmNip: $("input[name=formFirmNip]").val(),
					formFirmProvince: $("select[name=formFirmProvince] :selected").val(),
					formClientName: $("input[name=formClientName]").val(),
					formClientAddress: $("input[name=formClientAddress]").val(),
					formClientCity: $("input[name=formClientCity]").val(),
					formClientPhone: $("input[name=formClientPhone]").val(),
					formClientEmail: $("input[name=formClientEmail]").val(),
					formClientDesc: $("textarea[name=formClientDesc]").val(),
					formClientDescService: $("textarea[name=formClientDescService]").val()
				};
				
				$.ajax({  
					type: "POST",
					url: "send/complaint",
					dataType: "text",
					data: formData,
					beforeSend: function() {$("#sendDataStatus").show();},
					complete: function() {$("#sendDataStatus").hide()},
					success: function(msg) {
						var status = $.evalJSON(msg).status;
						$("#sendDataMessage").html('Dziękujemy za przesłanie zgłoszenia reklamacyjnego');
						$.clearForm();
					},
					error: function(request,error) {
						if (error = "timeout") {
							$("#sendDataMessage").html("Wystąpił błąd: Przekroczony czas żądania");
						}
						else {
							$("#sendDataMessage").html("Wystąpił błąd: " + error);
						}
					},
					resetForm: true
				});
			},
			rules: {
				formFirmName: {
					required: true
				},
				formFirmAddress: {
					required: true,
					minlength: 5
				},
				formFirmOwner: {
					required: true,
					minlength: 6
				},
				formFirmNip: {
					required: true
				},
				formClientName: {
					required: true,
					minlength: 6
				},
				formClientAddress: {
					required: true,
					minlength: 5
				},
				formClientCity: {
					required: true,
					minlength: 4
				},
				formClientPhone: {
					required: true,
					minlength: 6
				},
				formClientEmail: {
					required: true,
					minlength: 4,
					email: true
				},
				formClientDesc: {
					required: true,
					minlength: 20
				},
				formClientDescService: {
					required: true,
					minlength: 20
				}
            },
			messages: {
				formFirmName: "Podaj nazwę firmy",
				formFirmNip: "Podaj NIP firmy",
				formFirmAddress: "Podaj adres firmy",
				formFirmOwner: "Podaj właściciela firmy",
				formClientName: "Podaj swoję imię i nazwisko",
				formClientAddress: "Podaj swój adres",
				formClientCity: "Podaj swoje miasto",
				formClientPhone: "Podaj telefon kontaktowy",
				formClientEmail: "Podaj adres email",
				formClientDesc: "Wpisz minimum 20 znaków",
				formClientDescService: "Wpisz minimum 20 znaków"
			},
			debug:true
		});
		
		$("#btnSendComplaint").click(function() {
			$("#formComplaint").submit();
			$("#sendDataMessage").html('');
		}); 
		
		jQuery.clearForm = function() {
			vForm.hideErrors();
			vForm.resetForm();
			
			$("input").each(function(){ 
				$(this).val("");
			});
			$("select[name=formFirmProvince]").val("10");
			$("textarea[name=formClientDesc]").val("");
			$("textarea[name=formClientDescService]").val("");
			$("div.errorBox").hide();
		};
		
		$("input[name=formFirmNip]").mask("999-999-99-99");		

	});
