function newImage(arg) {
	if (document.images) {
		rslt = new Image();
		rslt.src = arg;
		return rslt;
	}
}
function changeImages() {
	if (document.images && (preloadFlag == true)) {
		for (var i=0; i<changeImages.arguments.length; i+=2) {
			document[changeImages.arguments[i]].src = changeImages.arguments[i+1];
		}
	}
}
var preloadFlag = false;
function preloadImages() {
	if (document.images) {
		nav_01_over = newImage("/images/nav_01-over.gif");
		nav_02_over = newImage("/images/nav_02-over.gif");
		nav_03_over = newImage("/images/nav_03-over.gif");
		nav_04_over = newImage("/images/nav_04-over.gif");
		nav_05_over = newImage("/images/nav_05-over.gif");
		nav_06_over = newImage("/images/nav_06-over.gif");
		preloadFlag = true;
	}
}
function correctPNG() {
	for (var i=0; i<document.images.length; i++) {
		var img = document.images[i];
		var imgName = img.src.toUpperCase();
		if (imgName.substring(imgName.length-3, imgName.length) == "PNG") {
			var imgID = (img.id) ? "id='" + img.id + "' " : "";
			var imgClass = (img.className) ? "class='" + img.className + "' " : "";
			var imgTitle = (img.title) ? "title='" + img.title + "' " : "title='" + img.alt + "' ";
			var imgStyle = "display:inline-block;" + img.style.cssText;
			if (img.align == "left") imgStyle = "float:left;" + imgStyle;
			if (img.align == "right") imgStyle = "float:right;" + imgStyle;
			if (img.parentElement.href) imgStyle = "cursor:hand;" + imgStyle;
			var strNewHTML = "<span " + imgID + imgClass + imgTitle
				+ " style=\"" + "width:" + img.width + "px; height:" + img.height + "px;" + imgStyle
				+ "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader"
				+ "(src=\'" + img.src + "\', sizingMethod='scale');\"></span>";
			img.outerHTML = strNewHTML;
			i = i-1;
		}
	}
}
function showPopup(url, name, height, width, scroll, resizable, statusbar, screenpos) {
	var Xwin = width;
	var Ywin = height;
	var Xsize = screen.availWidth;
	var Ysize = screen.availHeight;
	var Xpos = 0;
	var Ypos = 0;
	switch(screenpos) {
		case "topleft":
			Xpos = 0;
			Ypos = 0;
			break;
		case "topright":
			Xpos = Xsize - width;
			Ypos = 0;
			break;
		case "bottomleft":
			Xpos = 0;
			Ypos = Ysize - height;
			break;
		case "bottomright":
			Xpos = Xsize - width;
			Ypos = Ysize - height;
			break;
		default:
			Xpos = (Xsize - width) / 2;
			Ypos = (Ysize - height) / 2;
			break;
	}
	var popwin;
	var opts = "status=" + statusbar + ",resizable=" + resizable + ",scrollbars=" + scroll + ",height=" + Ywin + ",width=" + Xwin + ",left=" + Xpos + ",top=" + Ypos;
	popwin = window.open(url, name, opts);
	popwin.focus();
}
function quickWin(url, name, source) {
	showPopup(url, name, 450, 450, 0, 0, 1, 'default');
	if (source != "quickfind") {
		return false;
	}
}
function checkSendPageForm() {
	var f = document.forms["emailpage"];
	var errors = "";
	if (f.fromEmail.value == "") {
		errors += "Enter sender email address\n"; 
	} else {
		if ((f.fromEmail.value.indexOf("@") == -1) || (f.fromEmail.value.indexOf(".") == -1)) {
			errors += "Enter a valid sender address\n";
		}
	}
	if (f.toEmail.value == "") {
		errors += "Enter recipient email address\n";
	} else {
		if ((f.toEmail.value.indexOf("@") == -1) || (f.toEmail.value.indexOf(".") == -1)) {
			errors += "Enter a valid recipient address\n";
		}
	}
	if (errors) {
		alert(errors);
	} else {
		f.submit();
	}
}
function MM_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
}
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_validateForm() { //v4.0
  var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
  for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]);
    if (val) { nm=val.name; if ((val=val.value)!="") {
      if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
        if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n';
      } else if (test!='R') { num = parseFloat(val);
        if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
        if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
          min=test.substring(8,p); max=test.substring(p+1);
          if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
    } } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is required.\n'; }
  } if (errors) alert('The following error(s) occurred:\n'+errors);
  document.MM_returnValue = (errors == '');
}

$(document).ready(function(){
	// init page etc
	var path = location.pathname.substring(0);
	if (path != "/") {
		$('ul#nav a[@href$="' + path + '"]').attr('class', 'selected');
	}
	var el = $('ul#nav a[@href$="' + path + '"]');
	$("ul#nav a").hover(function() {
		$("ul#nav a").each(function() {
			$(this).removeClass("selected");
		});
		$(this).addClass("selected");
	}, function() {
		$(this).removeClass("selected");
		el.addClass("selected");
	});

	if (path.indexOf("/latest-news") > -1) {
		// latest news needs some help selecting current node on nav
		$('ul#nav a[@href *= "/latest-news"]').attr('class', 'selected');
	}
});

function verifyMailingList(theForm) {
	errors = "";
	if (!testString(theForm["mb-name"].value, singleTextLine)) {
		errors += "Name appears to be invalid;\n";
	}
	if (!testString(theForm["mb-uiydl-uiydl"].value, emailAddress)) {
		errors += "Email address appears to be invalid;\n";
	}
	if (errors != "") {
		alert("There was something wrong with your form:\n\n" + errors + "\nPlease fix these errors and resubmit your form.");
		return false;
	} else {
		return true;
	}
}