	 function validateInput() {

		//From field
		if ((document.getElementById("freeTextStart").value) == '') {
			alert('Please fill in an origin to travel from.');
			return false;

		}

		//To field
		if ((document.getElementById("freeTextDestination").value) == '') {
			alert('Please fill in a destination to travel to.');
			return false;

		}

		//Date of Travel
		if (check_date(document.getElementById("outDate")) == false) {
			return false;
		}

		//Time of Travel
		if (check_time(document.getElementById("outTime"), 'Out') == false) {
			return false;
		}

		if (document.getElementById("journeyType").value == 'return') {

			//Return Date of Travel
			if (check_date(document.getElementById("rtnDate")) == false) {
				return false;
			}

			//Return Time of Travel
			if ((document.getElementById("rtnTime").value) == '') {
				alert('Please fill a return travel time.');
				return false;

			}
			else if (check_time(document.getElementById("rtnTime"), 'Rtn') == false) {
				return false;
			}


		}



		//Passenger Types
		if(document.forms[0].noOfPaxStandard.value == 0 &&
		   document.forms[0].noOfPaxChild.value == 0 &&
		   document.forms[0].noOfPaxDiscount.value == 0 &&
		   document.forms[0].noOfPaxYoung.value == 0 &&
		   document.forms[0].noOfPaxElderly.value == 0){
			alert('Please enter a non-zero value for travelling passengers');
			document.forms[0].noOfPaxStandard.focus();
			return false;
		}




		return true;

	 }

	 function populateDateTime() {

		var dt = new Date();
		var day = ''+dt.getDate();
		var month = ''+(dt.getMonth()+1);
		if(day.length == 1)
		{
			day = '0'+day   ;
		}
		if(month.length == 1)
		{
			month = '0'+month   ;
		}

		var mins = dt.getMinutes() + 5;
		var hours = dt.getHours();

		if ( mins >= 60 ) {
			mins -= 60;
			hours += 1;

			if (hours >= 24) {
				hours = 23;
				mins = 59;

			}

		}

		var hoursString = '' + hours;
		var minsString = '' + mins;

		if(hoursString.length == 1)
		{
			hoursString = '0'+hoursString;
		}

		if(minsString.length == 1)
		{
			minsString = '0'+minsString;
		}

		document.getElementById("outDate").value = day+'/'+month+'/'+dt.getFullYear();
		document.getElementById("outTime").value = hoursString+':'+minsString;
	}

	function setReturnTime() {
	}



	function isFirstSubmit() {
		return true;
	}


	function checkDateNotEmpty(field) {
		if(field.value != '') {
			return check_date(field);
		}
		return false;
	}

	
	
	function check_date(field) {

		var checkstr = "0123456789";
		var DateField = field;
		var Datevalue = "";
		var DateTemp = "";
		var seperator = "/";
		var day;
		var month;
		var year;
		var err = 0;
		var i;
		var isLeapYear = false;

		err = 0;

		DateValue = DateField.value;

		// Translate from American format (yyyy/mm/dd)
		if (DateValue.length == 10 && DateValue.substr(4,1) == "/" && DateValue.substr(7,1) == "/") {
			var DateTemp2 = DateValue.substr(8,2) + DateValue.substr(5,2) + DateValue.substr(0,4);
			DateValue = DateTemp2;
		}


		/* Delete all chars except 0..9 */
		for (i = 0; i < DateValue.length; i++) {
			if (checkstr.indexOf(DateValue.substr(i,1)) >= 0) {
				DateTemp = DateTemp + DateValue.substr(i,1);
			}
		}


		DateValue = DateTemp;


		/* Always change date to 8 digits - string*/
		/* if year is entered as 2-digit / always assume 20xx */
		if (DateValue.length == 6) {
			DateValue = DateValue.substr(0,4) + '20' + DateValue.substr(4,2);
		}

		year = DateValue.substr(4,4);
		month = DateValue.substr(2,2);
		day = DateValue.substr(0,2);
		isLeapYear = (year % 4 == 0) || (year % 100 == 0) || (year % 400 == 0);

		if (DateValue.length != 8) {
			err = 19;
		}
		/* year is wrong if year = 0000 */
		else if (year == 0) {
			err = 20;
		}
		/* Validation of month*/
		else if ((month < 1) || (month > 12)) {
			err = 21;
		}
		/* Validation of day*/
		else if (day < 1) {
			err = 22;
		}
		else if ((month == 2) && isLeapYear && (day > 29)) {
			err = 23;
		}
		else if ((month == 2) && !isLeapYear && (day > 28)) {
			err = 24;
		}
		/* Validation of other months */
		else if ((day > 31) && ((month == "01") || (month == "03") || (month == "05") || (month == "07") || (month == "08") || (month == "10") || (month == "12"))) {
			err = 25;
		}
		else if ((day > 30) && ((month == "04") || (month == "06") || (month == "09") || (month == "11"))) {
			err = 26;
		}
		/* if 00 ist entered, no error, deleting the entry */
		else if ((day == 0) && (month == 0) && (year == 00)) {
			err = 0; day = ""; month = ""; year = ""; seperator = "";
		}

		/* if no error, write the completed date to Input-Field (e.g. 13/12/2001) */
		if (err == 0) {
			DateField.value = day + seperator + month + seperator + year;
			return true;
		}
		/* Error-message if err != 0 */
		else {
			alert("You have not entered a valid date.\nPlease enter a date in the format dd/mm/yyyy before proceeding.");
			DateField.focus();
			return false;
		}
	}

	function check_time(field, type){
	   var outTimeField = field;
	   var outTime = field.value;

		numFirst = 0;
		numSecond = 0;
		var displayFirst = '0';
		var displaySecond = ':';

		//Validate the first two digits
		if(outTime.substring(0,1) == 0){
			numFirst = parseInt(outTime.substring(1,2));
			displayFirst = '0' + outTime.substring(1,2);
		}
		else {
			numFirst = parseInt(outTime.substring(0,2));
			displayFirst = outTime.substring(0,2);
		}

		//Validate second two digits
		if(outTime.length == 4){
			if(outTime.substring(2,3) == 0){
				numSecond = parseInt(outTime.substring(3,4));
				displaySecond += '0' + outTime.substring(3,4);
			}
			else {
				numSecond = parseInt(outTime.substring(2,4));
				displaySecond += outTime.substring(2,4);
			}
		}
		else {
			if(outTime.substring(3,4) == 0){
				numSecond = parseInt(outTime.substring(4,5));
				displaySecond += '0' + outTime.substring(4,5);
			}
			else {
				numSecond = parseInt(outTime.substring(3,5));
				displaySecond += outTime.substring(3,5);
			}
		}

		if(outTimeField.value == ''){
			outTimeField.value = '00:00';
		}
		else if((isNaN(numFirst) || isNaN(numSecond)) || (numFirst >= 24 || numSecond >= 60)){
			alert('You have not entered a correct time format.  Please fill in the Time field before proceeding.');
			outTimeField.focus();
		}
		else {
			outTimeField.value = displayFirst + displaySecond;
		}
	}


	function backToJP1() {
		history.back(1);
	}


   //Function to load return section
   function showhidedivnew(field, isOnload){
	   var jType = document.getElementById("journeyType").value;
	   var applState = document.forms[0].appState.value;

	   if(jType == 'openReturn'){
		   document.getElementById("rtnDepArrDiv").style.display = "none";
		   document.getElementById("rtnDateDIV").style.display = "none";
		   document.getElementById("rtnTimeDiv").style.display = "none";

		   if(applState == "1" || applState == "2" || applState == "4"){
			   document.forms[0].appState.value = "3";
		   }
		   else {
			   document.forms[0].appState.value = "7";
		   }
	   }
	   else if(jType == 'return'){
		   document.getElementById("rtnDepArrDiv").style.display = '';
		   document.getElementById("rtnDateDIV").style.display = '';
		   document.getElementById("rtnTimeDiv").style.display = '';

		   // Check to see if the  field is a select object

		   if(document.forms[0].rtnTime.value == ''){
			   setReturnTime();
		   }

		   if(document.getElementById("rtnDate").value == ''){
			   document.getElementById("rtnDate").value = document.getElementById("outDate").value;
		   }

		   if(applState == "1" || applState == "3" || applState == "4"){
			   document.forms[0].appState.value = "2";
		   }
		   else {
			   document.forms[0].appState.value = "6";
		   }
	   }
	   else if(jType == 'openJaw'){
		   document.forms[0].rtnFrom.disabled = true;
		   document.getElementById("rtnDepArrDiv").style.display = '';
		   document.getElementById("rtnDateDIV").style.display = '';
		   document.getElementById("rtnTimeDiv").style.display = '';



		   if(document.forms[0].outDepArr[0].checked == true){
			   document.forms[0].rtnDepArr[0].checked = true;
			   document.forms[0].rtnDepArr[1].checked = false;
		   }
		   else {
			   document.forms[0].rtnDepArr[0].checked = false;
			   document.forms[0].rtnDepArr[1].checked = true;
		   }

		   if(document.getElementById("rtnDate").value == ''){
			   document.getElementById("rtnDate").value = document.getElementById("outDate").value;
		   }

		   if(applState == "1" || applState == "2" || applState == "3"){
			   document.forms[0].appState.value = "4";
		   }
		   else {
			   document.forms[0].appState.value = "8";
		   }
	   }
	   else {
		document.getElementById("rtnDateDIV").style.display = "none";

		document.getElementById("rtnTimeDiv").style.display = "none";

		   if(applState == "2" || applState == "3" || applState == "4"){
			   document.forms[0].appState.value = "1";
		   }
		   else {
			   document.forms[0].appState.value = "5";
		   }
	   }

}
