var mapWasLoaded = false;
var curr_form = "#ExpressBkFltonly_air";
var linkCounter = "http://www.travelgrove.com/cgi-bin/link_counter_new.cgi";

var options = {
	delay:175,
	json:true,
	loadingClass:"aLoad",
	timeout:50000,
	script:'/ajax/suggestions/airports.php',
	ajaxParams:{action:"", json:true, searchsystem:"def"},
	format:function(selLiObj) {
		return (selLiObj.innerHTML.replace(/<\/?b>/gi,'')).replace(/(.*),(.*)\((.*)\)/,'$1 ($3)');
	},
	callback:function(){},
	errorHandler:function(asObj){
		$(asObj.fld).addClass("err").focus(remErr);
	}
};
var options_hotels = {
	delay:175,
	json:true,
	loadingClass:"aLoad",
	timeout:50000,
	script:'/ajax/suggestions/hotels.php',
	ajaxParams:{action:"", json:true, searchsystem:"def"},
	format:function(selLiObj) {
		return (selLiObj.innerHTML.replace(/<\/?b>/gi,''));
	},
	callback:function(){},
	errorHandler:function(asObj){
		$(asObj.fld).addClass("err").focus(remErr);
	}
};

function runAfterLoad(){
	$("a.ap_i").click(switchImage);
	$("div.button").click(switchTab);
	$("form.parkingForm").submit(startparkingsearch);
	$("form.sb").submit(loadMerchants);
	$("#compareMerchants").click(compareMerchants);
	$("#goBack").click(stepBackToForm);
	$("input[@name=email]").focus(defaultHandler).change(submitMail_new);
	$(".deal").click(changehref);
	if ($("#tab_airport img").length==0 && $("#button_map").length>0) $("#button_map").click();
	createDatepicker("dep_cal_air","arr_cal_air","oneway",false,false);
	createDatepicker("dep_cal_hotel","arr_cal_hotel",false,false,false);
	createDatepicker("dep_cal_car","arr_cal_car",false,false,false);
	createDatepicker("dep_cal_prk","arr_cal_prk",false,false,false);
	as1 = new AS('fromAir', options);
	as2 = new AS('toAir', options);
	as3 = new AS('fromHotel', options_hotels);
	as4 = new AS('fromCar', options);
	as5 = new AS('toCar', options);
};

function changehref(){
	var id = this.className.substr(10);
	this.href = "http://www.travelgrove.com/global/link_counter.php?intitem="+id+"&adid="+adid+"&subID="+subID+"&idReferral="+idReferral;
	return;
};

function stepBackToForm(){
	$(".tabs .tab").addClass("nod");
	$(curr_form).parent(".tab").removeClass("nod");
};

function switchImage(){
	var img = '#p'+this.id.substr(1);
	if (!$(img).hasClass("nod")) return false;
	$("#tab_airport img").not(".nod").fadeOut(400,function(){
		$("#tab_airport img").not(".nod").addClass("nod")
		$(img).removeClass("nod").fadeIn(400);
	});
	return false;
};

function switchTab(){
	var tab= "#tab_"+this.id.substr(7);
	$(this.parentNode).find(".button").removeClass("sel_butt");
	$(this).addClass("sel_butt");
	$(this.parentNode).next().find(".tab").addClass("nod").filter(tab).removeClass("nod");
	if (tab=="#tab_map" && !mapWasLoaded) loadMap();
	if (tab=="#tab_air") {
		curr_form = "#ExpressBkFltonly_air";
		linkCounter = "http://www.travelgrove.com/cgi-bin/link_counter_new.cgi"
	}
	if (tab=="#tab_car") {
		curr_form = "#ExpressBkFltonly_car";
		linkCounter = "http://www.travelgrove.com/cgi-bin/cars/link_counter_new.cgi"
	}
	if (tab=="#tab_hotel") {
		curr_form = "#ExpressBkFltonly_hotel";
		linkCounter = "http://www.travelgrove.com/cgi-bin/hotels/link_counter_new.cgi"
	}
};

function loadMap(){
	$("#tab_map").append('<iframe frameborder="0" scrolling="no" src="/airfare-information/google-map.php?lat='+lat+'&amp;lng='+lng+'">Google map is loading...</iframe>');
	mapWasLoaded = true;
};

