function changeType() {
  try {
    if (type == 'CAR') {
      $('theVehicleBit').style.display = 'block';
      $('outPeople').innerHTML = "Number of people (inc driver):";
      $('retPeople').innerHTML = "Number of people (inc driver):";
    } else {
      $('theVehicleBit').style.display = 'none';
      $('outPeople').innerHTML = "Number of people:";
      $('retPeople').innerHTML = "Number of people:";
    }
  } catch(exception) {}
}

function formChanged() {
  try {
    if ($F('ResourceFareReturn') == 'return') {
      fare = 'return';
    } else {
      fare = 'single';
    }
    if ($F('ResourceTypeCAR') == 'CAR') {
      type = 'CAR';
    } else {
      type = 'PASS';
    }   
    if ($('chkTowing').checked) {
      trailor = true;
    } else {
      trailor = false;
    }
    changeType();
    changeFare();
    trailerAdd();
    if (fare == 'return') { routeChanged(); }
  } catch(exception) {}
}

function changeFare() {
  try {
    if (fare == 'return') {
      enableFormField('ResourceReturnRoute');
      enableFormField('ResourceReturnDate');
      enableFormField('ResourceReturnTime');
      enableFormField('ResourceReturnAdultsA');
      enableFormField('ResourceReturnChildrenC');
      enableFormField('ResourceReturnSeniorsZ');
      enableFormField('ResourceReturnInfantsI');
      if ($F('ResourceTypeCAR') == 'CAR') {
        enableFormField('ResourceTrailerReturnLength');
        enableFormField('ResourceTrailerReturnHeight');
      }
      matchPassengers();
    } else {
      disableFormField('ResourceReturnRoute');
      disableFormField('ResourceReturnDate');
      disableFormField('ResourceReturnTime');
      disableFormField('ResourceReturnAdultsA');
      disableFormField('ResourceReturnChildrenC');
      disableFormField('ResourceReturnSeniorsZ');
      disableFormField('ResourceReturnInfantsI');
      if ($F('ResourceTypeCAR') == 'CAR') {
        disableFormField('ResourceTrailerReturnLength');
        disableFormField('ResourceTrailerReturnHeight');
      }
    }
  } catch(exception) {}
}

function vehicleTypeChange() {
  try {
    $currentLength = $F('ResourceVehicleLength');
    $currentHeight = $F('ResourceVehicleHeight'); 
    var first = 1;
    var theSelected = '';
    var amount = $H(vehicle.lengths[$F('ResourceVehicleType')]).values().length;
    $('ResourceVehicleLength').innerHTML = "";
    $H(vehicle.lengths[$F('ResourceVehicleType')]).each(function(item) {
      if (first == 0 || amount == 1) {
        new Insertion.Top($('ResourceVehicleLength'), '<option value="'+item.key+'" selected="selected">'+item.value+'</option>');
        theSelected = item.key;
      } else {
        new Insertion.Top($('ResourceVehicleLength'), '<option value="'+item.key+'">'+item.value+'</option>');
      }
      first = 0;
    });
    if (previousVehicleLength != "") {
      $('ResourceVehicleLength').value = previousVehicleLength;
    } else {
      $('ResourceVehicleLength').value = theSelected;
    }
    first = 1;
    theSelected = '';
    amount = $H(vehicle.heights[$F('ResourceVehicleType')]).values().length;
    $('ResourceVehicleHeight').innerHTML = "";
    $H(vehicle.heights[$F('ResourceVehicleType')]).each(function(item) {
      if (first == 0 || amount == 1) {
        new Insertion.Top($('ResourceVehicleHeight'), '<option value="'+item.key+'" selected="selected">'+item.value+'</option>');
        theSelected = item.key;
      } else {
        new Insertion.Top($('ResourceVehicleHeight'), '<option value="'+item.key+'">'+item.value+'</option>');
      }
      first = 0;
    });
    if (previousVehicleHeight != "") {
      $('ResourceVehicleHeight').value = previousVehicleHeight;
    } else {
      $('ResourceVehicleHeight').value = theSelected;
    }
    if ($F('ResourceVehicleType') != "None") {
      enableFormField('ResourceVehicleLength');
      enableFormField('ResourceVehicleHeight');
    } else {
      disableFormField('ResourceVehicleLength');
      disableFormField('ResourceVehicleHeight');
    }
    if ($F('ResourceVehicleType') == 'Van/Lorry > 5.5m') {
      $('no-trailer-details').show();
      $('trailer-details').hide();
    } else {
      $('no-trailer-details').hide();
      $('trailer-details').show();
    }
  } catch(exception) {}
}

