if (window.__doPostBack)
{
	var __oldPostBack = __doPostBack;
	__doPostBack = ufMyDoPostBack;
}

function ufMyDoPostBack(eventTarget, eventArgument)
{ 
    ufEscapeText();
    //Run the original __dopostback
    return __oldPostBack(eventTarget, eventArgument);
}

function ufEscapeText()
//Encodes each textfield and textarea element;
//Encodes hidden fields with attribute escapetext="true"
{	
	//var loForm = document.forms(0);
	var loForm = document.MainForm;	//ante:06/27/2005 #20823 - MAC/Firefox
	var loDecoded = document.getElementById('hfDecoded');
	if (loDecoded) {loDecoded.value = 'false';}
	
	for(i=0; i<loForm.elements.length; i++)
	{
		var loControl = loForm.elements[i];
		var lsColor = loControl.style.background;
		if (loControl.type.toLowerCase()=="text")
		{
			//loControl.value = ufDecodeText(loControl.value);
			loControl.value = escape(loControl.value);
			ufHideText(loControl, lsColor);
		}
		else if (loControl.type.toLowerCase()=="hidden")
		{
			if (loControl.escapetext)
			{
				loControl.value = escape(loControl.value);
			}
		}
		else if (loControl.type.toLowerCase()=="textarea")
		{
			//loControl.value = ufDecodeText(loControl.value);
			loControl.value = escape(loControl.value);
			ufHideText(loControl, lsColor);
		}
	}
}

function ufHideText(asControl, asColor)
{
	if (!(asColor))
	{
		asControl.style.color = "white";
	}
	else
	{
		if(asControl.style.color != '')
        {
			asControl.style.color = asColor;
			}
	}
}

function ufUnescapeText()
//Performs client-side decoding
{
	var loDecoded = document.getElementById('hfDecoded');
	if ((loDecoded) && (loDecoded.value != 'true'))
	{
		//var loForm = document.forms(0);
		var loForm = document.MainForm;	//ante:06/27/2005 #20823 - MAC/Firefox
		for(i=0; i<loForm.elements.length; i++)
		{
			var loControl = loForm.elements[i];
			if (loControl.type.toLowerCase()=="text")
			{
				loControl.value = unescape(loControl.value);
			}
			else if (loControl.type.toLowerCase()=="hidden")
			{
				if (loControl.escapetext)
				{
					loControl.value = unescape(loControl.value);
				}
			}
			else if (loControl.type.toLowerCase()=="textarea")
			{
					loControl.value = unescape(loControl.value);
			}
		}
	}
}

function ufDecodeText( asString ) {

  if ( asString == null ) return "";
  if ( asString.length <= 0 ) return "";
  asString = escape(asString);
  var lsTemp = "";

  for( liX = 0; liX < asString.length ; liX++ ) {
    var lcChar = asString.charAt( liX ) ;
    switch( lcChar ) {
      case '+' :
        lsTemp = lsTemp + "%2b" ;
        break ;
      default:
        lsTemp =  lsTemp + lcChar
    }
  }
  return lsTemp ;
}