jQuery(document).ready(
	function(){
		initialize_fields();
	}
);



function initialize_fields(){	
	jQuery("input:radio").attr('checked', false);
	jQuery("#button-submit").removeAttr("disabled");
}

/***************************************************** NEW CHANGES *************************************/

function select_trip_type(id,value){
	//trip-pickup-selection
	if(jQuery("#"+id).is(":hidden")){
		jQuery("#"+id).show();
	}	
	jQuery("#trip-type-value").val(value);
	//trip_change(jQuery("#trip-type-value").val());
	assign_values();
}

function select_pickup_type(id,value,hide){
	jQuery("#button-submit").removeAttr("disabled");
	if(jQuery("#"+id).is(":hidden")){
		//jQuery("#"+id).show();
		//jQuery("#"+hide).hide();
	}
	
	if(jQuery("#trip-passenger").is(":hidden")){
		if(jQuery(".ckbox").is(':checked')){
			jQuery(".ckbox").attr('checked', false);
		}
		//jQuery("#"+id).show();
		//jQuery("#"+hide).hide();
	}
	jQuery("#trip-pickup-type-value").val(value);
	jQuery("#trip-passenger").show();
	
	//alert(value);
	//jQuery("#flighttype1").text('');
	//jQuery("#flighttype2").text('');
	//jQuery("#flighttype3").text('');
	if(value==1){
		jQuery("#travel1").html('Departure');
		jQuery("#traveltime1").html('Departure');
		jQuery("#flighttype1").text('Departure');
		
		jQuery("#travel2").html('Departure');
		jQuery("#traveltime2").html('Departure');
		jQuery("#flighttype2").text('Departure');
		
		jQuery("#travel3").html('Arrival');
		jQuery("#traveltime3").html('Arrival');
		jQuery("#flighttype3").text('Arrival');
		
		jQuery("#msg-1").show();
		jQuery("#msg-2").hide();		
	}else{
		jQuery("#travel1").html('Arrival');
		jQuery("#traveltime1").html('Arrival');
		jQuery("#flighttype1").text('Arrival');
		
		jQuery("#travel2").html('Arrival');
		jQuery("#traveltime2").html('Arrival');
		jQuery("#flighttype2").text('Arrival');
		
		jQuery("#travel3").html('Departure');
		jQuery("#traveltime3").html('Departure');
		jQuery("#flighttype3").text('Departure');
		
		jQuery("#msg-1").hide();
		jQuery("#msg-2").show();
	}
	//trip_change(jQuery("#trip-type-value").val());
	
	
	assign_values();
}

function visible_contents(id,sub){

	if(jQuery("#"+id).is(":hidden")){		
		jQuery("#"+id).show();		
		//trip_change(jQuery("#trip-type-value").val());
		
	}else{
		jQuery("#"+id).hide();
	}
	jQuery("#"+sub).val(0);	
	assign_values();
}

function trip_change(id){
	
	if(id==1){
		if(jQuery("#one-way").is(":hidden")){
			jQuery("#one-way").show();
			jQuery("#round-trip").hide();
		}
	}else{
		if(jQuery("#round-trip").is(":hidden")){
			jQuery("#round-trip").show();
			jQuery("#one-way").hide();
		}
	}
	assign_values();
}

