// JavaScript Document
var xmlHttp; 
    var requestURL = 'http://www.lombardiaaffari.it/'; 
    var is_ie = (navigator.userAgent.indexOf('MSIE') >= 0) ? 1 : 0; 
    var is_ie5 = (navigator.appVersion.indexOf("MSIE 5.5")!=-1) ? 1 : 0; 
    var is_opera = ((navigator.userAgent.indexOf("Opera6")!=-1)||(navigator.userAgent.indexOf("Opera/6")!=-1)) ? 1 : 0; 
    //netscape, safari, mozilla behave the same??? 
    var is_netscape = (navigator.userAgent.indexOf('Netscape') >= 0) ? 1 : 0;
	

	var _sContentLayer = '';
	var _sMethod = 'POST';
	var _sPostData = '';
	var _sBaseUrl = '';
	
	
	// RICEVE IL TESTO DI UNA PAGINA
    function GetXHTMLPage(sUrl, sContentLayer){ 
		
		_sPostData = 'sessrndnum=';
		_sMethod = 'GET';
		_sContentLayer = sContentLayer;
		_sBaseUrl = requestURL + sUrl;
		var iErr = DebugError();
		
		
		if (iErr != 1){ 
			// con un numero random, forzo il caricamento della pagina e non uso la cache
			var ran_unrounded=Math.random()*4;
			var ran_number=Math.round(ran_unrounded); 
			//appende la stringa da inviare 
			_sBaseUrl = _sBaseUrl + "?" + _sPostData + ran_number; 
			xmlHttp = GetXmlHttpObject(stateChangeHandler); 
			//carica l'url con le var POST o GET 
			xmlHttp_Get(xmlHttp, _sBaseUrl); 
				
		}
    } 
	
	// POSTA DELLE VARIABILI VERSO UNA PAGINA
    function PostXHTMLPage(sUrl, sPostData, sMethod, sContentLayer){ 
		
		_sPostData = sPostData;
		_sMethod = sMethod;
		_sContentLayer = sContentLayer;
		_sBaseUrl = sUrl;
		
		var iErr = DebugError();
		
		if (iErr != 1){
			if (_sPostData.length > 0){ 
				//appende la stringa da inviare 
				_sBaseUrl = _sBaseUrl + _sPostData; 
				xmlHttp = GetXmlHttpObject(stateChangeHandler); 
				//carica l'url con le var POST o GET 
				xmlHttp_Get(xmlHttp, _sBaseUrl); 
			} 
			else { 
				document.getElementById(_sContentLayer).innerHTML = 'nessuna variabile inviata'; 
			} 	
		}
    } 
	
	// VERIFICA LA VALIDITA' DELLE VARIABILI SPECIFICATE
	function DebugError(){
		var iReturn = 0;	// se è 0, nessun errore;
		// controllo la validità dell' URL di base
		if (_sBaseUrl.length <= 0){
			document.getElementById(_sContentLayer).innerHTML = 'specificare un url valido';
			iReturn = 1;
		}else{
			iReturn = 0;
		}
		// controllo la validitàdel layer dei contenuti
		if (_sContentLayer.length <= 0){
			document.getElementById(_sContentLayer).innerHTML = 'specificare un layer valido per la visualizzazione dei contenuti';
			iReturn_2 = 1;
		}else{
			iReturn_2 = 0;
		}
		
		if (iReturn == 1 || iReturn_2 == 1){
			return 1
		}else{
			return 0
		}
	}
	

    //stateChangeHandler will fire when the state has changed, i.e. data is received back 
    // This is non-blocking (asynchronous) 
    function stateChangeHandler() 
    { 
        //readyState of 4 or 'complete' represents that data has been returned 
        if (xmlHttp.readyState == 4 || xmlHttp.readyState == 'complete'){ 
            //Gather the results from the callback 
            var str = xmlHttp.responseText; 

            //Populate the innerHTML of the div with the results 
            document.getElementById(_sContentLayer).innerHTML = str; 
        } 
    } 

    // XMLHttp send GET request 
    function xmlHttp_Get(xmlhttp, url) { 
        xmlhttp.open(_sMethod, url, true); 
        xmlhttp.send(null); 
    } 

    function GetXmlHttpObject(handler) { 
        var objXmlHttp = null;    //Holds the local xmlHTTP object instance 

        //Depending on the browser, try to create the xmlHttp object 
        if (is_ie){ 
            //The object to create depends on version of IE 
            //If it isn't ie5, then default to the Msxml2.XMLHTTP object 
            var strObjName = (is_ie5) ? 'Microsoft.XMLHTTP' : 'Msxml2.XMLHTTP'; 
             
            //Attempt to create the object 
            try{ 
                objXmlHttp = new ActiveXObject(strObjName); 
                objXmlHttp.onreadystatechange = handler; 
            } 
            catch(e){ 
            //Object creation errored 
                alert('IE detected, but object could not be created. Verify that active scripting and activeX controls are enabled'); 
                return; 
            } 
        } 
        else if (is_opera){ 
            //Opera has some issues with xmlHttp object functionality 
            alert('Opera detected. The page may not behave as expected.'); 
            return; 
        } 
        else{ 
            // Mozilla | Netscape | Safari 
            objXmlHttp = new XMLHttpRequest(); 
            objXmlHttp.onload = handler; 
            objXmlHttp.onerror = handler; 
        } 
         
        //Return the instantiated object 
        return objXmlHttp; 
    } 