/*
 * jQuery SiteForm
 * version: 1.0.1 (2009/09/30)
 * @requires jQuery v1.3.2 or later
 *
 */
 
var baseCaptca = "/library/code/blockautosubmit/generateimage2.php?BASimgcharstr=dzWo0";

(function($) {

// name of function 	
$.fn.siteForm = function(settings) {
	// default values
	var config = {
		requiredString: "",
		freeString: "",
		action : "contatti",
		ajax: true

	};
	// override by option user
	if (settings) $.extend(config, settings);
   
	// funzione vera e propria
	return this.each(function() {
		obj = $(this); // creo un oggetto jquery
		// aggiungo al form un campo hidden con l'action
		obj.append("<input type='hidden' name='dbObject' value='"+config.action+"'>");
		// cerco tutti gli elementi che sono required ed aggiungo <em>*</em>
		/*var elements = $(".required");
		for(i=0;i<elements.length;i++){
			$(config.requiredString).insertAfter("#"+elements[i].id);
		}*/
		/*var elements = $("input[class!=required]");
		for(i=0;i<elements.length;i++){
			if (elements[i].id != "")
				$(config.freeString).insertAfter("#"+elements[i].id);
		}*/

		obj.validate({
			// se il form è valido allora faccio la chiamata ajax al controller

			submitHandler: function(form) {
				if (config.ajax) 
					$.post("/f_end_func/contact.php", obj.serialize(), function(json){
						$("#submit").attr("disabled", "disabled");
						$("#load").show();
						if (json != ""){
							// se non è vuoto vuol dire che ho degli errori
							// visualizzo la risposta errata e l'elenco degli errori
							$("#risposta_errata").show();
							$("#siteForm").show();
							$("#lista_errori").html("");
							$.each(json, function(i,item){
								$("#lista_errori").append("<li>"+item+"</li>");										
							});
							$("#submit").attr("enabled", "enabled");
							$("#load").hide();
							document.location = document.location + "#risposta_form";
							$("#BASentryField-IMAGE").attr("src", baseCaptca + '&' + (new Date()).getTime());
						}else{
							// in questo caso il form è corretto
							// visualizzo la risposta corretta e nascondo eventuali errori e il form
							$("#risposta_corretta").show();
							$("#risposta_errata").hide();
							$("#siteForm").hide();
						}
					}, "json");
				else
					form.submit();
			}
			
		});


	});
};

})(jQuery);

