function Folder(ID,parentID,Order,Level,SubFolders,EditNav,WebNav,IsUrl,IsSelected,Title,Link,Target,Html,Description,ImageReferens,LinkImageReferens){
	this.name = "folder"+ID	// Id	
	this.id = ID
	this.parentid = parentID
	this.parent =  (ID>0)? eval("folder"+parentID):null;			
	this.order = Order
	this.level = Level
	this.subfolders = SubFolders
	this.editnav = (EditNav==0||EditNav==false)? false:true
	this.webnav = (WebNav==0||WebNav==false)? false:true	
	this.isurl = (IsUrl == 0||IsUrl==false)? false:true
	this.selected = (IsSelected==0||IsSelected==false)? false:true
	this.title = Title
	this.link = Link
	this.target = Target
	this.description = Description
	this.html = Html
	this.imgRef = ImageReferens
	this.linkImgRef = LinkImageReferens		
	this.subfoldercount = 0
	this.subfolderArray = new Array();
	this.selectedfoldersArray = new Array();
	
	this.obj = this.name + "FolderObject"
	eval(this.obj + "=this")
	this.addToParent = FolderAddToParentFolder		
	this.IsParent = FolderIsParent
	this.IsChildren = FolderIsChildren
	this.getParentsArray = FolderParentsArray
	this.getChildrensArray = FolderChildrensArray
	this.getSubFoldersTree = FolderSubFoldersTree
	this.setSelectedFolders = FolderSelectedFolders
	
	this.addToParent();
	this.setSelectedFolders();
	
	//Array global con todos los folder ordenados!!
	
	foldersObjArray[foldersObjArrayCount] = this
	foldersObjArrayCount++
	
	this.subFoldersHTML = ""
	this.getSubFoldersHTML = FolderSubFoldersHTML	
	
	//this.build = FoldersBuild
	//this.activate = FoldersActivate
	//this.setBgColor = FolderSetBgColor	
	this.loadLocation = FolderLoadLocation;
	this.showHtmlDiv = FolderShowHtmlDiv;
	this.hideHtmlDiv = FolderHideHtmlDiv;
	
}

function FolderAddToParentFolder(){
	if(this.parentid>-1 && this.webnav){
		parentFolder = eval('folder'+this.parentid)
		parentFolder.subfolderArray[parentFolder.subfoldercount] = this;
		parentFolder.subfoldercount = parentFolder.subfolderArray.length;
	}
}

function FolderSelectedFolders(){
	if(this.selected==1){
		this.selectedfoldersArray = this.getParentsArray();
		this.selectedfoldersArray[this.selectedfoldersArray.length] = this;
		for(var i=0; i<this.selectedfoldersArray.length;i++){
			this.selectedfoldersArray[i].selected = true;
		}
	}
}

function FolderIsParent(oFolder){
	var vIsTrue = 0
	for (var i = oFolder.level; i > 0; i--){
		if(this.id == oFolder.parentid) {
			vIsTrue = 1;
			break
		} 
		else {
			oFolder = eval('folder'+oFolder.parentid);
		}
	}
	return (vIsTrue == 1)? true:false
}

function FolderIsChildren(oFolder){
	return oFolder.IsParent(this)
}

function FolderParentsArray(){
	var oParentsArray = new Array();
	oFolder = this
	for (var i = this.level; i > 0; i--){
		oFolder	= eval('folder' + oFolder.parentid);
		oParentsArray[i-1] = oFolder;
	} 	
	return oParentsArray;
}

function FolderChildrensArray(){

}

function FolderLoadLocation(){
	if(this.link!=""){
		var sHostPath = (this.link.slice(0,7)=="http://"||this.link.slice(0,4)=="www."||this.link.slice(0,7)=="mailto:"||this.link.slice(0,11)=="javascript:")? "":hostPath; 
		if(this.target!=""){
			switch(this.target){
				case "_blank":
					window.open(sHostPath+this.link)
				break	
				case "_top":
					top.document.location.href =  sHostPath+this.link;
				break	
				case  "_self":
					self.document.location.href =  sHostPath+this.link;
				break	
				case "_parent":
					parent.document.location.href =  sHostPath+this.link;
				break	
				default:
					document.location.href =  sHostPath+this.link;
				break																	
			}
		}
		else{
			switch(this.link.slice(0,11)){
				case "javascript:":
					eval(this.link.slice(11,this.link.length))
				break				
				default:
					document.location.href =  sHostPath+this.link;
				break
			}
		}
	}
}

function FoldersBuild(){

}	