function compareMerchants() {
	var elems = $("#advCont .mSel");
	if (!elems.length) {
		alert('Please select at least one merchant!');
		return false;
	};
	elems.each(function(){
		var mName = $(this).find("img").attr("alt");
		var patt = /c[0-9]+/i;
		var mId = patt.exec(this.className);
		mId = mId.toString().substr(1);
		newWin = jump(mId, mName);
		if (!newWin) {
			createWindow("popup_new");
			window.focus();
			return;
		};
	});
	return true;
}

function loadMerchants() {
	ret = false;
	$(this).find(".validate").each(function(){
		if (this.value==this.defaultValue || this.value.length<3) ret = true;
	});
	if (ret) {
		alert("Please enter correct values!");
		return false;
	};

	var params = $(this).serialize()+"&impId="+queryCode+"&searchsystem="+searchsystem+"&language="+lang;
	$.post($(this).attr('action'),params,buildMerchantBox);
	$("#advCont").html("<div style='padding:50px'>Loading<br>Partners...</div>");
	$(".bxr .tab").addClass("nod").filter("#tab_merchants").removeClass("nod");
	return false;
}

function buildMerchantBox(rsp) {
	processResponse(rsp);
}

function startparkingsearch() {
	df = $("#parkingForm");
	var d_hour = df.find("[@name=depTime]").val();
	var a_hour = df.find("[@name=arrTime]").val();
	var airport=df.find("[@name=parkingAirport]").val();
	var date1 = df.find("[@name=dep_date]").val().split('/');
	var date2 = df.find("[@name=ret_date]").val().split('/');
/*
	var now=new Date();
	var year=""+now.getFullYear();
	now= ""+now.getMonth()+"/"+now.getDate()+"/"+year.substr(2,2);
	var tracklink = "http://www.travelgrove.com/cgi-bin/link_counter_new.cgi?merchant=airportparkingreservations&intitem=5191&idReferral="+idReferral+"&adid="+adid+"&querycode="+queryCode+"&url=";
	var url = "http%3A%2F%2Fwww.airportparkingreservations.com%2FSearchResults%3FrefID%3D1205%26originaldate%3D"+now+"%26subid%3D%26subname%3D%26country%3DUSA%26phone_amt%3D%26dhour%3D"+d_hour+"%26dminute%3D"+d_min+"%26ddt%3D"+d_dt+"%26rhour%3D"+a_hour+"%26rminute%3D"+a_min+"%26rdt%3D"+a_dt+"%26source_code%3D%26airportname%3D"+airport+"%26ddate%3D"+d_date+"%26dtime%3D"+d_time+"%26rdate%3D"+a_date+"%26rtime%3D"+a_time;
	updated by Lori on the 31st of March 2010; the old link did not pass airportcode or simple did not work (infinite redirect)
*/
	var url = 'http://www.travelgrove.com/cgi-bin/link_counter_new.cgi?merchant=airportparkingreservations&intitem=5191&idReferral='+
	idReferral+'&adid='+adid+'&querycode='+queryCode+'&fromair='+airport+'&toair='+$("#toAir").val()+
	'&departday='+date1[1]+'&departmonth='+date1[0]+'&departyear='+date1[2]+
	'&returnday='+date2[1]+'&returnmonth='+date2[0]+'&returnyear='+date2[2]+
	'&departTime='+d_hour+'&returnTime='+a_hour+
	'&adults=1&childrens=0&seniors=0&subID='+subID+'&logo=mf';
	window.open(url,"_blank");
	return false;
};

$(function() {
	var travelgroveDomain = 'http://www.travelgrove.com';
	$('span.tt_more').click(function(){
		document.location = $(this).parent().children('a:eq(0)').attr('href');
	});
	
	$('span.usrphotolnk').click(userLnk);
	$('span.usrlnk').click(userLnk);

	function userLnk(){
		var username = $(this).parent().children('span:eq(0)').children('img:eq(0)').attr('alt');
		document.location = travelgroveDomain + '/community/users/' + username + '/';
	}
});

