// Add event function
function addEvent(elm, evType, fn, useCapture) {
	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;
		}
	}


// Prevent people from submitting a form twice
var firsttime
function stopSecondSubmit(theForm)
{	if (firsttime == "Y")
  {	alert("Please wait... \n\nThe request has already been submitted\nand is currently being processed."); return (false); }
  firsttime = "Y";
  theForm.btnSubmit.value="Please Wait...";
  document.body.style.cursor = "wait";
  return (true);
}

// Show / Hide Content (Simple Version)
function toggleContentSimple(el) {

  var myelement = document.getElementById(el);
  var myimg = document.getElementById("btn-" + el);

  if( !myelement.style.display || myelement.style.display == "none" ) {
	myelement.style.display = "inline";
  } else {
    myelement.style.display = "none";
  }
}

// Show / Hide Content
function toggleContent(el) {

  var myelement = document.getElementById(el);
  var myimg = document.getElementById("btn-" + el);

  if( !myelement.style.display || myelement.style.display == "none" ) {
	myelement.style.display = "inline";
    myimg.src= "/img/icons/btnContract.gif";
  } else {
    myelement.style.display = "none";
    myimg.src= "/img/icons/btnExpand.gif";
  }
}

// Select/deselect all
function fnCheckAll(bState, sElementName) {
	var all = document.getElementsByName(sElementName);
	for (var iLoop=0; iLoop < all.length; iLoop++) all[iLoop].checked=bState
}


// Open in new window
function NewWindow(mypage, myname, w, h, scroll) {
var winl = (screen.width - w) / 2;
var wint = (screen.height - h) / 2;
winprops = 'height='+h+',width='+w+',top='+wint+',left='+winl+',scrollbars='+scroll+',resizable'
win = window.open(mypage, myname, winprops)
if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); }
}


// Open & resize image in a new window
function PopupPic(sPicURL) { 
	window.open(sPicURL, "", "resizable=1,HEIGHT=200,WIDTH=200");
}

// Break out of a frameset
function breakFree() {
	if (parent.frames.length > 0) {
	    parent.location.href = self.document.location;
	}
}


// Dreamweaver image rollover script
function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);

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];}
}

// Jumpmenu script

function MM_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
}


function ClearOptions(OptionList) {

   // Always clear an option list from the last entry to the first
   for (x = OptionList.length; x >= 0; x = x - 1) {
      OptionList[x] = null;
   }
}

function AddToOptionList(OptionList, OptionValue, OptionText) {
   // Add option to the bottom of the list
   OptionList[OptionList.length] = new Option(OptionText, OptionValue);
}

// Hide Container
function hideContainer(el) {
	var myelement = document.getElementById(el);
	myelement.style.display = "none";
}

// Show Container
function showContainer(el) {
	var myelement = document.getElementById(el);
	myelement.style.display = "inline";
}

// Category Info Loader - Collapse
function hideDetailedInfo() {
	hideContainer('detailedInfo');
	showContainer('summaryInfo');
}

// Category Info Loader - Show
function showDetailedInfo() {
	hideContainer('summaryInfo');
	showContainer('detailedInfo');
	
}



// Limit text in textarea
function limitText(limitField, limitCount, limitNum) {
	if (limitField.value.length > limitNum) {
		limitField.value = limitField.value.substring(0, limitNum);
	} else {
		limitCount.value = limitNum - limitField.value.length;
	}
}


// Table hilighting

window.onload = function()
{
  var tbl = document.getElementById('highLightTable');
  setHighlight(tbl);
}

function setHighlight(table) 
{
  if (!table) return;
  var TDs = table.getElementsByTagName("td");
  for(var i = 0; i<TDs.length; i++) {
    TDs[i].onmouseover = rowColHighlight;
    TDs[i].onmouseout = rowColDelight;
  }
}

function rowColHighlight()
{
  highlighter(this, '#d3c9e2');
}
function rowColDelight()
{
  highlighter(this, '');
}

function highlighter(cell, color)
{
  cell.parentNode.style.backgroundColor = color;
  var table = getTable(cell);
  var col = table.getElementsByTagName("col");
  col[cell.cellIndex].style.backgroundColor = color;
}

function getTable(obj)
{
  while (obj && obj.tagName.toLowerCase() != 'table')
  {
    obj = getTable(obj.parentNode);
  }
  return obj;
}