function FolderSubFoldersHTML(){
	var tableHeight = 20;
	var tableWidth = 20;
	var tdHeight = 24	
	var sClass = "";
	var sBgImg = "";	
	var sLeftBg = "";
	var sMiddleLeftBg = "";
	var sMiddleRightBg = "";
	var sRightBg = "";	
	var sTarget = "";
	this.subFoldersHTML = "";
	
	if(this.level==0){
		sStartTable = '<table cellpadding="0" cellspacing="0" border="0"><tr>';
		for(var i=0; i< this.subfolderArray.length; i++) {
			if(this.subfolderArray[i].selected==1||this.subfolderArray[i].IsParent(eval("folder"+currentFolderID))){
				//this.subFoldersHTML = this.subFoldersHTML + '<td><a title="'+this.subfolderArray[i].description+'" href="'+hostPath+this.subfolderArray[i].link+'"><img src="'+this.subfolderArray[i].linkImgRef+'" border="0" hspace="2" vspace="1" /></a></td>';
			}
			else{
				this.subFoldersHTML = this.subFoldersHTML + '<td><a title="'+this.subfolderArray[i].title+'" href="'+hostPath+this.subfolderArray[i].link+'"><img src="'+this.subfolderArray[i].linkImgRef+'" border="0" hspace="2" vspace="5" /></a></td>';
			}
		}
		sEndTable = "</tr></table>";
		this.subFoldersHTML = sStartTable + this.subFoldersHTML + sEndTable;
		
	}
	else{
		if(this.level==1){
			sStartTable = '<table cellpadding="0" cellspacing="0" border="0" height="'+tableHeight+'" align="left" width="210">';
			for(var i=0; i< this.subfolderArray.length; i++) {		
				sClass = (this.subfolderArray[i].selected==1||this.subfolderArray[i].IsParent(eval("folder"+currentFolderID)))? 'menuSelected':'menu'; 
				sTDClass = (this.subfolderArray[i].selected==1||this.subfolderArray[i].IsParent(eval("folder"+currentFolderID)))? 'TDMenuSelected':'TDMenu'; 
				sTdRight = (i==0)? '':'';
				sTdMiddle = '</tr><tr><td height="1" class="lineBGColor" colspan="2"></td>';
				sTdLeft = (this.subfolderArray[i].selected==1||this.subfolderArray[i].IsParent(eval("folder"+currentFolderID)))? '<td width="24" height="24" class="TDPil" align="right" valign="middle"><img src="media/site/menupil.gif" width="9" height="7"></td>':'<td width="24" height="24" class="TDPil" align="center" valign="middle"><img src="media/site/menupil.gif" width="9" height="7"></td>';
				sLinkImgRef = (this.subfolderArray[i].linkImgRef!=0)? '<img src="'+this.subfolderArray[i].linkImgRef+'" border="0" align="absmiddle" style="margin: 6px 4px 0px 0px;">':''; 
				if(!is.ns4){
					this.subFoldersHTML = this.subFoldersHTML + '<tr>'+ sTdLeft + '<td id="'+this.subfolderArray[i].name+'" align="left" height="'+tdHeight+'" style="" width="186" class="'+sTDClass+'" title="' + this.subfolderArray[i].description + '" onmouseover="fnToggle(this)" onmouseout="fnToggle(this)" onclick="'+this.subfolderArray[i].name+'.loadLocation()">'+sLinkImgRef+'<a href="javascript:'+this.subfolderArray[i].name+'.loadLocation()" class="'+sClass+'">' + this.subfolderArray[i].title + '</a></td>'+sTdRight+sTdMiddle+'</tr>';
				}
				else{
					this.subFoldersHTML = this.subFoldersHTML + '<tr>'+ sTdLeft + '<td align="left" height="'+tdHeight+'" width="186" class="'+sTDClass+'">'+sLinkImgRef+'<a href="javascript:'+this.subfolderArray[i].name+'.loadLocation()" class="'+sClass+'">' + this.subfolderArray[i].title + '</a></td></td>'+sTdMiddle+sTdRight+'</tr>';
				}
				if(this.subfolderArray[i].subfolders>0&&(this.subfolderArray[i].selected==1||this.subfolderArray[i].IsParent(eval("folder"+currentFolderID)))){
					this.subFoldersHTML = this.subFoldersHTML + '<tr><td colspan="2">';
					this.subFoldersHTML = this.subFoldersHTML + this.subfolderArray[i].getSubFoldersHTML();
					this.subFoldersHTML = this.subFoldersHTML + '</td></tr>'
				}
			}
			sEndTable = "</table>";
			this.subFoldersHTML = sStartTable + this.subFoldersHTML + sEndTable;
			//alert(this.subFoldersHTML)	
		}			
		else{
			if(this.level==2){
				if(this.subfolders>0){
					
					sStartTable = '<table cellpadding="0" cellspacing="0" border="0">';
					for(var i=0; i< this.subfolderArray.length; i++) {
						
						sTdMiddle = '</tr><tr><td height="1" class="lineBGColor" colspan="2"></td>';
						sTdLeft = (this.subfolderArray[i].selected==1||this.subfolderArray[i].IsParent(eval("folder"+currentFolderID)))? '<td width="40" height="16" class="TDSubPil" align="right" valign="middle"><img src="media/site/submenupil.gif" width="8" height="5"></td>':'<td width="40" height="16" class="TDSubPil" align="center" valign="middle"><img src="media/site/submenupil.gif" width="8" height="5"></td>';
						sClass = (this.subfolderArray[i].selected==1||this.subfolderArray[i].IsParent(eval("folder"+currentFolderID)))? 'submenuSelected':'submenu'; 
						sTDClass = (this.subfolderArray[i].selected==1||this.subfolderArray[i].IsParent(eval("folder"+currentFolderID)))? 'TDSubMenuSelected':'TDSubMenu'; 
						sLinkImgRef = (this.subfolderArray[i].linkImgRef!=0)? '<img src="'+this.subfolderArray[i].linkImgRef+'" border="0" align="absmiddle" style="margin: 6px 4px 0px 0px;">':''; 
						if(!is.ns4){
							this.subFoldersHTML = this.subFoldersHTML + '<tr>'+ sTdLeft + '<td id="'+this.subfolderArray[i].name+'" align="left" height="16" style="" width="170" class="'+sTDClass+'" title="' + this.subfolderArray[i].description + '" onmouseover="fnToggle(this)" onmouseout="fnToggle(this)" onclick="'+this.subfolderArray[i].name+'.loadLocation()">'+sLinkImgRef+'<a href="javascript:'+this.subfolderArray[i].name+'.loadLocation()" class="'+sClass+'">' + this.subfolderArray[i].title + '</a></td>'+sTdMiddle+'</tr>';
						}
						else{
							this.subFoldersHTML = this.subFoldersHTML + '<tr>'+ sTdLeft + '<td align="left" height="16" width="170" class="'+sTDClass+'">'+sLinkImgRef+'<a href="javascript:'+this.subfolderArray[i].name+'.loadLocation()" class="'+sClass+'">' + this.subfolderArray[i].title + '</a></td></td>'+sTdMiddle+sTdRight+'</tr>';
						}
					}
					sEndTable = "</tr></table>";
					this.subFoldersHTML = sStartTable + this.subFoldersHTML + sEndTable;
				}
			}	
		}
	}
	//alert(this.subFoldersHTML)
	return this.subFoldersHTML
}		

