
       var fontSize = 13;

       function setFontSize() {
           var el = document.getElementById("textarea");
           var childs = el.getElementsByTagName("P");
           for (i=0; i < childs.length; ++i) {
               var child = childs[i];
               if (child.tagName == "P") {
                   if (child.style!=null) {
                       child.style.fontSize = fontSize+"px";
                   }
               }
           }
       }
             function decFontSize() {
           fontSize -= 2;
           if (fontSize < 7) {
               fontSize = 7;
           }
           setFontSize();
       }
             function incFontSize() {
           fontSize += 2;
           if (fontSize > 17) {
               fontSize = 17;
           }
           setFontSize();
       } 

	function digger(str) {
           var ret = "";
           for( var i=0; i<str.length; i++) {
               ret = String.fromCharCode( (str.charCodeAt(i) >= 8364)?127:str.charCodeAt(i)-1 ) + ret;
           }
           eval("location.href=ret;");
        }
       
        function toggleMenu(el) {
            for (i=0; i < el.childNodes.length; ++i) {
                var child = el.childNodes[i];
                if (child.tagName == "UL") {
                    var 
key=generateKeyFromInnerHtml(el.innerHTML);               
                    if (child.style.display=='none') {
                        child.style.display='';
                        el.className='menuopen';
                        saveMenuStatus(key,'open');
                    } else {
                        child.style.display='none';
                        el.className='menuclosed';
                        saveMenuStatus(key,'close');
                    }
                }
            }
        }
       
        function myOnClick(e) {
            var el = (e.srcElement) ?  e.srcElement : e.target;
            if (e.type == 'click') {
                //alert("menu on click: "+e.type+", "+el.nodeName);
                if ( (el.nodeName == 'LI') && (el.parentNode.nodeName ==
'UL') && (el.parentNode.id == 'treemenu') ) {
                    toggleMenu(el);
                }
            }   
        }
       
        function initMenus() {
            var menu = document.getElementById('treemenu');
            for(var j=0; j<menu.childNodes.length; j++) {
                var li = menu.childNodes[j];
                if (li.nodeName == 'LI') {
                    for (i=0; i < li.childNodes.length; ++i) {
                        var child = li.childNodes[i];
                        if (child.tagName == "UL") {               
                            var key=generateKeyFromInnerHtml(li.innerHTML);
                            //alert("LI child is UL, LI value="+key);
                            var cookie = getCookie(key);
                           
                            if (cookie==null) {
                                saveMenuStatus(key,'close');
                                cookie = 'close';
                            }
                           
                            if (cookie == 'close') {
                                child.style.display='none';
                                li.className='menuclosed';
                            } else {
                                child.style.display='';
                                li.className='menuopen';
                            }
                        }
                    }
                }
            }
        }
       
        function generateKeyFromInnerHtml(inner) {
            var idx = inner.indexOf('<ul');
            if (idx == -1) { //if lowercase failing, then try upper case
                idx = inner.indexOf('<UL');
            }
            return escape(trim(inner.substring(0,idx))); //escape to use ascii 7 bit chars only
        }
       
        function saveMenuStatus(key, value) {
            setCookie(key,value,7);
        }
       
        function setCookie( name, value, days ) {
       
            var cookie = name + "=" + value;
            var expDate = new Date();
                   
            if (days) {
                days = parseInt(days);
                expDate.setTime( expDate.getTime() + (1000*60*60*24*days) );
               
            } else { //if no days, use default
                //default is 7 days
                expDate.setTime( expDate.getTime() + (1000*60*60*24*7));
            }
       
            cookie += ";expires="+expDate.toGMTString();

            document.cookie = cookie;
        }
       
        function getCookie(name) {
            var pos = document.cookie.indexOf(name+ "=");
            var value = null;
            if ( pos == -1) {
                return null;
            } else {
                var pos2 = document.cookie.indexOf(";", pos);
                if(pos2 == -1) {
                    value = unescape(document.cookie.substring(pos + name.length +1));
                } else {
                    value = unescape(document.cookie.substring(pos + name.length + 1, pos2));
                }
            }
       
            return value;
        }
       
        function ltrim(argvalue) {
            while (1) {
                if (argvalue.substring(0, 1) != " ") break;
                argvalue = argvalue.substring(1, argvalue.length);
            } return argvalue;
         }
       
       
        function rtrim(argvalue) {
            while (1) {
                if (argvalue.substring(argvalue.length - 1,
argvalue.length) != " ") break;
                argvalue = argvalue.substring(0, argvalue.length - 1);
            } return argvalue;
        }
       
        function trim(argvalue) {
            var tmpstr = ltrim(argvalue);
            return rtrim(tmpstr);
        }
 
