﻿
// JScript File
var maxRoomStrength = 7;
var roomDtls=new Array(9);

for(var t=0;t<=8;t++)
{
	var roomRec=new Array(2);
	roomRec[0]=1;
	roomRec[1]=0;
	roomDtls[t]=roomRec;
}
function updateArray(val,val1,ele)
{
   if(val1==0){
           roomDtls[val][0]=ele.value;
        }
        else{
                roomDtls[val][1]=ele.value;
        }
}
var childAges=new Array(9);
for(var t=0;t<=8;t++)
{
        var ageRec=new Array(4);
        for(var a=0;a<=4;a++)
                ageRec[a]=1;
        childAges[t]=ageRec;
}
function updateAgeArray(val,val1,ele)
{
   childAges[val][val1]=ele.value;
}
function createRooms(flag)
{
       
       var SelectString="";
     
        var table = document.getElementById("guestsTable");
        deleteTable(table);
        var gAgesTable = document.getElementById("AgesTable");
        deleteTable(gAgesTable);
        var titleSpan = document.getElementById("titleSpan");
        var rooms=0;
        if(document.getElementById("rooms").value!=null)
        {
        rooms = document.getElementById("rooms").value;
        }
        else
        {
        rooms=roomInfo;
        }
               
       var passInfo,Info,AdultP,ChildP;
       if(flag=="result")
       {
       passInfo=document.getElementById("hdd_passInfo").value;
       
       Info=passInfo.split("@");
       AdultP=Info[0].split(",");
       ChildP=Info[1].split(",");
      
       }
        for (var count=0;count<rooms;count++)
        {
				var row = table.insertRow( count );
                row.setAttribute("VALIGN" , "Top");
                row.valign = "top"
                var cell0 = row.insertCell(0);
                var cell1 = row.insertCell(1);
                var cell2 = row.insertCell(2);
                cell0.innerHTML = "";
                cell0.className = "whiteText"
				
				
				var adultsSelectString = "<select style='width:auto;' name='adults' class='Ar_11' onchange='validateRoomStrength();updateArray("+count+",0,this)' >";
				for(var i=1;i<=4;i++)
				{
				    if(flag=="result")
				    {
				        
				        if(parseInt(AdultP[count])!=i)
				        {
				           adultsSelectString+="<option value="+i+">"+i+"</option>";
				        }
				        else
				        {
				           adultsSelectString+="<option value="+i+" selected >"+i+"</option>";
				        }
				        
				    }
				    else
				    {
				    adultsSelectString+="<option value="+i+">"+i+"</option>";
				    }
				    
				}
			
				adultsSelectString+="</select>";
				
			
				var SelectString = "<select style='width:auto;' class='Ar_11' name='children' onchange='validateRoomStrength();updateArray("+count+",1,this)' >";
				
				for(var i=0;i<=4;i++)
				{
				    if(flag=="result")
				    {
				        
				        if(parseInt(ChildP[count])!=i)
				        {
				           SelectString+="<option value="+i+">"+i+"</option>";
				        }
				        else
				        {
				        
				           SelectString+="<option value="+i+" selected >"+i+"</option>";
				        }
				        
				    }
				    else
				    {
				    SelectString+="<option value="+i+">"+i+"</option>";
				    }
				    }
				SelectString+="</select>";
                
                
                
                
                var roomString = "<table border=0 width='100%' cellspacing=0 cellpadding=0 style='margin-top:8px;padding-right:3px;' align=left><tr valign=top align='left'><td>&nbsp;</td><td style='width:55px' class='Ar_bold_11'>Room "+(count+1)+":</td><td class='Ar_11' width='auto' ><FONT COLOR='#4F4F51'>Adults(12+)</FONT></td><td class='Ar_11' style='padding-left:5px'>"+  adultsSelectString +"</td><td class='Ar_11' style='padding-left:5px'><FONT COLOR='#4F4F51'> Children(0-12)</FONT></td><td class='font font-size-11 font-color-common-grey' style='padding-left:5px' >"+  SelectString +"</td></tr></table>";
				
				cell0.innerHTML = roomString;
				
                cell0.align = "left";
                 if(flag!="result")
                 {
                
                    if(roomsSearchC[count] != "" && roomsSearchC[count]!= null){
                            document.getElementsByName("adults")[count].value=roomsSearchC[count][0];
                            document.getElementsByName("children")[count].value=roomsSearchC[count][1];

                    }else{
                            document.getElementsByName("adults")[count].value=roomDtls[count][0];
                            document.getElementsByName("children")[count].value=roomDtls[count][1];
                    }
                }
                
                
        }
        showAges(flag);
		validateRoomStrength(flag);
}

