function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}
function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}
function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
function MM_callJS(jsStr) { //v2.0
  return eval(jsStr)
}
function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}
function MM_goToURL() { //v3.0
  var i, args=MM_goToURL.arguments; document.MM_returnValue = false;
  for (i=0; i<(args.length-1); i+=2) eval(args[i]+".location='"+args[i+1]+"'");
}
function MM_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
}


//function PopDays()
//{
//	var i;
//
//	for (i=1;i<32;i++)
//	{
//		document.write('<option value=' + i + '>' + i + '</option>');
//	}
//}
function PopDays()
{
	var i;
	var today=new Date();

	var day=today.getDate();
	
	for (i=1;i<32;i++)
	{
	  if(day == i) {
	   document.write('<option value=' + i + ' selected=selected>' + i + '</option>');
	  }
	  else {
		document.write('<option value=' + i + '>' + i + '</option>');
	  }
	}
}

function PopMonthYears()
{
	var i;
	var today=new Date();
	var year=today.getFullYear();
	var m_names = new Array("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec", "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec");
	var thismonth = today.getMonth();

	for (i=thismonth;i<=thismonth+12;i++)
	{
		if (i>thismonth && m_names[i]=='Jan'){year=year+1;}

		document.write('<option value="' + m_names[i] + ' ' + year + '">' + m_names[i] + ' ' + year + '</option>');
	}
}

function SelectDays(mf,Outward,AddDays)
{
	var i;
	var today=new Date();
	
	today.setDate(today.getDate()+AddDays);
	
	var selectthis=today.getDate();

	if (Outward)
	{
		mf.departureday.selectedIndex=selectthis-1;
	}
	else
	{
		mf.returnday.selectedIndex=selectthis-1;
	}
}

function SelectMonthYear(mf,Outward,AddDays)
{
	var i;
	var today=new Date();
	var loop;
	var oOptions;
	var m_names = new Array("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec", "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec");
	
	today.setDate(today.getDate()+AddDays);
	
	var selectthis=m_names[today.getMonth()] + ' ' + today.getFullYear();

	if (Outward)
	{
			oOptions=mf.departuremonthyear.options;

			for (loop=0;loop<oOptions.length;loop++)
			{
				if (oOptions[loop].value==selectthis)
				{
				mf.departuremonthyear.selectedIndex=loop;
				break;
				}
			}
	}
	else
	{
			oOptions=mf.returnmonthyear.options;

			for (loop=0;loop<oOptions.length;loop++)
			{
				if (oOptions[loop].value==selectthis)
				{
				mf.returnmonthyear.selectedIndex=loop;
				break;
				}
			}
	}
}


/*function initdt(mf) {
var t = new Date;
mf.departureday.value = t.getDate();
mf.departuremonthyear.value = t.getMonth() + 1;
mf.year.value = t.getFullYear();

//onload="initdt(document.bookonline);"
}*/

//create origin/destination arrays for route filtering

//LOCATIONS:
var XXX = 'Select From';
var YYY = 'Select To';

var AUU = 'Aurukun (AUU)';
var ABM = 'Bamaga (ABM)';
var BEU = 'Bedourie (BEU)';
var BVI = 'Birdsville (BVI)';
var BQL = 'Boulia (BQL)';
var BNE = 'Brisbane (BNE)';
var BUC = 'Burketown (BUC)';
var CNJ = 'Cloncurry (CNJ)';
var CNS = 'Cairns (CNS)';
var CTL = 'Charleville (CTL)';
var CUQ = 'Coen (CUQ)';
var CTN = 'Cooktown (CTN)';
var CMA = 'Cunnamulla (CMA)';
var DMD = 'Doomadgee (DMD)';
var EDR = 'Edward River (EDR)';
var GUN = 'Gunpowder (GUN)';
var HID = 'Horn Island (HID)';
var KRB = 'Karumba (KRB)';
var KWM = 'Kowanyama (KWM)';
var IRG = 'Lockhart River (IRG)';
var ONG = 'Mornington Island (ONG)';
var ISA = 'Mount Isa (ISA)';
var NTN = 'Normanton (NTN)';
var PMK = 'Palm Island (PMK)';
var ULP = 'Quilpie (ULP)';
var SGO = 'St George (SGO)';
var XTG = 'Thargomindah (XTG)';
var TWB = 'Toowoomba (TWB)';
var TSV = 'Townsville (TSV)';
var WNR = 'Windorah (WNR)';
var OKR = 'York Island (OKR)';

