var dominioserverp="";
var elcheckout="Javascript:document.forms['principal'].submit();";
var strRemove = "Presione OK para eliminar el tour del carrito de compras";
var g_TotalCost=0;  
var Promptdevalidacioncero="No podemos continuar con un carrito de compras vacío.";
var msgtaxincluded="--Todos los impuestos incluidos--";
MonetarySymbol        = ' $';

/////////////////////////////////////////////////////// COOKIES ///////////////////////////////////////////////////////////////////////
function FixCookieDate (date) {
   var base = new Date(0);
   var skew = base.getTime();

   date.setTime (date.getTime() - skew);
}
function GetCookie(name) {
  var dc = document.cookie;
  var prefix = name + "=";
  var begin = dc.indexOf("; " + prefix);
  if (begin == -1) {
    begin = dc.indexOf(prefix);
    if (begin != 0) return null;
  } else
    begin += 2;
  var end = document.cookie.indexOf(";", begin);
  if (end == -1)
    end = dc.length;
  return unescape(dc.substring(begin + prefix.length, end));
}


function SetCookie (name,value,expires,path,domain,secure) {
   document.cookie = name + "=" + escape (value) +
                     ((expires) ? "; expires=" + expires.toGMTString() : "") +
                     ((path) ? "; path=" + path : "") +
                     ((domain) ? "; domain=" + domain : "") +
                     ((secure) ? "; secure" : "");
   			 
}

function DeleteCookie (name,path,domain) {
   if ( GetCookie(name) ) {
      document.cookie = name + "=" +
                        ((path) ? "; path=" + path : "") +
                        ((domain) ? "; domain=" + domain : "") +
                        "; expires=Thu, 01-Jan-70 00:00:01 GMT";
   }
}

function currency(numero) {
var textFormat = "";
var t=0;
var str="";		 
str=numero	 
if (str.length != 0)
 {  
 for (var k = str.length-1; k>=0 ; k--)
	{
	t++;	
        if (t % 3 == 0)
	{ textFormat = "," + str.substr(k,1) + textFormat; 
	} else {
	textFormat =  str.substr(k,1) + textFormat;
	}	
        } 
	if (textFormat.substr(0,1) == ",")
	{ 
	document.write(textFormat.substr(1,textFormat.length-1));
	} else { 
	document.write(textFormat);
	}
   }
else {
   document.write("0");
 } 
}

function moneyFormat(input) {
   var dollars = Math.floor(input);
   var tmp = new String(input);

   for ( var decimalAt = 0; decimalAt < tmp.length; decimalAt++ ) {
      if ( tmp.charAt(decimalAt)=="." )
         break;
   }

   var cents  = "" + Math.round(input * 100);
   cents = cents.substring(cents.length-2, cents.length)
           dollars += ((tmp.charAt(decimalAt+2)=="9")&&(cents=="00"))? 1 : 0;

   if ( cents == "0" )
      cents = "00";

   return(dollars + "." + cents);
}

function ValidateCart() {   
     if ( g_TotalCost < 0.01 ) {
         alert(Promptdevalidacioncero);
         return false;
     }  
   return true;
}

function iniciocart(){
	var stringsalida="";
	stringsalida+="<table border=0 align=\"center\" cellpadding=\"0\" cellspacing=\"0\" width=\"600\">";		
	document.write(stringsalida);
}

