// JavaScript Document
var xmlhttp;

function changeDid(str){
	xmlhttp=GetXmlHttpObject();
	if(xmlhttp==null){
  	alert ("Your browser does not support AJAX. Your diagnostic may not be selected when you navigate the website.");
  	return;
  }
	var url="../ajax/current-diagnostic.php";
	url=url+"?D="+str;
	url=url+"&S="+Math.random();
	// xmlhttp.onreadystatechange=stateChanged;
	xmlhttp.open("GET",url,true);
	xmlhttp.send(null);
}

/*
function stateChanged(){
	if(xmlhttp.readyState==4){
		document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
	}
}
*/

function GetXmlHttpObject(){
	if(window.XMLHttpRequest){
  	// code for IE7+, Firefox, Chrome, Opera, Safari
  	return new XMLHttpRequest();
  }
	if(window.ActiveXObject){
  	// code for IE6, IE5
  	return new ActiveXObject("Microsoft.XMLHTTP");
  }
	return null;
}

var targetHeight = 4;
var animRate = 0.3;
var interval = 20;
var animationTimer = 0;

function toggleLoginForm()
{
	if(animationTimer != 0) return;
	
	var loginForm = document.getElementById("loginForm");
	
	if(loginForm.className == "clientLoginBlock")
	{
		var offH = loginForm.offsetHeight;
		loginForm.className = "clientLoginBlockHidden";
		loginForm.style.height = offH+"px";
		targetHeight = 4;
	}
	else
	{
		//loginForm.className = "clientLoginBlock";
		targetHeight = loginForm.offsetHeight;
		targetHeight = 100;
		loginForm.style.height = 4+"px";
	}
	
	animationTimer = window.setTimeout("animateFrame()", interval);
}

function animateFrame()
{
	var loginForm = document.getElementById("loginForm");
	if(targetHeight < loginForm.offsetHeight)
	{
		var step = (loginForm.offsetHeight - targetHeight)*animRate;
		if(step < 1) step = 1;
		loginForm.style.height = (loginForm.offsetHeight - step) + "px";
		if(loginForm.offsetHeight < targetHeight)
			loginForm.style.height = targetHeight+"px";
			
		animationTimer = window.setTimeout("animateFrame()", interval);
	}
	else if(targetHeight > loginForm.offsetHeight)
	{
		var step = (targetHeight - loginForm.offsetHeight)*animRate;
		if(step < 1) step = 1;
		loginForm.style.height = (loginForm.offsetHeight + step) + "px";
		if(loginForm.offsetHeight > targetHeight)
			loginForm.style.height = targetHeight+"px";
			
		animationTimer = window.setTimeout("animateFrame()", interval);
	}
	else
	{
		if(loginForm.offsetHeight == 4)
			loginForm.className = "clientLoginBlockHidden"
		else
		{
			loginForm.className = "clientLoginBlock";
			document.getElementById("user").focus();
		}

		animationTimer = 0;			
		loginForm.style.height="";
	}
}


function hide(oID){
	document.getElementById(oID).style.display='none';
}

function show(oID){
	document.getElementById(oID).style.display='';
}

<!-- HOVER COLOURS -->
function hR(obj){obj.style.backgroundColor='#EED3FF';} <!-- Recommendation -->
function hA(obj){obj.style.backgroundColor='#FFE4D3';} <!-- Answer -->
function hQ(obj){obj.style.backgroundColor='#FFED9F';} <!-- Question -->
function hS(obj){obj.style.backgroundColor='#EBFF9F';} <!-- Section -->
function hM(obj){obj.style.backgroundColor='#B9EAFF';} <!-- Module -->
function hO(obj){obj.style.backgroundColor='';} <!-- Hover OFF -->

