function generate_address( un, hn, sty, lnk, subline) 
{ var stycl = ""; var atsign = "&#64;"; var subject = "";
  var addr = un + atsign + hn;
  if(sty){stycl = " class=" + sty } if(subline){subject = "?Subject=" + subline } 
  if(!lnk){ var lnk = addr; } 
  document.write( "<" + "a " + stycl + " href='" + "mail" + "to:" + addr + subject +"'>" + lnk + "</a>");	};


if(document.location.href) 
	hrefString = document.location.href;
else
	hrefString = document.location;

var pagename = extractPageName(hrefString);

function extractPageName(hrefString)
{
	var arr = hrefString.split('.');
	if(arr.length >= 2) {
		arr = arr[arr.length-2].split('/');
		return arr[arr.length-1].toLowerCase();
	} else {
		return "x";
	}
}

function setActiveMenu(arr)
{
  for(var i=0; i < arr.length; i++)
  {
	  if(extractPageName(arr[i].href) == pagename)
	  {
		addClass(arr[i],'current');
		addClass(arr[i].parentNode,'current');
	  }
	  
	  var relarr = arr[i].rel.split(",");
	  for(var x=0; x < relarr.length; x++)
	  {
		  if(relarr[x].toLowerCase() == pagename)
		  {
			addClass(arr[i],'current');
			addClass(arr[i].parentNode,'current');
		  }
	  }
  }
}

<!-- call this method from your page-->
function highlightPages(classname)
{
	var lists = getElementsByClass(classname, null,"ul");
    for (var i=0; i < lists.length; i++)
		setActiveMenu(lists[i].getElementsByTagName('a'));
}

function getElementsByClass(searchClass,node,tag) {
	var classElements = new Array();
	if ( node == null )
		node = document;
	if ( tag == null )
		tag = '*';
	var els = node.getElementsByTagName(tag);
	var elsLen = els.length;
	var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)");
	for (i = 0, j = 0; i < elsLen; i++) {
		if ( pattern.test(els[i].className) ) {
			classElements[j] = els[i];
			j++;
		}
	}
	return classElements;
}

function addClass(element, value) {
	if (!element.className) {
		element.className = value;
	} else {
		var newClassName = element.className;
		newClassName += " ";
		newClassName += value;
		element.className = newClassName;
	}
}


//drop down code for IE
startList = function() {
if (document.all&&document.getElementById) {
navRoot = document.getElementById("nav");
for (i=0; i<navRoot.childNodes.length; i++) {
node = navRoot.childNodes[i];
if (node.nodeName=="LI") {
node.onmouseover=function() {
this.className+=" over";
  }
  node.onmouseout=function() {
  this.className=this.className.replace(" over", "");
   }
   }
  }
 }
}