function printdescuento(totaldescuento,codigodesc) {
var stringsalida="";
		   totaldescuento=MonetarySymbol+moneyFormat(totaldescuento);
		   stringsalida+="<tr><td width=\"16\">&nbsp;";
			
			stringsalida+="</td><td class=\"desccart\" colspan=\"3\">Promoci&oacute;n: &nbsp;"
			stringsalida+=codigodesc+"</td>";
			
      	    stringsalida+="</td><td  class=\"desccart\" align=\"right\">";	
	        stringsalida+="-"+totaldescuento+"</td></tr>"
   			
           document.write(stringsalida);
	
}
function showitem(nombretour,numitem,fecha,hora,adultos,ninos,rateadultos,rateninos,rateespecial,subtotal,stage,codigodesc,totaldescuento,imagen,clavetour) {
	var stringsalida="";	
	stringsalida+="";
	
	
	stringsalida+="<tr><td ";
		
	stringsalida+="class=\"carritoitem\" align=\"center\">";
	stringsalida+="<table border=0 cellpadding=\"4\" cellspacing=\"0\" width=\"600\">";
	stringsalida+="<tr><td rowspan=2 width=\"16\">";
	if (stage==1){
	stringsalida+="<a href=\"Javascript:RemoveItem("+numitem+");\">";	
	stringsalida+="<img src=\"/webimages/booking/trash_blanco.gif\" border=\"0\">";		
	stringsalida+="</a>";
    }
	stringsalida+="</td><td rowspan=2 class=\"tourcart\" width=\"100\">";
	stringsalida+="<img src=\""+imagen+"\" alt=\""+nombretour+"\"></td>";
	stringsalida+="<td class=\"tourcart\" colspan=3>"+nombretour+"</td></tr><tr><td width=\"40%\">";
	stringsalida+="<table border=0 cellpadding=\"0\" cellspacing=\"0\" width=\"100%\">";
	stringsalida+="<tr><td class=\"datoscart\"><span class=\"dateschedcart\">Fecha:&nbsp;</span>";
	stringsalida+=fecha+"</td></tr>";
	stringsalida+="<tr><td class=\"datoscart\"><span class=\"dateschedcart\">Horario:&nbsp;</span>";
	stringsalida+=hora+"</td></tr>"	
	stringsalida+="</table></td>";
	stringsalida+="<td width=\"30%\"><table border=0 cellpadding=\"0\" cellspacing=\"0\" width=\"100%\">";		
	stringsalida+="<tr><td class=\"datoscart\"><span class=\"dateschedcart\">Adultos:&nbsp;</span>";
	stringsalida+=adultos+"</td>";
	if (rateespecial!=0) {
	  stringsalida+="<td rowspan=\"2\" class=\"datoscart\" align=\"right\"> Especial:<Br>$"+rateespecial+" </td></tr>";
	}
	else{
		stringsalida+="<td class=\"datoscart\">&nbsp;&nbsp;$"+rateadultos+" pp</td></tr>";
		}
	
	stringsalida+="<tr><td class=\"datoscart\"><span class=\"dateschedcart\">Ni&ntilde;os:&nbsp;</span>";
	stringsalida+=ninos+"</td>";
	if (rateespecial==0) {
	   stringsalida+="<td class=\"datoscart\">&nbsp;&nbsp;$";
  	   stringsalida+=rateninos+" pp</td>";
		}
	stringsalida+="</tr></table>";

	 stringsalida+="</td><td  width=\"30%\" class=\"datoscart\" align=\"right\"><span class=\"dateschedcart\">Subtotal:</span><br>";
	
	stringsalida+=subtotal+"<br></td></tr>"
	
	if (totaldescuento!=0) {
		totaldescuento=MonetarySymbol+moneyFormat(totaldescuento);
		   stringsalida+="<tr><td width=\"16\">&nbsp;";
			
			stringsalida+="</td><td class=\"desccart\" colspan=\"3\">Promoci&oacute;n: &nbsp;"
			stringsalida+=codigodesc+"</td>";
			
      	    stringsalida+="</td><td  class=\"desccart\" align=\"right\">";	
	        stringsalida+="-"+totaldescuento+"</td></tr>"		   		
	}
		
	stringsalida+="</table></td></tr>";
				
	document.write(stringsalida);
	
}

function showcarttotales(total,bandcheckout) {
	var stringsalida="";
		 
	stringsalida+="</table>";
	stringsalida+="<table align=\"center\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" width=\"600\">";
	stringsalida+="<tr><td width=\"200\" align=\"right\">";
	
	stringsalida+="&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td>";
    stringsalida+="<td align=\"right\">";
	stringsalida+="<table width=\"100%\" border=\"0\" cellpadding=\"4\" cellspacing=\"0\">";
	stringsalida+="<tr><td colspan=\"3\" class=\"leytaxescart\">"+msgtaxincluded+"</td></tr>";
	stringsalida+="<tr><td colspan=\"3\" class=\"totalcart2\" align=\"right\">Total USD:";	
	stringsalida+=total;	
	stringsalida+="</td></tr></table></td></tr></table>";	
	document.write(stringsalida);
}

