var Ajax = {};

Ajax.prepareBtn = function(obj)
{
	obj = (obj instanceof jQuery) ? obj : $('#' + obj);

	obj[0].oldVal = obj.val();
	obj.val('...');
	obj.attr('disabled', true);
	obj.addClass('btn_disabled');
};

Ajax.resetBtn = function(obj)
{
	obj = (obj instanceof jQuery) ? obj : $('#' + obj);

	obj.attr('value', obj[0].oldVal);
	obj.attr('disabled', false);
	obj.removeClass('btn_disabled');
};

Ajax.request = function(params)
{
	if (params.idForm != undefined)
	{
		var btnSubmit = $('#' + params.idForm + ' input[type=submit]');

		if (btnSubmit.length)
		{
			this.prepareBtn(btnSubmit);
			var self = this;
		}

		$.post(params.url, $('#' + params.idForm).serialize(), function()
		{
			if (self)
			{
				self.resetBtn(btnSubmit);
			}
		}, "script");
	}
	else
	{
		if (params.idBtn)
		{
			this.prepareBtn(params.idBtn);
			var self = this;
		}

		$.post(params.url, params.dados, function()
		{
			if (self)
			{
				self.resetBtn(params.idBtn);
			}
		}, "script");
	}
};
