sfHover = function() {
	var sfEls = document.getElementById("nav").getElementsByTagName("li");
	for (var i=0; i<sfEls.length; i++) {
		sfEls[i].onmouseover=function() {
			this.className+=" sfhover";
		}
		sfEls[i].onmouseout=function() {
			this.className=this.className.replace(new RegExp(" sfhover\\b"), "");
		}
	}
}
if (window.attachEvent) window.attachEvent("onload", sfHover);





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_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_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 keepopen(div,spawner) {
  coords = getPosition(spawner);
  $(div).style.left = coords.x + "px";
  $(div).style.display = "block";
}

function keepclosed(div) {
  $(div).style.display = "none";
}

function getPosition(anchorname) {
	// This function will return an Object with x and y properties
	var useWindow=false;
	var coordinates=new Object();
	var x=0,y=0;
	// Browser capability sniffing
	var use_gebi=false, use_css=false, use_layers=false;
	if (document.getElementById) { use_gebi=true; }
	else if (document.all) { use_css=true; }
	else if (document.layers) { use_layers=true; }
	// Logic to find position
	if (use_gebi && document.all) {
	x=getPositionPageOffsetLeft(document.all[anchorname]);
	y=getPositionPageOffsetTop(document.all[anchorname]);
	}
	else if (use_gebi) {
	var o=document.getElementById(anchorname);
	x=getPositionPageOffsetLeft(o);
	y=getPositionPageOffsetTop(o);
	}
	else if (use_css) {
	x=getPositionPageOffsetLeft(document.all[anchorname]);
	y=getPositionPageOffsetTop(document.all[anchorname]);
	}
	else if (use_layers)
	{
	var found=0;
	for (var i=0; i < document.anchors.length; i++)
	{
	if (document.anchors[i].name==anchorname) { found=1; break; }
	}
	if (found==0)
	{
	coordinates.x=0; coordinates.y=0; return coordinates;
	}
	x=document.anchors[i].x;
	y=document.anchors[i].y;
	}
	else
	{
	coordinates.x=0; coordinates.y=0; return coordinates;
	}
	coordinates.x=x;
	coordinates.y=y;
	return coordinates;
}

// Functions for IE to get position of an object
function getPositionPageOffsetLeft (el)
{
	var ol=el.offsetLeft;
	while ((el=el.offsetParent) != null) { ol += el.offsetLeft; }
	return ol;
}

function getPositionWindowOffsetLeft (el)
{
	return getPositionPageOffsetLeft(el)-document.body.scrollLeft;
	}
	function getPositionPageOffsetTop (el)
	{
	var ot=el.offsetTop;
	while((el=el.offsetParent) != null) { ot += el.offsetTop; }
	return ot;
}

function getPositionWindowOffsetTop (el)
{
	return getPositionPageOffsetTop(el)-document.body.scrollTop;
} 
