
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 toggleDisplay(el) {
	if ( el.style.display != 'block' ) {
		el.style.display = 'block';
	}
	else {
		el.style.display = 'none';
	}
}

function toggleMatchingAbstract(event) {
	var abstractButtons = getElementsByClass("abstract-toggle-button");
	var abstracts = getElementsByClass("abstract");
	var thisButton
	if (event.target) thisButton = event.target;
	else if (event.srcElement) thisButton = event.srcElement;
	for (i=0; i<abstractButtons.length; i++){
		if (abstractButtons[i] == thisButton){
			toggleDisplay(abstracts[i]);
		}
	}
}

function assignEventHandlers(){
	var abstractButtons = getElementsByClass("abstract-toggle-button");
	for (i=0; i<abstractButtons.length; i++){
		var anchor = abstractButtons[i].parentNode;
		anchor.onclick=toggleMatchingAbstract;
	}
}


// this is the script to unmagle the emails to put more email in, 
// encode text at tools.geht.net/rot13.html and paste into email slot.  
// the script automatically converts to real email


// origin: 2000-01-08 nospam@geht.net http://tools.geht.net/rot13.html
var last="";
var rot13map;

function rot13init()
{
  var map = new Array();
  var s   = "abcdefghijklmnopqrstuvwxyz";
  
  for (i=0; i<s.length; i++)
    map[s.charAt(i)]			= s.charAt((i+13)%26);
  for (i=0; i<s.length; i++)
    map[s.charAt(i).toUpperCase()]	= s.charAt((i+13)%26).toUpperCase();
  return map;
}

function rot13(a)
{
  if (!rot13map)
    rot13map=rot13init();
  s = "";
  for (i=0; i<a.length; i++)
    {
      var b = a.charAt(i);

      s	+= (b>='A' && b<='Z' || b>='a' && b<='z' ? rot13map[b] : b);
    }
  return s;
}

function mailme(mangled,text)
{
  pre = "<a href=\"mailto:"
  post = "\" target=_new>"+text+"</a>"
  pt = rot13(mangled)
  return (pre+pt+post)
}


