/**
 * AJAX Nette Framwork plugin for jQuery
 *
 * @copyright   Copyright (c) 2009 Jan Marek
 * @license     MIT
 * @link        http://nettephp.com/cs/extras/jquery-ajax
 * @version     0.2
 */

jQuery.extend({
	nette: {
		updateSnippet: function (id, data) {
			$("#" + id).html(data).find("form").each(function () {
				nette.initForm($(this).get(0));
			});
		},

		success: function (payload) {
			if (payload.redirect) {
				window.location.href = payload.redirect;
				return;
			}

			if (payload.snippets) {
				for (var i in payload.snippets) {
					jQuery.nette.updateSnippet(i, payload.snippets[i]);
				}
			}
		}
	}
});

jQuery.ajaxSetup({
	success: jQuery.nette.success
	/*error: function (request, status, error) {
		alert(request.responseText);
	}*/
	//dataType: "json"
});

$(function () {
	$('<div id="ajax-spinner"></div>').appendTo("body").ajaxStop(function () {
		$(this).hide().css({
			position: "fixed",
			left: "50%",
			top: "50%"
		});
	}).hide(0);
});

$("a[rel=ajax]").live("click", function (event) {
    event.preventDefault();

    $.post(this.href);

	$("#ajax-spinner").show().css({
		position: "absolute",
		left: event.pageX + 20,
		top: event.pageY + 40
	});
});

