﻿                               
                                 var MaxRooms = 4; //最大的房间数
                                 var HasHotel = 0;//1;有酒店；2;夏威夷酒店
                                 var Nights = 0; //行程住宿晚数（用于夏威夷单房加价计算）                   
                                 var OptionalItemArray = new Array();//自选项目名称数组
                                 var OptionalAdultArray = new Array();//自选项目成人费用
                                 var OptionalChildArray = new Array(); //自选项目儿童费用
                                 var OptionalAdultPersonArray = new Array(); //自选项目成人数量
                                 var OptionalChildPersonArray = new Array(); //自选项目儿童数量
                                 var DoubleArray = new Array(); //双人房间数;
                                 var TripleArray = new Array(); //三人房间
                                 var QuadrupleArray = new Array(); //四人房间
                                 var SingleArray = new Array();//单人房间
                                 var ChildArray = new Array();//儿童加价（夏威夷）
                                 var SingleSupplementArray = new Array(); //单房加价（夏威夷）
                                 var HotelArray = new Array();//酒店集合
                                 var priSdate = new Array();//日期间价格开始数组
                                 var priEdate = new Array();
                                 var IsPriDate = false;
                                 
                                 var LAhotel = new Array(); //洛杉矶酒店升级项目
                                 var LAadult = new Array(); //洛杉矶酒店价格
                                 
                                 var IsSales = false; //是否买二送一
                                 
                                 
                                 var DoubleRooms = 0; //双人房数量
                                 var TripleRooms = 0; //三人房
                                 var QuadrupleRooms = 0; //四人房
                                 var SingleRooms = 0; //单人房
                                 
                                 var pDouble = 0,pTriple = 0,pQuadreule = 0,pSingle = 0, pSingleSupplement = 0,pChild = 0,pAdult = 0;
                                 var AdultPerson = 0;
                                 var ChildPerson = 0;
                                 var TotalPrice = 0;
                                 var TotalOptionalPrice = 0;
                                
                                 function AccountPersonCount(){
                                    AdultPerson = parseInt($("#Torder_adult").val());
                                    ChildPerson = parseInt($("#Torder_child").val());
                                 }
                                 
                                 function SetRoomPerson(Rooms){                                                        
                                 for (var i = 1; i < 6;i ++)
                                 {
                                   if( i <= Rooms) $('#liR'+i).show('slow');
                                   else $('#liR'+i).hide('slow');
                                 }
                                }
                                
                                //无住宿行程
                                 function AccountSingleDayPrice()
                                 {                                    
                                    TotalPrice = 0;                                  
                                    if(Nights == 0  && document.getElementById('Hadult') && document.getElementById('Hchild'))
                                    {
                                       pAdult = parseInt($('#Hadult').val());
                                       pChild =  parseInt($('#Hchild').val());
                                       TotalPrice = AdultPerson * pAdult + ChildPerson * pChild;                                       
                                       $('#Ltotalprice').html(TotalPrice);
                                       $('#Order_Total').val(TotalPrice);
                                    }
                                 }
                                 
                                
                                 
                                 //计算自费项目
                                 function AccountOptionalPrice()
                                 {    
                                    TotalOptionalPrice = 0;
                                    for(var i=0; i < OptionalItemArray.length; i ++)
                                    {
                                       if( OptionalItemArray[i].checked)
                                       {                                          
                                          TotalOptionalPrice +=  OptionalAdultPersonArray[i].value  * parseFloat(OptionalAdultArray[i].value);
                                          if(!isNaN(OptionalChildArray[i].value)) TotalOptionalPrice +=  OptionalChildPersonArray[i].value * parseFloat(OptionalChildArray[i].value);    
                                          
                                       }
                                    }
                                    
                                    
                                    //-------LAHOTEL
                                    if( document.getElementById('Tlahotels'))
                                    {
                                      if (document.getElementById('Tlahotels').selectedIndex > 0  && LAhotel.length > 0)
                                      {
                                         var hotelid = $('#Tlahotels').val();
                                         var laadult = 0;
                                         for(var n = 0; n < LAhotel.length;n ++)
                                         {
                                            if(LAhotel[n].value == hotelid)
                                            {
                                               laadult = LAadult[n].value;
                                            }
                                         }
                                         
                                         if(laadult > 0)
                                         {
                                             var lanights = document.getElementById('Tlahotelnights').selectedIndex + 1;
                                              TotalOptionalPrice += laadult *  lanights * document.getElementById('Torder_rooms').selectedIndex;
                                         }
                                       }
                                    }
                                     ///------LAHOTEL        
                                                                        
                                     $('#Ltotaloptionalprice').html(TotalOptionalPrice);  
									 if($('#Ltotaloptionalprice').html() == "") $('#Ltotaloptionalprice').html("0.00");   
                                     $('#Order_Optional').val( TotalOptionalPrice ); 
                                 }
                                 
                                 function Total()
                                 {
                                     AccountPersonCount();  
                                      
                                     $('#Ltotaloptionalprice').html("0.00");  
                                     $('#Order_Optional').val('0');
                                     $('#Ltotalprice').html("0.00");
                                     $('#Order_Total').val("0"); 
                                     
                                     
                                     if ( Nights > 0 ){                                     
                                     GetRoomCount();
                                     AccountOptionalPrice();
                                     }else{
                                     AccountSingleDayPrice();
                                     AccountOptionalPrice();
                                     }
                                     
                                     if(document.getElementById("OptionalValue"))
                                     {
                                      $("#OptionalValue").val(GetOptionalValue());      
                                     }
                                     
                                     if( TotalPrice > 0 ) return true;
                                     else return false;
                                 }                       
                                
                                function GetRoomCount()
                                { 
                                                                 
                                   GetPrice();
                                   TotalPrice = 0;
                                   var ChooseAdultNumber = 0; //选择的成人人数
                                   var ChooseChildNumber = 0; //选择的儿童人数
                                   var ChooseRoomPersons = 0;
                                   var Rooms = document.getElementById('Torder_rooms').selectedIndex;
                                   if (Rooms == 0) 
                                   {
                                     alert("请选择您需要的房间数量!");
                                     document.getElementById('Torder_rooms').focus();
                                     return;
                                   }
                                     for (var i = 1; i < 6;i ++)
                                     {
                                       if( i <= Rooms)
                                       {
                                          ChooseRoomPersons = 0;
                                          ChooseAdultNumber += document.getElementById('Tor_a'+ i).selectedIndex;
                                          ChooseChildNumber += document.getElementById('Tor_c'+ i).selectedIndex;
                                          
                                          if( ChooseAdultNumber <= AdultPerson && ChooseChildNumber <= ChildPerson && document.getElementById('Tor_a'+ i).selectedIndex > 0 )
                                          {
                                                  if(document.getElementById('Tor_a'+ i).selectedIndex > 0)
                                                  {
                                                     ChooseRoomPersons = document.getElementById('Tor_a'+ i).selectedIndex + document.getElementById('Tor_c'+ i).selectedIndex;
                                                     if(ChooseRoomPersons  > MaxRooms)
                                                     {
                                                       alert('当前行程房间'+ i +'的最多入住人数为'+ MaxRooms + '人，请重新安排人数');
                                                       return;
                                                     }
                                                     else
                                                     {
                                                        var price = GetRoomPrice(document.getElementById('Tor_a'+ i).selectedIndex, document.getElementById('Tor_c'+ i).selectedIndex);
                                                        if(price == 0){
                                                           alert('当前没有提供此种房间类型，请重新选择房间！');
                                                           document.getElementById('Tor_a'+ i).options[0].selected = true;
                                                           document.getElementById('Tor_c'+ i).options[0].selected = true;
                                                           $('#liR'+i).hide();
                                                           document.getElementById('Torder_rooms').options[i - 1].selected = true;
                                                        }
                                                        else{
                                                          TotalPrice += price;
                                                       }
                                                     }                                             
                                                     
                                                  }
                                                  else
                                                  {
                                                    // $('liPriceMark' + i).innerHTML = "请选择房间"+ i +"安排的入住人数";
                                                  }
                                                  //判断选择的房间人数量结束       
                                           }                                           
                                           else //判断入住人数小于参团人数
                                           {
                                              if(i < Rooms ) //如果安排的人数错误项目不是选择的最后一个房间
                                              {
                                                  
                                              }
                                              else
                                              {
                                                  $('#liR'+i).hide();
                                                  document.getElementById('Tor_a'+ i).options[0].selected = true;
                                                  document.getElementById('Tor_c'+ i).options[0].selected = true;
                                                  document.getElementById('Torder_rooms').options[i - 1].selected = true;
                                              }
                                           }
                                         
                                          
                                       }//if
                                       
                                    }//forend
                                    
                                       if(ChooseAdultNumber != AdultPerson  )
                                      {
                                         alert("您安排的房间成人人数与参团成人人数不一致！");
                                      }
                                      else if(ChooseChildNumber != ChildPerson ) 
                                      {
                                        alert("您安排的房间儿童人数与参团儿童人数不一致！");
                                      }
                                      else
                                      {
                                       $('#Ltotalprice').html(TotalPrice);
                                        $('#Order_Total').val(TotalPrice);
                                      }
                                }                              
                               
                                
                                function GetRoomPrice(rAdult,rChild)
                                {
                                   var result = 0;
                                   if(rAdult ==1 && rChild == 0)
                                   {
                                     //单人房;
                                     if( HasHotel == 2){
                                     result = pSingleSupplement * Nights + pDouble;
                                     }
                                     else
                                     {
                                       result = pSingle;   
                                     }                                
                                   }
                                   else if(rAdult == 1 && rChild == 1)
                                   {
                                   //双人房：一大一小
                                      if( HasHotel == 2)
                                      {
                                        result = 0;
                                      }
                                      else
                                      {
                                        result = pDouble * 2;
                                      }
                                   }
                                   else if(rAdult == 2 && rChild == 0)
                                   {//双人房
                                     result = pDouble * 2;
                                   }
                                   else if (rAdult == 2 && rChild == 1)
                                   {//三人房：两成人一小孩
                                      if( HasHotel == 2)
                                      {
                                         result = pDouble * 2 + pChild;
                                         if(IsSales) result = pDouble * 2;  
                                      }
                                      else
                                      {
                                        result = pTriple * 3;
                                        if(IsSales) result = pDouble * 2;  
                                      }
                                      
                                   }  
                                   else if(rAdult == 1 && rChild == 2)
                                   {
                                     if( HasHotel != 2) result = pTriple * 3;
                                     if(IsSales) result = pDouble * 2;  
                                   }                                
                                   else if(rAdult == 3 && rChild == 0)  //三人一房
                                   { 
                                      result = pTriple * 3;    
                                      if(IsSales) result = pDouble * 2;                              
                                   }                                  
                                   else if (rAdult + rChild == 4)
                                   {                                      
                                     if( HasHotel != 2 &&  pQuadruple > 0)  result = pQuadruple * 4;
                                     if(IsSales) result = pDouble * 2 + pQuadruple * 1;              
                                   } 
                                                                   
                                   return result;
                                }
                                
                                
                                function GetPrice(){
                                
                                //获得不同房间的价格开始;
                                                //---------------------------------------
                                                if(HasHotel == 2) //夏威夷
                                                {                                                  
                                                   //----------------------
                                                   pDouble = 0,pTriple = 0,pSingleSupplement = 0,pChild = 0;
                                                    if( HotelArray.length > 0)
                                                    {
                                                      for (var n = 0; n < HotelArray.length;n ++)
                                                      {
                                                         if(HotelArray[n].value == $('#Thotels').val())
                                                         {                                                        
                                                           pDouble = parseInt(DoubleArray[n].value);
                                                           pTriple = parseInt(TripleArray[n].value);
                                                           pSingleSupplement = parseInt(SingleSupplementArray[n].value);
                                                           pChild = parseInt(ChildArray[n].value);
                                                           //alert(pDouble + '~' + pTriple + "~" + pSingleSupplement + '~' + pChild);
                                                         }
                                                         
                                                      }
                                                    }                                                    
                                                    //-------------
                                                }
                                                else if(HasHotel == 1)                                                
                                                {
                                                   //----------------------
                                                   pDouble = 0,pTriple = 0,pSingle = 0,pQuadruple = 0;
                                                    if( HotelArray.length > 0)
                                                    {
                                                      for (var n = 0; n < HotelArray.length;n ++)
                                                      {
                                                         if(HotelArray[n].value == $('#Thotels').val())
                                                         {                                                        
                                                           pDouble = parseInt(DoubleArray[n].value);
                                                           pTriple = parseInt(TripleArray[n].value);
                                                           pSingle = parseInt(SingleArray[n].value);
                                                           if(!isNaN(QuadrupleArray[n].value)) pQuadruple = parseInt(QuadrupleArray[n].value);
                                                           
                                                           //alert(pDouble + '~' + pTriple + "~" + pSingle + '~' + pQuadruple);
                                                         }
                                                         
                                                      }
                                                    }                                                    
                                                    //-------------
                                                    
                                                    
                                                }
                                                else //没有酒店可供酒店选择
                                                {
                                                   pDouble = parseInt(DoubleArray[0].value);
                                                   pTriple = parseInt(TripleArray[0].value);
                                                   if(!isNaN(SingleArray[0].value)) pSingle = parseInt(SingleArray[0].value);
                                                   if(!isNaN(QuadrupleArray[0].value)) pQuadruple = parseInt(QuadrupleArray[0].value);
                                                }
                                                //获得不同房间的价格结束;
                                                //---------------------------------------
                                }



