// General Functions
var tabon;

function updateGO(image)
{

	document.getElementById('emailSubmit').src = image;
}


function toggleChildrenAges()
{
	var hotel = document.SubmitForm.HotelCode.options[document.SubmitForm.HotelCode.selectedIndex].text;
	switch(hotel)
	{
		case "Breezes Costa do Sauipe":
		case "Breezes Curacao":
		case "Breezes Panama":
		case "Breezes Puerto Plata":
		case "Negril Beach Villa":
		case "Rooms Ocho Rios":
		case "Rooms Negril":
		case "Starfish Trelawny Beach":
		case "Starfish Santa Luzia":
		case "Breezes Trelawny":
		case "Select a Resort":
			for(i = 1; i <= 4; i++)
				document.getElementById("Child" + i).className = 'Show';
			document.getElementById("NoChildText").className = 'Hide';
			break;
		default:
			for(i = 1; i <= 4; i++)
			{
				document.getElementById("Child" + i).className = 'Hide';
				document.getElementById("Child" + i).value = "";
			}
			document.getElementById("NoChildText").className = 'Show';
	}
	
}

/*

function toggleChildrenAges()
{
	var hotel = document.SubmitForm.HotelCode.options[document.SubmitForm.HotelCode.selectedIndex].text;
	switch(hotel)
	{
		case "Breezes Costa do Sauipe":
		case "Breezes Curacao":
		case "Breezes Panama":
		case "Breezes Puerto Plata":
		case "Negril Beach Villa":
		case "Rooms Ocho Rios":
		case "Rooms Negril":
		case "Starfish Trelawny Beach":
		case "Starfish Santa Luzia":
		case "Select a Resort":
			for(i = 1; i <= 4; i++)
				document.getElementById("Children").className = 'Show';
			document.getElementById("NoChildText").className = 'Hide';
			break;
		default:
			for(i = 1; i <= 4; i++)
			{
				document.getElementById("Children").className = 'Hide';
				document.getElementById("Children").value = "";
			}
			document.getElementById("NoChildText").className = 'Show';
	}
	
}
*/

function validate_email(field)
{
    var email = document.getElementById(field);
    
    
    
    with (email)
    {
		if(value == "")
		{
			alert("Email address is required");
			return false;
		}
		
        var apos = value.indexOf("@");
        var dotpos = value.lastIndexOf(".");
        if (apos < 1 || dotpos - apos < 2 || dotpos == value.length - 1) 
        {
            alert("Email address was incorrectly formatted.\nPlease try again!");
            return false;
        }
        else 
        {
            return true;
        }
    }
}

function TabOn (name) {
	var sf = ["packages", "hotel", "vows", "search","media", "vacations", "agency","postcards"/*, "tee","ftracker"*/];
	
	for (var i=0; i < sf.length; i++) {
		document.getElementById(sf[i]).src = document.getElementById(sf[i]).src.replace(
			((document.getElementById(sf[i]).id == name) ? "_off.gif": "_on.gif"),
			((document.getElementById(sf[i]).id == name) ? "_on.gif": "_off.gif")
		);
		
	}
	tabon=name;
	
}
function AddIATA(anchor) {

	document.getElementById(anchor).href += "?iata=" + document.getElementById('IATA').value;
}
function Get_CookieVal(name, cookiename)
{
var strSearch = Get_Cookie(cookiename);

if (strSearch == null || strSearch == '' ) return null;

  var start = strSearch.indexOf(name+"=");
   var len = start+name.length+1;
   if ((!start) && (name != strSearch.substring(0,name.length))) return null;
   if (start == -1) return null;
   var end = strSearch.indexOf("&",len);
   if (end == -1) end = strSearch.length;
   return unescape(strSearch.substring(len,end));

}

function Get_Cookie(name) {
   var start = document.cookie.indexOf(name+"=");
   var len = start+name.length+1;
   if ((!start) && (name != document.cookie.substring(0,name.length))) return null;
   if (start == -1) return null;
   var end = document.cookie.indexOf(";",len);
   if (end == -1) end = document.cookie.length;
   return unescape(document.cookie.substring(len,end));
}

