// MM OBJECT STUFF  function MM_reloadPage(init) {  //reloads the window if Nav4 resized  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();}MM_reloadPage(true); function MM_findObj(n, d) { //4.01, thanks macromedia  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 showHideLayers() {  //showHideLayers (w3c compatiable, requires findObj() for older browsers)  var i,p,v,obj,args=showHideLayers.arguments;  if(document.getElementById){   for (i=0; i<(args.length-2); i+=3){   obj=document.getElementById(args[i]);v=args[i+2];v=(v=='show')?'visible':(v='hide')?'hidden':v;   if(obj)obj.style.visibility=v;   }  }  else{  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; } }} // CLEAR SEARCH BOXfunction clearSearchBox(searchbox) {if (searchbox.value=='Keywords') {	searchbox.value='';	}	else if (searchbox.value=='') {		searchbox.value='Keywords';		}	} // CONTACT US FORM VALIDATION//function validateform() {//	var errmsg = "";//	if (document.frmContact.fname.value == "") {//		errmsg +="Please enter your First Name.\n";//	}//	if (document.frmContact.sname.value == "") {//		errmsg +="Please enter your Last Name.\n";//	}//	if (document.frmContact.email.value == "") {//		errmsg +="Please enter your Email Address.\n";//	}//	if (document.frmContact.phone.value == "") {//		errmsg +="Please enter your Phone Number.\n";//	}//	if (document.frmContact.comments.value == "") {//		errmsg +="Please enter your Comments.\n";//	}//	if (errmsg != "") {//		errmsg = "WARNING! The form is not complete!\n\n" + errmsg;//		alert(errmsg);//		if (document.frmContact.fname.value == "") {//			document.frmContact.fname.focus();//		} else {//		if (document.frmContact.sname.value == "") {//			document.frmContact.sname.focus();//		} else {//			if (document.frmContact.email.value == "") {//				document.frmContact.email.focus();//		} else {//			if (document.frmContact.phone.value == "") {//				document.frmContact.phone.focus();//			} else {//				document.frmContact.comments.focus();//			}//		}//		return false;//	} else {//		return true;//	}//}// BROWSER AND PLUGIN DETECTION

function MM_checkPlugin(plgIn, theURL, altURL, autoGo) { //v4.0
  var ok=false; document.MM_returnValue = false;
  with (navigator) if (appName.indexOf('Microsoft')==-1 || (plugins && plugins.length)) {
    ok=(plugins && plugins[plgIn]);
  } else if (appVersion.indexOf('3.1')==-1) { //not Netscape or Win3.1
    if (plgIn.indexOf("Flash")!=-1 && window.MM_flash!=null) ok=window.MM_flash;
    else if (plgIn.indexOf("Director")!=-1 && window.MM_dir!=null) ok=window.MM_dir;
    else ok=autoGo; }
  if (!ok) theURL=altURL; if (theURL) window.location=theURL;
}

with (navigator) if (appName.indexOf('Microsoft')!=-1 && appVersion.indexOf('Mac')==-1) document.write(''+
'<scr'+'ipt language="VBScript">\nOn error resume next\n'+
'MM_dir = IsObject(CreateObject("SWCtl.SWCtl.1"))\n'+
'MM_flash = NOT IsNull(CreateObject("ShockwaveFlash.ShockwaveFlash"))\n</scr'+'ipt>');


 // TIMELINE NONFLASH SCROLLING LAYER

function checkBrowser(){
	this.ver=navigator.appVersion
	this.dom=document.getElementById?1:0
	this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom)?1:0;
	this.ie4=(document.all && !this.dom)?1:0;
	this.ns5=(this.dom && parseInt(this.ver) >= 5) ?1:0;
	this.ns4=(document.layers && !this.dom)?1:0;
	this.bw=(this.ie5 || this.ie4 || this.ns4 || this.ns5)
	return this
}
bw=new checkBrowser()

timSpeed=1

contHeight=239

function makeScrollObj(obj,nest){
	nest=(!nest) ? '':'document.'+nest+'.'										
	this.el=bw.dom?document.getElementById(obj):bw.ie4?document.all[obj]:bw.ns4?eval(nest+'document.'+obj):0;
  	this.css=bw.dom?document.getElementById(obj).style:bw.ie4?document.all[obj].style:bw.ns4?eval(nest+'document.'+obj):0;		
	this.height=bw.ns4?this.css.document.height:this.el.offsetHeight
	this.top=b_gettop										
	return this
}

function b_gettop(){
	var gleft=(bw.ns4 || bw.ns5) ? eval(this.css.top):eval(this.css.pixelTop);
	return gleft;
}

var scrollTim;
var mscrollTim;
var active=0;

function scroll(speed)
{
	clearTimeout(scrollTim)
	way=speed>0?1:0
	if((!way && oScroll[active].top()>-oScroll[active].height+contHeight) || (oScroll[active].top()<0 && way)){
		oScroll[active].css.top=oScroll[active].top()+speed
		scrollTim=setTimeout("scroll("+speed+")",timSpeed)
	}
}

