// common.js
// Common functions for dynamic content
// Author: mmoriart@nrhs.health.nsw.gov.au
<!--

//Auto center window script
var win = null;
function NewWindow(mypage,myname,w,h,scroll,toolbar,menubar,location,status,directories,resizable){
	LeftPosition = (screen.width) ? (screen.width-w)/2 : 0;
	TopPosition = (screen.height) ? (screen.height-h)/2 : 0;
	settings =
	'height='+h+',width='+w+',top='+TopPosition+',left='+LeftPosition+',scrollbars='+scroll+',toolbar='+toolbar+',menubar='+menubar+',location='+location+',status='+status+',directories='+directories+',resizable='+resizable+''
	win = window.open(mypage,myname,settings)
}
		
//determine if the browser can handle the show/hide function  
var supported=(document.getElementById || document.all);

//set initial state of DOM objects to track whether items are to expanded or contracted by default - in ranges
if (supported) {
	var max = 100;
	var allcookies = document.cookie;
	var pos = allcookies.indexOf("shown=");
	if (pos != -1) {
		var start = pos + 6;
		var end = allcookies.indexOf(";",start);
		if (end == -1) end = allcookies.length;
		var value = allcookies.substring(start,end);
		value = unescape(value);
		var shown = value.split(",");
		for ( var i=1; i<=max; i++) {
			if ( shown[i] == "true") {
				shown[i] = true;
			} else {
				shown[i] = false;
			} 
		}
	} else {
		var shown = new Array();
		for (var i=1;i<=max;i++){
			if(i<=50) {
			shown[i] = false; 		
			}
			else {
				shown[i] = true; 
			}
		}
	}
}

// function to show or hide menu content
function showHide(i,documentroot) {
	if (!supported) {
		alert('This link does not work in your browser.');
		return;
	}
	// toggle the state of the menu
	shown[i] = (shown[i]) ? false : true;
	current = (shown[i]) ? 'none' : 'block';	
	
	// swap the icon and the display style		
	if (document.getElementById) {
			document.getElementById('number'+i).style.display = current;
	}
	else if (document.all){
		document.all['number'+i].style.display = current;
	}
	//store the array in a cookie
	var cookieStr = escape(shown.join(","));
	document.cookie = "shown=" + cookieStr + "; path=" + documentroot; // shown  // 
}

function writeMenu(id) {
	var str = "<div class=\"" + ((shown[id]) ? "menuClosed" : "menuOpen") + "\" id=\"number" + id + "\">";
	document.write(str);
}
		
//preload dynamic images for swapping
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 writeClosingDiv() {
	var str = "</div>";
	document.write(str);
}

function MM_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
}

//-->
