/* all functions that do not start with FP_
   created by I.T. solutions
   March, 2008
*/

// hide all objects inside the passed start element that match the tagName and className
// function hide_all(startElement,targetTag,className)
function hide_all(startElement,tagName,className) {
	var start = document.getElementById(startElement);				// start with this node
	var target = start.getElementsByTagName(tagName);				// going to modify these tags if they have the proper class
	var count = target.length;										// set max iterator
	for (i=0; i < count; i++) {										// loop through the target tag(s)
		var tagID = target[i].className;							// set tagID to className
		if (tagID == className)										// check for className to hide (proper class? yes hide them)
		{
			target[i].style.display = 'none';						// correct className hide them
		}
	}
} 

// show only the calling div
function show_div(div) {
	hide_all("right_content_75pct","div",'toggle');					// hide all elements matching parameters 
    var obj = document.getElementById(div);  						// create obj for name of div passed to this function
    obj.style.display = 'block';									// display it
}

//show menu items
function show_sub(sub) {
	hide_all("right_content_75pct","div",'toggle');					// hide (picture) divs 
	hide_all("menu","div","event");									// hide sub menus
	var obj = document.getElementById('dynamic');					// show javascript / screen size message
	obj.style.display = 'block';
	var obj = document.getElementById(sub);
	obj.style.display = 'block';
}

// swap button images
function FP_swapImg() {//v1.0
	var doc=document,args=arguments,elm,n;
	doc.$imgSwaps=new Array();
	for(n=2; n<args.length; n+=2) {
		elm=FP_getObjectByID(args[n]);
		if(elm) {
			doc.$imgSwaps[doc.$imgSwaps.length]=elm;
 			elm.$src=elm.src;
 			elm.src=args[n+1];
 		}
 	}
}

// preload button images
function FP_preloadImgs() {//v1.0
	var d=document,a=arguments;
	if(!d.FP_imgs) d.FP_imgs=new Array();
 	for(var i=0; i<a.length; i++) {
 		d.FP_imgs[i]=new Image;
 		d.FP_imgs[i].src=a[i];
 	}
}

// get object by id
function FP_getObjectByID(id,o) {//v1.0
	var c,el,els,f,m,n;
	if(!o)o=document;
	if(o.getElementById) el=o.getElementById(id);
		else if(o.layers) c=o.layers;
		else if(o.all) el=o.all[id];
	if(el) return el;
	if(o.id==id || o.name==id) return o;
	if(o.childNodes) c=o.childNodes;
	if(c) for(n=0; n<c.length; n++) {
		el=FP_getObjectByID(id,c[n]);
		if(el) return el;
		}
	 f=o.forms;
	 if(f) for(n=0; n<f.length; n++) { 
	 	els=f[n].elements;
	 	for(m=0; m<els.length; m++){
	 		el=FP_getObjectByID(id,els[n]);
	 		if(el) return el; 
	 		} 
	 }
 return null;
}

// show button in darker tone when it is clicked on
function nav_mousedown(id) {
	var obj = document.getElementById(id);
	obj.style.backgroundImage = 'url(Images/blue_gradient_on.gif)';
}

// show standard button when mouse leaves area
function nav_mouseout(id) {
	var obj = document.getElementById(id);
	obj.style.backgroundImage = 'url(Images/blue_gradient_off.gif)';
}

// show brighter button when mouse enters area
function nav_mouseover(id) {
	var obj = document.getElementById(id);
	obj.style.backgroundImage = 'url(Images/blue_gradient_hover.gif)';
}

// show brigher button when user un-clicks
function nav_mouseup(id) {
	var obj = document.getElementById(id);
	obj.style.backgroundImage = 'url(Images/blue_gradient_hover.gif)';
}	