function deleteTable(table)
{
        if (table==null)
                return;
        for (var count=table.rows.length-1;count>=0;count--)
        {
                table.deleteRow(count);
        }
}

function showAges(flag)
{
       var passInfo,Info,AdultP,ChildP;
       if(flag=="result")
       {
       passInfo=document.getElementById("hdd_passInfo").value;
       
       Info=passInfo.split("@");
       Ages=Info[2].split("/");
       }
       
        var AgeTable = document.getElementById("AgesTable");
        deleteTable(AgeTable);
        var childSelects = document.getElementsByName("children");
        var v = 0;
        for (var count=0;count<childSelects.length;count++)
        {
                var CAge=null;  
                           if(flag=="result")
                               {

                               CAge=Ages[count].split(",");
                               
                               } 
            
                var childAge = childSelects[count].value;
                if (childAge>0)
                {
                        var row = AgeTable.insertRow( v++);
                        var cell = row.insertCell(0);
                        cell.className = "whiteText"
                        cell.innerHTML=null;
                       
                        var str = "";
                        var childStr = "";
                        str += "<table border=0><tr valign=top style='padding-top:10px' align=left><td class='Ar_bold_11'valign='middle' width='60px'>Room " + (count+1) + ":</td>";
                        var dupCnt=0;
                        for(var childCount=1;childCount<=childAge;childCount++)
                        {
                          
                                //str += "<td  style='COLOR:#4F4F51;font-family:Arial;font-size:11px;'>Ch" + childCount + ":</td></br>";
                               if(searchTypeCal!='hotelResult')
                                {
                                if(childCount>3)
                                str +="</tr><tr><td></td>";
                                }

                               
                               
                                var selectName = "Room" + (count + 1);
                                str += "<td colspan='3' class='Ar_11' width='80px' style='padding-left:2px' align=top ><font color=#4f4f51>Child" + childCount + ":</font><SELECT style='width:39px;' name='" + selectName+"' id='Room"+count+"_"+childCount+"' class='Ar_11' onchange='updateAgeArray("+count+","+dupCnt+",this)'>";
                                for (var ageCount=1;ageCount<=12;ageCount++)
                                {
                                if(flag=="result")
				                  {
				                       if(parseInt(CAge[childCount-1])!=ageCount)
				                        {
                                        str += "<option value=" + ageCount + ">" + ageCount + "</option>";
                                        }
                                        else
                                        {
                                        str += "<option value=" + ageCount + " selected >" + ageCount + "</option>";
                                        }
                                  }
                                else
                                  {
                                       str += "<option value=" + ageCount + ">" + ageCount + "</option>";
                                 }
                                }
                                str += "</select>";
                                str += "</td>";
                                dupCnt++;
                        }
                        str += "</tr></table>";
                        cell.innerHTML = str;
                        var dupCnt=0;
                      if(flag!="result")
                         
                     {
                        for(var childCount=1;childCount<=childAge;childCount++)
                        {
                                if(roomsChildList[count] != null ){
                                        if(dupCnt<roomsChildList[count].length){
                                                document.getElementById("Room"+count+"_"+childCount).value=roomsChildList[count][dupCnt]
                                        }else{
                                                document.getElementById("Room"+count+"_"+childCount).value=childAges[count][dupCnt]
                                        }
                                }else{

                                        document.getElementById("Room"+count+"_"+childCount).value=childAges[count][dupCnt]
                                }
                                dupCnt++;
                        }
                   }
                }
        }
}

