function checkTravelYear(vYear){
	var intYear = parseInt("0" + String(vYear),10);
	if(intYear < 100) {intYear += 2000;}
	return(intYear);
}

function lpad(n, len, ch) {
	var s = new String(n);
	while (s.length < len) s = ch + s;
	return s;
}

var map = null;
var points = new Array;

function generatePushPin(pinNum, hotelName, lat, long){
		var latLong = new VELatLong(lat,long);
		var hoverData = document.getElementById("_" + pinNum).innerHTML;

		var pin = new VEShape(VEShapeType.Pushpin, latLong);
		pin.SetCustomIcon("<img src='../content/graphics/mapicons/pp" + pinNum + "_off.gif'/>");  
		pin.SetDescription("<div class='attraction' style='background-color:#FFFFFF;'>" + hoverData + "</div>");
		points.push(latLong);
		map.ClearInfoBoxStyles();
		map.AddShape(pin);
}

	
function unloadMap() {
	map.Dispose();
}
	
function loadMapDining() {  
	map = new VEMap('vegas-winningbid-map');
	map.SetDashboardSize(VEDashboardSize.Small);
	map.LoadMap();

	generatePushPin('1','Planet Hollywood',36.111001,-115.1728)
	generatePushPin('2','Imperial Palace Hotel - Casino',36.117501,-115.1727)
	generatePushPin('3','Flamingo Las Vegas',36.11651,-115.1727)
	generatePushPin('4','Caesars Palace Las Vegas',36.115551,-115.172917)
	generatePushPin('5','Rio Suite Hotel Casino',36.115601,-115.1883)
	generatePushPin('6','Harrahs Hotel And Casino',36.120068,-115.172311)
	generatePushPin('7','Golden Nugget',36.170945,-115.144641)
	generatePushPin('8','Paris Las Vegas',36.111996,-115.171511)
	generatePushPin('9','Ballys Las Vegas',36.113526,-115.172736)
	generatePushPin('10','Riviera Hotel And Casino',36.1363,-115.1621)
	generatePushPin('11','The Venetian',36.12252,-115.171133)
	generatePushPin('12','Circus Circus',36.136303,-115.162299)
	generatePushPin('13','Mandalay Bay',36.092152,-115.173001)
	generatePushPin('14','Wynn Las Vegas',36.1276,-115.1678)
	generatePushPin('15','New York, New York',36.1025,-115.173101)
	generatePushPin('16','MGM Grand',36.102601,-115.1727)
	generatePushPin('17','Bellagio',36.113999,-115.173)
	generatePushPin('18','Treasure Island',36.120672,-115.172316)
	generatePushPin('19','Tropicana',36.09904,-115.1728)
	generatePushPin('20','Sahara',36.142919,-115.157805)
	generatePushPin('21','Las Vegas Hilton',36.135888,-115.154699)
	//generatePushPin('22','Greek Isles Hotel and Casino',0, 0)	
	generatePushPin('23','Luxor',36.096806,-115.173001)
	generatePushPin('24','Excalibur',36.099,-115.173101)
	generatePushPin('25','Plaza',36.171003,-115.146766)
	generatePushPin('26','Monte Carlo',36.1045,-115.173101)
	generatePushPin('27','Mirage',36.120453,-115.172416)
		
	//map.SetMapView(points);
	var latLong = new VELatLong(36.117501,-115.1727);
	map.SetCenterAndZoom(latLong, 13);
}
	
	
function loadMapAttractions() {  
	map = new VEMap('vegas-winningbid-map');
	map.SetDashboardSize(VEDashboardSize.Small);
	map.LoadMap();

	generatePushPin('1','Imperial Palace Hotel - Casino',36.117501,-115.1727)
	generatePushPin('2','Flamingo Las Vegas',36.11651,-115.1727)
	generatePushPin('3','Caesars Palace Las Vegas',36.115551,-115.172917)
	generatePushPin('4','Golden Nugget',36.170945,-115.144641)
	generatePushPin('5','Paris Las Vegas',36.111996,-115.171511)
	generatePushPin('6','Riviera Hotel And Casino',36.1363,-115.1621)
	generatePushPin('7','The Venetian',36.12252,-115.171133)
	generatePushPin('8','Circus Circus',36.136303,-115.162299)
	generatePushPin('9','Mandalay Bay',36.092152,-115.173001)
	generatePushPin('10','Wynn Las Vegas',36.1276,-115.1678)
	generatePushPin('11','New York, New York',36.1025,-115.173101)
	generatePushPin('12','MGM Grand',36.102601,-115.1727)
	generatePushPin('13','Bellagio',36.113999,-115.173)
	generatePushPin('14','Treasure Island',36.120672,-115.172316)
	generatePushPin('15','Tropicana',36.09904,-115.1728)
	generatePushPin('16','Las Vegas Hilton',36.135888,-115.154699)
	generatePushPin('17','Luxor',36.096806,-115.173001)
	generatePushPin('18','Excalibur',36.099,-115.173101)
	generatePushPin('19','Monte Carlo',36.1045,-115.173101)
	generatePushPin('20','Mirage',36.120453,-115.172416)

	//map.SetMapView(points);
	var latLong = new VELatLong(36.113999,-115.173);
	map.SetCenterAndZoom(latLong, 13);
}
	
