MyImages=new Array();
//preload all images
//imagesPreloaded = new Array(31)
//for (var i = 0; i < MyImages.length ; i++)
//{
//imagesPreloaded[i] = new Image(81,31)
//imagesPreloaded[i].src=MyImages[i]
//}

//global functions

/**
 * This function parses comma-separated name=value argument pairs from
 * the query string of the URL. It stores the name=value pairs in
 * properties of an object and returns that object.
 */
function getArgs() {
	var args = new Object();
	var query = location.search.substring(1);		// Get query string.
	var pairs = query.split("&");					// Break at amp.
	for(var i = 0; i < pairs.length; i++) {
		var pos = pairs[i].indexOf('=');			// Look for "name=value".
		if (pos == -1)
			continue;								// If not found, skip.
		var argname = pairs[i].substring(0,pos);	// Extract the name.
		var value = pairs[i].substring(pos+1);		// Extract the value.
		args[argname] = unescape(value);			// Store as a property.
	}
	return args;
}

/** Returns a date formatted in the pattern dd MM/dd/yyyy. e.g. 09/21/2006 */
function /*String*/ formatDate( /*Date*/ dt ) {
	var monthNames = new Array(
		"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" );
//	return dt.getDate() + " " + monthNames[dt.getMonth()] + " " + dt.getFullYear();
	var month = dt.getMonth()+1;
	return ((month <= 9) ? "0"+month : month) + "/"
		+ ((dt.getDate() <= 9) ? "0"+dt.getDate(): dt.getDate() )+ "/"
		+ dt.getFullYear();
}

/**
 * This function formats a number with trailing zeros.
 * For example: format( 22, 2 ) -> 22.00
 *              format( 123.45, 6 ) -> 123.450000
 */
function /*String*/ format( /*Number*/ n, scale ) {
	var p = Math.pow(10,scale);
	var s = (Math.round( parseFloat(n)*p ) / p).toString();
	var d = s.indexOf(".");
	if( d == -1 ) {
		s = s + ".";
		d = 1;
	} else {
		d = s.length - d;
	}
	var i;
	for( i=0; i<=(scale-d); i++ ) {
		s = s + "0";
	}

	return s;
}

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_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_showHideLayers() { //v3.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
	if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v='hide')?'hidden':v; }
	obj.visibility=v; }
}

function MM_nbGroup(event, grpName) { //v3.0
  var i,img,nbArr,args=MM_nbGroup.arguments;
  if (event == "init" && args.length > 2) {
	if ((img = MM_findObj(args[2])) != null && !img.MM_init) {
	  img.MM_init = true; img.MM_up = args[3]; img.MM_dn = img.src;
	  if ((nbArr = document[grpName]) == null) nbArr = document[grpName] = new Array();
	  nbArr[nbArr.length] = img;
	  for (i=4; i < args.length-1; i+=2) if ((img = MM_findObj(args[i])) != null) {
		if (!img.MM_up) img.MM_up = img.src;
		img.src = img.MM_dn = args[i+1];
		nbArr[nbArr.length] = img;
	} }
  } else if (event == "over") {
	document.MM_nbOver = nbArr = new Array();
	for (i=1; i < args.length-1; i+=3) if ((img = MM_findObj(args[i])) != null) {
	  if (!img.MM_up) img.MM_up = img.src;
	  img.src = (img.MM_dn && args[i+2]) ? args[i+2] : args[i+1];
	  nbArr[nbArr.length] = img;
	}
  } else if (event == "out" ) {
	for (i=0; i < document.MM_nbOver.length; i++) {
	  img = document.MM_nbOver[i]; img.src = (img.MM_dn) ? img.MM_dn : img.MM_up; }
  } else if (event == "down") {
	if ((nbArr = document[grpName]) != null)
	  for (i=0; i < nbArr.length; i++) { img=nbArr[i]; img.src = img.MM_up; img.MM_dn = 0; }
	document[grpName] = nbArr = new Array();
	for (i=2; i < args.length-1; i+=2) if ((img = MM_findObj(args[i])) != null) {
	  if (!img.MM_up) img.MM_up = img.src;
	  img.src = img.MM_dn = args[i+1];
	  nbArr[nbArr.length] = img;
  } }
}

var helpPopupProperties =
	"channelmode=no ," +
	"directories=no ," +
	"fullscreen =no ," +
	"height     =600," +
	"location   =no ," +
	"menubar    =no ," +
	"resizable  =yes," +
	"scrollbars =yes," +
	"status     =no ," +
	"titlebar   =no ," +
	"toolbar    =no ," +
	"width      =800 "
;

function help( /*url*/ url ) {
	var helpWindow = window.open( url, "help", helpPopupProperties );
	helpWindow.focus();
}

/** The javasccript that warns the user when they move off a page that has had edits
 * To mark a page as edited call windowChanged()
 */
window.changed = false;
function checkForChanges( /*event*/ evt ) {
	// IE supports evt.returnValue to cancel in the onBeforeUnload handler
	// firefox supports evt.preventDefault() in the onUnload handler
	//    (but onBeforeUnload appears to work also so we are using that).
	if ( window.changed ) {
		if ( evt.preventDefault ) {
			evt.preventDefault();
		} else {
			evt.returnValue = "This window has changed";
		}
	}
}
function recordChange() {
	window.changed = true;
}
function clearChangeNotification() {
	window.changed = false;
}