//FROM Base List:
var FromList = new Array();
FromList[0]='XXX';
FromList[1]='AUU';
FromList[2]='ABM';
FromList[3]='BEU';
FromList[4]='BVI';
FromList[5]='BQL';
FromList[6]='BNE';
FromList[7]='BUC';
FromList[8]='CNS';
FromList[9]='CTL';
FromList[10]='CUQ';
FromList[11]='CTN';
FromList[12]='CMA';
FromList[13]='DMD';
FromList[14]='EDR';
FromList[15]='KRB';
FromList[16]='KWM';
FromList[17]='IRG';
FromList[18]='ONG';
FromList[19]='ISA';
FromList[20]='NTN';
FromList[21]='PMK';
FromList[22]='ULP';
FromList[23]='SGO';
FromList[24]='XTG';
FromList[25]='TWB';
FromList[26]='TSV';
FromList[27]='WNR';

//FROM Blank:
var FromXXX = new Array();
FromXXX[0]='YYY'

//FROM AUU:
var FromAUU =new Array();
FromAUU[0]='CNS';

//FROM ABM:
var FromABM =new Array();
FromABM[0]='CNS';
FromABM[1]='CTN';

//FROM BEU:
var FromBEU =new Array();
FromBEU[0]='BVI';
FromBEU[1]='BQL';
FromBEU[2]='BNE';
FromBEU[3]='CTL';
FromBEU[4]='ISA';
FromBEU[5]='ULP';
FromBEU[6]='TWB';
FromBEU[7]='WNR';

//FROM BNE:
var FromBNE =new Array();
FromBNE[0]='BEU';
FromBNE[1]='BVI';
FromBNE[2]='BQL';
FromBNE[3]='CTL';
FromBNE[4]='CMA';
FromBNE[5]='ISA';
FromBNE[6]='ULP';
FromBNE[7]='SGO';
FromBNE[8]='XTG';
FromBNE[9]='TWB';
FromBNE[10]='WNR';

//FROM BQL:
var FromBQL =new Array();
FromBQL[0]='BEU';
FromBQL[1]='BVI';
FromBQL[2]='BNE';
FromBQL[3]='CTL';
FromBQL[4]='ISA';
FromBQL[5]='ULP';
FromBQL[6]='TWB';
FromBQL[7]='WNR';

//FROM BUC:
var FromBUC =new Array();
FromBUC[0]='CNS';
FromBUC[1]='DMD';
FromBUC[2]='ONG';
FromBUC[3]='ISA';
FromBUC[4]='NTN';

//FROM BVI:
var FromBVI =new Array();
FromBVI[0]='BEU';
FromBVI[1]='BQL';
FromBVI[2]='BNE';
FromBVI[3]='CTL';
FromBVI[4]='ISA';
FromBVI[5]='ULP';
FromBVI[6]='TWB';
FromBVI[7]='WNR';

//FROM CMA:
var FromCMA =new Array();
FromCMA[0]='BNE';
FromCMA[1]='SGO';
FromCMA[2]='XTG';
FromCMA[3]='TWB';

//FROM CNJ:
var FromCNJ =new Array();
FromCNJ[0]='CNS';

//FROM CNS:
var FromCNS =new Array();
FromCNS[0]='AUU';
FromCNS[1]='ABM';
FromCNS[2]='BUC';
FromCNS[3]='CUQ';
FromCNS[4]='CTN';
FromCNS[5]='DMD';
FromCNS[6]='EDR';
FromCNS[7]='KRB';
FromCNS[8]='KWM';
FromCNS[9]='IRG';
FromCNS[10]='ONG';
FromCNS[11]='ISA';
FromCNS[12]='NTN';

//FROM CTL:
var FromCTL =new Array();
FromCTL[0]='BEU';
FromCTL[1]='BVI';
FromCTL[2]='BQL';
FromCTL[3]='BNE';
FromCTL[4]='ISA';
FromCTL[5]='ULP';
FromCTL[6]='TWB';
FromCTL[7]='WNR';

//FROM CUQ:
var FromCUQ =new Array();
FromCUQ[0]='CNS';

//FROM CTN:
var FromCTN =new Array();
FromCTN[0]='ABM';
FromCTN[1]='CNS';

//FROM DMD:
var FromDMD =new Array();
FromDMD[0]='BUC';
FromDMD[1]='CNS';
FromDMD[2]='ONG';
FromDMD[3]='ISA';
FromDMD[4]='NTN';

//FROM EDR:
var FromEDR =new Array();
FromEDR[0]='CNS';
FromEDR[1]='KWM';

//FROM IRG:
var FromIRG =new Array();
FromIRG[0]='CNS';

