/**
* Cria o Ajax que interage com o Script para chamar a geração e emissão do boleto
*
* Script baseado no script utilizado pela classe AJAX File Uploader disponível em
* http://www.phpclasses.org/browse/package/2759.html
*
* @author Sandney Farias da Cunha <a href ="mailto:sandney@fejal.com.br">sandney@fejal.com.br</a>
*/
var http	= createRequestObject();
var idArea;

/**
* Cria a instância do XHLHTTP
*
* @return XMLHTTP requestObject 
*/
function createRequestObject() {
    var requestObject;
    var browser = navigator.appName;
    
    if (browser == "Microsoft Internet Explorer") {

		try {
			requestObject = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
				requestObject = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e) {
				requestObject = false;
			}
		} // try {
			
    } else {
        requestObject = new XMLHttpRequest();
    } // if (browser == "Microsoft Internet Explorer") {
		
    return requestObject;    
}

/**
* Faz uma requisição utilizando o método especificado
*
* @param STRING tipo 		Indica o tipo da requisição que pode ser GET ou POST
* @param STRING url 		URL do programa que deverá ser executado
* @param STRING parametros	Parâmetros que deverão ser passados
*/
function makeRequest(tipo, url, parametros) {

	http.onreadystatechange = handleResponse;
	
	if ( tipo == "POST" ) {
		http.open('POST', url, true);
		http.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		http.setRequestHeader("Content-length", parametros.length);
		http.setRequestHeader("Connection", "close");
		http.send(parametros);
	} else if ( tipo == "GET" ) {
   		http.open("GET", url); 
   		http.send(null);   		
	}

}


/**
* Faz a chamada para a geração do boleto
*
* @param STRING 	mes			Mês da visualização do calendário
* @param STRING 	ano			Ano da visualização do calendário
* @param INTEGER 	id			Prova cuja reposição será feita
*/
function mostraCalendario(mes, ano, id) {
					
	idArea = id; 
	
	//Monta os parametros
	var parametros = "mes=" + mes + "&ano=" + ano;
	
	// Faz a requisição
	makeRequest("POST","/calendario/montaCalendario.php", parametros);
}

/**
* Captura o retorno do script que foi chamado
*
* @return VOID
*/
function handleResponse() {

	if (http.readyState == 4) {

		if ( http.status == 200 ){
			retorno = http.responseText;
			document.getElementById(idArea).innerHTML = ""
			document.getElementById(idArea).innerHTML = retorno; 
		} else {
			alert("Ocorreram problemas na requisição");
		} // if ( http.status == 200 ){
    
	} // if (http.readyState == 4) {

}