﻿var ajax = {
    REQ : null,
    isComplete: true,
    go : function(url, dataJsonOrQueryString, successAction, failedAction, dataType)
    {
    	  ajax.isComplete = false;
          ajax.REQ = $.ajax({
        	  	type: 'POST', 
        	  	url: url, 
        	  	dataType: (typeof dataType == 'undefined' ? 'json' : dataType.toLowerCase()), 
        	  	data: dataJsonOrQueryString, 
	          	success: function(data)
				{
					ajax.isComplete = true;
					successAction(data);
				}, 
	          	failed: function(data)
				{
					ajax.isComplete = true;
					failedAction(data);
				},
				error: function(error) 
				{
					ajax.isComplete = true;
			        alert('Erro. Sem retorno da requisicao.\n\n' + error.toString());
			    }

          });
          return ajax.REQ;
    },
    cancel : function()
    {
        try
        { 
        	ajax.isComplete = true;
            ajax.REQ.abort(); 
            ajax.REQ = null;
        } finally {}        
        return void(0);
    }       
}
