function ajax(paramSend, posAct, idDest)
{
	request = (window.XMLHttpRequest) ? new XMLHttpRequest() : (window.ActiveXObject) ? new ActiveXObject("Microsoft.XMLHTTP") : false ;
	request.open("GET",paramSend,true);
	request.onreadystatechange=function()  
	{ 
		if (request.readyState==4)  
		{ 
			switch(posAct)
			{
				case 1://insercao de dados
					var packData =  request.responseText.split('|');
					if(parseInt(packData[0]))
					{
						actForm = document.getElementById(idDest).action;
						
						if(actForm != '')//ativa o delay de envio se tiver action, para nao ativar usar action vazio ou nao colocar o atributo
						{
							window.setTimeout(function() { document.location.href = actForm;}, 2000);
						}
					}
					document.getElementById('msgEnvio').innerHTML = packData[1];
					document.getElementById('msgEnvio').style.visibility = 'visible';					
				break
				
				case 2://trata Login
					var packData = request.responseText.split('|');
					var idDestino =idDest.split(',');			
					
					if (parseInt(packData[0])) 
					{
						document.getElementById(idDestino[0]).innerHTML = packData[1];
						document.getElementById(idDestino[1]).innerHTML = '';
						document.getElementById('bloco1').className = document.getElementById('bloco1').className.replace('disNone', 'disBlock');
						document.getElementById('bloco2').className = document.getElementById('bloco2').className.replace('disNone', 'disBlock');
						document.getElementById('bloco3').className = document.getElementById('bloco3').className.replace('disNone', 'disBlock');						
						document.getElementById('bloco4').className = document.getElementById('bloco4').className.replace('disNone', 'disBlock');						
						document.getElementById('bloco5').className = document.getElementById('bloco5').className.replace('disNone', 'disBlock');
						document.getElementById('bloco6').className = document.getElementById('bloco6').className.replace('disNone', 'disBlock');												
						document.getElementById('bloco7').className = document.getElementById('bloco7').className.replace('disNone', 'disBlock');
                                                document.getElementById('bloco8').className = document.getElementById('bloco8').className.replace('disNone', 'disBlock');
                                                document.getElementById('bloco9').className = document.getElementById('bloco9').className.replace('disNone', 'disBlock');
					}else {
						document.getElementById(idDestino[1]).innerHTML =  '<p style="color:#990000;  font-weight:bold; line-height:30px; margin:170px 0px 0px 75px">'+packData[1]+'</p>';					
					}			
				break;

				case 3:
                                    
                                    if(request.responseText != 0)
                                    {
                                        var pack = request.responseText.split('|');
                                        document.getElementById(idDest).innerHTML = pack[1];
                                        addPackData(alvo, alvoNumStart,pack[0]);
                                    }else{
                                        document.getElementById(idDest).innerHTML = '<p style="margin:0px 0px 0px 10px">Não existem tópicos cadastrados!<p>';
                                    }
                                break;

				default:	
					//alert(request.responseText)
					document.getElementById(idDest).innerHTML = (request.responseText);
				break;	
			}
		} 
	} 
	request.send(null); 		
}
