// Javascript Document

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];}
}

var browserType;

if (document.layers) {browserType = "nn4"}
if (document.all) {browserType = "ie"}
if (window.navigator.userAgent.toLowerCase().match("gecko")) {
 browserType= "gecko"
}


		var main_picture_container_id = "right_roll";
		var main_picture_default_id = "right_roll_default";
		function register_events () {
			document.getElementById("navigation_area").onmouseout = swap_to_default;
		}
		function swap_main_image(element_id) {
			hide_all_images();
			var element = document.getElementById(element_id);
			element.style.display = "block";	
		}
		function hide_all_images() {
			var container = document.getElementById(main_picture_container_id);
			for ( var i = 0; i < container.childNodes.length; i++ ) {
				if( container.childNodes[i].style ) {
					container.childNodes[i].style.display = "none";
				}
			}	
		}
		function swap_to_default(e) {

			var tempX;
			var tempY;
			var is_left;

			//crossbrowser method of making relTarg the element mouse moved to
			if(!e) {
				 var e = window.event;
				tempX = e.clientX + document.body.scrollLeft;
				tempY = e.clientY + document.body.scrollTop;
				
			} else {
				tempX = e.pageX;
				tempY = e.pageY;
			}
			is_left = (tempX < getElementPosition(this.id).left ? true: false);
				
			var relTarg = e.relatedTarget || e.toElement; 
			if ( !has_descendant(relTarg, this) && !within_element_bounds(tempX, tempY, this.id)) {
				swap_main_image (main_picture_default_id);
			}
		}
		function has_descendant(child, parent) {
			return find_node( child, parent );	
		}
		function find_node (value, current_node) {
			if (current_node == value) {
				return true;
			}
			if (current_node == null ) {
				return false;
			}
			if (current_node.childNodes) {
				for (var i = 0; i < current_node.childNodes.length; i++) {
					if ( find_node (value, current_node.childNodes[i] ) ) {
						return true;
					}
				}
			}
			return false;
		}
		function within_element_bounds(mouse_x, mouse_y, element_id) {
			var xy = getElementPosition(element_id);
			var min_x = xy.left;
			var min_y = xy.top;
			var max_x = min_x + getElementWidth(element_id);
			var max_y = min_y + getElementHeight(element_id);
			return mouse_x > min_x && mouse_x < max_x && 
				   mouse_y > min_y && mouse_y < max_y;

		}
		function getElementPosition(elemID) {
			var offsetTrail = document.getElementById(elemID);
			var offsetLeft = 0;
			var offsetTop = 0;
			while (offsetTrail) {
				offsetLeft += offsetTrail.offsetLeft;
				offsetTop += offsetTrail.offsetTop;
				offsetTrail = offsetTrail.offsetParent;
			}
			if (navigator.userAgent.indexOf("Mac") != -1 && 
				typeof document.body.leftMargin != "undefined") {
				offsetLeft += document.body.leftMargin;
				offsetTop += document.body.topMargin;
			}
			return {left:offsetLeft, top:offsetTop};
		}
		function getElementHeight(Elem) {
				if(document.getElementById) {
					var elem = document.getElementById(Elem);
				} else if (document.all){
					var elem = document.all[Elem];
				}
				xPos = elem.offsetHeight;
				return xPos;
		}
		function getElementWidth(Elem) {
				if(document.getElementById) {
					var elem = document.getElementById(Elem);
				} else if (document.all){
					var elem = document.all[Elem];
				}
				xPos = elem.offsetWidth;
				return xPos;
		}