// JavaScript Document
//*******************************************************************
//*	Criador:			Jaime Peixe									*
//*	Data:				24/10/2007									*
//*	Última Alteração:	27/11/2007									*
//*	Funcionalidade:		Exibir e/ou Executar Conteúdo Dinamicamente	*
//*******************************************************************
var xmlHttpObj=null;

function ajax(metodos,enderecos,parametros,objs,retornos){
	var metodosAjax		= metodos.toString().split(',');
	var urlsAjax 		= enderecos.toString().split(',');
	var parametrosAjax	= parametros.toString().split(',');
	var objsAjax 		= objs.toString().split(',');
	var retornosAjax 	= retornos.toString().split(',');

	for(a = 0; a < metodosAjax.length; a++){
		envioAjax = '';
		if(Number(metodosAjax[a]) == 0){
			metodoAjax 	= "GET";
			urlAjax 	= urlsAjax[a] + '?' + parametrosAjax[a];
			envioAjax	= null;
		} else {
			if(Number(metodosAjax[a]) == 1){
				metodoAjax 	= "POST";
				urlAjax 	= urlsAjax[a] + '?' + parametrosAjax[a];
				if(parametros != ''){
					envioAjax	= parametrosAjax[a];
				} else {
					envioAjax	= "a=";	
				}
			}
		}

		sendData(metodoAjax,urlAjax,objsAjax[a],retornosAjax[a],envioAjax);
	}
} 

function GetXmlHttpObject(){ 
	var objXMLHttp = null;
  	
	try
    {    // Firefox, Opera 8.0+, Safari    
		objXMLHttp=new XMLHttpRequest();    
	}
  	catch (e)
    {    // Internet Explorer    
		try
    	{     
			objXMLHttp=new ActiveXObject("Msxml2.XMLHTTP");     
		}
    	catch (e)
    	{      
			try
       		{ 
				objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP"); 
			}
    		catch (e)
       		{        
				return false;        
			}      
		}    
	}  

	return objXMLHttp
} 

function sendData(metodoAjaxAux,urlAjaxAux,objAjaxAux,retornoAjaxAux,envioAjaxAux){
	var xmlHttpObj = GetXmlHttpObject();

	if (xmlHttpObj==null){
		alert ("O seu navegador não suporta HTTP Request!");
		return false;
	} 

	xmlHttpObj.open(metodoAjaxAux,urlAjaxAux,true);

	switch(retornoAjaxAux){
		case 0:
			xmlHttpObj.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
			xmlHttpObj.setRequestHeader("Cache-Control", "no-store, no-cache, must-revalidate");
			xmlHttpObj.setRequestHeader("Cache-Control", "post-check=0, pre-check=0");
			xmlHttpObj.setRequestHeader("Pragma", "no-cache");
		break;
		case 1:
			xmlHttpObj.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
			xmlHttpObj.setRequestHeader("Cache-Control", "no-store, no-cache, must-revalidate");
			xmlHttpObj.setRequestHeader("Cache-Control", "post-check=0, pre-check=0");
			xmlHttpObj.setRequestHeader("Pragma", "no-cache");
		break;
		case 2:
			xmlHttpObj.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
			xmlHttpObj.setRequestHeader("Cache-Control", "no-store, no-cache, must-revalidate");
			xmlHttpObj.setRequestHeader("Cache-Control", "post-check=0, pre-check=0");
			xmlHttpObj.setRequestHeader("Pragma", "no-cache");
		break;
	}

	xmlHttpObj.onreadystatechange = function(){
		switch(xmlHttpObj.readyState){
			case 0:
				return false;	
			break;
			case 1:
				return false;	
			break;
			case 2:
				return false;	
			break;
			case 3:
				return false;	
			break;
			case 4:
				switch(Number(retornoAjaxAux)){
					case 0:
						return xmlHttpObj.responseText;	
					break;
					case 1:
						document.getElementById(objAjaxAux).innerHTML = xmlHttpObj.responseText;
					break;
					case 2:
						return false;
					break;
				}
			break;
		}
	}

	xmlHttpObj.send(envioAjaxAux);
}