function footPassenger() {
  try {
    if($F('vehicle_false') == 'false') {
      disableFormField('bookType');
      disableFormField('bookLength');
      disableFormField('bookHeight');
      $('theVehicleBit').style.display = 'none';
      $('bookOutAdults').value   = 0;
      $('bookRetAdults').value   = 0;
      $('bookOutChildren').value = 0;
      $('bookRetChildren').value = 0;
      $('bookOutSeniors').value  = 0;
      $('bookRetSeniors').value  = 0;
      $('bookOutInfants').value  = 0;
      $('bookRetInfants').value  = 0;
      $('bookOutStudents').value = 0;
      $('bookRetStudents').value = 0;
      $('outPeople').innerHTML = "Number of people:";
      $('retPeople').innerHTML = "Number of people:";
    } else {
      $('theVehicleBit').style.display = 'block';
      enableFormField('bookType');
      $('bookOutAdults').value = outAdults;
      $('bookRetAdults').value = retAdults;
      $('bookType').value = "Car/MPV/4x4";
      $('outPeople').innerHTML = "Number of people (inc driver):";
      $('retPeople').innerHTML = "Number of people (inc driver):";
      vehicleTypeChange();
    }
  } catch(exception) {}
}

function returnJourney(radio) {
  try {
    if ($F(radio) != 'true') {
      enableFormField('bookReturnRoute');
      enableFormField('bookReturnDate');
      enableFormField('bookRetAdults');
      enableFormField('bookRetChildren');
      enableFormField('bookRetSeniors');
      enableFormField('bookRetInfants');
      enableFormField('bookRetStudents');
      matchPassengers($('bookOutAdults'));
      if ($F('chkTowing') == "on") {
        enableFormField('bookTrailorRetL');
        enableFormField('bookTrailorRetH');
      }
    } else {
      disableFormField('bookReturnRoute');
      disableFormField('bookReturnDate');
      disableFormField('bookRetAdults');
      disableFormField('bookRetChildren');
      disableFormField('bookRetSeniors');
      disableFormField('bookRetInfants');
      disableFormField('bookRetStudents');
      $('bookRetAdults').value   = 0;
      $('bookRetChildren').value = 0;
      $('bookRetSeniors').value  = 0;
      $('bookRetInfants').value  = 0;
      $('bookRetStudents').value = 0;
      if ($F('chkTowing') == "on") {
        disableFormField('bookTrailorRetL');
        disableFormField('bookTrailorRetH');
      }
    }
    trailerAdd();
  } catch(exception) {}
}

function trailerAdd() {
  try {
    if ($('chkTowing').checked) {
      $('trailerDetails').style.display = "block";
      if ($F('single_true') == "true") {
        disableFormField('bookTrailorRetL');
        disableFormField('bookTrailorRetH');
      } else {
        enableFormField('bookTrailorRetL');
        enableFormField('bookTrailorRetH');
      }
    } else {
      $('trailerDetails').style.display = "none";
    }
  } catch(exception) {}
}

function routeChanged() {
  try {
    if ($F('ResourceOutwardRoute') == "SOEC") {
      $('ResourceReturnRoute').value = "ECSO";
    } else {
      $('ResourceReturnRoute').value = "SOEC";
    }
  } catch(exception) {}
}
    