function RoomAlert()
{
 var numberOfRooms = document.getElementById("rooms").value;
        var adults = document.getElementsByName("adults");
        var children = document.getElementsByName("children");
         for (var count=0;count<numberOfRooms;count++)
        {
                var adultsInRoom = parseInt(adults[count].value);
                var childrenInRoom = parseInt(children[count].value);
                var InRoom = parseInt(children[count].value);
                var roomStrength = adultsInRoom + InRoom;
                if ( roomStrength > maxRoomStrength)
                {
                       // alert("Please check that the total number of persons (including children) per room is:" + maxRoomStrength);
                        children[count].focus();
                        children[count].value = 0;
//                        var AgeTable = document.getElementById("AgesTable");
//                        deleteTable(AgeTable);
//                        document.getElementById("AgesLabel").innerHTML = "";
//                        return false;
                }
        }
}

function validateRoomStrength(flag)
{
       
        var numberOfRooms = document.getElementById("rooms").value;
        var adults = document.getElementsByName("adults");
        var children = document.getElementsByName("children");
        for (var count=0;count<numberOfRooms;count++)
        {
                var adultsInRoom = parseInt(adults[count].value);
                var childrenInRoom = parseInt(children[count].value);
                var InRoom = parseInt(children[count].value);
                var roomStrength = adultsInRoom + InRoom;
                if ( roomStrength > maxRoomStrength)
                {
                        alert("Please check that the total number of persons (including children) per room is:" + maxRoomStrength);
                        children[count].focus();
                        children[count].value = 0;
                        var AgeTable = document.getElementById("AgesTable");
                        deleteTable(AgeTable);
                        document.getElementById("AgesLabel").innerHTML = "";
                        return false;
                }
        }
        var Count=0;
        for(var k=0;k<children.length;k++){
                if(eval(children[k].value)>0){
                        Count++;
                }
        }

        
        showAges(flag);
        if (Count>0)
         {
                 document.getElementById("AgesLabel").innerHTML = "<span style='padding-top:0px'>&nbsp;Age of children in each room:</span>";
         }
         else{
                document.getElementById("AgesLabel").innerHTML = "";
         }
        return true;
}

function GetGuestInfo()
{
   
   
 
    var rooms = document.getElementById("rooms").value;
      
      var sInfo = new Array();
        for (var count=0;count<rooms;count++)
        {
           var nAdults=0;
           var nChildren=0;  
          
          nAdults=document.getElementsByName("adults")[count].value;
         
          
          
           nChildren = document.getElementsByName("children")[count].value
           
           if(nChildren > 0)
           {
            sInfo[count] =  nAdults +"-"+nChildren;
        
           }
           else
           {
              sInfo[count] =  nAdults; 
           }
        }
        
        var childSelects = document.getElementsByName("children");
        var v = 0;
        var tInfo = "";
        for (var count=0;count<childSelects.length;count++)
        {      
                var childAge = childSelects[count].value;
                var childInfo = "";
                if (childAge>0)
                {       
                        var selectName = "Room" + (count + 1);
                        for(var childCount=1;childCount<=childAge;childCount++)
                        {
                          childInfo = childInfo + document.getElementById("Room"+count+"_"+childCount).value+",";
                         
                        }
                       childInfo =  childInfo.substring(0,childInfo.length-1);
                       tInfo +=   sInfo[count] + "-" + childInfo +"@";
                  }
                  else
                  {
                    tInfo +=   sInfo[count] +"@";
                  }
         }
         tInfo =  tInfo.substring(0,tInfo.length-1)
         if(tInfo=="")
           document.getElementById("pessangerInfo").value="1";
         else  
            document.getElementById("pessangerInfo").value=tInfo;
           
         
          
}


