/******************************
 * Editable section -- Start --
 ******************************/
					  // DATE SETTINGS - EDIT AS REQUIRED
					  var daysinAdvance = 7; // Sets default days in advance from current date
					  var numberNights = 3;  // Sets default number of nights
					  var numberYears = 4; // Sets default number of years to display in year select list
					  var numberNightsMin = 3; // Sets minimum number of nights accepted
					  var imgDir = "images/"; // Directory for the dynamic calendar script and images. Trailing slash must be included.
					
					  // FLAG SETTINGS ON/OFF - SET TO 1 FOR ON & 0 FOR OFF
					  var wdDisplay = 1; //weekday display
					  var numberNightsDisplay = 1; //number of nights display
					  var departDateDisplay = 1; //departure dates display
					  var departDateUpdate = 1; //auto update departure date
					
					  // WEEK DAY AND NUMBER NIGHTS TEXT - EDIT TEXT AS REQUIRED
					  var wdArray = new Array("Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat");
					  var nightTxt = " Night";
					  var nightsTxt = " Nights";
					
					  // ERROR MESSAGE TEXT - EDIT TEXT AS REQUIRED
					  var invalidDateTxt = "Invalid Arrival Date. Please check number of days selected";
					  var invalidDatePriorTxt = "Arrival Date selected is prior Today's date. Please change...";
					  var invalidDepartTxt = "Departure Date is prior to Arrival Date selected. Please change...";
					  var invalidNightsTxt = "Sorry, reservations under 3 nights are not accepted.";
					  var invalidChild = "Sorry, this is an adults-only resort, not children allowed";
 					  var invalidHotel = "Please select a Hotel ";
					  /******************************
					  * Editable section -- End --
					  ******************************/
					
					  /**************************************************
					  * DO NOT CHANGE JAVASCRIPT SETTINGS BELOW THIS LINE
					  **************************************************/
					  //Days in each month Array
					  var aNumDays = new Array (31,0,31,30,31,30,31,31,30,31,30,31);
					
					  //Cancel out if no departure date display
					  if(departDateDisplay == 0) {
					    numberNightsDisplay = 0;
					    departDateUpdate = 0;
					  }
					
					  //Sets dates selected from dyncalendar
					  function calendarCallback(day, month, year, objName, formName) {
					    if(objName == "calendarArrive"){
					      document.forms[formName].fd.selectedIndex = day-1;
					      document.forms[formName].fm.selectedIndex = month-1;
					      document.forms[formName].fy.selectedIndex = year - document.forms[formName].fy.options[0].text;
					      updateDates(document.forms[formName]);
					      if(wdDisplay == 1 && departDateDisplay == 1) setWkd(formName, 1);
					    }else{  //objName == calendarDepart
					      document.forms[formName].td.selectedIndex = day-1;
					      document.forms[formName].tm.selectedIndex = month-1;
					      document.forms[formName].ty.selectedIndex = year - document.forms[formName].ty.options[0].text;
					      if(wdDisplay == 1 && departDateDisplay == 1) setWkd(formName, 1);
					    }
					  }
					
					  //Update form with selected dates
					  function updateDates(form, loadDates) {
					    //check Leap Year
					    if(form.fm.selectedIndex==1)  {
					      var leapYear  = new Date (form.fy.options[form.fy.selectedIndex].text,form.fm.selectedIndex+1,1);
					      var leapYear  = new Date (leapYear  - (24*60*60*1000));
					      var numDaysInMonth = leapYear.getDate();
					    }else{
					      var numDaysInMonth = aNumDays[form.fm.selectedIndex];
					    }
					    // Update departure date only when loading the form and/or departDateUpdate is set to 1
					    if(loadDates == 1 || departDateUpdate == 1) {
					      var selectDate = new Date(form.fy.options[form.fy.selectedIndex].text, form.fm.selectedIndex, form.fd.selectedIndex);
					      var setDate = new Date(selectDate.getTime() + ((numberNights+1) * 86400000));
					      var setDay = setDate.getDate();
					      var setMonth = setDate.getMonth();
					      var setYear = setDate.getFullYear() - form.fy.options[0].text;
					      var checkinDate = new Date(form.fy.options[form.fy.selectedIndex].text,form.fm.selectedIndex,form.fd.selectedIndex+1);
					      var checkoutDate = new Date(form.ty.options[form.ty.selectedIndex].text,form.tm.selectedIndex,form.td.selectedIndex+1);
					      if(checkinDate > checkoutDate) {
					        if(setYear == form.ty.length) {
					          form.td.options[30].selected=1;
					          form.tm.options[11].selected=1;
					          form.ty.options[form.ty.length-1].selected=1;
					        } else {
					          form.td.options[setDay-1].selected=1;
					          form.tm.options[setMonth].selected=1;
					          form.ty.options[setYear].selected=1;
					        }
					      }
					    }
					    if(form.fd.selectedIndex+1 > numDaysInMonth) {
					      alert(invalidDateTxt);
					      form.fd.selectedIndex = numDaysInMonth-1;
					    }
					  }
					
					  function setWkd(form, calendar) {
					    // change form object if returned from calendar
					    if(calendar) form = document.forms[form];
					    for (var i = 0; i < form.fy.length; i++) {
					      if (form.fy.options[i].selected) var fyear = form.fy.options[i].text;
					      if (departDateDisplay == 1 && form.ty.options[i].selected) var tyear = form.ty.options[i].text;
					    }
					    var checkinDate = new Date(fyear,form.fm.selectedIndex,form.fd.selectedIndex+1);
					    if (departDateDisplay == 1) var checkoutDate = new Date(tyear,form.tm.selectedIndex,form.td.selectedIndex+1);
					    var numNights = Math.round((checkoutDate - checkinDate) / 86400000);
					    if (numNights == 1) numNights += nightTxt;
					    else numNights += nightsTxt;
					    //Set Days of the week display
					    if(wdDisplay == 1 && document.getElementById) {
					      document.getElementById('inWd').firstChild.nodeValue = '(' + wdArray[checkinDate.getDay()] + ')';
					      if (departDateDisplay == 1) document.getElementById('outWd').firstChild.nodeValue = '(' + wdArray[checkoutDate.getDay()] + ')';
					    }
					    //Set number of nights display
					    if(numberNightsDisplay == 1 && document.getElementById) document.getElementById('lengthStay').firstChild.nodeValue = numNights;
					  }
					
					  //Load current dates on form load
					  function LoadDates(form) {
					    var curDate = new Date();
					    var setDate = new Date(curDate.getTime() + (daysinAdvance * 86400000));
					    var setDay = setDate.getDate();
					    var setMonth = setDate.getMonth();
					    var setYear = setDate.getFullYear() - form.fy.options[0].text;
					    // Set Arrival Dates
					    form.fd.selectedIndex = setDay-1;
					    form.fm.selectedIndex = setMonth;
					    form.fy.selectedIndex = setYear;
					    // Set the Departure Dates
					    updateDates(form, departDateDisplay);
					    if(wdDisplay == 1 || numberNightsDisplay == 1) setWkd(form);
					  }
					
					  //Load current dates on form load
					  function checkDates(form) {
					    var hotel = form.hid.selectedIndex;
    					var nino =  form.child.selectedIndex;
    					var infa =  form.infant.selectedIndex;
    					
					    var curDate = new Date();
					    for (var i = 0; i < form.fy.length; i++) {
					      if (form.fy.options[i].selected) var fyear = form.fy.options[i].text;
					      if (departDateDisplay == 1 && form.ty.options[i].selected) var tyear = form.ty.options[i].text;
					    }
					    var checkinDate = new Date(fyear,form.fm.selectedIndex,form.fd.selectedIndex+2);
					    if (departDateDisplay == 1) {
					      var checkoutDate = new Date(tyear,form.tm.selectedIndex,form.td.selectedIndex+2);
					      var numNights = Math.round((checkoutDate - checkinDate) / 86400000);
					    } else {
					      var numNights = form.numnights.selectedIndex+1;
					    }
					    if(checkinDate.getTime() < curDate.getTime()) {
					      alert(invalidDatePriorTxt);
					      return false;
					    }
					    if(numNights < 1) {
					      alert(invalidDepartTxt );
					      return false;
					    }
					    if(numNights < numberNightsMin) {
					      alert(invalidNightsTxt);
					      return false;
					    }
					    if((hotel < 3) && (infa > 0 || nino >0)){
   					      alert(invalidChild);
					      return false;
					    }  
					    if(hotel < 1){
   					      alert(invalidHotel);
					      return false;
					    }  

					      
					  }
					
					  //Generate years options for year select list
					  function year_option(form){
					    curDate = new Date();
					    curYear = curDate.getFullYear();
					    for(i = curYear ; i <= curYear+(numberYears-1) ; i++ ){
					      document.write('<option value="' + i + '">' + i + '</option>');
					    }
					  }
					