function SetOptionalAdultDropdownlist( items )
{
  items = items + 1;
  if(OptionalAdultPersonArray.length > 0)
  {
    for(var n = 0; n < OptionalAdultPersonArray.length; n ++)
    {
      OptionalAdultPersonArray[n].length = 0;
      for (var i = items; i > 0 ; i--)
      {
         OptionalAdultPersonArray[n].options.add(new Option(i,i));
      }
    }
  }
}
function SetOptionalChildDropdownlist(items)
{  
  if(OptionalChildPersonArray.length > 0)
  {
    for(var n = 0; n < OptionalChildPersonArray.length; n ++)
    {
      OptionalChildPersonArray[n].length = 0;
      for (var i = items; i >= 0 ; i--)
      {
         OptionalChildPersonArray[n].options.add(new Option(i,i));
      }
    }
  }
}

function SubmitOrder( )
{

  Total();
  var url = "/chs/order.aspx?JourneyID="+ $('HJourneyID').value + "&";
  url +="AdultPerson="+ $("Torder_adult").value + "&";
  url +="ChildPerson="+ $("Torder_child").value + "&";
  url +="HotelID="+ $("Thotels").value +  "&";
  //房间和房间安排人员
  url +="Rooms="+ $("Torder_rooms").selectedIndex + "&";
  url +="OR_A1="+$("Tor_a1").value + "&";
  url +="OR_C1="+$("Tor_c1").value + "&";
  url +="OR_A2="+$("Tor_a2").value + "&";
  url +="OR_C2="+$("Tor_c2").value + "&";
  url +="OR_A3="+$("Tor_a3").value + "&";
  url +="OR_C3="+$("Tor_c3").value + "&";
  url +="OR_A4="+$("Tor_a4").value + "&";
  url +="OR_C4="+$("Tor_c4").value + "&";
  url +="OR_A5="+$("Tor_a5").value + "&";
  url +="OR_C5="+$("Tor_c5").value + "&";
  //价格合计
  url +="O_Total="+$("Order_Total").value + "&";
  url +="O_Optional="+$("Order_Optional").value +"&";
  //酒店升级
  var OptionalHotel = "";
  if ($('Tlahotels').selectedIndex > 0 )
  {     
     url +="LAhotelid="+$('Tlahotels').value+"&";
     url +="LAhotelNights="+  $('Tlahotelnights').value +"&";
  }     
  //自费项目
  url +="OptionalItems="+ GetOptionalValue();     
  location.href = url;  
  
}