var numberOfRooms = 1;
var totalAdultsInRoom = 2;
var totalInRoom = 1;
//contains the each rooms no of adults and children entered in search creteria
var roomsSearchC = new Array();
//contains the children ages entered in search creteria
var roomsChildList = new Array();

function chkEmptyHotel()
{
 var rd=1;
           var date1=document.getElementById("txtCheckIn").value;
           var date2=document.getElementById("txtCheckOut").value;
          
          if(document.getElementById("txtCheckIn").value!="")
          {
             var date1_array=date1.split("-");
             dt1 = new Date(date1_array[0],(parseInt(date1_array[1],10)-1),date1_array[2]);
             
          }
          if(document.getElementById("txtCheckOut").value!="")
          {
             var date2_array=date2.split("-");            
             dt2 = new Date(date2_array[0],(parseInt(date2_array[1],10)-1),date2_array[2]);
           }
     
          
          if(document.getElementById("ddl_City").value=="")
         {
            alert("Please choose city");
          document.getElementById("txt_to").value="";
          document.getElementById("txt_to").focus();
          return false;
         }
       else if(document.getElementById("txtCheckIn").value=="")
        {
       alert("Please select check in date");
       document.getElementById("txtCheckIn").focus();
       return false;
     }
     else if(document.getElementById("txtCheckOut").value=="")
    {
       alert("Please select check out date");
       document.getElementById("txtCheckOut").focus();
       return false;
     }
    else if(document.getElementById("txtCheckIn").value=="" || document.getElementById("txtCheckIn").value=="yyyy-mm-dd")
         {
          alert("Please choose an appropriate check in date (yyyy-mm-dd)");
          document.getElementById("txtCheckIn").focus();
          return false;
         }
   else if(dt1 >= dt2)
   { 
        alert("Check out date cannot be less than or same as check in date");
        document.getElementById("txtCheckOut").focus();
        return false;
        }
}

var adultcount_array = new Array();
var childcount_array = new Array();
var childcount = new Array();
var numberOfRooms;
var totalAdultsInRoom = 0;

//Function to set children, adults  and rooms boxes on page load
function setVal(pgrInfo)
{
  
   var perRoom = new Array();
   
   perRoom = pgrInfo.split("@");
   numberOfRooms = perRoom.length;
   
   if(perRoom.length > 0)
   {
      for(k=0;k<perRoom.length;k++)
      {
         childcount = perRoom[k].split("-"); 
         roomDtls[k][0] = childcount[0];
         totalAdultsInRoom = totalAdultsInRoom + parseInt(childcount[0]);
	     adultcount_array[k] = childcount[0];
         
         roomDtls[k][1]=childcount[1];
	     childcount_array[k] = childcount[1];
	     if(childcount.length > 1)
	     {
	        childages = childcount[2].split(",");
	        for(c=0;c<childages.length;c++)
	        {
	            childAges[k][c]=childages[c];
	            
	        }
	     }	     
      }
   }
}


//*************************


//contains the each rooms no of adults and children entered in search creteria
var roomsSearchC = new Array();
//contains the children ages entered in search creteria
var roomsChildList = new Array();


