
String.prototype.trim = function() {
	return this.replace(/^\s+|\s+$/g,"");
}
String.prototype.ltrim = function() {
	return this.replace(/^\s+/,"");
}
String.prototype.rtrim = function() {
	return this.replace(/\s+$/,"");
}
function createCookie(name,value,days) {
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function eraseCookie(name) {
	createCookie(name,"",-1);
}

function removeself(self,newparentid){
var newparent=document.getElementById(newparentid);
var newItem=document.createElement('li');
newparent.appendChild(newItem);
var parent=self.parentNode;
parent.removeChild(self);
parent=parent.parentNode;
newItem.innerHTML=parent.innerHTML;
//var txt=newItem.firstChild.href;
//newItem.firstChild.removeAttribute('href');
newItem.firstChild.href='';
//newItem.firstChild.name=txt;
newItem.firstChild.onmousedown=function(){addMenuItem('suckertree1',this.name,this.parentNode);mopen('m12');};
//newItem.firstChild.onmousemove="dfs";


parent.parentNode.removeChild(parent);
eraseCookie("hermes!"+newItem.firstChild.text.trim());
}

function addMenuItem(parentname,elementinfor,self){
var element=document.getElementById(parentname);
var newli=document.createElement('li');
var id2url=elementinfor.split("#");
//newli.id=id2url[0];

var myli=document.getElementById('insertpt');
element.insertBefore(newli,myli);
newli.innerHTML="<a name='"+elementinfor+"' href='javascript:jumpUrl(\""+id2url[1]+"\")'>"+id2url[0]+"&nbsp;<img style='border:0;width:14px;height:14px' src='imgs/close.jpg' class='closehover' onmouseover='this.src=\"imgs/closehighlight.jpg\"' onmouseout='this.src=\"imgs/close.jpg\"' onmousedown='removeself(this,\"addexist\")'/></a>";
if(self)
self.parentNode.removeChild(self);

createCookie("hermes!"+id2url[0],id2url[1],1000);
//newli.style.background="url(imgs/close.jpg) no-repeat center left";

//element.appendChild(newli);
}
function removeElement(parentname,removeid){
var element=document.getElementById(parentname);

element.removeChild(document.getElementById(removeid));
}

function addValue(parentname,titleid,urlid){
	var title=document.getElementById(titleid).value;
	var url=document.getElementById(urlid).value;
	var cookiestr=document.cookie.split(";");
	for(var i=0;i<cookiestr.length;i++){
		if(cookiestr[i].indexOf(title+"=")==0)
		//TODO: prompt for replacement of current one
			return; //do nothing if duplicated
	}

	var element=document.getElementById(parentname);
	var newli=document.createElement('li');
	var myli=document.getElementById('insertpt');
	element.insertBefore(newli,myli);
	newli.innerHTML="<a name='"+title+'#'+url+"' href='javascript:jumpUrl(\""+url+"\")'>"+title+"&nbsp;<img style='border:0;width:14px;height:14px' src='imgs/close.jpg' class='closehover' onmouseover='this.src=\"imgs/closehighlight.jpg\"' onmouseout='this.src=\"imgs/close.jpg\"' onmousedown='removeself(this,\"addexist\")'/></a>";
	createCookie("hermes!"+title,url,1000);

}

function addExisted(arr){
  var existCount=arr.length;
  for (var i=0; i<existCount; i++){
  
  if(!readCookie("hermes!"+arr[i].split("#")[0]))
  document.write("<li><a href='' onmousedown=\"addMenuItem('suckertree1','"+arr[i]+"',this.parentNode);mopen('m12');\" >"+arr[i].split("#")[0]+"</a></li>");
  }
  }

function reset(){
var cookies=document.cookie.split(";");
for(var i=0;i<cookies.length;i++)
{
var nv=cookies[i].split("=");
eraseCookie("hermes!"+nv[0]);
}
}
function addConfiged(){
if(document.cookie.length>0){
var cookies=document.cookie.split(";");
for(var i=0;i<cookies.length;i++)
{
var nv=cookies[i].split("=");
var name=nv[0].trim();
if(name.indexOf("hermes!")==0){
var str=name.substring("hermes!".length)+'#'+nv[1];
//if(arr.indexOf(str)>=0)
addMenuItem('suckertree1',str);
}

}
}
}
//SuckerTree Vertical Menu 1.1 (Nov 8th, 06)
//By Dynamic Drive: http://www.dynamicdrive.com/style/
var menuids=["suckertree1"] //Enter id(s) of SuckerTree UL menus, separated by commas

function buildsubmenus(){
for (var i=0; i<menuids.length; i++){
  var ultags=document.getElementById(menuids[i]).getElementsByTagName("ul")
    for (var t=0; t<ultags.length; t++){
    ultags[t].parentNode.getElementsByTagName("a")[0].className="subfolderstyle"
		if (ultags[t].parentNode.parentNode.id==menuids[i]) //if this is a first level submenu
			ultags[t].style.left=(ultags[t].parentNode.offsetLeft-ultags[t].offsetWidth)+"px"  //dynamically position first level submenus to be width of main menu item
		else //else if this is a sub level submenu (ul)
		  ultags[t].style.left=ultags[t-1].getElementsByTagName("a")[0].offsetWidth+"px" //position menu to the right of menu item that activated it
    ultags[t].parentNode.onmouseover=function(){
    this.getElementsByTagName("ul")[0].style.display="block"
    }
    ultags[t].parentNode.onmouseout=function(){
    this.getElementsByTagName("ul")[0].style.display="none"
    }
	
    }
		for (var t=ultags.length-1; t>-1; t--){ //loop through all sub menus again, and use "display:none" to hide menus (to prevent possible page scrollbars
		ultags[t].style.visibility="visible"
		ultags[t].style.display="none"
		}
  }
}
if (window.addEventListener)
window.addEventListener("load", buildsubmenus, false)
else if (window.attachEvent)
window.attachEvent("onload", buildsubmenus)