var idOutput = '';   // contenitore dei risultati
var idOutputTratta = '';   // contenitore dei risultati



function crawl(script, dep, arr, and, rit, dir, per, page, soloand, tdep, tarr)
{   


if(page==null) page = "null";
if(tdep==null) tdep = "null";
if(tarr==null) tarr = "null";
  

   idOutput=document.getElementById('risultati');
   idOutputTratta=document.getElementById('dettaglio-tratta');
   if(script == "lastminute") {
	   	if(soloand==0){
		idOutputTratta.style.display = 'none';
   		idOutput.innerHTML = '<div class="loading"><strong>Stiamo cercando il tuo volo<br />Partenza da: '+tdep+'<br />Arrivo a: '+tarr+'<br /><br />Andata: '+and+'<br />Ritorno: '+rit+'</strong></div>';
   		}else{
		idOutputTratta.style.display = 'none';
   		idOutput.innerHTML = '<div class="loading"><strong>Stiamo cercando il tuo volo<br />Partenza da: '+tdep+'<br />Arrivo a: '+tarr+'<br /><br />Andata: '+and+'</strong></div>';
   		}
   }
   
   if (XMLHttp)
   {
      try
      {
         if (XMLHttp.readyState==XHS_COMPLETE || XMLHttp.readyState==XHS_UNINIT)
         {
			 
	if(and != 0 && rit != 0) {

	var sdata = and.split("/");
	var edata = rit.split("/");

	day = sdata[0];
	month = sdata[1];
	year = sdata[2];
	nday = edata[0];
	nmonth = edata[1];
	nyear = edata[2];

	} else {

	var data = new Date();
	var time = data.getTime();
	start = time + (30*24*60*60000);
	end = time + (37*24*60*60000);

	var sdata = new Date(start);
	var edata = new Date(end);
	var day = sdata.getDate();
	var month = sdata.getMonth();
	var year = sdata.getFullYear();
	var nday = edata.getDate();
	var nmonth = edata.getMonth();
	var nyear = edata.getFullYear();

	month = month+1;
	nmonth = nmonth+1;

	parseInt(day) < 10 ? day = "0" + day : null;
	parseInt(month) < 10 ? month = "0" + month : null;
	parseInt(nday) < 10 ? nday = "0" + nday : null;
	parseInt(nmonth) < 10 ? nmonth = "0" + nmonth : null;
	}



	if(script == "lastminute") {
		

	var user = 'SAGT=L35&';
	var pass = 'PSWD=TRAV3LDOUBL3!12&';
	var param = 'CLID=61759&DEPT='+ dep +'&ARRV=' + arr + '&DDAT='+day+'/'+month+'/'+year+'&';
	
	if(soloand==0)
	param += 'RDAT='+nday+'/'+nmonth+'/'+nyear+'&';
	
	var source = "ababababababababababababa";
	var param2 = 'ADTS='+per+'&CHDS=0&INFS=0&CLSS=Y&CARR=&DIRF=0&source=' + source;
	var total = user + pass + param + param2;
	var queryString = 'cgi-bin/lfe/ext_feed2.cgi?' + total;
	
	if(soloand==0)
	var url='lib/phpProxyLastminute.php?soloand='+soloand+'&persone='+per+'&page='+page+'&diretto='+ dir +'&orario='+day + month + year + nday + nmonth + nyear+'&par='+dep+'&des='+arr+'&u=' + encodeURIComponent('http://clfe-ext.lastminute.com/' + queryString);
	else
	var url='lib/phpProxyLastminute.php?soloand='+soloand+'&persone='+per+'&page='+page+'&diretto='+ dir +'&orario='+day + month + year + '30102100&par='+dep+'&des='+arr+'&u=' + encodeURIComponent('http://clfe-ext.lastminute.com/' + queryString);
	
	//alert('http://clfe-ext.lastminute.com/' + queryString);

} else if(script == "opodo") {



if(soloand==0)
ar='R';
else
ar='O';


	var total = 'reset=true&departureAirportCode='+ dep +'&arrivalAirportCode=' + arr + '&tripType='+ar+'&departureDay='+day+'&departureMonth='+year + month+'&departureTime=ANY&returnDay='+nday+'&returnMonth='+nyear + nmonth+'&returnTime=ANY&numberOfAdults='+per+'&numberOfChildren=0&numberOfInfants=0&searchLowCost=true&cabinType=E&CMP=it-Azzurri-fl-000001';
	var queryString = 'simpleXml?' + total;

	if(soloand==0)
	var url='lib/phpProxyOpodo.php?soloand='+soloand+'&persone='+per+'&page='+page+'&diretto='+ dir +'&orario='+day + month + year + nday + nmonth + nyear+'&par='+dep+'&des='+arr+'&u=' + encodeURIComponent('http://xml.opodo.it/opodo/flights/' + queryString);
	else
	var url='lib/phpProxyOpodo.php?soloand='+soloand+'&persone='+per+'&page='+page+'&diretto='+ dir +'&orario='+day + month + year + '30102100&par='+dep+'&des='+arr+'&u=' + encodeURIComponent('http://xml.opodo.it/opodo/flights/' + queryString);
	
	

} else if(script == "expedia") {
	
	

	var url='lib/phpProxyExpedia.php?persone='+per+'page='+page+'&o='+opo+'&diretto='+ dir +'&orario='+day + month + year + nday + nmonth + nyear+'&par='+dep+'&des='+arr;

}

			
            XMLHttp.open('GET',url,true);
            XMLHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
            XMLHttp.onreadystatechange=crawl_StateChange;
            XMLHttp.send(null);
			
         }
      }
      catch(e)
      {
         idOutput.innerHTML='Errore1: ' + e.toString();
      }
   }
} 

function crawl_StateChange()
{ 
   if (XMLHttp.readyState==XHS_COMPLETE)
   {
      if (XMLHttp.status==200)
      {   
         try
         {
            crawl_Response();
         }
         catch(e)
         {
            idOutput.innerHTML='Errore2: ' + e.toString();
         }   
      }
      else
      {
         idOutput.innerHTML='Errore3: ' + XMLHttp.status + XMLHttp.statusText;
		 crawl_Response();
      }
   }
}

function crawl_Response()
{
// leggo il testo della pagina
   var resp=XMLHttp.responseText;

// cerco l'id di categoria da passare e/o l'id del prodotto successivo e il tipo di scansione
//var match = /s(amp)le/i.exec("Sample text")

var totale=resp;

//alert(totale);

var s = totale.split("|");

//alert(s);
var feed, par, des, date, dp, da, dir, per, page;

var feed = s[0];
var par = s[1];
var des = s[2];
var date = s[3];
var data = date.split('*');
var dp = data[0];
var da = data[1];
var dir = s[4];
var per = s[6];
var page = s[7];
var soloand = s[8];



if(feed == 'finee') {
var html = s[9].split('*int*');

idOutputTratta.style.display = 'block';
idOutputTratta.innerHTML = html[0];
idOutput.innerHTML = html[1];
} else if(feed == 'opodo') {
crawl('opodo',par,des,dp,da,dir,per,page,soloand);
} else if(feed == 'termi') {
crawl('terminala',par,des,dp,da,dir);
} else if(feed == 'expedia') {
crawl('expedia',par,des,dp,da,dir,per,page,soloand);
}

}