function submitForm(productForm, baseURL) {

	var objForm = document.getElementById(productForm);

	var promoInternalRefId = objForm["PROMO_INTERNAL_REF_ID"].value;
	var promoInternalRefClickId = objForm["PROMO_INTERNAL_REF_CLICK_ID"].value;

	var actionBase = "";

	switch(productForm) {
	
	
			case "search_htl2":
			var strDate = new String(objForm["hotels_date_checkin_CTL2"].value);
			var arrDate = strDate.split("/");
			objForm["CkInMonth"].value = lpad(String(arrDate[0]),2,"0");
			objForm["CkInDay"].value = lpad(String(arrDate[1]),2,"0");
			objForm["CkInYear"].value = String(checkTravelYear(arrDate[2]));
			var strDate = new String(objForm["hotels_date_checkout_CTL2"].value);
			var arrDate = strDate.split("/");
			objForm["CkOutMonth"].value = lpad(String(arrDate[0]),2,"0");
			objForm["CkOutDay"].value = lpad(String(arrDate[1]),2,"0");
			objForm["CkOutYear"].value = String(checkTravelYear(arrDate[2]));
			//for Retail
			objForm.checkInDate.value = objForm["hotels_date_checkin_CTL2"].value;
			objForm.checkOutDate.value = objForm["hotels_date_checkout_CTL2"].value;
			objForm.cityName.value = objForm["OFFER/HOTELS/@SEARCH_CITY"].value;
			objForm.numberOfRooms.value = objForm["OFFER/HOTELS/@ROOM_COUNT"].value;
			//objForm.action = "/hotels/lang/en-us/itinerary.asp?irefid=HPSEARCHFORM&irefclickid=HOTEL";
			actionBase = "/hotels/lang/en-us/itinerary.asp";
			break;
			
		case "search_htl":
			var strDate = new String(objForm["hotels_date_checkin_CTL"].value);
			var arrDate = strDate.split("/");
			objForm["CkInMonth"].value = lpad(String(arrDate[0]),2,"0");
			objForm["CkInDay"].value = lpad(String(arrDate[1]),2,"0");
			objForm["CkInYear"].value = String(checkTravelYear(arrDate[2]));
			var strDate = new String(objForm["hotels_date_checkout_CTL"].value);
			var arrDate = strDate.split("/");
			objForm["CkOutMonth"].value = lpad(String(arrDate[0]),2,"0");
			objForm["CkOutDay"].value = lpad(String(arrDate[1]),2,"0");
			objForm["CkOutYear"].value = String(checkTravelYear(arrDate[2]));
			//for Retail
			objForm.checkInDate.value = objForm["hotels_date_checkin_CTL"].value;
			objForm.checkOutDate.value = objForm["hotels_date_checkout_CTL"].value;
			objForm.cityName.value = objForm["OFFER/HOTELS/@SEARCH_CITY"].value;
			objForm.numberOfRooms.value = objForm["OFFER/HOTELS/@ROOM_COUNT"].value;
			//objForm.action = "/hotels/lang/en-us/itinerary.asp?irefid=HPSEARCHFORM&irefclickid=HOTEL";
			actionBase = "/hotels/lang/en-us/itinerary.asp";
			break;

		case "search_vac":
			var strDate = new String(objForm["hotels_date_checkin_CTL2"].value);
			var arrDate = strDate.split("/");
			objForm["DepartureMonth"].value = (lpad(String(arrDate[0]),1,"0")-1);
			objForm["DepartureDay"].value = String(arrDate[1]);
			objForm["DepartureYear"].value = String(checkTravelYear(arrDate[2]));
			var strDate = new String(objForm["hotels_date_checkout_CTL2"].value);
			var arrDate = strDate.split("/");
			objForm["ReturnMonth"].value = (lpad(String(arrDate[0]),1,"0")-1);
			objForm["ReturnDay"].value = String(arrDate[1]);
			objForm["ReturnYear"].value = String(checkTravelYear(arrDate[2]));
			//objForm.action = "/vacations/lang/en-us/vacations_ver.asp?irefid=HPSEARCHFORM&irefclickid=PKG";
			actionBase = "/vacations/lang/en-us/vacations_ver.asp";

			break;
			
		case "search_car":
			var strDate = new String(objForm["hotels_date_checkin_CTL4"].value);
			var arrDate = strDate.split("/");
			objForm["OFFER/RENTAL_CARS/PICKUP/MONTH"].value = lpad(String(arrDate[0]),2,"0");
			objForm["OFFER/RENTAL_CARS/PICKUP/DAY"].value = lpad(String(arrDate[1]),2,"0");
			objForm["OFFER/RENTAL_CARS/PICKUP/YEAR"].value = String(checkTravelYear(arrDate[2]));
			var strDate = new String(objForm["hotels_date_checkout_CTL4"].value);
			var arrDate = strDate.split("/");
			objForm["OFFER/RENTAL_CARS/DROPOFF/MONTH"].value = lpad(String(arrDate[0]),2,"0");
			objForm["OFFER/RENTAL_CARS/DROPOFF/DAY"].value = lpad(String(arrDate[1]),2,"0");
			objForm["OFFER/RENTAL_CARS/DROPOFF/YEAR"].value = String(checkTravelYear(arrDate[2]));
			
			actionBase = "/qp.asp?productid=8&OMC=R";

			break;
			
		case "search_air":
			var strDate = new String(objForm["hotels_date_checkin_CTL3"].value);
			var arrDate = strDate.split("/");
			objForm["DepartureMonth"].value = (lpad(String(arrDate[0]),1,"0")-1);
			objForm["DepartureDay"].value = String(arrDate[1]);
			objForm["DepartureYear"].value = String(checkTravelYear(arrDate[2]));
			var strDate = new String(objForm["hotels_date_checkout_CTL3"].value);
			var arrDate = strDate.split("/");
			objForm["ReturnMonth"].value = (lpad(String(arrDate[0]),1,"0")-1);
			objForm["ReturnDay"].value = String(arrDate[1]);
			objForm["ReturnYear"].value = String(checkTravelYear(arrDate[2]));
			actionBase = "/travel/airlines/lang/en-us/itinerary.asp";
		default:
			break;
	}
			

        // Tokenize URL
        var urlParts = actionBase.split("?");
        //var baseURL = urlParts[0];
        var qs = String(urlParts[1]).replace("undefined","");

        // Check for a trailing '&'
        if (qs.length > 1 && qs.substr(qs.length-1) != "&") {
           qs += "&";
        }
        // Assemble final action URL
        //alert(baseURL + "&irefid=" + promoInternalRefId + "&irefclickid=" + promoInternalRefClickId);
        objForm.action = baseURL + "&irefid=" + promoInternalRefId + "&irefclickid=" + promoInternalRefClickId;

	objForm.submit();

}

