function adjustLayoutElem(elem, correction) {
   var leftColumn = getHtmlObject("content");
   var rightColumn = getHtmlObject(elem);
   if ((rightColumn) && (leftColumn)) {
      var leftColumnHeight = leftColumn.offsetHeight - correction;
      var rightColumnHeight = rightColumn.offsetHeight;

      if(leftColumnHeight > rightColumnHeight) {
         rightColumn.style.height = leftColumnHeight + 'px';
      }
   }
}

function getHtmlObject(objectId) {
   if(document.getElementById && document.getElementById(objectId)) {
      return document.getElementById(objectId);
   } else if (document.all && document.all(objectId)) {
      return document.all(objectId);
   } else if (document.layers && document.layers[objectId]) {
      return document.layers[objectId];
   } else {
      return false;
   }
}

function trim(s) {
   var sRet = '';
   var sC = '';
   for (var i = 0; i < s.length; i++) {
      sC = s.charAt(i);
      if ((sC != ' ') && (sC != '\t'))
         sRet = sRet + sC
   }
   return(sRet);
}

function isValidEmail(frm, elem) {
   reEmail = /^[\w-\.]{1,}\@([\da-zA-Z-]{1,}\.){1,}[\da-zA-Z-]{2,4}$/;

   if (frm) {
      var ref = eval('frm.' + elem);
      if (ref) {
         return(reEmail.test(ref.value));
      } else {
         alert('isValidEmail: ' + elem + ' not found');
      }
   } else {
      alert('isValidEmail: form not found');
   }
   return true;
}

function checkString(s) {
   if (trim("" + s.value) == "") {
      return false;
   }
   return true;
}

function decode(s) {
 var n=0;
 var r="";
 for(var i=1; i < s.length - 1; i++) {
  n=s.charCodeAt(i);
  if (n>=8364) {n = 128;}
  r += String.fromCharCode(n-(4));
 }
 return r;
}

function decode_email(s) {
 location.href=decode(s);
}

function showHideElements(hideElem, showElem) {
   var ref = getHtmlObject(hideElem);
   var ref2 = getHtmlObject(showElem);
   if ((ref) && (ref2)) {
      ref2.style.display = 'block';

      var elemNameC = 'pcontent';
      var elemNameN = 'pcontent2';
      if (showElem == "main") {
         elemNameC = 'pcontent2';
         elemNameN = 'pcontent';
      }
      var newColumn = getHtmlObject(elemNameN);
      var orgColumn = getHtmlObject(elemNameC);
      if ((newColumn) && (orgColumn)) {
         var difference = ref.offsetHeight - orgColumn.offsetHeight;
         var newHeight = newColumn.offsetHeight + difference;
         ref2.style.height = newHeight + 'px';
      }
      ref.style.display = 'none';
   }
   return(false);
}

function scanChildNodes(ref) {
   if (ref) {
      if (ref.getElementsByTagName) {
         var tags = new Array ('td', 'p', 'li', 'h2', 'h3');
         for (var j = 0; j < tags.length; j++) {
            var oNodeList = ref.getElementsByTagName(tags[j]);
            if (oNodeList) {
               for (var i = 0; i < oNodeList.length; i++) {
                  oNodeList.item(i).style.fontSize = intCurrentFontSize.toString() + 'pt';
                  scanChildNodes(oNodeList.item(i));
               }
            }
         }
      }
   }
}