///////////
function fillSearchCriterion()
{
		var Count = 0;
		document.getElementById("rooms").value = numberOfRooms;
 
		var guestsTable = document.getElementById("guestsTable");
		var Table = document.getElementById("AgesTable");
		var row = guestsTable.insertRow(guestsTable.rows.length);
		var cell = row.insertCell(0);
						
		var roomString =  "";
			
		for (i=1; i<=numberOfRooms;i++)
		{
			var adultsSelectString = "<select style='width:42px;' onchange='validateRoomStrength();updateArray("+(i-1)+",0,this)' name='adults'>" + getOptionsString( 4 , adultcount_array[i-1] , 0) + "</select>";
			var SelectString = "<select style='width:42px;' onchange='validateRoomStrength();updateArray("+(i-1)+",1,this)' name='children'>" + getOptionsString( 3 , childcount_array[i-1] , 0) + "</select>";
			var spacer1 = "&nbsp;&nbsp;";
			roomString += "<table border=0 width=190><tr><td><FONT COLOR='#000000'>Room "+i+":</FONT></td><td><FONT COLOR='#000000'>Adults(18+)</FONT></td><td><FONT COLOR='#000000'>Children (0-12)</FONT></td></tr><tr><td>&nbsp;</td><td>"+  adultsSelectString +"</td><td>"+  SelectString +"</td></tr></table>";			
			if (childcount_array[i-1] > 0)
			{
				roomsChildList[i-1] = new Array();		
				Count += 1;
				var Row = Table.insertRow(Table.rows.length);
				var Cell1 = Row.insertCell(0);
				var LabelString ="";
				var cellTitleString = "<FONT COLOR='#000000'>Room:"+i+" </FONT>"
				Cell1.style.width=60;
				Cell1.innerHTML = cellTitleString;
				var childreCellHTMLString = "";          
				for (var ii=0; ii<childcount_array[i-1]; ii++)
				{
					var Cell = Row.insertCell(ii+1);
					roomsChildList[i-1][ii] = '1';
					LabelString = "<td width='30'><font COLOR='#000000'>Child1</FONT>";
					var selectName = "Room" + (i-1);
					childreCellHTMLString = "<SELECT style='width:42px;' name='" + selectName +"' >"+ getOptionsString(17 , childAges[i-1][ii] , 1) + "</SELECT></td>";
					Cell.innerHTML  = LabelString + "<BR>"+ childreCellHTMLString;
					roomsChildList[i-1][ii] = childAges[i-1][ii];					
					
				}
				var guestsTable = document.getElementById("guestsTable");
				var Table = document.getElementById("AgesTable");
				var row = guestsTable.insertRow(guestsTable.rows.length);
				var cell = row.insertCell(0);
				
			}
				roomsSearchC[i-1] = new Array();
			roomsSearchC[i-1][0] = adultcount_array[i-1]; //adult
			roomsSearchC[i-1][1] = childcount_array[i-1]; //child			
		}
		
		 if (Count>0)
         {
                 document.getElementById("AgesLabel").innerHTML = "<span style='font-family:Arial, Helvetica, sans-serif;font-size:11px;'>&nbsp;Age of children in each room:</span>";
         }
         else{
                document.getElementById("AgesLabel").innerHTML = "";
         }
		 cell.innerHTML  = roomString;
        showAges();
		
}


function chkDates()
{
 var rd=1;
           var date1=document.getElementById("txtCheckIn").value;
           var date2=document.getElementById("txtCheckOut").value;
          
          if(document.getElementById("txtCheckIn").value!="")
          {
             var date1_array=date1.split("-");
             dt1 = new Date(date1_array[0],(parseInt(date1_array[1],10)-1),date1_array[2]);
             
          }
          if(document.getElementById("txtCheckOut").value!="")
          {
             var date2_array=date2.split("-");            
             dt2 = new Date(date2_array[0],(parseInt(date2_array[1],10)-1),date2_array[2]);
           }
     
          
         if(document.getElementById("txtCheckIn").value=="")
        {
       alert("Please select check in date");
       document.getElementById("txtCheckIn").focus();
       return false;
     }
     else if(document.getElementById("txtCheckOut").value=="")
    {
       alert("Please select check out date");
       document.getElementById("txtCheckOut").focus();
       return false;
     }
    else if(document.getElementById("txtCheckIn").value=="" || document.getElementById("txtCheckIn").value=="yyyy-mm-dd")
         {
          alert("Please choose an appropriate check in date (yyyy-mm-dd)");
          document.getElementById("txtCheckIn").focus();
          return false;
         }
   else if(dt1 >= dt2)
   { 
        alert("Check out date cannot be less than or same as check in date");
        document.getElementById("txtCheckOut").focus();
        return false;
        }
}