function Set_Cookie(name,value,expires,path,domain,secure) {
    var cookieString = name + "=" +escape(value) +
       ( (expires) ? ";expires=" + expires.toGMTString() : "") +
       ( (path) ? ";path=" + path : "") +
       ( (domain) ? ";domain=" + domain : "") +
       ( (secure) ? ";secure" : "");
    document.cookie = cookieString;
}

function Delete_Cookie(name,path,domain) {
   if (Get_Cookie(name)) document.cookie = name + "=" +
      ( (path) ? ";path=" + path : "") +
      ( (domain) ? ";domain=" + domain : "") +
      ";expires=Thu, 01-Jan-70 00:00:01 GMT";
} 
// Postcard Window
function OpenCards(id) 
{
	var strURL;
	var search;	
	
	switch(id) {
		case "BZB":
			search="catSearch=3&";
			break;
		case "GLN":
			search="catSearch=10&";
			break;
		case "GLB":
			search="catSearch=11&";
			break;
		case "BZS":
			search="catSearch=9&";
			break;
		case "BZC":
			search="catSearch=8&";
			break;
		case "BZM":
			search="catSearch=4&";
			break;
		case "BZD":
			search="catSearch=7&";
			break;
		case "BZP":
			search="catSearch=6&";
			break;
		case "BZG":
			search="catSearch=5&";
			break;
		case "HD2":
			search="catSearch=12&";
			break;
		case "HD3":
			search="catSearch=13&";
			break;
		case "STB":
			search="catSearch=14&";
			break;
		case "ROB":
			search="catSearch=15&";
			break;
	}
	strURL="http://ecards.superclubs.com/gcards/index.php?" + search +  "limit=6";
	newWin=window.open(strURL,'SCecards','toolbar=yes,status=no,menubar=no,location=no,directories=no,width=750,height=600,scrollbars=yes,resizable=yes');
	newWin.focus();
}


// Package storefront Functions


function showdiv(pass) {
	var divs = document.getElementsByTagName('div');
	for(i=0;i<divs.length;i++){
		if ((divs[i].id.indexOf("Div")) == (divs[i].id.length-3)) {
			if(divs[i].id.match(pass)){//if they are 'see' divs
				
				if (document.getElementById) // DOM3 = IE5, NS6
					divs[i].style.visibility="visible";// show/hide
				else
					if (document.layers) // Netscape 4
						document.layers[divs[i]].display = 'visible';
					else // IE 4
						document.all.divs[i].visibility = 'visible';
			} else {
				alert(pass)
				if (document.getElementById)
					divs[i].style.visibility="hidden";
				else
					if (document.layers) // Netscape 4
						document.divs[i].visibility = 'hidden';
					else // IE 4
						document.all.divs[i].visibility = 'hidden';
			}
		}
		
	}
}

function Show_SF(store)
{
	
	var divs = document.getElementsByTagName('div');
	for(i=0; i < divs.length; i++)
	{
		if (divs[i].id.indexOf('SFdiv') == 0)		// Check if its a storefront div
		{
			//alert (store + "+=" +divs[i].id);
			if (document.getElementById) // DOM3 = IE5, NS6
			{
				divs[i].style.visibility = (store == divs[i].id) ? "visible" : "hidden";// show/hide
				divs[i].style.display = (store == divs[i].id) ? "block" : "none";
			}
			else
				if (document.layers) // Netscape 4
				{
					document.layers[divs[i]].display = (store == divs[i].id) ? 'visible' : 'hidden';					
				}
				else // IE 4
					document.all.divs[i].visibility = (store == divs[i].id) ? 'visible' : 'hidden';								
			
		}
	}
	
}

function Show_PkgAir (bool) {
	
	document.getElementById('AirField1').style.visibility = (bool=='true') ?
		 "visible" : "hidden";
	document.getElementById('AirField2').style.visibility = (bool=='true') ?
		 "visible" : "hidden";
	document.getElementById('Gateway').style.visibility = (bool=='true') ?
		 "visible" : "hidden";
	document.getElementById('CountryC').style.visibility = (bool=='true') ?
		 "visible" : "hidden";
	if (bool=='true')
		document.getElementById('Gateway').selectedIndex = 0;
		 
}