function GetOptionalValue()
{
  var OptionalIds = "";
   for(var i=0; i < OptionalItemArray.length; i ++)
   {
       if( OptionalItemArray[i].checked)
       {
          OptionalIds += OptionalItemArray[i].value +"." + OptionalAdultPersonArray[i].value +"." + OptionalChildPersonArray[i].value +",";
       }
   }

 return  OptionalIds.substring(0,OptionalIds.length - 1);
}

//设置上一个页面传递过来的值的选中状态
function SetOptionalStatu(datastr)
{
  var OptionalItems = new Array();
  OptionalItems = datastr.split(",");
  for(var i=0;i < OptionalItems.length;i++)
  {
     var Items = new Array();
     Items = OptionalItems[i].split(".");
     for(var n = 0;n < OptionalItemArray.length;n++)
     {
       if(OptionalItemArray[n].value == Items[0])
       {
           OptionalItemArray[n].checked = true;
       
           for(var s = 0; s < OptionalAdultPersonArray[n].options.length;s ++)
           {
             if(OptionalAdultPersonArray[n].options[s].value == Items[1]) 
             {
               OptionalAdultPersonArray[n].options[s].selected = true;               
             }
           }
           
           for(var s = 0; s < OptionalChildPersonArray[n].options.length;s ++)
           {
             if(OptionalChildPersonArray[n].options[s].value == Items[2]) 
             {
               OptionalChildPersonArray[n].options[s].selected = true;               
             }
           }
       }
     }
  }  
  
}

function SetStarAndEndDate()
{
  for (var n = 0; n < HotelArray.length;n ++)
  {
     if(HotelArray[n].value == $('#Thotels').val())
     { 
        PriceDateStart = priSdate[n].value;
        PriceDateEnd = priEdate[n].value;
        
     }     
   }
}