//FROM ISA:
var FromISA =new Array();
FromISA[0]='BEU';
FromISA[1]='BVI';
FromISA[2]='BQL';
FromISA[3]='BNE';
FromISA[4]='BUC';
FromISA[5]='CNS';
FromISA[6]='CTL';
FromISA[7]='DMD';
FromISA[8]='KRB';
FromISA[9]='ONG';
FromISA[10]='NTN';
FromISA[11]='ULP';
FromISA[12]='TWB';
FromISA[13]='WNR';

//FROM KRB:
var FromKRB =new Array();
FromKRB[0]='CNS';
FromKRB[1]='ONG';
FromKRB[2]='ISA';

//FROM KWM:
var FromKWM =new Array();
FromKWM[0]='CNS';
FromKWM[1]='EDR';

//FROM NTN:
var FromNTN =new Array();
FromNTN[0]='BUC';
FromNTN[1]='CNS';
FromNTN[2]='DMD';
FromNTN[3]='ONG';
FromNTN[4]='ISA';

//FROM ONG:
var FromONG =new Array();
FromONG[0]='BUC';
FromONG[1]='CNS';
FromONG[2]='DMD';
FromONG[3]='KRB';
FromONG[4]='ISA';
FromONG[5]='NTN';

//FROM PMK:
var FromPMK =new Array();
FromPMK[0]='TSV';


//FROM SGO:
var FromSGO =new Array();
FromSGO[0]='BNE';
FromSGO[1]='CMA';
FromSGO[2]='XTG';
FromSGO[3]='TWB';

//FROM TSV:
var FromTSV =new Array();
FromTSV[0]='PMK';

//FROM TWB:
var FromTWB =new Array();
FromTWB[0]='BEU';
FromTWB[1]='BVI';
FromTWB[2]='BQL';
FromTWB[3]='BNE';
FromTWB[4]='CTL';
FromTWB[5]='CMA';
FromTWB[6]='ISA';
FromTWB[7]='ULP';
FromTWB[8]='SGO';
FromTWB[9]='XTG';
FromTWB[10]='WNR';

//FROM ULP:
var FromULP =new Array();
FromULP[0]='BEU';
FromULP[1]='BVI';
FromULP[2]='BQL';
FromULP[3]='BNE';
FromULP[4]='CTL';
FromULP[5]='ISA';
FromULP[6]='TWB';
FromULP[7]='WNR';

//FROM WNR:
var FromWNR =new Array();
FromWNR[0]='BEU';
FromWNR[1]='BVI';
FromWNR[2]='BQL';
FromWNR[3]='BNE';
FromWNR[4]='CTL';
FromWNR[5]='ISA';
FromWNR[6]='ULP';
FromWNR[7]='TWB';

//FROM XTG:
var FromXTG =new Array();
FromXTG[0]='BNE';
FromXTG[1]='CMA';
FromXTG[2]='SGO';
FromXTG[3]='TWB';

if (navigator.appName.indexOf('Netscape') != -1) {
	var versionType = 'n';
	var versionNum = navigator.appVersion.substring(0,1);
	var version = versionType + versionNum;
}
else if (navigator.appVersion.indexOf('MSIE') != -1) {
	var versionType = 'e';
	var MS = navigator.appVersion.indexOf('MSIE');
	var versionNum = navigator.appVersion.substring(MS+5, MS+6);
	var version = versionType + versionNum;
}
else {
	var versionType = 'u';
	var versionNum = 0;
	var version = versionType + versionNum;
}

function MakeOriginList(SelectThis)
{
	var OriginList = document.bookonline.origin.options;
	OriginList.length = 1;
	
	for (loop=0; loop < FromList.length; loop++)
	{
		OriginList[loop] = new Option(eval(FromList[loop]));
		OriginList[loop].value = FromList[loop];
	}
	
	OriginList.selectedIndex = 0;

}

function CheckDestinations(SelectThis)
{ 	if ((versionType != 'u') || (versionType == 'e' && versionNum > 3) || (versionType == 'n' && versionNum > 4))
	{
		if (document.bookonline.origin.value == 'CNS' && document.bookonline.destination.value == 'CTN')
		{
			window.alert("CAIRNS - COOKTOWN   /   COOKTOWN - CAIRNS\n\nFrom Monday May 31st flights between Cairns and Cooktown will be operated by Hinterland Aviation.\nBookings to and from Cooktown can be made through Hinterland Aviation on 07 4035 9323\nor by visiting their website http://www.hinterlandaviation.com.au/");
			document.bookonline.destination.options.selectedIndex = 0;
		}

	}
}