function noScroll(){
	clearTimeout(scrollTim)
}

function changeActive(num){
	oScroll[active].css.visibility='hidden'
	active=num
	oScroll[active].css.top=0
	oScroll[active].css.visibility='visible'
}

function scrollInit()
{
	oScroll=new Array()
	oScroll[0]=new	makeScrollObj('divScroll1','divCont')
	oScroll[0].css.visibility='visible'

	oMScroll=new Array()
	oMScroll[0]=new	makemScrollObj('divMScroll1','divMCont')
	oMScroll[1]=new	makemScrollObj('divMScroll2','divMCont')
	oMScroll[2]=new	makemScrollObj('divMScroll3','divMCont')
	oMScroll[3]=new	makemScrollObj('divMScroll4','divMCont')
	oMScroll[4]=new	makemScrollObj('divMScroll5','divMCont')
	oMScroll[5]=new	makemScrollObj('divMScroll6','divMCont')
	oMScroll[6]=new	makemScrollObj('divMScroll7','divMCont')
	oMScroll[7]=new	makemScrollObj('divMScroll8','divMCont')
	oMScroll[8]=new	makemScrollObj('divMScroll9','divMCont')
	oMScroll[9]=new	makemScrollObj('divMScroll10','divMCont')
	oMScroll[10]=new	makemScrollObj('divMScroll11','divMCont')
	oMScroll[11]=new	makemScrollObj('divMScroll12','divMCont')
	oMScroll[12]=new	makemScrollObj('divMScroll13','divMCont')
	oMScroll[13]=new	makemScrollObj('divMScroll14','divMCont')
	oMScroll[14]=new	makemScrollObj('divMScroll15','divMCont')
	oMScroll[15]=new	makemScrollObj('divMScroll16','divMCont')
	oMScroll[16]=new	makemScrollObj('divMScroll17','divMCont')
	oMScroll[17]=new	makemScrollObj('divMScroll18','divMCont')
	oMScroll[18]=new	makemScrollObj('divMScroll19','divMCont')
	oMScroll[19]=new	makemScrollObj('divMScroll20','divMCont')
	oMScroll[20]=new	makemScrollObj('divMScroll21','divMCont')
	oMScroll[21]=new	makemScrollObj('divMScroll22','divMCont')
	oMScroll[22]=new	makemScrollObj('divMScroll23','divMCont')
	oMScroll[23]=new	makemScrollObj('divMScroll24','divMCont')
	oMScroll[24]=new	makemScrollObj('divMScroll25','divMCont')
	oMScroll[25]=new	makemScrollObj('divMScroll26','divMCont')
	oMScroll[26]=new	makemScrollObj('divMScroll27','divMCont')
	oMScroll[27]=new	makemScrollObj('divMScroll28','divMCont')
	oMScroll[28]=new	makemScrollObj('divMScroll29','divMCont')
	oMScroll[0].css.visibility='visible'

	oControl=new makemScrollObj('divMControl')
	oControl.css.visibility='visible'
}

onload=scrollInit; 

// PSC - Comment out 'mscrollInit' - There is no such function
//mscrollInit;


// PSC - Problem 1. Add mactive as corresponding to active, but for the second (main) scroll section
var mactive = 0;

function makemScrollObj(obj,nest)
{
	nest=(!nest) ? '':'document.'+nest+'.'										
	this.el=bw.dom?document.getElementById(obj):bw.ie4?document.all[obj]:bw.ns4?eval(nest+'document.'+obj):0;
  	this.css=bw.dom?document.getElementById(obj).style:bw.ie4?document.all[obj].style:bw.ns4?eval(nest+'document.'+obj):0;		
	this.height=bw.ns4?this.css.document.height:this.el.offsetHeight
	this.top=b_gettop										
	return this
}

function mscroll(speed)
{
	// PSC - Problem 1. Note: uses mactive
	clearTimeout(mscrollTim)
	way=speed>0?1:0
	if((!way && oMScroll[mactive].top()>-oMScroll[mactive].height+contHeight) || (oMScroll[mactive].top()<0 && way)){
		oMScroll[mactive].css.top=oMScroll[mactive].top()+speed
		
		// PSC - Problem 2.  A Typo on scrollTim which should have read mscrollTim
		//scrollTim=setTimeout("mscroll("+speed+")",timSpeed)
		mscrollTim=setTimeout("mscroll("+speed+")",timSpeed)
	}
}

function mnoScroll()
{
	clearTimeout(mscrollTim)
}

function mchangeActive(num)
{
	// PSC - Problem 1. Note: uses mactive
	oMScroll[mactive].css.visibility='hidden'
	mactive=num
	oMScroll[mactive].css.top=0
	oMScroll[mactive].css.visibility='visible'
	
	// PSC - Keep Clicked Image highlighted
	thm_num = num;
	document[thm_name].src = thm_src;
}