function setHotelRNB(chosen,domain) {
	document.cookie="Hotel=" + escape(chosen) + "; expires=\"\"); path=\"\")" +
        ((domain) ? "; domain=" + domain : "");
         
	if (chosen == "18V") {
		var selbox = document.getElementById('AdultsN');
		selbox.options.length = 0;
			selbox.options[selbox.options.length] = new Option('1','1');
			selbox.options[selbox.options.length] = new Option('2','2');
			selbox.options[selbox.options.length] = new Option('3','3');
			selbox.options[selbox.options.length] = new Option('4','4');
			selbox.options[selbox.options.length] = new Option('5','5');
			selbox.options[selbox.options.length] = new Option('6','6');
			selbox.options[selbox.options.length] = new Option('7','7');
			selbox.options[selbox.options.length] = new Option('8','8');			
			selbox.options[1].selected=true
	}
	else
	{
	
		var selbox = document.getElementById('AdultsN');
		selbox.options.length = 0;
			selbox.options[selbox.options.length] = new Option('1','1');
			selbox.options[selbox.options.length] = new Option('2','2');
			selbox.options[selbox.options.length] = new Option('3','3');
			selbox.options[1].selected=true
	}
}

function setBrandOptions (chosen, ctlName) {
	var selbox = document.getElementById(ctlName);
	
	selbox.options.length=0;
//	selbox.options[selbox.options.length] = new Option('Select a Resort','');
	if (ctlName == 'HotelCode') {
		switch (chosen) {
			case	"Bahamas":
				selbox.options.length=0;
				selbox.options[selbox.options.length] = new Option('Breezes Bahamas','2ZB');	
				break;
			case 	"Brazil":
				selbox.options.length=0;
				selbox.options[selbox.options.length] = new Option('Breezes Costa do Sauipe','7ZS');	
				selbox.options[selbox.options.length] = new Option('Starfish Santa Luzia','7TA');
				break;
			case	"Curacao":
				selbox.options.length=0;
				selbox.options[selbox.options.length] = new Option('Breezes Curacao','7ZC');	
				break;
			case	"DR":
				selbox.options[selbox.options.length] = new Option('Breezes Puerto Plata','4ZD');	
				break;
			case	"Jamaica":
				if (Get_CookieVal('ShowBrand','SC') != 'Hedo' ) {
					selbox.options[selbox.options.length] = new Option('Breezes Montego Bay','1ZM');	
					selbox.options[selbox.options.length] = new Option('Breezes Runaway Bay','1ZR');
					selbox.options[selbox.options.length] = new Option('Grand Lido Braco','1GB');	
					selbox.options[selbox.options.length] = new Option('Grand Lido Negril','1GN');
				}
				if (Get_CookieVal('ShowBrand','SC') != 'NoHedo' ) {
					selbox.options[selbox.options.length] = new Option('Hedonism II','1HN');	
					selbox.options[selbox.options.length] = new Option('Hedonism III','1HR');
				}
				if (Get_CookieVal('ShowBrand','SC') != 'Hedo' ) {
					selbox.options[selbox.options.length] = new Option('Negril Beach Villa','18V');
					selbox.options[selbox.options.length] = new Option('Rooms Ocho Rios','15R');	
					selbox.options[selbox.options.length] = new Option('Rooms Negril','15N');	
					selbox.options[selbox.options.length] = new Option('Starfish Trelawny Beach','18T');
				}
				break;
			default:
				if (Get_CookieVal('ShowBrand','SC') != 'Hedo' ) {
					selbox.options[selbox.options.length] = new Option('Breezes Bahamas','2ZB');	
					selbox.options[selbox.options.length] = new Option('Breezes Costa do Sauipe','7ZS');	
					selbox.options[selbox.options.length] = new Option('Breezes Curacao','7ZC');	
					selbox.options[selbox.options.length] = new Option('Breezes Montego Bay','1ZM');	
					selbox.options[selbox.options.length] = new Option('Breezes Puerto Plata','4ZD');	
					selbox.options[selbox.options.length] = new Option('Breezes Runaway Bay','1ZR');
					selbox.options[selbox.options.length] = new Option('Grand Lido Braco','1GB');	
					selbox.options[selbox.options.length] = new Option('Grand Lido Negril','1GN');
				}
				if (Get_CookieVal('ShowBrand','SC') != 'NoHedo' ) {
					selbox.options[selbox.options.length] = new Option('Hedonism II','1HN');	
					selbox.options[selbox.options.length] = new Option('Hedonism III','1HR');
				}
				if (Get_CookieVal('ShowBrand','SC') != 'Hedo' ) {
					selbox.options[selbox.options.length] = new Option('Negril Beach Villa','18V');
					selbox.options[selbox.options.length] = new Option('Rooms Ocho Rios','15R');	
					selbox.options[selbox.options.length] = new Option('Rooms Negril','15N');
					selbox.options[selbox.options.length] = new Option('Starfish Trelawny Beach','18T');
					selbox.options[selbox.options.length] = new Option('Starfish Santa Luzia','7TA');
				}
		}
	}
	else 
	{
		switch (chosen) {
			case	"Bahamas":
				selbox.options.length=0;
				selbox.options[selbox.options.length] = new Option('Breezes Bahamas','BZB');
				UpdateVowAction();
				break;
			case 	"Brazil":
				selbox.options.length=0;
				selbox.options[selbox.options.length] = new Option('Breezes Costa do Sauipe','BZS');	
				UpdateVowAction();
				break;
			case	"Curacao":
				selbox.options.length=0;
				selbox.options[selbox.options.length] = new Option('Breezes Curacao','BZC');	
				UpdateVowAction();
				break;
			case	"DR":
				selbox.options[selbox.options.length] = new Option('Breezes Puerto Plata','BZD');	
				break;
			case	"Jamaica":
				if (Get_CookieVal('ShowBrand','SC') != 'Hedo' ) {
					selbox.options[selbox.options.length] = new Option('Breezes Montego Bay','BZM');	
					selbox.options[selbox.options.length] = new Option('Breezes Runaway Bay','BZG');
					selbox.options[selbox.options.length] = new Option('Grand Lido Braco','GLB');	
					selbox.options[selbox.options.length] = new Option('Grand Lido Negril','GLN');
				}
				if (Get_CookieVal('ShowBrand','SC') != 'NoHedo' ) {					
					selbox.options[selbox.options.length] = new Option('Hedonism II','HD2');	
					selbox.options[selbox.options.length] = new Option('Hedonism III','HD3');
				}
				if (Get_CookieVal('ShowBrand','SC') != 'Hedo' ) {
					selbox.options[selbox.options.length] = new Option('Negril Beach Villa','NBV');
					selbox.options[selbox.options.length] = new Option('Rooms Ocho Rios','ROB');	
					selbox.options[selbox.options.length] = new Option('Rooms Negril','RNN');
					selbox.options[selbox.options.length] = new Option('Starfish Trelawny Beach','STB');
				}
				break;
			default:
				if (Get_CookieVal('ShowBrand','SC') != 'Hedo' ) {
					selbox.options[selbox.options.length] = new Option('Breezes Bahamas','BZB');	
					selbox.options[selbox.options.length] = new Option('Breezes Costa do Sauipe','BZS');	
					selbox.options[selbox.options.length] = new Option('Breezes Curacao','BZC');	
					selbox.options[selbox.options.length] = new Option('Breezes Montego Bay','BZM');	
					selbox.options[selbox.options.length] = new Option('Breezes Puerto Plata','BZD');	
					selbox.options[selbox.options.length] = new Option('Breezes Runaway Bay','BZG');
					selbox.options[selbox.options.length] = new Option('Grand Lido Braco','GLB');	
					selbox.options[selbox.options.length] = new Option('Grand Lido Negril','GLN');				
				}
				if (Get_CookieVal('ShowBrand','SC') != 'NoHedo' ) {
					selbox.options[selbox.options.length] = new Option('Hedonism II','HD2');	
					selbox.options[selbox.options.length] = new Option('Hedonism III','HD3');
				}
				if (Get_CookieVal('ShowBrand','SC') != 'Hedo' ) {
					selbox.options[selbox.options.length] = new Option('Negril Beach Villa','NBV');
					selbox.options[selbox.options.length] = new Option('Rooms Ocho Rios','ROB');	
					selbox.options[selbox.options.length] = new Option('Rooms Negril','RNN');
					selbox.options[selbox.options.length] = new Option('Starfish Trelawny Beach','STB');
				}
		}
	}
	
	var c_start=document.cookie.indexOf("Hotel=");
    var c_end;
	if (c_start!=-1)
	{ 
		c_start=c_start + 6; 
		c_end=document.cookie.indexOf(";",c_start);
		if (c_end==-1) c_end=document.cookie.length;
		
		for(i = 0; i < selbox.options.length; i++)
		{
			if(selbox.options[i].value == unescape(document.cookie.substring(c_start,c_end)))
			{
				selbox.selectedIndex = i;	
			}
		}
		
	} 
}