function displayForm(arg)
{

	var form = document.getElementById(arg);

	if(arg=="search_vac")
	{
		document.getElementById(arg).style.display = "block";
		document.getElementById("ms-left-column").className = "packages";
		document.getElementById("vegas-booking-box").style.height = "320px";
		
		//hide others
		document.getElementById("search_htl").style.display = "none";
		document.getElementById("search_air").style.display = "none";
		document.getElementById("search_car").style.display = "none";
	}
	
	if(arg=="search_htl")
	{
		document.getElementById(arg).style.display = "block";
		document.getElementById("ms-left-column").className = "";
		document.getElementById("vegas-booking-box").style.height = "150px";
		
		//hide others
		document.getElementById("search_vac").style.display = "none";
		document.getElementById("search_air").style.display = "none";
		document.getElementById("search_car").style.display = "none";
	}
	
	if(arg=="search_air")
	{
		document.getElementById(arg).style.display = "block";
		document.getElementById("ms-left-column").className = "";
		document.getElementById("vegas-booking-box").style.height = "200px";
		
		//hide others
		document.getElementById("search_vac").style.display = "none";
		document.getElementById("search_htl").style.display = "none";
		document.getElementById("search_car").style.display = "none";
	}
	
	if(arg=="search_car")
	{
		document.getElementById(arg).style.display = "block";
		document.getElementById("ms-left-column").className = "";
		document.getElementById("vegas-booking-box").style.height = "200px";
		
		//hide others
		document.getElementById("search_vac").style.display = "none";
		document.getElementById("search_htl").style.display = "none";
		document.getElementById("search_air").style.display = "none";
	}
	
	for (var i = 0; i < form.elements.length; i++ ) {
		if (form.elements[i].type == 'radio') {
			form.elements[i].checked = false;

			if(form.elements[i].value==arg){
            	form.elements[i].checked = true;
            }
        }
	}
}

