function addEvent(elm, evType, fn, useCapture)
// cross-browser event handling for IE5+, NS6+ and Mozilla
// By Scott Andrew
{
  if (elm.addEventListener) {
    elm.addEventListener(evType, fn, useCapture);
    return true;
  } else if (elm.attachEvent) {
    var r = elm.attachEvent('on' + evType, fn);
    return r;
  } else {
    elm['on' + evType] = fn;
  }
}

// climb up the tree to the supplied tag.
function ascendDOM(e, target) {
  while (e.nodeName.toLowerCase() != target &&
      e.nodeName.toLowerCase() != 'html')
    e = e.parentNode;

  return (e.nodeName.toLowerCase() == 'html') ? null : e;
}



function toggleSearch(e) {

	if (window.event && window.event.srcElement)
	  el = window.event.srcElement;
	if (e && e.target)
	  el = e.target;
	if (!el) return;

	var searchbox = el.id + "box";
	var searchbox = document.getElementById(searchbox);

	if (searchbox.style.display == "none") {
    var cnav_search_input = document.getElementById('cnav-search-input');

	searchbox.style.display = "inline";
	cnav_search_input.focus();
		
	}
	else {
		searchbox.style.display = "none";
	}

}

function clearInput(e) {

	if (window.event && window.event.srcElement)
	  el = window.event.srcElement;
	if (e && e.target)
	  el = e.target;
	if (!el) return;
	
	if (el.value == el.title) {
		el.value = '';
	}
	
}




function addListeners() {
  if (!document.getElementsByTagName) return;
  var all_links = document.getElementsByTagName('a');

/* Use when we have many similar event triggers

  for (var i = 0; i < all_links.length; i++) {
  	if (all_links[i].title == 'Move Up' || all_links[i].title == 'Move Down')
	  	addEvent(all_links[i], 'mousedown', movebar, false);
  }
*/

    var cnav_search = document.getElementById('cnav-search');
    var cnav_search_input = document.getElementById('cnav-search-input');
    var fp_search = document.getElementById('search-box');
    
        addEvent(cnav_search, 'click', toggleSearch, false);
        addEvent(cnav_search_input, 'click', clearInput, false);
        
		/* Only add this event for the front page */
        if (fp_search) addEvent(fp_search, 'click', clearInput, false);
}


addEvent(window, 'load', addListeners, false);




