function addEvent(obj, evType, fn){ //add event to page load
 if (obj.addEventListener){ 
   obj.addEventListener(evType, fn, true); 
   return true; 
 } else if (obj.attachEvent){ 
   var r = obj.attachEvent("on"+evType, fn); 
   return r; 
 } else { 
   return false; 
 } 
}

function popUp(url, width, height)
{
	if (window.popwin) {popwin.close();}
	popwin=window.open(url,'popup', "width="+width+",height="+height+",scrollbars=1,resizable=1,toolbar=0");
	if (window.focus) {popwin.focus();}
}  

function setRollovers(selector, over, on) { //adds rollover and 'on' image behavior to all 'rollover' class images & preloads 
var images = document.getElementsBySelector(selector);
var url = String(document.location);

for (var i = 0; i < images.length; i++) { 
   href = images[i].parentNode.getAttribute('href');    
   image = images[i].src.substring(0, (images[i].src.length - 4));   
   type = images[i].src.substring(images[i].src.length - 4, images[i].src.length);      
   if ((href.length == (url.length - url.indexOf(href)))&&(url.match(href) != null)){ //if image link is contained at end of url
	 //if (href == url){ //if image links to current page, show on image
     images[i].src = image + on + type;      
   } else { // else add mouseover image event handler, and preload
	 //alert (href.length + " does not equal " + (url.length - url.indexOf(href)));	 
	 images[i].preloaded = new Image();
	 images[i].preloaded.src = image + over + type;
   images[i].onmouseover = function (){this.src = this.preloaded.src;};
	 images[i].onmouseout = function (){this.src = this.src.replace('_over', '');};         
   }   
} //end for 
} // end function

function isSet(variable)
{
    var undefined;
    return ( variable == undefined ? false : true );
}

function setCellRollovers(selector, on, off){//selector, on class, over class, off class
var cells = document.getElementsBySelector(selector);
var url = String(document.location);
for (var i = 0; i < cells.length; i++) {
	href = "";
	if (isSet(cells[i].childNodes.item(0).href))	href = cells[i].childNodes.item(0).href;
	if ((href.length == (url.length - url.indexOf(href)))&&(url.match(href) != null)){ //if image link is contained at end of url
//	if ((url.match(href) != null)){ 
		cells[i].className=on;      
	} else { // else add mouseover image event handler, and preload
		cells[i].onmouseover = function (){this.className = on;};
		cells[i].onmouseout = function (){this.className = off;};         
 	}   
}//end for
}//end function


function runFunctions(){
setRollovers('.rollover', '_over', '_over');//selecter, over image suffix, on image suffix
setCellRollovers('table#menu td', 'on', '');

}

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];}
}

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_showHideLayers() { //v6.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_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
}

function show_tab(id) {//shows tab specified by 'id' and hides all other divs specified by ids'tab1' - 'tab10', sets class of tab button	
		var divDhtml, i;			
				
		// LOOP THROUGH TABS 
		for(i=1; i<=10; i++) {
			tab = "tab" + i;
			if(document.getElementById(tab)) {  // IF THIS TAB WAS FOUND IN THE DOCUMENT...
				divDhtml = document.getElementById(tab);
				if (id != 'all'){
					//alert(id);
					divDhtml.style.display = "None" ; // HIDE THIS TAB
				} else
					divDhtml.style.display = "" ; // SHOW THIS TAB
			}
		}
		// SHOW REQUESTED TAB
		if(document.getElementById(id)) {  // IF THIS TAB WAS FOUND IN THE DOCUMENT...
			divDhtml = document.getElementById(id);
			divDhtml.style.display = "" ; // SHOW THIS TAB
		}
		
}// end function

function set_active_button(obj){

		var buttons = document.getElementsBySelector("ul#image_tabs li");
		for (var i = 0; i < buttons.length; i++) {//remove former activelink
			buttons[i].className='';
		}
		obj.parentNode.className = 'activelink';
}//end function



