// inicializacia a spracovanie Zend From cez XML Ajax volanie
function initFormAjax(FormId) {

	this.idForm = "#" + FormId;
	var formActionUrl = '';

	this.doAjax = function() {

		this.formActionUrl = $(this.idForm).attr('action');

		// vycistenie hlasok
		$("#loginFormCommon .form-field-msg").html('');
		$("#form-" + FormId + "-msg").html('');

		var options = {
			url : this.formActionUrl + '?ajax=true',
			dataType : 'xml',
			beforeSubmit : showRequest, // pre-submit callback
			success : parseResponse
		// post-submit callback
		};

		$(this.idForm).submit(function() {
			$(this).ajaxSubmit(options);
			return false;
		});
	};

	function setMessages(data) {

		var countError = 0;

		$("#loginFormCommon .form-field-msg").html('');
		$("#form-" + FormId + "-msg").html('');

		// prechazdanie XML response
		$(data).find("ROOT").each(function() {

			$(this).find("FIELD_MSG").each(function() {
				var idTag = $(this).attr("name");
				var hodnota = $(this).text();
				if (hodnota.length > 0) {
					countError++;
				}
				$("#" + idTag).html(hodnota);
			});

			$(this).find("FORM_MSG").each(function() {
				var type = $(this).attr("type");
				var hodnota = $(this).text();
				if (hodnota.length > 0) {
					countError++;
				}
				$("#form-" + FormId + "-msg").html(hodnota);
			});

			$(this).find("PAGE_MSG").each(function() {
				// var type = $(this).attr("type");
				var hodnota = $(this).text();
				$(".page-msg").html(hodnota);
			});

			$(this).find("CAPTCHA").each(function() {
				var id = $(this).attr("id");
				var value = $(this).attr("value");
				var hodnota = $(this).text();
				// zmena obrazku
				$("#imgCaptcha").replaceWith(hodnota);
				// zmena hidden pola
				$("#" + id + "-hidden").val(value);
				// vycistenie inputu
				$("#" + id).val("");

			});
			
		});

		if (countError == 0) {
		  $("#form-" + FormId + "-msg").html('Odosielam údaje ...');
			//location.reload();
			
			$(data).find("ROOT").each(function() {
			$(this).find("FORM_REDIRECT_URL").each(function() {
         
        var redirect = $(this).text();
        document.location = redirect; 
        }); 
      }); 
			 
		}
	}

	// pre-submit callback
	function showRequest(data) {
		// ocistenie hlasok vo formulari
		$("#loginFormCommon .form-field-msg").html('');
		$("#form-" + FormId + "-msg").html('');
		// waiting animation
		$("#" + FormId + " .form-ajax-stat").show();
		return true;
	}

	// post-submit callback
	function parseResponse(data) {
		$("#" + FormId + " .form-ajax-stat").hide();
		setMessages(data);
	}

	this.isError = function() {
		$(this.idForm).ajaxError(function(event, request, settings, exception) {
			//for ( var p in request) {}
			$(this).append("<span style=\"color:red;\">Chyba pri spracovaní odosielania </li>");
			location.reload();
		});
	};
}

