var ajax;
var dadosUsuario;
var idTimeout;
var qual;
// ------- cria o objeto e faz a requisição -------
function requisicaoHTTP(tipo,url,assinc, xQual){
	qual = xQual;
	if(window.XMLHttpRequest){	  // Mozilla, Safari,...
		ajax = new XMLHttpRequest();
	} 
	else if (window.ActiveXObject){	// IE
		ajax = new ActiveXObject("Msxml2.XMLHTTP");
		if (!ajax) {
			ajax = new ActiveXObject("Microsoft.XMLHTTP");
		}
    }      
    
	if(ajax)	// iniciou com sucesso
		iniciaRequisicao(tipo,url,assinc);
	else
		alert("Seu navegador não possui suporte a essa aplicação!");
}

// ------- Inicializa o objeto criado e envia os dados (se existirem) -------
function iniciaRequisicao(tipo,url,bool){
	ajax.onreadystatechange=trataResposta;
	ajax.open(tipo,url,bool);
//	idTimeout = setTimeout(tempoEsgotado, 10000);
	ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=ISO-8859-1");
	//ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
	//ajax.overrideMimeType("text/XML");   /* usado somente no Mozilla */
	ajax.send(dadosUsuario);
}
// ------- Trata a resposta do servidor -------
function trataResposta(){
	if(ajax.readyState == 4){
//		clearTimeout(idTimeout);
		if(ajax.status == 200){
			if (qual == 1){
				trataDadosVerificaUrl();  // criar essa função no seu programa
			} else if (qual == 2){
				trataDadosEnquete();  // criar essa função no seu programa
			} else if (qual == 3){
				trataDadosComentario();  // criar essa função no seu programa
			} else if (qual == 4){
				trataDadosComunicarErro();  // criar essa função no seu programa
			} else if (qual == 5){
				trataDadosEnviarEmail();  // criar essa função no seu programa
			} else if (qual == 6){
				trataDadosJanelaNoticias();  // criar essa função no seu programa
			} else if (qual == 10){
				trataAnunciosBusca();  // criar essa função no seu programa
			} else if (qual == 11){
				trataAnunciosBusca2();  // criar essa função no seu programa
			} else {
				trataDados();  // criar essa função no seu programa
			}
		} else {
			alert("Problema na comunicação com o objeto XMLHttpRequest.(Sugestoes)");
		}
	}
}

// ------- Atingiu o tempo limite -------
function tempoEsgotado(){
	ajax.abort();
	alert("Problema na comunicação com o servidor. Tente acessar mais tarde. (Sugestoes)");
}
