function Comma(number) {
   number = numberFilter(number);
   number = '' + number;
   if (number.length > 3) {
   var mod = number.length % 3;
   var output = (mod > 0 ? (number.substring(0,mod)) : '');
   for (i=0 ; i < Math.floor(number.length / 3); i++) {
   if ((mod == 0) && (i == 0))
   output += number.substring(mod+ 3 * i, mod + 3 * i + 3);
   else
   output+= ',' + number.substring(mod + 3 * i, mod + 3 * i + 3);
}
   return (output);
}
   else return number;
}

function stringFilter (string) {
 sfilter = string;
 filteredValues = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
 var i;
 var returnString = "";
 for (i = 0; i < sfilter.length; i++) {
	var c = sfilter.charAt(i);
	if (filteredValues.indexOf(c) != -1) returnString += c;
 }
 return returnString;
}

function numberFilter (string) {
 sfilter = string;
 filteredValues = "1234567890";
 var i;
 var returnString = "";
 for (i = 0; i < sfilter.length; i++) {
	var c = sfilter.charAt(i);
	if (filteredValues.indexOf(c) != -1) returnString += c;
 }
 return returnString;
}

function get_cookie(name) {
	var cname = name + "=";
	var allcookies = document.cookie;
	var pos = allcookies.indexOf(cname);
	if (pos != -1) {
	var start = pos + cname.length;
	var end = allcookies.indexOf(";", start);
	if (end == -1) end = allcookies.length;
		return(unescape(allcookies.substring(start,end)));
	}
	return("");
}

//opens a popup window
function OpenWindow (url,width,height) {
	OpenWin = window.open(url, "CtrlWindow", "status=no,toolbar=no,directories=no,menubar=no,scrollbars=yes,resizable=yes,width="+ width + ",height=" + height + ",left=75,top=75");
}

//returns HTML for shared header with a different
//image dependent on if the user is logged in
function GetHeaderLogin() {
	var SkyMiles = get_cookie("SkyMiles");
	if (SkyMiles != "") { 
		return ('<td><img src="/images/shared/header/topnav_sub_logout2.gif" border="0" width="465" height="29" usemap="#topnav_sub_logout_map" alt=""></td>'); 
	} else {
		return ('<td><img src="/images/shared/header/topnav_sub_login2.gif" border="0" width="465" height="29" usemap="#topnav_sub_login_map" alt=""></td>'); 
	}
}
// transferring td tags out of JS function
function GetHeaderLogin_notd() {
	var SkyMiles = get_cookie("SkyMiles");
	if (SkyMiles != "") { 
		return ('<img src="/images/shared/header/topnav_sub_logout2.gif" border="0" width="465" height="29" usemap="#topnav_sub_logout_map" alt="">'); 
	} else {
		return ('<img src="/images/shared/header/topnav_sub_login2.gif" border="0" width="465" height="29" usemap="#topnav_sub_login_map" alt="">'); 
	}
}
// above for new header image
function GetHeaderLogin_new() {
	var SkyMiles = get_cookie("SkyMiles");
	if (SkyMiles != "") { 
		return ('<img src="/images/shared/header/topnav_sub_logout3.gif" border="0" width="465" height="29" usemap="#topnav_sub_logout_map" alt="">'); 
	} else {
		return ('<img src="/images/shared/header/topnav_sub_login3.gif" border="0" width="465" height="29" usemap="#topnav_sub_login_map" alt="">'); 
	}
}

function GetWPWelcome() {
	var SkyMiles = get_cookie("SkyMiles");
	if (SkyMiles != "") {
		var cookie_flds = SkyMiles.split('&');	 	
		return ('<span class="wplogin-name">'+cookie_flds[2]+' '+cookie_flds[1]+'</span><br>\nSkyMiles '+cookie_flds[4]+' member<br>\n<img src="/images/shared/bullet_wpmiles.gif" border="0" width="10" height="10" alt="">'+Comma(cookie_flds[6])+' available miles\n  <br><a href="javascript:logout_skymiles_home()">Logout of SkyMiles</a>'); 
	} else {
		return ('<span class="wplogin-name">Welcome to nwa.com.</span><br>Please <a href="https://www.nwa.com/cgi-bin/wp_acctsum.pro">login</a> to access your account information.'); 
	}
}