function FolderSubFoldersTree(oFolder){

	var tableWidth = 160;
	var tdWidth = 4
	var sClass = "leftMenu";
	var sSubClass = "leftSubMenu";	
	var sTDClass = "menuTD";
	var sTarget = "";
	var sSubTarget = "";	
	oFolder = (oFolder==null)? this:oFolder
	oFolder.subFoldersHTML = "";	
	if(oFolder.subfolders>1){
		var sSeparator = '<tr><td colspan="2" height="3"><img src="images/pixel.gif" width="10" height="3" alt=""border="0"></td></tr>';	
		var sStartTable = '<table cellpadding="0" cellspacing="0" border="1" width="'+tableWidth+'">';
			for(var i=0; i< oFolder.subfolderArray.length-1; i++) {
				if(oFolder.subfolderArray[i]!=null){
					sClass = (oFolder.subfolderArray[i].selected)? "leftMenuSelected":"leftMenu";
					sTDClass = (oFolder.subfolderArray[i].selected)? "menuTDSelected":"menuTD";
					sTarget = (oFolder.subfolderArray[i].target!="")? ' target="'+oFolder.subfolderArray[i].target+'"':'';
					oFolder.subFoldersHTML = oFolder.subFoldersHTML + '<tr><td id="'+oFolder.subfolderArray[i].name+'" height="26" class="'+sTDClass+'" colspan="2" background="../images/menuBG.jpg" valign="middle"><p class="pleftMenu"><a href="'+hostPath+oFolder.subfolderArray[i].link+'" class="'+sClass+'" '+sTarget+'>' + oFolder.subfolderArray[i].title + '</a></p></td></tr>\n';
				}
				if(oFolder.subfolderArray[i].subfolders>0&&oFolder.subfolderArray[i].selected) {
					for(var j=0; j< oFolder.subfolderArray[i].subfolderArray.length; j++) {
						if(oFolder.subfolderArray[i].subfolderArray[j]!=null){
							sSubTarget = (oFolder.subfolderArray[i].subfolderArray[j].target!="")? ' target="'+oFolder.subfolderArray[i].subfolderArray[j].target+'"':'';
							sSubClass = (oFolder.subfolderArray[i].subfolderArray[j].selected)? "leftSubMenuSelected":"leftSubMenu";
							oFolder.subFoldersHTML = sSeparator + oFolder.subFoldersHTML + '<tr><td width="'+tdWidth+'" height="18" valign="middle" align="right"><p class="pleftsubmenu"><img src="images/small_flor.jpg" height="18" width="17" alt="" border="0" hspace="3"></p></td><td id="'+oFolder.subfolderArray[i].subfolderArray[j].name+'" class="'+sSubClass+'" height="14" width="120"><a href="'+hostPath+oFolder.subfolderArray[i].subfolderArray[j].link+'" class="'+sSubClass+'" '+sTarget+'>' + oFolder.subfolderArray[i].subfolderArray[j].title + '</a></td></tr>';
						}
					}
				}
				oFolder.subFoldersHTML = oFolder.subFoldersHTML + sSeparator;
			}
			var sEndTable = '</table>';
			oFolder.subFoldersHTML = sStartTable + oFolder.subFoldersHTML + sEndTable;
	}

	return oFolder.subFoldersHTML

}