function assign_values(){
	var adult_price=0;
	
	//initialize values
	var adult_price_display=0;
	var child_price_display=0;
	var extra_fee_inbound='';
	
	var trip_price_adult_value=0;
	var trip_price_child_value=0;
	var trip_price_extra_value=0;
	
	var discount_adult = parseInt(jQuery("#discount_adult").val());
	var discount_child = parseInt(jQuery("#discount_child").val());
	
	
	if(jQuery("#trip-type-value").val()==1){
		
		adult_price_display= parseInt(jQuery("#adult_savannah_oneway").val());
		child_price_display= parseInt(jQuery("#child_savannah_oneway").val());
		
		trip_price_adult_value=jQuery("#adult_savannah_oneway").val();
		trip_price_child_value=jQuery("#child_savannah_oneway").val();
		
		jQuery("#adult_price_display").html(' $'+adult_price_display);
		jQuery("#child_price_display").html('$'+child_price_display);
		
		if(jQuery("#trip-pickup-type-value").val()==1){			
			//one way -- outbound -- savannah
			extra_fee_inbound='';
			trip_price_extra_value=0;
		}else if(jQuery("#trip-pickup-type-value").val()==2){
			//oneway -- inbound -- savannah
			extra_fee_inbound=' Airport Fee per individual: $'+jQuery("#savannah_extra_fee").val();
			trip_price_extra_value=jQuery("#savannah_extra_fee").val();				
		}
		
		if(jQuery("#total_adults").is(":hidden")){
			jQuery("#one-way").hide();
			jQuery("#round-trip").hide();
			jQuery("#pickupdropoff").hide();
		}else{
			if(jQuery("#one-way").is(":hidden")){
				jQuery("#one-way").show();
				jQuery("#pickupdropoff").show();
				jQuery("#round-trip").hide();
				show_submit()
			}
		}
		
	}else if(jQuery("#trip-type-value").val()==2){
		
		adult_price_display= (parseInt(jQuery("#adult_savannah_roundtrip").val())*2) + discount_adult;
		child_price_display= (parseInt(jQuery("#child_savannah_roundtrip").val())*2) + discount_child;
		
		trip_price_adult_value=jQuery("#adult_savannah_roundtrip").val();
		trip_price_child_value=jQuery("#child_savannah_roundtrip").val();
		
		extra_fee_inbound=' Airport Fee per individual: $'+jQuery("#savannah_extra_fee").val();
		trip_price_extra_value=jQuery("#savannah_extra_fee").val();		
		
		jQuery("#adult_price_display").html(' $'+adult_price_display);
		jQuery("#child_price_display").html('$'+child_price_display);		
				
		if(jQuery("#total_adults").is(":hidden")){
			jQuery("#one-way").hide();
			jQuery("#round-trip").hide();
			jQuery("#pickupdropoff").hide();
		}else{
			if(jQuery("#round-trip").is(":hidden")){
				jQuery("#round-trip").show();
				jQuery("#pickupdropoff").show();
				jQuery("#one-way").hide();
				show_submit();
			}
		}
	}
	
	//generate values
	
	jQuery("#extra_fee_inbound").html(extra_fee_inbound);
	
	jQuery("#trip-price-adult-value").val(trip_price_adult_value);
	jQuery("#trip-price-child-value").val(trip_price_child_value);
	jQuery("#trip-price-extra-value").val(trip_price_extra_value);
	
	//jQuery("#submit-fields").show();
	
}


function generate_date(id){
	var hour=jQuery("#hour_value_id"+id).val();
	var date_format;
	if(jQuery("#meridian_value_id"+id).val()=='PM'){
		hour=parseInt(jQuery("#hour_value_id"+id).val())+12;
	}
	
	date_format="20"+jQuery("#year_value_id"+id).val()+"-"+jQuery("#month_value_id"+id).val()+"-"+jQuery("#day_value_id"+id).val()+" "+jQuery("#hour_value_id"+id).val()+":"+jQuery("#minute_value_id"+id).val()+":00 "+jQuery("#meridian_value_id"+id).val();
	
	return date_format;
	
}

