﻿

// FUNZIONI AJAX
// Element by id
function elementid(id_elemento) {
	var elemento;
	if(document.getElementById)
		elemento = document.getElementById(id_elemento);
	else
		elemento = document.all[id_elemento];
	return elemento;
};


// Chiamata AJAX BASE1
function set_XMLHttpRequest() {
	var
		XHR = null,
		browser = navigator.userAgent.toUpperCase();
	
	if(typeof(XMLHttpRequest) === "function" || typeof(XMLHttpRequest) === "object")
		XHR = new XMLHttpRequest();
	else if(window.ActiveXObject && browser.indexOf("MSIE 4") < 0) {
		if(browser.indexOf("MSIE 5") < 0)
			XHR = new ActiveXObject("Msxml2.XMLHTTP");
		else
			XHR = new ActiveXObject("Microsoft.XMLHTTP");
	}
	return XHR;
};

// CHIAMATA AJAX DLM
function initXml(){
    try {
        x = eval("new ActiveXObject('Microsoft.XMLHTTP');");
        return x;
    } catch(e){
        try{
            x = eval("new XMLHttpRequest();");
            return x;
        } catch(e){
            alert("Questo browser non supporta AJAX");
            x = false;
            return x;
        }
    }
};

// FUNZIONA CAMBIA FRAME IN AJAX
function cambiaframe(modo,posizione) {
	var ajax = initXml();
	var elemento = elementid(posizione);

	if(ajax){	
				
		ajax.open("POST", modo, true);//impostazione richiesta asincrona in POST
		ajax.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		ajax.setRequestHeader("connection", "close");//rimozione dell'header "connection" come "keep alive"
		ajax.send("op=" + encodeURI(modo));//invio richiesta
		
		
		ajax.onreadystatechange = function() {
			if(ajax.readyState === 4) {
				if(ajax.status == 200){
					elemento.innerHTML = ajax.responseText;
				}else {
					alert('errore');
				}
			ajax = null
			} 
		}
	}
} 