function AddCart(tour_clave,tour_date,tour_schedule,tour_numadults,tour_numchild,tourtarifaesp,tour_adultrate,tour_childrate,tour_nombre,cupondesc,descuentosp,descuentoa,descuenton,imagen,reshotel) {
   var itemnumber = 0;
   var bAlreadyInCart = false;    
   itemnumber = GetCookie("NumeroItem");           
	
   if ( itemnumber == null ) itemnumber = 0;
   if (tour_numadults=='') tour_numadults=0;
   if (tour_numchild=='')  tour_numchild=0;  
   if (tour_adultrate=='') tour_adultrate=0;  	  
   if (tour_childrate=='') tour_childrate=0;  
   if (tourtarifaesp=='') tourtarifaesp=0;  
   
   
   
   
   valoradulto=parseInt(tour_numadults,10);
   valornino=parseInt(tour_numchild,10);
   

   // DESCUENTOS
   valordescuentoa=valoradulto*parseFloat(descuentoa);
   valordescuenton=valornino*parseFloat(descuenton);
   valordescuentosp=parseFloat(descuentosp);
   
   totaldescuento=valordescuentoa+valordescuenton+valordescuentosp;
   
   if (tourtarifaesp!=0) {	
		valortotaladulto=0;
		valortotalnino=0;
		valortotaltotal=parseFloat(tourtarifaesp);       
	    }
	   else
	   {
		 valortotaladulto=valoradulto*parseFloat(tour_adultrate);
	     valortotalnino=valornino*parseFloat(tour_childrate);
	     valortotaltotal=valortotaladulto+valortotalnino;       
	   }				      
	 
   
	
   for ( w = 1; w <= itemnumber; w++ ) {	  
      NewOrder = "NTour." + w;
      database = "";
      database = GetCookie(NewOrder);

      Token0 = database.indexOf("|", 0);
      Token1 = database.indexOf("|", Token0+1);
      Token2 = database.indexOf("|", Token1+1);
      Token3 = database.indexOf("|", Token2+1);
      Token4 = database.indexOf("|", Token3+1);
	  Token5 = database.indexOf("|", Token4+1);
	  Token6 = database.indexOf("|", Token5+1);
	  Token7 = database.indexOf("|", Token6+1);
	  Token8 = database.indexOf("|", Token7+1);	  	  
  	  Token9 = database.indexOf("|", Token8+1);	  	  
  	  Token10 = database.indexOf("|", Token9+1);
	  Token11 = database.indexOf("|", Token10+1);
	  Token12 = database.indexOf("|", Token11+1);	 
  	 	  
      fields = new Array;
      fields[0] = database.substring( 0, Token0 );
      fields[1] = database.substring( Token0+1, Token1 );
      fields[2] = database.substring( Token1+1, Token2 );
      fields[3] = database.substring( Token2+1, Token3 );
      fields[4] = database.substring( Token3+1, Token4 );
      fields[5] = database.substring( Token4+1, Token5 );
	  fields[6] = database.substring( Token5+1, Token6 );
	  fields[7] = database.substring( Token6+1, Token7 );
	  fields[8] = database.substring( Token7+1, Token8 );
  	  fields[9] = database.substring( Token8+1, Token9 );
  	  fields[10] = database.substring( Token9+1, Token10 );
	  fields[11] = database.substring( Token10+1, Token11 );
	  fields[12] = database.substring( Token11+1, Token12 );	  
  	  fields[13] = database.substring( Token12+1, database.length );
  	    	  
      // EXISTE
      if ( fields[0] == tour_clave && fields[1]== tour_date && fields[2] == tour_schedule) {
         bAlreadyInCart = true;		
         dbUpdatedOrder = tour_clave+"|"+tour_date+"|"+tour_schedule+"|"+tour_numadults+"|"+tour_numchild+"|"+tourtarifaesp+"|"+tour_adultrate+"|"+tour_childrate+"|"+tour_nombre+"|"+valortotaltotal+"|"+cupondesc+"|"+totaldescuento+"|"+imagen+"|"+reshotel;
         strNewOrder = "NTour." + w;		  
         DeleteCookie(strNewOrder, "/",dominioserverp);
         SetCookie(strNewOrder, dbUpdatedOrder, null, "/",dominioserverp,null);
		 
         break;
      }
   }
   if ( !bAlreadyInCart ) {	   
      itemnumber++;  	 	  
      dbUpdatedOrder = tour_clave+"|"+tour_date+"|"+tour_schedule+"|"+tour_numadults+"|"+tour_numchild+"|"+tourtarifaesp+"|"+tour_adultrate+"|"+tour_childrate+"|"+tour_nombre+"|"+valortotaltotal+"|"+cupondesc+"|"+totaldescuento+"|"+imagen+"|"+reshotel;
      strNewOrder = "NTour." + itemnumber;
	  SetCookie("NumeroItem", itemnumber, null, "/",dominioserverp,null);
      SetCookie(strNewOrder, dbUpdatedOrder, null, "/",dominioserverp,null);
	  
   } 
}

