var url = "http://www.asia-discovery.com/booking/train/train_booking_script.php";
var train_class = new Array("Special 1st Class (JR)","1st Class (Upper)","1st Class (Lower)","2nd Class (Upper)","2nd Class (Lower)","Sprinter");
var train_id = new Array("SFC","FCU","FCL","SCU","SCL","SPT");
var train_price1 = new Array();
var train_price2 = new Array();

function uzXmlHttp(){
	var xmlhttp = false;
	try{
		xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
	}catch(e){
		try{
			xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
		}catch(e){
			xmlhttp = false;
		}
	}
	if(!xmlhttp && document.createElement){
		xmlhttp = new XMLHttpRequest();
	}
	xmlhttp.onreadystatechange = function () {
	    if (xmlhttp.readyState==4 && xmlhttp.status==200){
	    	window.status = "Train Ticket Reservation";
	    }else{
	    	window.status = "Loading...";
	    }
	};
	return xmlhttp;
}

function connect(str){
	xmlhttp = uzXmlHttp();
	xmlhttp.open("POST", url, false);
	xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
	xmlhttp.send(str);
}

function load_station_from(){
	var str = "action=load_station_from";
	var from1 = document.train_booking.From1;
	var from2 = document.train_booking.From2;
	
	connect(str);
	var part = xmlhttp.responseText.split("[part]");
	var id = part[0].split("[;]");
	var name = part[1].split("[;]");
	from1.options[0] = new Option("Please Select","");
	from2.options[0] = new Option("Please Select","");
	for(var i=1,j=0;j<id.length;i++,j++) {
		from1.options[i] = new Option(name[j],id[j]);
		from2.options[i] = new Option(name[j],id[j]);
	}
	calculate();
}

function load_station_to(obj,target){
	var target_to = eval("document.train_booking.To"+target);
	var target_class = eval("document.train_booking.Class"+target);
	var target_train = eval("document.train_booking.TrainNo"+target);
	var str = "action=load_station_to&id="+obj;
	connect(str);
	var part = xmlhttp.responseText.split("[part]");
	var id = part[0].split("[;]");
	var name = part[1].split("[;]");
	
	target_to.options.length = 0;
	target_class.options.length = 0;
	target_train.options.length = 0;
	if(target==1)
		document.getElementById("total_price").innerHTML = "0 Baht";
	
	target_to.options[0] = new Option("Please Select","");
	for(var i=1,j=0;j<id.length;i++,j++) {
		target_to.options[i] = new Option(name[j],id[j]);
	}
	calculate();
}

function load_class(obj,target){
	var target_class = eval("document.train_booking.Class"+target);
	var target_train = eval("document.train_booking.TrainNo"+target);
	var from = eval("document.train_booking.From"+target+".value");
	var str = "action=load_class&id_from="+from+"&id_to="+obj;
	connect(str);

	var result = xmlhttp.responseText.split("[;]");
	target_class.options.length = 0;
	target_train.options.length = 0;
	if(target==1)
		document.getElementById("total_price").innerHTML = "0 Baht";
	
	target_class.options[0] = new Option("Please Select","");
	for(var i=0,j=3,index=1;j<result.length;j++,i++){
		if(result[j]){
			eval("train_price"+target+"[i] = result[j]");
			target_class.options[index] = new Option(train_class[i]+" - "+result[j]+" Baht",train_id[i]);
			index++;
		}
	}
	calculate();
}

function load_train(obj,target){
	var target_train = eval("document.train_booking.TrainNo"+target);
	var from = eval("document.train_booking.From"+target+".value");
	var to = eval("document.train_booking.To"+target+".value");
	var str = "action=load_train&id_from="+from+"&id_to="+to+"&class="+obj;
	connect(str);
	
	var result = xmlhttp.responseText.split("[;]");
	target_train.options.length = 0;
	target_train.options[0] = new Option("Please Select","");
	for(var i=0,index=1;i<result.length;i++){
		var tmp = result[i].split(",");
		target_train.options[index] = new Option("Train No."+tmp[0]+" / Dep-Arr "+tmp[1]+"-"+tmp[2],"Train No."+tmp[0]+" / Dep-Arr "+tmp[1]+"-"+tmp[2]);
		index++;
	}
}

function calculate(){
	obj = document.train_booking;
	var total = "";
	if((obj.Ticket1.value!="")&&(obj.Class1.value!="")&&(isinteger(obj.Ticket1.value))){
		for(var i=0;i<train_id.length;i++){
			if(obj.Class1.options[obj.Class1.selectedIndex].value==train_id[i])
				total =  parseInt(obj.Ticket1.value)*parseInt(train_price1[i]);
		}
		if((obj.Ticket2.value!="")&&(obj.Class2.value!="")&&(isinteger(obj.Ticket2.value))){
			for(var i=0;i<train_id.length;i++){
				if(obj.Class2.options[obj.Class2.selectedIndex].value==train_id[i])
					total =  parseInt(total) + parseInt(parseInt(obj.Ticket2.value)*parseInt(train_price2[i]));
			}
		}
		obj.total.value = total;
		document.getElementById("total_price").innerHTML = total+" Baht";
	}else{
		document.getElementById("total_price").innerHTML = "0 Baht";
	}
}

function calculate2(){
	obj = document.train_booking;
	var total = "test";
	if((obj.Adults.value!="")&&(obj.Class1.value!="")){
		if(obj.Children.value=="")
			var Children = 0;
		else
			var Children = obj.Children.value;
		for(var i=0;i<train_id.length;i++){
			if(obj.Class1.options[obj.Class1.selectedIndex].value==train_id[i])
				total =  parseInt(parseInt(obj.Adults.value)+parseInt(Children))*parseInt(train_price1[i]);
		}
		if(obj.Class2.value!=""){
			for(var i=0;i<train_id.length;i++){
				if(obj.Class2.options[obj.Class2.selectedIndex].value==train_id[i])
					total =  parseInt(total) + parseInt(parseInt(parseInt(obj.Adults.value)+parseInt(Children))*parseInt(train_price2[i]));
			}
		}
		obj.total.value = total;
		document.getElementById("total_price").innerHTML = total+" Baht";
	}else{
		document.getElementById("total_price").innerHTML = "0 Baht";
	}
}

function checking(){
	obj = document.train_booking;
	if(obj.Name.value==""){
		alert("Please Fill Name")
		return false;
	}
	if(obj.Email.value==""){
		alert("Please Fill Email")
		return false;
	}
	if(obj.Adults.value==""){
		alert("Please Fill No. of Adult")
		return false;
	}
	if(obj.date1.value==""){
		alert("Please Choose Traveling Date 1")
		return false;
	}
	if(obj.total.value==""){
		alert("Please Choose at least 1 Ticket")
		return false;
	}
	if(obj.Lastname.value=="" || obj.Firstname.value==""){
		alert("Please Fill Delivery Name")
		return false;
	}
	if((obj.Deliver1.value==""||obj.delivery_date.value=="")&&(obj.Deliver2.value=="")){
		alert("Please Fill Delivery Detail")
		return false;
	}
	return true;
}