function matchPassengers() {
  try {
	if (fare == "return") {
      $('ResourceReturnAdultsA').value   = $F('ResourceOutwardAdultsA');
      $('ResourceReturnChildrenC').value = $F('ResourceOutwardChildrenC');
      $('ResourceReturnSeniorsZ').value  = $F('ResourceOutwardSeniorsZ');
      $('ResourceReturnInfantsI').value  = $F('ResourceOutwardInfantsI');
    }
  } catch(exception) {}
}
    
function addLoadEvent(loadFunction) {
  var oldLoad = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = loadFunction;
  } else {
    window.onload = function() {
      oldLoad();
      loadFunction();
    }
  }
}
    
function enableFormField(id) {
  if ($(id)) {
	$(id).disabled = '';
  }
}

function disableFormField(id) {
  if ($(id)) {
    $(id).disabled = 'disabled';
  }
}
    
addLoadEvent(function() {
  vehicleTypeChange();
  matchPassengers();
  footPassenger();
  trailerAdd();
});
    
    
    var outwardCalender, returnCalender;
    
    function calendarSetup() {
    
      returnJourney($('single_true'));
    
    	outwardCalender = new Epoch('outward_calender','popup',$('bookOutwardDate'));
    	returnCalender  = new Epoch('return_calender','popup',$('bookReturnDate'));
    	outwardCalender.selectedDates = new Array(outwardCalender.selectedDate);
    	returnCalender.selectedDates  = new Array(returnCalender.selectedDate);
    	outwardCalender.reDraw();
    	returnCalender.reDraw();
    
    
    	outwardCalender.show = function () {	
    		this.calendar.style.display = 'block';		
    	  	$('bookOutAdults').style.visibility   = 'hidden';
    	  	$('bookOutChildren').style.visibility = 'hidden';
    	  	$('bookOutSeniors').style.visibility  = 'hidden';
    	  	$('bookOutInfants').style.visibility  = 'hidden';
    	}
    
    	outwardCalender.hide = function () {
    		this.calendar.style.display = 'none';
    		this.visible = false;		
    		$('bookOutAdults').style.visibility   = 'visible';
    		$('bookOutChildren').style.visibility = 'visible';
    		$('bookOutSeniors').style.visibility  = 'visible';
    		$('bookOutInfants').style.visibility  = 'visible';
    		$('bookReturnDate').value = $('bookOutwardDate').value;
    		returnCalender.selectedDates = new Array(this.selectedDates[0]);
     		returnCalender.goToMonth(this.displayYear, this.displayMonth); 
    		returnCalender.reDraw();
    	}
    	
    	returnCalender.show = function () {	
    		this.calendar.style.display = 'block';		
    	  	$('bookRetAdults').style.visibility   = 'hidden';
    	  	$('bookRetChildren').style.visibility = 'hidden';
    	  	$('bookRetInfants').style.visibility  = 'hidden';
    	}
    
    	returnCalender.hide = function () {
    		this.calendar.style.display = 'none';
    		this.visible = false;		
    		$('bookRetAdults').style.visibility   = 'visible';
    		$('bookRetChildren').style.visibility = 'visible';
    		$('bookRetInfants').style.visibility  = 'visible';
    	}
    
    	Event.observe($('bookOutwardRoute'), "change", function() {	
    		if ($F('bookOutwardRoute') == "SOEC") {
    			$('bookReturnRoute').value = "ECSO";
    		} else {
    			$('bookReturnRoute').value = "SOEC";
    		}
    	});
    	
    	Event.observe($('bookReturnRoute'), "change", function() {	
    		if ($F('bookReturnRoute') == "SOEC") {
    			$('bookOutwardRoute').value = "ECSO";
    		} else {
    			$('bookOutwardRoute').value = "SOEC";
    		}
    	});
    	
    	vehicleTypeChange();
    };


