function textCounter(field,maxChars,spanName)
{
   var txtArea = document.getElementById(field)
   var strTemp = "";
   var strCharCounter = 0;
   for (var i = 0; i < txtArea.value.length; i++)
	{
		var strChar = txtArea.value.substring(i, i + 1);
        strTemp += strChar;
        strCharCounter ++;
    }
    if (strTemp.length > maxChars)
    {
		alert("Oops!  Please shorten your answer.\r\nYour comment can contain up to " + maxChars + " characters, including letters, numbers and underscores.  Watch the counter to tell how many characters you have remaining.");
		strTemp = txtArea.value.substring(0, maxChars);
		txtArea.value = strTemp;
    }
   document.getElementById(spanName).innerHTML = maxChars - strTemp.length;
}



function getObject(obj) {
  var theObj;
  if(document.all) {
    if(typeof obj=="string") {
      return document.all(obj);
    } else {
      return obj.style;
    }
  }
  if(document.getElementById) {
    if(typeof obj=="string") {
      return document.getElementById(obj);
    } else {
      return obj.style;
    }
  }
  return null;
}

function toCount(entrance,exit,text,characters) {
  var entranceObj=getObject(entrance);
  var exitObj=getObject(exit);
  var length=characters - entranceObj.value.length;
  if(length <= 0) {
    length=0;
    text='<span class="disable"> '+text+' </span>';
    entranceObj.value=entranceObj.value.substr(0,characters);
  }
  exitObj.innerHTML = text.replace("{CHAR}",length);
}




function showhide(layer_ref) { 
	var state = 'none';
	if (state == 'block') 
	{ 
		state = 'none'; 
	} 
	else 
	{ 
	state = 'block'; 
	} 
	if (document.all)  {//IS IE 4 or 5 (or 6 beta) 	
	eval( "document.all." + layer_ref + ".style.display = state"); 
	} 
	if (document.layers) { //IS NETSCAPE 4 or below 
	document.layers[layer_ref].display = state; 
	} 
	if (document.getElementById &&!document.all) { 
	hza = document.getElementById(layer_ref); 
	hza.style.display = state; 
	} 
} 