var selectedHotel = "";
var ieOffsetTop = 0;
var ieOffsetleft = 0;

	//alert(navigator.appName);
	//alert(navigator.appVersion);
	
if(navigator.appName=="Microsoft Internet Explorer"){

	if(navigator.appVersion.indexOf("MSIE 6.")>0)
	{
		ieOffsetTop = 298;
		ieOffsetleft = 53;
	}
	else
	{
		ieOffsetTop = 298;
		ieOffsetleft = 190;
	}
}

function getHotelHover(arg, left,top,c,d,tttt)
{
	hideHover();
	selectedHotel = "featured" + arg;
	document.getElementById("featured" + arg).style.top = document.getElementById("vegas-winningbid-map").offsetTop + top + ieOffsetTop + (d-top) + "px";
	document.getElementById("featured" + arg).style.left = document.getElementById("vegas-winningbid-map").offsetLeft + left + ieOffsetleft + "px";
	document.getElementById("featured" + arg).style.display = "block";
}

function hideHover(){
	if(document.getElementById(selectedHotel)!=null)
	{
		document.getElementById(selectedHotel).style.display = "none";
	}
}

function hideHoverTimer(timer) {
	if (timer != undefined) {
		timer *= 1000;
		setTimeout(hideHover, timer); 
	}
}

function show(d) {
if(d.length < 1) { return; }
if(document.getElementById(d).style.display == "none") { document.getElementById(d).style.display = "block"; }
else { document.getElementById(d).style.display = "block"; }
}
function hide(d) {
if(d.length < 1) { return; }
if(document.getElementById(d).style.display == "block") { document.getElementById(d).style.display = "none"; }
else { document.getElementById(d).style.display = "none"; }
}
function reverse(d) {
if(d.length < 1) { return; }
if(document.getElementById(d).style.display == "none") { document.getElementById(d).style.display = "block"; }
else if(document.getElementById(d).style.display == "block") { document.getElementById(d).style.display = "none"; }
//else { document.getElementById(d).style.display = "none"; }
}

function openBox(x) {
	if (document.getElementById(x).style.display == 'none') {
		document.getElementById(x).style.display = '';
	} else {
		document.getElementById(x).style.display = '';
	}
}

function closeBox(x) {
	if (document.getElementById(x).style.display == '') {
		document.getElementById(x).style.display = 'none';
	} else {
		document.getElementById(x).style.display = 'none';
	}
}

function change(x) {

	if (document.getElementById(x).className == '') {
		document.getElementById(x).className = 'selected';
	}
	
	else if (document.getElementById(x).className == 'selected') {
		document.getElementById(x).className = 'selected';
	}

}

function changeBack(x) {

	if (document.getElementById(x).className == 'selected') {
		document.getElementById(x).className = '';
	}

}