function submit_savannah_booking(path,location,post){
	
	var child_error_flag=0;
	var adult_error_flag=0;
	
	var total_children=0;
	var total_adults=0;
	var total_passengers=0;
	var extra_charge=0;
	
	var total_children_price=0;
	var total_adult_price=0;
	var overall_price =0;
	
	var flagError=1;
	//do validations	
	
	if(isNaN(jQuery("#total_adults").val())){
		alert("ERROR: Invalid number of adult passengers. Please enter a numeric value");
		adult_error_flag=1;
	}else{
		total_adults = parseInt(jQuery("#total_adults").val());
		if(isNaN(jQuery("#total_children").val())){
			alert("ERROR: Invalid number of child passengers. Please enter a numeric value");
			child_error_flag=1;
		}else{
			total_children = parseInt(jQuery("#total_children").val());		
		}
	}
	
	if(child_error_flag==0 && adult_error_flag==0){
		total_passengers = total_adults + total_children;
		if(total_passengers<1){
			alert("Please enter number of passengers");
		}else{
			total_children_price = total_children * jQuery("#trip-price-child-value").val();
			total_adult_price = total_adults * jQuery("#trip-price-adult-value").val();
			extra_charge = jQuery("#trip-price-extra-value").val();
			
			overall_price = total_adult_price + total_children_price + (extra_charge*total_passengers);
			
			if(overall_price<1){
				alert("ERROR: Unable to generate price.");
			}else{
				if(jQuery("#trip-type-value").val()==1){
					
					if(jQuery("#airline-1").val()==''){
						alert("Please enter airline.");
					}else{
						if(jQuery("#flightno-1").val()==''){
							alert("Please enter flight number");
						}else{
							if(jQuery("#flight-departure-time-1").val()==''){
								alert("Please enter departure/arrival time");
							}else{
								flagError=0;
							}
						}
					}
					
				}else{
					if(jQuery("#airline-2").val()==''){
						alert("Please enter airline.");
					}else{
						if(jQuery("#flightno-2").val()==''){
							alert("Please enter flight number");
						}else{
							if(jQuery("#flight-departure-time-2").val()==''){
								alert("Please enter departure/arrival time");
							}else{
								if(jQuery("#airline-3").val()==''){
									alert("Please enter airline.");
								}else{
									if(jQuery("#flightno-3").val()==''){
										alert("Please enter flight number");
									}else{
										if(jQuery("#flight-arrival-time-3").val()==''){
											alert("Please enter departure/arrival time");
										}else{
											flagError=0;
										}
									}
								}
							}
						}
					}	
				}
				
				if(flagError==0){
				jQuery.post(post, 
							{
							path:path,
							location:location,
							triptype:jQuery("#trip-type-value").val(),
							catid:jQuery("#catid").val(),
							pickuptype: jQuery("#trip-pickup-type-value").val(),
							totalprice:overall_price,
							adult_price:jQuery("#trip-price-adult-value").val(),							
							child_price:jQuery("#trip-price-child-value").val(),
							discount_adult:jQuery("#discount_adult").val(),							
							discount_child:jQuery("#discount_child").val(),
							airline1:jQuery("#airline-1").val(),
							airline2:jQuery("#airline-2").val(),
							airline3:jQuery("#airline-3").val(),
							flightno1:jQuery("#flightno-1").val(),
							flightno2:jQuery("#flightno-2").val(),
							flightno3:jQuery("#flightno-3").val(),
							departuretime1:jQuery("#flight-departure-time-1").val(),
							departuretime2:jQuery("#flight-departure-time-2").val(),
							departuretime3:jQuery("#flight-departure-time-3").val(),
							arrivaltime1:jQuery("#flight-arrival-time-1").val(),
							arrivaltime2:jQuery("#flight-arrival-time-2").val(),
							arrivaltime3:jQuery("#flight-arrival-time-3").val(),
							total_adults:total_adults,
							total_children:total_children,
							extra_charge:extra_charge,
							date1:generate_date(1),
							date2:generate_date(2),
							date3:generate_date(3),
							pdpoint1:jQuery("#pdpoint1").val()							
							},
						  function(data){								
								if(data=='FAIL'){
									alert("Error on booking. If persists.. please reload page");
								}else if(data=='FULL'){
									alert("Sorry this schedule is full booked. Please try another schedule.");
								}else{
									jQuery("#button-submit").attr("disabled","disabled");
									
									var posts = data;
									var post_array = posts.split(",");
									
									recursive_post(post_array,0,path);

								}
								
						  });		
				}//flag error
			}
		}
	}
}


function recursive_post(post_array,x,path){
	var end=0;
	
	//alert(post_array[x]+' x='+x);
	if(post_array[x]!=''){
		var content_array;
		var product_id;
		var quantity;
		
		content_array=post_array[x].split(":");											
		product_id=content_array[0];
		quantity=content_array[1];
		
		jQuery.ajax({
			type: "POST",
			url: path+"/index.php?ajax=true",
			data: "product_id="+product_id+"&quantity="+quantity+"&wpsc_ajax_action=add_to_cart",
			success : function(msg){
						x++;
						if(post_array[x]!=''){
							recursive_post(post_array,x,path);
						}else{							
							//window.location = path+"/index.php?page_id=74";
							window.location = "https://www.kshuttle.com/index.php?page_id=74";
						}
					}
		 });
	}
}

/****************************************** SEQUENCE CHANGES ********************************/

function travel_block(id,value){
	if(jQuery("#"+id).is(":hidden")){
		jQuery("#outbound-radio").attr('checked', false);
		jQuery("#inbound-radio").attr('checked', false);
		jQuery("#"+id).show();		
		
	}	
	jQuery("#trip-type-value").val(value);
	assign_values();
}

function show_submit(){
	var adult_error_flag=0;
	var child_error_flag=0;
	var total_adults=0;
	var total_children=0;
	var overall=0;
	
	if(isNaN(jQuery("#total_adults").val())){
		alert("ERROR: Invalid number of adult passengers. Please enter a numeric value");
		adult_error_flag=1;
	}else{
		total_adults = parseInt(jQuery("#total_adults").val());
		if(isNaN(jQuery("#total_children").val())){
			alert("ERROR: Invalid number of child passengers. Please enter a numeric value");
			child_error_flag=1;
		}else{
			total_children = parseInt(jQuery("#total_children").val());		
		}
	}
	
	if(child_error_flag==0 && adult_error_flag==0){
		overall=total_adults+total_children;
		if(overall>0){
			jQuery("#submit-fields").show();
		}
	}
}