function validatePkgInput () {
	// Validate Hotel selection if necessary
	box = document.getElementById('HotelCode');
	
	/*if (box.type != "hidden" && box.selectedIndex== 0 && box.options.length > 1) 
	{
		alert ("Please select a resort.");
		return false;
	}*/
	// Validate # of Passengers

	// Validate isdate	
	if (!isDate(document.getElementById('ArrivalD').value, 'M/d/yyyy')) {
		
		alert ('Invalid date format mm/dd/yyyy');
		document.getElementById('ArrivalD').focus();
		document.getElementById('ArrivalD').select();
		
		return false;
	}
	if (!isDate(document.getElementById('DepartureD').value, "M/d/y")) {
		alert ('Invalid date format mm/dd/yyyy');
		document.getElementById('DepartureD').focus();
		document.getElementById('DepartureD').select();
		
		return false;
	}
	
	// Validate at least one day differnce 
	if (compareDates(document.getElementById('ArrivalD').value,"M/d/y",
		document.getElementById('DepartureD').value,"M/d/y") == 1) {
		alert ('Departure date must be at least one day after Arrival Date');
		document.getElementById('DepartureD').focus();
		document.getElementById('DepartureD').select();		
		return false;
	}
	
	return true;
}	

function saveAirport(value, domain, value2)
{
	//Get rid of any dots in the front of the domain, (multiple cookies issue)
	if(domain.indexOf(".") == 0)
		domain = domain.substring(1, domain.length - 1);
		
	//alert(domain + "=" + value);
	
	//Save the cookie
	
	// Edit by David
	
//	document.cookie="AirportGateway=" + escape(value) + ";expires=\"\"; path=/" +
//        ((domain) ? "; domain=" + escape(domain) : "");
		
	document.cookie="AirportGateway=" + escape(value) + ";expires=\"\"; path=/" +
        ((domain) ? "; domain=" + ".breezes.com" : "");
		
	document.cookie="AirportGatewayName=" + escape(value2) + ";expires=\"\"; path=/" +
        ((domain) ? "; domain=" + ".breezes.com" : "");

//	document.cookie="SC_Air=Airport=" + escape(value) + ";expires=\"\"; path=/" +
//        ((domain) ? "; domain=" + ".breezes.com" : "");

	document.SubmitForm.GatewayCode.value = escape(value);
	
//	alert (document.SubmitForm.GatewayCode.value);
}

function formatDateControls(DateCtl) {	
	if (isDate(DateCtl.value, "M/d/y")) {
		DateCtl.value= formatDate(parseDate(DateCtl.value),"MM/dd/yyyy");	
	}
	return;
}

function getDateString(y_obj,m_obj,d_obj) {
	var y = y_obj.options[y_obj.selectedIndex].value;
	var m = m_obj.options[m_obj.selectedIndex].value;
	var d = d_obj.options[d_obj.selectedIndex].value;
	if (y=="" || m=="") { return null; }
	if (d=="") { d=1; }
	return str= y+'-'+m+'-'+d;
}


function setHotelPosition(moveforward) {

	var selbox = document.getElementById('HotelCode');

	if (moveforward==true){
		if (selbox.selectedIndex == 5){
		selbox.selectedIndex = 0;
		}
		else{
		selbox.selectedIndex = selbox.selectedIndex + 1;		
		}
	}	
	else {
		if (selbox.selectedIndex == 0){
		selbox.selectedIndex = 5;
		}
		else{
		selbox.selectedIndex = selbox.selectedIndex - 1;		
		}
	}
}