//turn the subnav link row on or off by changing background/text
//color and associated arrow image
function SubNavLink(element, mode) {

	if ((document.getElementById) || (document.all)) {

		//defaults
		var arrowImage = element + "Arrow";	
		var bgColor = '#E5E6EF';
		var txtColor = '#233385';
		var arrowImg = 'arrowRightOn';
	
		//reassign background and text colors dependent on mode
		if (mode == 'over') {
			bgColor = '#CC0000';		
			txtColor = '#FFFFFF';
			arrowImg = 'arrowRightOn';
		} else if (mode == 'out') {
			arrowImg = 'arrowRightOff';			
		} else if (mode == 'over-open') {
			arrowImg = 'arrowDownOn';		
			bgColor = '#CC0000';				
			txtColor = '#FFFFFF';									
		} else if (mode == 'out-open') {
			arrowImg = 'arrowDownOff';							
		}
	
		//modern browsers
		if (document.getElementById) {	
		
			var navTxt = document.getElementById(element + "Txt");
			var arrowCell = document.getElementById(element + "ArrowCell");
	
			//change colors, swap image
			document.getElementById(element).style.backgroundColor = bgColor;
			if (arrowCell) { arrowCell.style.backgroundColor = bgColor; }
			if (document.images[arrowImage]) { SwapImage(arrowImage, arrowImg); }		
			if (navTxt) { navTxt.style.color = txtColor; }				
		
		//IE 4	
		} else if (document.all) {
			
			var navTxt = document.all(element + "Txt");
			var arrowCell = document.all(element + "ArrowCell");		
	
			//change colors, swap image
			document.all(element).style.backgroundColor = bgColor;
			if (arrowCell) { arrowCell.style.backgroundColor = bgColor; }
			if (document.images[arrowImage]) { SwapImage(arrowImage, arrowImg); }		
			if (navTxt) { navTxt.style.color = txtColor; }			
		}
	}
}

//replace a given img src with passed reference
function SwapImage(imgDocID,imgObjName) {
 if (document.images) {
		document.images[imgDocID].src = eval(imgObjName + ".src")
 }
}

/* run-time */

/* preload sub nav arrow images */
if (document.images) {
	 var arrowRightOn = new Image(13,14);
	 arrowRightOn.src = "/images/shared/subnav/arrow_right_on.gif";
	 var arrowRightOff = new Image(13,14);
	 arrowRightOff.src = "/images/shared/subnav/arrow_right_off.gif";
	 var arrowDownOn = new Image(13,14);
	 arrowDownOn.src = "/images/shared/subnav/arrow_down_on.gif";
	 var arrowDownOff = new Image(13,14);
	 arrowDownOff.src = "/images/shared/subnav/arrow_down_off.gif";			 
}


//default stylesheet name
var stylesheet = "/includes/css/styles_classic.css";

//netscape 4 browsers use a different stylesheet
if (document.layers) {
	stylesheet = "/includes/css/styles_ns4.css";
}

document.write('<link rel="stylesheet" type="text/css" href="' + stylesheet + '" />');		

function closeWindow(){
    window.close();
    return true;
}

function faqWindow() {
  var w = 708;
  var h = 650;
  var X = (screen.width-w)/2;
  var Y = (screen.height-h)/2;
  if (X <= 0) {
    X = 0;
    Y = 0;
  }
  newwindow = open('http://www.nwa.com/aaq/','FAQ','titlebar=0,resizable=yes,scrollbars=0,top='+Y+',left='+X+',width='+w+',height='+h);
  newwindow.location.href = 'http://www.nwa.com/aaq/';
  if (!newwindow.opener) newwindow.opener = self;
  newwindow.focus();
}

// determine which program to call for Flight and Gate Status
function callFlifo(flifoForm) {
    if (flifoForm) {
        if (flifoForm.flight.value != "") {
            flifoForm.action = "/cgi-bin/flifo2.pro";
        }
        else if ((flifoForm.org_apt.value != "") || (flifoForm.dst_apt.value != "")) {
           flifoForm.action = "/cgi-bin/cgi_schedule.pro";
        }
    }
   return 1;
}