function ChangeDestinations(SelectThis)
{
	if ((versionType != 'u') || (versionType == 'e' && versionNum > 3) || (versionType == 'n' && versionNum > 4))
	{
		if (document.bookonline.origin.selectedIndex == -1)
		{var origin = "NIL";}
			else
		{var origin = document.bookonline.origin.options[document.bookonline.origin.selectedIndex].value.substring(0,3);}
		
		if (origin != 'NIL')
		{
			if (document.bookonline.origin.value == 'TSV' || document.bookonline.origin.value == 'PMK')
			{
				window.alert("TOWNSVILLE / PALM ISLAND\n\nSkytrans continues to operate the Palm Island / Townsville route, however any future\nbookings can be made through West Wing Aviation - refer to the link below.\n\nWest Wing Aviation will be acting as a booking agent on this route on behalf of Skytrans\nuntil further notice.\n\nhttp://www.westwing.com.au/");
				document.bookonline.origin.selectedIndex = 0;
				ChangeDestinations()
			}
			else
			{
				if (document.bookonline.origin.value == 'CTN')
				{
					window.alert("CAIRNS - COOKTOWN   /   COOKTOWN - CAIRNS\n\nFrom Monday May 31st flights between Cairns and Cooktown will be operated by Hinterland Aviation.\nBookings to and from Cooktown can be made through Hinterland Aviation on 07 4035 9323\nor by visiting their website http://www.hinterlandaviation.com.au/");
					document.bookonline.origin.selectedIndex = 0;
					ChangeDestinations()
				}
				else
				{
					var FromArray = eval('From' + origin);
					var DestinationList = document.bookonline.destination.options;
	
					DestinationList.length = 1;
	
					for (loop=0; loop < FromArray.length; loop++)
					{
						DestinationList[loop] = new Option(eval(FromArray[loop]));
						DestinationList[loop].value = FromArray[loop];
					}
	
					DestinationList.selectedIndex = 0;
					if (SelectThis!='')
					{
						//reselect
						for (loop=0; loop < DestinationList.length; loop++)
						{
							if (DestinationList[loop].value.substring(0,3)==SelectThis)
							{
								DestinationList.selectedIndex = loop;
							}
						}
					}
				}
			}
		}
	}
}

function showreturn()
{
	if (document.bookonline.returntrip.checked){
		document.bookonline.returnday.disabled =false;
		document.bookonline.returnmonthyear.disabled =false;
		//document.bookonline.returntime.disabled =false;

		ChangeDepartureDate();
	} else {
		document.bookonline.returnday.disabled =true;
		document.bookonline.returnmonthyear.disabled =true;
		//document.bookonline.returntime.disabled =true;
	}
}

var day=1;
var monthyear=0;
var source=0;
var requirements=1;

function makeArray0() {
    for (i = 0; i<makeArray0.arguments.length; i++)
        this[i] = makeArray0.arguments[i];
}

function y2k(number)    { return (number < 1000) ? number + 1900 : number; }