function RemoveItem(RemOrder) {
   if ( confirm( strRemove ) ) {
      NumeroItem = GetCookie("NumeroItem");	  
      for ( z=RemOrder; z < NumeroItem; z++ ) {
         NewOrder1 = "NTour." + (z+1);		 
         NewOrder2 = "NTour." + (z);
         database = GetCookie(NewOrder1);
         SetCookie (NewOrder2, database, null, "/",dominioserverp,null);
		 
      }
      NewOrder = "NTour." + NumeroItem;
      SetCookie ("NumeroItem", NumeroItem-1, null, "/",dominioserverp,null);	  
      DeleteCookie(NewOrder, "/",dominioserverp);
	  
      location.href=location.href;
   }
}
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////// IMPRIME HIDDEN FIELDS ///////////////////////////////////////////////////////////////////////////
function printfieldsTour(fields,identificador) {
     var strOutput="";     
     strOutput += "<input type=hidden name=\"cart_tourclave"+identificador+"\" id=\"cart_tourclave"+identificador+"\" value=\"" + fields[0] + "\">";
	 strOutput += "<input type=hidden name=\"cart_tourdate"+identificador+"\" id=\"cart_tourdate"+identificador+"\" value=\"" + fields[1] + "\">";     
     strOutput += "<input type=hidden name=\"cart_tourschedule"+identificador+"\" id=\"cart_tourschedule"+identificador+"\" value=\"" + fields[2] + "\">";
     strOutput += "<input type=hidden name=\"cart_tournumadults"+identificador+"\" id=\"cart_tournumadults"+identificador+"\" value=\"" + fields[3] + "\">";
     strOutput += "<input type=hidden name=\"cart_tournumchild"+identificador+"\" id=\"cart_tournumchild"+identificador+"\" value=\"" + fields[4] + "\">";
	 strOutput += "<input type=hidden name=\"cart_tourrateesp"+identificador+"\" id=\"cart_tourrateesp"+identificador+"\"  value=\"" + fields[5] + "\">";
     strOutput += "<input type=hidden name=\"cart_touradultrate"+identificador+"\" id=\"cart_touradultrate"+identificador+"\" value=\"" + fields[6] + "\">";
     strOutput += "<input type=hidden name=\"cart_tourchildrate"+identificador+"\" id=\"cart_tourchildrate"+identificador+"\" value=\"" + fields[7] + "\">";
	 strOutput += "<input type=hidden name=\"cart_tournombre"+identificador+"\" id=\"cart_tournombre"+identificador+"\" value=\"" + fields[8] + "\">";
     strOutput += "<input type=hidden name=\"cart_tourtotal"+identificador+"\" id=\"cart_tourtotal"+identificador+"\" value=\"" + fields[9] + "\">";	 	 
	 strOutput += "<input type=hidden name=\"cart_cupondesc"+identificador+"\" id=\"cart_cupondesc"+identificador+"\" value=\"" + fields[10] + "\">";
 	 strOutput += "<input type=hidden name=\"cart_totaldescuento"+identificador+"\" id=\"cart_totaldescuento"+identificador+"\" value=\"" + fields[11] + "\">";
  	 strOutput += "<input type=hidden name=\"cart_hotel"+identificador+"\" id=\"cart_hotel"+identificador+"\" value=\"" + fields[13] + "\">";
     document.write(strOutput);
}