/* 10.02.03: This was created for use in the  */
function dRep(objMID) {
  bHidden=document.getElementById(objMID).style.display=='none';
  if (bHidden){
    document.getElementById(objMID).style.display='';
		document.getElementById('i'+objMID).src='assets/z10_icon_folderopened.gif';
		document.getElementById('h'+objMID).innerHTML='<strong style="text-decoration:underline;font-size:12px">Click to Collapse &raquo;</strong>';
  }else{
    document.getElementById(objMID).style.display='none';
		document.getElementById('i'+objMID).src='assets/z10_icon_folderclosed.gif';
		document.getElementById('h'+objMID).innerHTML='<strong style="text-decoration:underline;font-size:12px">Click to Expand &raquo;</strong>';
  }
}

/*
function checkLogin(tF){
	if(tF.agree.checked==false){alert("You must agree to the Terms and Conditions and Privacy Statement of this website.");return false;}
	return true;
}
*/

function deleter(n) { // Block ILLEGAL CHARS and ALLOW only NUMBERS and LETTERS (0123456789)
	if (!isNS4) { // If NOT IE (Netscape)...
		if (n==1) { // ...BLOCK EVERY SYMBOL
			if ((event.keyCode > 32 && event.keyCode < 48) || (event.keyCode > 57 && event.keyCode < 65) || (event.keyCode > 90 && event.keyCode < 97) || event.keyCode > 122) event.returnValue = false;
		} else { // ...BLOCK SCRIPT RELATED SYMBOLS (!@#%^&*'"=)
			if ((event.keyCode > 32 && event.keyCode < 36) || (event.keyCode > 36 && event.keyCode < 40) || event.keyCode == 42 || event.keyCode == 43  || (event.keyCode > 57 && event.keyCode < 63)) event.returnValue = false;
		}
	} else { // If Netscape...
		if (n==1) { // ...BLOCK EVERY SYMBOL
			if ((event.which > 32 && event.which < 48) || (event.which > 57 && event.which < 65) || (event.which > 90 && event.which < 97) || event.which > 122) return false;
		} else { // ...BLOCK SCRIPT RELATED SYMBOLS (!@#%^&*'"=)
			if ((event.which > 32 && event.which < 36) || (event.which > 36 && event.which < 40) || event.which == 42 || event.which == 43  || (event.which > 57 && event.which < 63)) return false;
		}
	}
}

function hover(color,div){
	div.style.backgroundColor=color;
}

// ----- Block/Allow Keys -----
// 32 - 47		: --Shift-Num Symbols --( !"#$%&'()*+,-./)--
// 48 - 57		: Numbers
// 58 - 64		: --Shift-Char Symbols --(:;<=>?@)--
// 65 - 90		: Capital letters
// 91 - 96		: --Shift-Char Symbols #2 --(\]^_`)--
// 97 - 122		: Lowercase letters
// 123 - 126	: --Other chars --({|}~)--
// 127 -			: --Special chars


//verify for netscape/mozilla
var isNS4 = (navigator.appName=="Netscape")?1:0;

function blockSymb(n) { // Block ILLEGAL CHARS and ALLOW only NUMBERS and LETTERS (0123456789)
	if (!isNS4) { // If NOT IE (Netscape)...
		if (n==1) { // ...BLOCK EVERY SYMBOL
			if ((event.keyCode > 32 && event.keyCode < 48) || (event.keyCode > 57 && event.keyCode < 65) || (event.keyCode > 90 && event.keyCode < 97) || event.keyCode > 122) event.returnValue = false;
		} else { // ...BLOCK SCRIPT RELATED SYMBOLS (!@#%^&*'"=)
			if ((event.keyCode > 32 && event.keyCode < 36) || (event.keyCode > 36 && event.keyCode < 40) || event.keyCode == 42 || event.keyCode == 43  || (event.keyCode > 57 && event.keyCode < 63)) event.returnValue = false;
		}
	} else { // If Netscape...
		if (n==1) { // ...BLOCK EVERY SYMBOL
			if ((event.which > 32 && event.which < 48) || (event.which > 57 && event.which < 65) || (event.which > 90 && event.which < 97) || event.which > 122) return false;
		} else { // ...BLOCK SCRIPT RELATED SYMBOLS (!@#%^&*'"=)
			if ((event.which > 32 && event.which < 36) || (event.which > 36 && event.which < 40) || event.which == 42 || event.which == 43  || (event.which > 57 && event.which < 63)) return false;
		}
	}
}

