// JavaScript Document
/***********************************************************/

/***********************************************************/

/***************            AJAX            ****************/

 

/** FUNZIONI */

 



// funzione per prendere un elemento con id univoco

		function prendiElementoDaId(id_elemento) {

				   var elemento;

				   if(document.getElementById)

							   elemento = document.getElementById(id_elemento);

				   else

							   elemento = document.all[id_elemento];

				   return elemento;

		};



// funzione per assegnare un oggetto XMLHttpRequest

	function assegnaXMLHttpRequest() {

			   var

						   XHR = null,

						   browserUtente = navigator.userAgent.toUpperCase();

			   if(typeof(XMLHttpRequest) === "function" || typeof(XMLHttpRequest) === "object")

						   XHR = new XMLHttpRequest();

			   else if(window.ActiveXObject && browserUtente.indexOf("MSIE 4") < 0) {

						   if(browserUtente.indexOf("MSIE 5") < 0)

									   XHR = new ActiveXObject("Msxml2.XMLHTTP");

						   else

									   XHR = new ActiveXObject("Microsoft.XMLHTTP");

			   }

			   return XHR;

	};







// oggetto di verifica stato

		var readyState = {

				   INATTIVO:        0,

				   INIZIALIZZATO:  1,

				   RICHIESTA:      2,

				   RISPOSTA:      3,

				   COMPLETATO: 4

		};



// array descrittivo dei codici restituiti dal server

// [la scelta dell' array è per evitare problemi con vecchi browsers]

		var statusText = new Array();

		statusText[100] = "Continue";

		statusText[101] = "Switching Protocols";

		statusText[200] = "OK";

		statusText[201] = "Created";

		statusText[202] = "Accepted";

		statusText[203] = "Non-Authoritative Information";

		statusText[204] = "No Content";

		statusText[205] = "Reset Content";

		statusText[206] = "Partial Content";

		statusText[300] = "Multiple Choices";

		statusText[301] = "Moved Permanently";

		statusText[302] = "Found";

		statusText[303] = "See Other";

		statusText[304] = "Not Modified";

		statusText[305] = "Use Proxy";

		statusText[306] = "(unused, but reserved)";

		statusText[307] = "Temporary Redirect";

		statusText[400] = "Bad Request";

		statusText[401] = "Unauthorized";

		statusText[402] = "Payment Required";

		statusText[403] = "Forbidden";

		statusText[404] = "Not Found";

		statusText[405] = "Method Not Allowed";

		statusText[406] = "Not Acceptable";

		statusText[407] = "Proxy Authentication Required";

		statusText[408] = "Request Timeout";

		statusText[409] = "Conflict";

		statusText[410] = "Gone";

		statusText[411] = "Length Required";

		statusText[412] = "Precondition Failed";

		statusText[413] = "Request Entity Too Large";

		statusText[414] = "Request-URI Too Long";

		statusText[415] = "Unsupported Media Type";

		statusText[416] = "Requested Range Not Satisfiable";

		statusText[417] = "Expectation Failed";

		statusText[500] = "Internal Server Error";

		statusText[501] = "Not Implemented";

		statusText[502] = "Bad Gateway";

		statusText[503] = "Service Unavailable";

		statusText[504] = "Gateway Timeout";

		statusText[505] = "HTTP Version Not Supported";

		statusText[509] = "Bandwidth Limit Exceeded";







 

 

 

 

// funzione di caricamento testo,

// accetta una stringa contenente

// il nome di un file da leggere

function caricaTesto(id,nomeFile,imgHeight)

{

 

  // variabili di funzione

  var
    // assegnazione oggetto XMLHttpRequest
    ajax = assegnaXMLHttpRequest(),

	//elemento
    elemento=document.getElementById(id);
    display= elemento.style.display;


/*elemento.style.height=imgHeight+4;*/

//          if (display=="block") {

//                      elemento.style.display="none";

//          }

 

            //else

            //{

                        //if (display=="none")

                        //{

                        //nascondo l'immagine di default

                                   //elementoImg=document.getElementById('confezioni-mostarde-img');

                                   //elementoImg.style.display="none";

 

                                   //elemento.style.display="block";

                                   //elemento.innerHTML = "<div style=\"color:#FFF; background:#F00; font-size:12px;\">&nbsp;&nbsp;&nbsp;ELABORAZIONE IN CORSO...&nbsp;&nbsp;&nbsp;</div>";

 

                                   // se l'oggetto XMLHttpRequest non è nullo

                                   if(ajax)

                                   {

                                               // impostazione richiesta asincrona in GET

                                               // del file specificato

                                               ajax.open("get", nomeFile, true);

 

                                               // rimozione dell'header "connection" come "keep alive"

                                               //ajax.setRequestHeader("connection", "close");

 

                                               // impostazione controllo e stato della richiesta

                                               ajax.onreadystatechange = function()

                                               {

                                                           // verifica dello stato

                                                           if(ajax.readyState === readyState.COMPLETATO)

                                                           {

                                                                       // verifica della risposta da parte del server

                                                                       if(statusText[ajax.status] === "OK")

                                                                                  // operazione avvenuta con successo

                                                                                  elemento.innerHTML = ajax.responseText;

                                                                       else

                                                                       {

                                                                                  // errore di caricamento

                                                                                  elemento.innerHTML = "Impossibile effettuare l'operazione richiesta.<br />";

                                                                                  elemento.innerHTML += "Errore riscontrato: " + statusText[ajax.status];

                                                                       }

                                                           } 

                                               }

                                               // invio richiesta

                                               ajax.send(null);

                                   }

                        //}

            //} 

} 

 















 function caricaTestoCatalogo(id,nomeFile)
{
  // variabili di funzione
  var
		// assegnazione oggetto XMLHttpRequest
		ajax = assegnaXMLHttpRequest(),

		//elemento
		elemento=document.getElementById(id);
		display= elemento.style.display;


	if (nomeFile)
	{




	/*elemento.style.height=imgHeight+4;*/

			  if (display=="block") {
				// elemento.style.display="none";
			  } else if (display=="none") {
				 elemento.style.display="block";
			  }

	 
			   if(ajax)
			   {
				   ajax.open("get", nomeFile, true);
				   //ajax.setRequestHeader("connection", "close");
				   ajax.onreadystatechange = function()
				   {
					   // verifica dello stato
					   if(ajax.readyState === readyState.COMPLETATO)
					   {
						   // verifica della risposta da parte del server
						   if(statusText[ajax.status] === "OK")	// operazione avvenuta con successo
							  elemento.innerHTML = ajax.responseText;
						   else
						   {
								// errore di caricamento
							  elemento.innerHTML = "Impossibile effettuare l'operazione richiesta.<br />";
							  elemento.innerHTML += "Errore riscontrato: " + statusText[ajax.status];
						   }
					   } 
				   }
					// invio richiesta
					ajax.send(null);
				}

	}
} 

/***************            AJAX            ****************/

/***********************************************************/

/***********************************************************/

 