function printfieldsTotals(strTotal,cuantostours) {
var strOutput="";     
     strOutput += "<input type=hidden name=\"cart_totaltotal\" id=\"cart_totaltotal\" value=\"" + strTotal + "\">";
     strOutput += "<input type=hidden name=\"cart_num\" id=\"cart_num\" value=\"" + cuantostours + "\">";     
	document.write(strOutput);
}

///////////////////////////////////////////////////
function Cartstage(stage) {
   g_TotalCost=0;
   var itemnumber    = 0;          
   var tourscuantos    = 0;          
   var transferscuantos  = 0;    
   var addonscuantos  = 0;  
   var fTotal         = 0;
   var ftotaldep	  = 0;
   var ftotalbal	=0;
   var calculotot     = 0;
   
   var strTotal       = "";  
   var strdep	="";
   var strbal	="";

   iniciocart();
   /// PARA LOS TOURS 
   itemnumber = GetCookie("NumeroItem");    
   if ( itemnumber == null )
      itemnumber = 0;
	

  for ( t = 1; t <= itemnumber; t++ ) {
      NewOrder = "NTour." + t;
      database = "";
      database = GetCookie(NewOrder);
      Token0 = database.indexOf("|", 0);
      Token1 = database.indexOf("|", Token0+1);
      Token2 = database.indexOf("|", Token1+1);
      Token3 = database.indexOf("|", Token2+1);
      Token4 = database.indexOf("|", Token3+1);
	  Token5 = database.indexOf("|", Token4+1);
	  Token6 = database.indexOf("|", Token5+1);
	  Token7 = database.indexOf("|", Token6+1);
	  Token8 = database.indexOf("|", Token7+1);	  	  
  	  Token9 = database.indexOf("|", Token8+1);	  	  
  	  Token10 = database.indexOf("|", Token9+1);
	  Token11 = database.indexOf("|", Token10+1);
	  Token12 = database.indexOf("|", Token11+1);
	  
  	 	  
      fields = new Array;
      fields[0] = database.substring( 0, Token0 );
      fields[1] = database.substring( Token0+1, Token1 );
      fields[2] = database.substring( Token1+1, Token2 );
      fields[3] = database.substring( Token2+1, Token3 );
      fields[4] = database.substring( Token3+1, Token4 );
      fields[5] = database.substring( Token4+1, Token5 );
	  fields[6] = database.substring( Token5+1, Token6 );
	  fields[7] = database.substring( Token6+1, Token7 );
	  fields[8] = database.substring( Token7+1, Token8 );
  	  fields[9] = database.substring( Token8+1, Token9 );
  	  fields[10] = database.substring( Token9+1, Token10 );
	  fields[11] = database.substring( Token10+1, Token11 );
	  fields[12] = database.substring( Token11+1, Token12 );	  
  	  fields[13] = database.substring( Token12+1, database.length );  	   	  	  	  
	  
      subtotalItemmostrar=MonetarySymbol+moneyFormat(parseFloat(fields[9]));	
	  
	  if (parseFloat(fields[9])>0) {
	  
	  totaldeldescuento=parseFloat(fields[11]);
	  calculotot=parseFloat(fields[9])-parseFloat(fields[11]);	  
	  reshotel=fields[13];
	  fTotal     += calculotot;
      strTotal   = MonetarySymbol+moneyFormat(fTotal);      
  // SHOW EVERY TOUR ITEM WITH DISPLAY FUNCTION       	  	  	  
	  showitem(fields[8],t,fields[1],fields[2],fields[3],fields[4],fields[6],fields[7],fields[5],subtotalItemmostrar,stage,fields[10],totaldeldescuento,fields[12],fields[0]);
	  //if (stage==2){	        
	  printfieldsTour(fields,t);
	  //}
	  }
	
  }
  tourscuantos=t;


  
  
  if (fTotal==0) {
	   document.write("<tr><td class=\"tourcart\" align=\"center\" background=\"/scripts/graphicsshopcart/img_cartblanco.gif\"><br>Lo sentimos! Su carrito de compras esta vac&iacute;o.<br></td></tr>");
	   showcarttotales("$0",0);
	   }
	else{   	
     showcarttotales(strTotal,stage);
     }
   g_TotalCost = fTotal;
    	        
   printfieldsTotals(strTotal,tourscuantos-1);   
	 
   document.close();   
}


