// javascrip Document
/*
Basic ajax for starters  by PMH
home url: http://www.hermans.com.ar/piet
*/
var i=0;
var http_request = false;

function makeRequest(url,foo,params,time,method,returnfunction) {
	// alert (params);

	http_request = false;

	if (window.XMLHttpRequest) { // Mozilla, Safari,...
		http_request = new XMLHttpRequest();
		if (http_request.overrideMimeType) {
			http_request.overrideMimeType('text/xml');
			// Ver nota sobre esta linea al final
		}
	} else if (window.ActiveXObject) { // IE
		try {
			http_request = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
				http_request = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e) {}
		}
	}

	if (!http_request) {
		alert('Falla :( No es posible crear una instancia XMLHTTP');
		return false;
	}

	var element = document.getElementById(foo);
	
	http_request.onreadystatechange = function alertContents() {
		if (http_request.readyState==1) {
			element.innerHTML='<img src="_scmimg/main/loading.gif" alt="" width="32" height="32" class="loading">';
		}
		if (http_request.readyState == 4) {
			if (http_request.status == 200) {
				// switch segun el resultado
				var elvalor = http_request.responseText;
				var testerr = elvalor.substring(0,5);
				// alert(elvalor);
				
				element.style.visibility="visible"; 
				switch (testerr) {
					case "error":
						// var elvalor = val;
						element.style.color="#FF0000"; 
						element.style.background="#FFFFFF"; 
						// elementos personalizados  lo bruto
						element.style.height="300px"; 
						element.style.font="bold 11px arial"; 
						// element.style.background="#FFF"; 
						element.style.border="1px solid #FF0000"; 
						// dont erase the div content & dont call back function
						time=0;
						returnfunction='';
						element.innerHTML = elvalor; 
					break;
					
					default:
						// if no return function set, adjust the style of foo here.
						if (returnfunction == '') {
							element.style.height="40px"; 
							element.style.border="1px solid #009000"; 
							element.style.color="#006633"; 
							element.style.font="normal 11px arial"; 
						}
						element.innerHTML = elvalor ; 
					break;
				}

				// clear the div in some time
				codeSnippet = "resetdivs1(\""+foo+"\");";
				if (time>0) setTimeout(codeSnippet,time);

				// if set, return a function call to adjust the style of foo + whatever you may need after
				if (returnfunction != '') {
					codeSnippet = returnfunction + "(\""+foo+"\");";
					// codeSnippet;
					eval(codeSnippet);
				}
				
				
			} else {
				alert('Hubo problemas con la petici&oacute;n.' + url);
			}
		} 

	}
	;
	// alert(url);
	if (!method)method='GET';
	// alert(method); 
	if (method == 'GET') {
		http_request.open(method, url, true);
		http_request.send(null);
	} else {
		http_request.open("POST", url, true);
		http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		http_request.setRequestHeader("Content-length", params.length);
		http_request.setRequestHeader("Connection", "close");
		http_request.send(params);
	}

}


function resetdivs1 (foo){
	// alert (foo);
	//var elemento = document.getElementById(element);
	var element = document.getElementById(foo);
	element.style.visibility="hidden";
}