function allowNums() { // Allow ONLY NUMBERS (0123456789) 
	if (!isNS4) { // If NOT IE (Netscape)...
		if (event.keyCode < 48 || event.keyCode > 57) event.returnValue = false;
	} else { // If Netscape...
		if (event.which < 48 || event.which > 57) return false;
	}
}

function allowChar() { // Allow ONLY LETTERS (capitals and lowercase) and SPACE
	if (!isNS4) { // If NOT IE (Netscape)...
		if (event.keyCode < 32 || (event.keyCode > 32 & event.keyCode < 65) || (event.keyCode > 90 && event.keyCode < 97) || event.keyCode > 122) event.returnValue = false;
	} else { // If Netscape...
		if (event.which < 32 || (event.which > 32 && event.which < 65) || (event.which > 90 && event.which < 97) || event.which > 122) return false;
	}
}

function fileNames() { // Allow lowercase letters, numbers, ., -, and _.
	if (!isNS4) { // If NOT IE (Netscape)...
		if (event.keyCode < 45 || (event.keyCode > 45 && event.keyCode < 48) || (event.keyCode > 57 && event.keyCode < 95) || (event.keyCode > 95 && event.keyCode < 97) || event.keyCode > 122) event.returnValue = false;
	} else { // If Netscape...
		if (event.which < 45 || (event.which > 45 && event.which < 48) || (event.which > 57 && event.which < 95) || (event.which > 95 && event.which < 97) || event.which > 122) return false;
	}
}

function checkEmail(myForm) {
	if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(myForm.emailAddr.value)) {
		return (true)
	}
	alert("Your email address seems invalid. Please check before submitting again.")
	return (false)
}

var win= null;
function LaunchCenteredWindow(mypage,winName,w,h,scrolly,resize){
	// var scroll='1';
	var winl = (screen.width-w)/2;
	var wint = (screen.height-h)/2;
	var settings  ='height='+h+',';
      settings +='width='+w+',';
      settings +='top='+wint+',';
      settings +='left='+winl+',';
      settings +='scrollbars='+scrolly+',';
      settings +='resizable='+resize;
  win=window.open(mypage, winName, settings);
  if(parseInt(navigator.appVersion) >= 4){win.window.focus();}
}

function LaunchPage(HTMLPage) {
	LaunchCenteredWindow(HTMLPage, 'pageWindow','800','400','yes','yes');
}

function validate(which) {
if (document.images) {
	for (i=0;i<which.length;i++) {
		var tempobj=which.elements[i];
	
		if ((tempobj.type=="text") && (tempobj.value=='') && ((tempobj.name == "name") || (tempobj.name == "filename") && (tempobj.name == "title"))) {
			alert("Please make sure the '" + tempobj.id + "' field was properly completed.");
			tempobj.focus()
			return false;
		}	else if ((tempobj.name == "UserID") && (tempobj.value != '')) {
			var myVal = tempobj.value
			var invalid = " "
			var temp;
			for (var x=0; x<myVal.length; x++) {
				temp = "" + myVal.substring(x, x+1);
				if (invalid.indexOf(temp) > "-1") {
					alert("The " + tempobj.name + " entry must not contain any spaces.")
					tempobj.focus()
					return false;
				}
			}
		}
	}
}
else return true;
}

function checkData() {
	for(var i=0;i<document.form_search.sw.value.length;i++) {
		if (document.form_search.sw.value.charAt(i)!=" ") return true;
	}
return false;
}

var win= null;
function LaunchCenteredWindow(mypage,winName,w,h,scrolly,resize){
	// var scroll='1';
	var winl = (screen.width-w)/2;
	var wint = (screen.height-h)/2;
	var settings  ='height='+h+',';
      settings +='width='+w+',';
      settings +='top='+wint+',';
      settings +='left='+winl+',';
      settings +='scrollbars='+scrolly+',';
      settings +='resizable='+resize;
  win=window.open(mypage, winName, settings);
  if(parseInt(navigator.appVersion) >= 4){win.window.focus();}
}



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];}
}
