jQuery(document).ready(function() {
	bxsStep1Form.Init();
	jQuery(document).ready(function() {
		jQuery(".clearable").clearable()
	});
});

var bxsStep1Form = {
	Init: function() {		
		jQuery("#bxsMoreOptionsBox").hide();
		
		jQuery("#bxsRoundTrip").click(function () {
			jQuery("#oneWayDiv").removeClass("BXSBoldTrip");
			jQuery("#roundTripDiv").addClass("BXSBoldTrip");
			jQuery("#retourDiv").show();
			jQuery("#returnDate").show();
        });
        jQuery("#bxsOneWay").click(function () {
        	jQuery("#roundTripDiv").removeClass("BXSBoldTrip");
        	jQuery("#oneWayDiv").addClass("BXSBoldTrip");
        	jQuery("#bxsDep2ApCode").val("");
			jQuery("#bxsDep2ApName").val("");
			jQuery("#bxsDes2ApCode").val("");
			jQuery("#bxsDes2ApName").val("");
			jQuery("#retourDiv").hide();
			jQuery("#returnDate").hide();
        });
        
        jQuery("#BXSSearchButton").click(function () {
        	if(bxsStep1Form.ValidateForm()){
        		bxsStep1Form.SubmitSearch();
        	}
        });
        
        jQuery("#BXSSearchButton2").click(function () {  
        	if(bxsStep1Form.ValidateForm()){
        		day1 = jQuery("#bxsDepartureDate").val().substring(0,2);
        		month1 = jQuery("#bxsDepartureDate").val().substring(3,5);
        		year1 = jQuery("#bxsDepartureDate").val().substring(6,10);        		
        		jQuery("#bxsDepartureDateFormat").val(month1 + "-" + day1 + "-" + year1);
        		
        		day2 = jQuery("#bxsReturnDate").val().substring(0,2);
        		month2 = jQuery("#bxsReturnDate").val().substring(3,5);
        		year2 = jQuery("#bxsReturnDate").val().substring(6,10);        		
        		jQuery("#bxsReturnDateFormat").val(month2 + "-" + day2 + "-" + year2);
        		
        		BXSShowWaitScreen("search");
				jQuery("#bxsSearchForm").attr("action", "https://reservatie.goedkopevliegtuigtickets.be/transport/bookXpress_hitchHiker/selectie.cfm");
				jQuery("#bxsSearchForm").attr("method", "post");
				setTimeout("jQuery('#bxsSearchForm').submit()",1000);
        	}
		});
        
        
        jQuery("#bxsMoreOptionsLink").click(function () {
        	//jQuery("#bxsMoreOptionsLink").hide();
        	jQuery("#bxsMoreOptionsBox").show();
        });
        
        jQuery("#bxsLessOptionsLink").click(function () {
        	jQuery("#bxsMoreOptionsLink").show();
        	jQuery("#bxsMoreOptionsBox").hide();
        });
        
       	jQuery.fn.qtip.styles.qTipStyle = {
            width: 250,
            padding: 10,
            background: "#fff",
            color: "#333",
            textAlign: "left",
            "font-family": "Verdana, Arial",
            "font-size": "12px",
            "font-weight": "normal",
            border: { width: 5, radius: 0, color: "#27A4E7" },
            tip: {
            	corner: "bottomcenter",
            	color: "#27A4E7",
            	size: {
            		x: 12,
            		y: 18
            	}
            }
        };
        
        jQuery("#bxsInfoChd").qtip({
            content: general_.chdInfo,
            position: {	corner: { target: "bottomcenter", tooltip: "bottomcenter" }, adjust: { x: -20, y: -25 } },
            style: "qTipStyle",
            show: {
            	when: {
            		event: "click"
            	}
            },
            hide: {
            	when: {
            		event: "mouseout"
            	}
            }
        });
        
        jQuery("#bxsInfoInf").qtip({
            content: general_.infInfo,
            position: {	corner: { target: "bottomcenter", tooltip: "bottomcenter" }, adjust: { x: -20, y: -25 } },
            style: "qTipStyle",
            show: {
            	when: {
            		event: "click"
            	}
            },
            hide: {
            	when: {
            		event: "mouseout"
            	}
            }
        });
	},
	
	ValidateForm: function() {
		if (jQuery("#bxsDepApName").val() == "") {
			alert(general_.errorDepAirport);
			return false;
		}
		
		if (jQuery("#bxsDesApName").val() == "") {
			alert(general_.errorDesAirport);
			return false;
		}
		
		if(jQuery("input[name='roundTrip']:checked").val()==1){
			if (jQuery("#bxsDep2ApName").val() == "") {
				alert(general_.errorDep2Airport);
				return false;
			}
			
			if (jQuery("#bxsDes2ApName").val() == "") {
				alert(general_.errorDes2Airport);
				return false;
			}
		}
		return true;
	},
	
	Search: function() {
		if (bxsStep1_2Form.SearchFormValidates()) {
			if (!bxsStep1_2Form.IsRoundTrip()) {
				bxsDialog.Alert({
					message: textResources.warningOneWay, 
					width: 500,
					ok: this.SubmitSearch
				});
			} else {
				var openJawDeparture = jQuery("#bxsDep2ApName").val() != jQuery("#bxsDesApName").val();
				var openJawReturn = jQuery("#bxsDes2ApName").val() != jQuery("#bxsDepApName").val();
				
				var openJawReturnAction = function() {
					bxsDialog.Alert({
			    		message: textResources.openJawReturn.replace("@departure@", jQuery("#bxsDepApName").val())
			    											.replace("@returnDestination@", jQuery("#bxsDes2ApName").val()), 
						width: 500,
			    		ok: bxsStep1Form.SubmitSearch
			    	});
				};
				
				if (openJawDeparture) {
					var openJawDepartureAction = this.SubmitSearch;
					if (openJawReturn) {
						openJawDepartureAction = openJawReturnAction;
					}
					
					bxsDialog.Alert({
						message: textResources.openJawDeparture.replace("@destination@", jQuery("#bxsDesApName").val())
																.replace("@returnDeparture@", jQuery("#bxsDep2ApName").val()),
						width: 500,
						ok: openJawDepartureAction
					});
			    } else if (openJawReturn) {
			    	openJawReturnAction();
			    } else {
			    	this.SubmitSearch();
			    }
			}
		}
	},
	
	SubmitSearch: function() {
		BXSShowWaitScreen("search");
		jQuery("#bxsSearchForm").attr("action", "flights.cfml");
		jQuery("#bxsSearchForm").attr("method", "post");
		setTimeout("jQuery('#bxsSearchForm').submit()",1000);
	},

	ShowExtendedSearch: function(animated) {
		jQuery("#showExtendedSearchButton").addClass("BXSHidden");
		jQuery("#hideExtendedSearchButton").removeClass("BXSHidden");
		jQuery(".BXSExtendedSearchBlock").show(animated === false ? 0 : 200);
	},
	
	HideExtendedSearch: function(animated) {
		jQuery("#hideExtendedSearchButton").addClass("BXSHidden");
		jQuery("#showExtendedSearchButton").removeClass("BXSHidden");
		jQuery(".BXSExtendedSearchBlock").hide(animated === false ? 0 : 200);
	},
	
	CopyDepDes: function(outbound, field) {
		if(jQuery("input[name='roundTrip']:checked").val()==1){
			if (outbound) {
				jQuery("#bxsDep2ApName").val(jQuery("#bxsDesApName").val());
				jQuery("#bxsDep2ApCode").val(jQuery("#bxsDesApCode").val());
				jQuery("#bxsDes2ApName").val(jQuery("#bxsDepApName").val());
				jQuery("#bxsDes2ApCode").val(jQuery("#bxsDepApCode").val());
			} else {
				if (jQuery("#bxsDepApName").val() == "") {
					jQuery("#bxsDepApName").val(jQuery("#bxsDes2ApName").val());
					jQuery("#bxsDepApCode").val(jQuery("#bxsDes2ApCode").val());
				}
				if (jQuery("#bxsDesApName").val() == "") {
					jQuery("#bxsDesApName").val(jQuery("#bxsDep2ApName").val());
					jQuery("#bxsDesApCode").val(jQuery("#bxsDep2ApCode").val());
				}
			}
		} else {
			jQuery("#bxsDep2ApCode").val("");
			jQuery("#bxsDep2ApName").val("");
			jQuery("#bxsDes2ApCode").val("");
			jQuery("#bxsDes2ApName").val("");
		}
	},
	
	 Modify: function() {
			jQuery("#bxsMoreOptionsBox").toggle();
			jQuery(".BXSMore").toggle();
			jQuery(".BXSLess").toggle();
		},

	Form: function() {
		return jQuery("#bxsSearchForm")[0];
	}
};