function ChangeDepartureDate()
{

	var days = new makeArray0(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
    
    var firstDay;
    firstDay = new Date('1 ' + document.bookonline.departuremonthyear.options[document.bookonline.departuremonthyear.selectedIndex].value);
	var Month;
	var Year;
	Month=firstDay.getMonth();
	Year=y2k(firstDay.getYear());

	var todayd;
    var beginday;
    var beginmonth;
    var beginyear;
    todayd=new Date();
    beginday=todayd.getDate();
    beginmonth=todayd.getMonth();
    beginyear=todayd.getYear();
    
    if (beginday>days[beginmonth])
	{
		beginday=beginday-days[beginmonth];
		beginmonth=todayd.getMonth()+1;

		if (beginmonth<todayd.getMonth())
		{beginyear=todayd.getYear()+1}
	}

    if ((document.bookonline.departureday.value<beginday && beginmonth==Month && Year==beginyear) || (Month<beginmonth && (Year<beginyear || Year==beginyear)))
	{
		alert("Your departure date is too early please pick a later date");
	}
	else
	{
		if (document.bookonline.departuremonthyear.selectedIndex > document.bookonline.returnmonthyear.selectedIndex)
		{
			if (document.bookonline.returntrip.checked)
			{document.bookonline.returnmonthyear.selectedIndex=document.bookonline.departuremonthyear.selectedIndex;}
		}

		if (document.bookonline.departuremonthyear.selectedIndex == document.bookonline.returnmonthyear.selectedIndex)
		{
			if (document.bookonline.departureday.selectedIndex > document.bookonline.returnday.selectedIndex)
			{
				if (document.bookonline.returntrip.checked)
				{document.bookonline.returnday.selectedIndex=document.bookonline.departureday.selectedIndex;}
			}
		}
	}
}

function ChangeReturnDate()
{
	var days = new makeArray0(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
    
	var firstDay;
	firstDay = new Date('1 ' + document.bookonline.returnmonthyear.options[document.bookonline.returnmonthyear.selectedIndex].value);
	var Month;
	var Year;
	Month=firstDay.getMonth();
	Year=y2k(firstDay.getYear());

	var todayd;
	var beginday;
	var beginmonth;
	var beginyear;
	todayd=new Date();
	beginday=todayd.getDate();
	beginmonth=todayd.getMonth();
	beginyear=todayd.getYear();

    if (beginday>days[beginmonth])
	{
		beginday=beginday-days[beginmonth];
		beginmonth=todayd.getMonth()+1;

		if (beginmonth<todayd.getMonth())
		{beginyear=todayd.getYear()+1}
	}

    if ((document.bookonline.returnday.value<beginday && beginmonth==Month && Year==beginyear) || (Month<beginmonth && (Year<beginyear || Year==beginyear)))
	{
		alert("Your return date is too early please pick a later date");
	}
	else
	{
		if (document.bookonline.departuremonthyear.selectedIndex > document.bookonline.returnmonthyear.selectedIndex)
		{
			document.bookonline.departuremonthyear.selectedIndex=document.bookonline.returnmonthyear.selectedIndex;
		}

		if (document.bookonline.departuremonthyear.selectedIndex == document.bookonline.returnmonthyear.selectedIndex)
		{
			if (document.bookonline.departureday.selectedIndex > document.bookonline.returnday.selectedIndex)
			{
				document.bookonline.departureday.selectedIndex=document.bookonline.returnday.selectedIndex;
			}
		}
	}
}

function setselection(settype)
{

	if (document.bookonline.origin.value!="XXX")
	{
		var sURL;
	
		sURL="http://booking.skytrans.com.au/checkrequirements.asp";
		sURL=sURL + "?origin=" + document.bookonline.origin.value;
		sURL=sURL + "&destination=" + document.bookonline.destination.value;
		sURL=sURL + "&departureday=" + document.bookonline.departureday.value;
		sURL=sURL + "&departuremonthyear=" + document.bookonline.departuremonthyear.value;
		sURL=sURL + "&returnday=" + document.bookonline.returnday.value;
		sURL=sURL + "&returnmonthyear=" + document.bookonline.returnmonthyear.value;
		sURL=sURL + "&numberofadults=" + document.bookonline.numberofadults.value;
		sURL=sURL + "&numberofchildren=" + document.bookonline.numberofchildren.value;
		sURL=sURL + "&numberofinfantswithoutseats=" + document.bookonline.numberofinfantswithoutseats.value;
		sURL=sURL + "&mode=''";
		sURL=sURL + "&faretype=" + settype;
		sURL=sURL + "&sourcepage=requirements.asp";
			
		
		if (document.bookonline.returntrip.checked==true)
		{
			sURL=sURL + "&returntrip=on";
		}
		else
		{
			sURL=sURL + "&returntrip=off";
		}
		launch(sURL,580,800);

		//document.bookonline.faretype.value=settype;
		//document.bookonline.submit();
	}
	else
	{
		window.alert("Please choose a from and to first.");
	}
}


function ShowInfantWarning()
{
	if (document.bookonline.numberofinfantswithoutseats.selectedIndex != 0)
	{
		window.alert("INFANTS\n\nCivil Aviation Safety regulations restrict the total number of infants carried on each flight.\n\nPlease contact Skytrans on 1300 759872 at the time of booking to\nensure that the maximum number of infants on board is not exceeded.\n\nPlease see the sections \"Infants and Children\" and \"Unaccompanied Minors\"\nin the Terms and Conditions of Carriage for further information.");
		document.bookonline.numberofinfantswithoutseats.selectedIndex = 0;
	}
}


function isNS2()
{return ((self.navigator.appName=='Netscape') && (parseInt(self.navigator.appVersion,10)<3));}

function launch(u, h, w) {
if (isNS2()) return;

var PopUpWindow;

if (PopUpWindow != null)
	if(PopUpWindow.closed != true)
		PopUpWindow.close();

PopUpWindow = window.open(u, "PopUpWindow" ,"toolbar=no,directories=no,status=yes,scrollbars=yes,resizable=yes,resize=yes,menubar=no,left=" + ((screen.width/2)-(w/2)) + ",top=" + ((screen.Height/2)-(h/2)) + ",height=" + h + ",width="+w);
}