function FolderFoldersTree(oFolder, vStartLevel){

	var tableWidth = 160;
	var tdWidth = 4
	var sClass = "leftMenu";
	var sSubClass = "leftSubMenu";	
	var sTDClass = "menuTD";
	var sTarget = "";
	var sSubTarget = "";	
	vStartLevel = (vStartLevel==null)? 0:vStartLevel
	oFolder = (oFolder==null)? this:oFolder
	oFolder.subFoldersHTML = "";
	for(var i=vStartLevel; i<oFolder.selectedfoldersArray.length;i++){
		document.write(oFolder.selectedfoldersArray[i].title + "<br>")
	}
	return oFolder.subFoldersHTML
}

function FolderShowHtmlDiv(){
	if(this.html!=""){
		sTopPos = (this.level==2)? 10:event.y + 18;
		sLeftPos = event.x + 10;
		oTitle = document.getElementById("titleHtmlDiv");
		//alert(oTitle)
		oTitle.style.width = (this.level==2)? 700:400;
		oTitle.style.left = sLeftPos;
		oTitle.style.top = sTopPos;
		//alert(titleHtmlDiv.style.left)
		oTitle.innerHTML = this.html;
		oTitle.visibility = "visible";
	}
}

function FolderHideHtmlDiv(){
	oTitle = document.getElementById("titleHtmlDiv");
	oTitle.style.left = -800;
	oTitle.innerHTML = "";
}




	var foldersObjArray = new Array();
	var foldersObjArrayCount = 0;
	
	var currentTopFolderID = "";
	var emptyImg = hostPath + "/images/pixel.gif"
	var sHTML = "";	
	
	// BrowserCheck Object
	function BrowserCheck() {
		var u = navigator.userAgent.toLowerCase();
		this.u = u
		var b = navigator.appName
		if (b=="Netscape") this.b = "ns"
		else if (b=="Microsoft Internet Explorer") this.b = "ie"
		else this.b = b
		if(this.b=="ie" && this.u.indexOf('opera')!=-1) 
		this.b = "op"
		this.version = navigator.appVersion
		this.v = parseInt(this.version)
		this.op = (this.b=="op")
		//alert(this.op)
		this.op4 = (this.b=="op" && this.v==4)
		this.ns = (this.b=="ns" && this.v>=4)
		this.ns4 = (this.b=="ns" && this.v==4)
		this.ns5 = (this.b=="ns" && this.v==5)
		this.ie = (this.b=="ie" && this.v>=4)
		this.ie4 = (this.version.indexOf('MSIE 4')>0)
		this.ie5 = (this.version.indexOf('MSIE 5')>0)
		this.ie6 = (this.version.indexOf('MSIE 6')>0)			
		this.min = (this.ns||this.ie)
	}
	is = new BrowserCheck();
	
	//Netscape
	function setBgColorNS(oLayer,id,vColor){
		if(!eval("folder"+id).selected) oLayer.bgColor = vColor;
	}
	