(function($) {
	$.fn.FormSubmit = function(options) {
		var settings = $.extend({}, $.fn.FormSubmit.defaults, options);
		this.submit(function(e) {
			e.preventDefault();
			$(this).find('.' + settings.errorClass).remove();
			$(this).find('.' + settings.unvalidClass).removeClass(settings.unvalidClass);
			if ($.fn.FormSubmit.validate($(this), settings.requiredClass, settings.unvalidClass)) {
				//console.log("validation true");
				var data = $.fn.FormSubmit.dataParse($(this), settings.formElements);
				if($.fn.FormSubmit.ajaxSend(data, settings.submitScript)){
					message($(this),'Dziękujemy za wysłanie zapytania. Odpowiemy Państwu w ciągu 24 godzin',settings.successClass);
						$.fancybox.resize();
			
				}
			} else {
				message($(this),'Proszę uzupełnić brakujące pola',settings.errorClass);
					$.fancybox.resize();
			}
			return false
	
		});
	};

	function message(form,text, msgClass) {
		//console.log("fancybox.resize : ");
		
		if (msgClass == 'error') {
			//console.log("validation error");
			var div = $(' <div id="infoBox" class="'+msgClass+'"> ');
		    form.find("h1").after(div);
			div.text(text); 
		}else
		if (msgClass == 'success') {
			form.children().remove();
			var div = $(' <div id="infoBox" class="'+msgClass+'"> ')
		    form.append(div);
			div.text(text); 				
		}

	};	

	$.fn.FormSubmit.validate = function(form, requiredClass, unvalidClass) {
		var valid = true;
		form.find("." + requiredClass).each(function(index) {
			if (!($(this).val())) {
				valid = false;
				$(this).addClass(unvalidClass);
			}
		});
		return valid;
	};
	$.fn.FormSubmit.dataParse = function(form, elements) {
		var data = {};
		$(form).find(elements).each(function(index, element) {
			if ($(this).is(":radio:checked")) {
				data[$(this).attr('name')] = $(this).val();
			} else if ($(this).is(":text")) {
				data[$(this).attr('name')] = $(this).val();
			} else if ($(this).is("select")) {
				data[$(this).attr('name')] = $(this).val();
			}
		});
		return data;
	};
	$.fn.FormSubmit.ajaxSend = function(data, script) {
		var status = false;
		//console.log('Starting AjaxSend');
		status = $.ajax({
			type: "POST",
			data: data,
			async: false,
			url: script,
			success: function(retour) {
			}
		}).responseText;
		return status;
	};
	$.fn.FormSubmit.defaults = {
		submitScript: '/php/ajax-sender.php',
		formElements: 'input, select',
		requiredClass: 'required',
		unvalidClass: 'unvalid',
		errorClass: 'error',
		successClass: 'success'		

	};
})(jQuery);


$(document).ready(function() {

	$("#formLink").fancybox({
		'scrolling': 'no',
		'titleShow': false,
         'autoDimensions' : true,
          margin: 150,
		   padding: 0
	});
	
	$("#uniForm").FormSubmit();	
	$("#pracownicyWrapper").hide();
	$("#docWrapper").show();

	$("#zakres-uslug").click(function(){
		if($("#ksiegowosc").is(":checked")){
			$("#pracownicyWrapper").hide();
			$("#docWrapper").show();
		}else
		if($("#kadry").is(":checked")){
			$("#pracownicyWrapper").show();
			$("#docWrapper").hide();
			
		}else
		if($("#ksiegowosc-kadry").is(":checked")){
			$("#pracownicyWrapper").show();
			$("#docWrapper").show();
		}				
	});
	
	/*
	$("#formLink").hover(function() {
		if (($("#formWrapper").length) == 0) {
			var form = $('<div id="formWrapper" style="display:none">');
			$('body').append(form);
			form.load('/form/ #uniForm', function() {
				$("#uniForm").FormSubmit();	
				$("#pracownicyWrapper").hide();
				$("#docWrapper").show();

				$("#zakres-uslug").click(function(){
					if($("#ksiegowosc").is(":checked")){
						$("#pracownicyWrapper").hide();
						$("#docWrapper").show();
					}else
					if($("#kadry").is(":checked")){
						$("#pracownicyWrapper").show();
						$("#docWrapper").hide();
						
					}else
					if($("#ksiegowosc-kadry").is(":checked")){
						$("#pracownicyWrapper").show();
						$("#docWrapper").show();
					}				
				});
			});
		}
	});
	*/
});

