	
	var editMode = "Preview";
	var curPg = null; 
	var startPg = null;
	var curLinkWin = null;
	var curLinkObj = null;
	var formObj = null;
	var extLinkObj = null;
	
	var allAttributter = new Array();
	
	if(projectName != "") {
		document.title = "webDirector - " + projectName;
	}

	function CancelEvent(e) {
		if(!e) e = event;
		e.returnValue = false;
	}
	
	// Finds out if a is an ancestor of b
	function containsObj(a, b)
	{
		// we climb through b parents
		// till we find a
	 	while(b && (a!=b) && (b!=null))
			b = b.parentNode;
		return a == b;
	}
	
	
	function GetAppVersion() {
		var msiePos = 0;
		var appVer = "";
		var appVerNumber = 0;

		if(navigator != null) {
			msiePos = navigator.appVersion.indexOf("MSIE");
			if(msiePos != -1) {
				appVer = navigator.appVersion.substring(msiePos + 5, navigator.appVersion.indexOf(";", msiePos));
				if(Number(appVer) != "NaN") {
					appVerNumber = Number(appVer);
				}
			}
		}
		
		return appVerNumber;
	}
	
	function GetContainer(forObject) {
		if(forObject != null) {
			while (forObject.objectType == null && forObject != document.getElementById("WorkArea") && forObject != document.body) {
				forObject = forObject.parentNode;
			}
		}
		return forObject;
	}
	
	function GetIFrame(curObj) {
		var retValue = null;
		
		for(var i = 0; i < curObj.childNodes.length; i++) {
			if(curObj.childNodes[i].tagName == "IFRAME") {
				retValue = curObj.childNodes[i];
				break;
			}
		}
		
		return retValue;
	}
	
	function GetPageHeight(curPage) {
		//var maxSize = curPage.style.posHeight;
		var maxSize = curPage.offsetHeight;

		for(var i = 0; i < curPage.childNodes.length; i++) {
			//if((curPage.children[i].style.posTop + curPage.children[i].style.posHeight) > maxSize) {
			if((curPage.childNodes[i].offsetTop + curPage.childNodes[i].offsetHeight) > maxSize) {
				//maxSize = curPage.children[i].style.posTop + curPage.children[i].style.posHeight;
				maxSize = curPage.childNodes[i].offsetTop + curPage.childNodes[i].offsetHeight;
			}
		}
		//if((curPage.style.posWidth - curPage.clientWidth) > 17 && (curPage.style.posHeight - curPage.clientHeight) > 17) {
		if((curPage.offsetWidth - curPage.clientWidth) > 17 && (curPage.offsetHeight - curPage.clientHeight) > 17) {
		}
		else {
			//maxSize = maxSize - (curPage.style.posHeight - curPage.clientHeight);
			maxSize = maxSize - (curPage.offsetHeight - curPage.clientHeight);
		}
		
		return maxSize;
	}

	function GetPageWidt(curPage) {
		//var maxSize = curPage.style.posWidth;
		var maxSize = curPage.offsetWidth;

		for(var i = 0; i < curPage.childNodes.length; i++) {
			//if((curPage.children[i].style.posLeft + curPage.children[i].style.posWidth) > maxSize) {
			if((curPage.childNodes[i].offsetLeft + curPage.childNodes[i].offsetWidth) > maxSize) {
				maxSize = curPage.childNodes[i].style.left + curPage.childNodes[i].offsetWidth;
				//maxSize = curPage.children[i].style.posLeft + curPage.children[i].style.posWidth;
			}
		}
		//if((curPage.style.posWidth - curPage.clientWidth) > 17 && (curPage.style.posHeight - curPage.clientHeight) > 17) {
		if((curPage.offsetWidth - curPage.clientWidth) > 17 && (curPage.offsetHeight - curPage.clientHeight) > 17) {
		}
		else {
			//maxSize = maxSize - (curPage.style.posWidth - curPage.clientWidth);
			maxSize = maxSize - (curPage.offsetWidth - curPage.clientWidth);
		}
		
		return maxSize;
	}

	function GetNewID(objName) {
		var idnr = 0;
		
		while(document.getElementById(objName + idnr) != null) {
			idnr++;
		}
		return (objName + idnr);
	}

	function InitializeArray(PageObj, ArrayStr) {
		var sPos = 0;
		var ePos = 0;
		var retArray = new Array();
		
		if(ArrayStr != "") {
			ePos = ArrayStr.indexOf(";", sPos);
			while (ePos != -1) {
				retArray[retArray.length] = document.getElementById(ArrayStr.substring(sPos, ePos)); //PageObj.all(ArrayStr.substring(sPos, ePos))
				sPos = ePos + 1;
				ePos = ArrayStr.indexOf(";", sPos);
			}
		}
		
		return retArray;
	}		
	
	function SetElementAttributes(toObj, fromObj) {
		for(var i=0; i < fromObj.attributes.length; i++) {
			var objAtr = fromObj.attributes[i];
			switch (objAtr.nodeName)
			{
				case "alignarea":
					toObj.alignArea = objAtr.nodeValue;
					break;
				case "autosize":
					toObj.autoSize = objAtr.nodeValue;
					break;
				case "minwidth":
					toObj.minWidth = objAtr.nodeValue;
					break;
				case "minheight":
					toObj.minHeight = objAtr.nodeValue;
					break;
				case "objecttype":
					toObj.objectType = objAtr.nodeValue;
					break;
				case "bordercolor":
					toObj.borderColor = objAtr.nodeValue;
					break;
				case "locked":
					toObj.locked = objAtr.nodeValue;
					break;
				case "showpage":
					toObj.showPage = objAtr.nodeValue;
					break;
				case "showlink":
					toObj.showLink = objAtr.nodeValue;
					break;
				case "linktype":
					toObj.linkType = objAtr.nodeValue;
					break;
				case "linkref":
					toObj.linkRef = objAtr.nodeValue;
					break;
				case "targettype":
					toObj.targetType = objAtr.nodeValue;
					break;
				case "targetpage":
					toObj.targetPage = objAtr.nodeValue;
					break;
				case "submenustr":
					toObj.subMenuStr = objAtr.nodeValue;
					break;
				case "expandtype":
					toObj.expandType = objAtr.nodeValue;
					break;
				case "expandxoff":
					toObj.expandXOff = objAtr.nodeValue;
					break;
				case "expandyoff":
					toObj.expandYOff = objAtr.nodeValue;
					break;
				case "expanded":
					toObj.expanded = objAtr.nodeValue;
					break;
				case "normtextcolor":
					toObj.normTextColor = objAtr.nodeValue;
					break;
				case "normbackcolor":
					toObj.normBackColor = objAtr.nodeValue;
					break;
				case "normbackrepeat":
					toObj.normBackRepeat = objAtr.nodeValue;
					break;
				case "normbordercolor":
					toObj.normBorderColor = objAtr.nodeValue;
					break;
				case "normpicture":
					toObj.normPicture = objAtr.nodeValue;
					break;
				case "focustextcolor":
					toObj.focusTextColor = objAtr.nodeValue;
					break;
				case "focusbackcolor":
					toObj.focusBackColor = objAtr.nodeValue;
					break;
				case "focusbackrepeat":
					toObj.focusBackRepeat = objAtr.nodeValue;
					break;
				case "focusbordercolor":
					toObj.focusBorderColor = objAtr.nodeValue;
					break;
				case "focuspicture":
					toObj.focusPicture = objAtr.nodeValue;
					break;
				case "parentmenustr":
					toObj.parentMenuStr = objAtr.nodeValue;
					break;
				case "mainmenustr":
					toObj.mainMenuStr = objAtr.nodeValue;
					break;
			}
			//eval("toObj." + objAtr.nodeName + " = '" + objAtr.nodeValue + "'");
		}
	}
	
	function RemoveTag(fromStr, tag) {
		tagSIdx = fromStr.indexOf(tag);
		tagEIdx = fromStr.indexOf(">", tagSIdx);
		
		while(tagSIdx != -1) {
			fromStr = fromStr.substring(0, tagSIdx) + fromStr.substring(tagEIdx + 1);
			tagSIdx = fromStr.indexOf(tag);
			tagEIdx = fromStr.indexOf(">", tagSIdx);
		}
		
		return fromStr;
	}
	
	function StripHTML(curObj) {
		var tagSIdx = 0;
		var tagEIdx = 0;
		var strHTML = curObj.innerHTML;
		
		strHTML = RemoveTag(strHTML, "<font");
		strHTML = RemoveTag(strHTML, "<p");
		strHTML = RemoveTag(strHTML, "</font");
		strHTML = RemoveTag(strHTML, "</p");

		strHTML = RemoveTag(strHTML, "<FONT");
		strHTML = RemoveTag(strHTML, "<P");
		strHTML = RemoveTag(strHTML, "</FONT");
		strHTML = RemoveTag(strHTML, "</P");
		
		return strHTML;
	}

	function InitializeData(mainPage) {	
		var webDirObjects = mainPage.body.getElementsByTagName("DIV");
		var webDirImages = mainPage.images;
		var allObjs = new Array();
		
		for(var i=0; i < webDirObjects.length; i++) {
			allObjs[allObjs.length] = webDirObjects[i];
			if(document.all == null) {
				SetElementAttributes(allObjs[allObjs.length-1], webDirObjects[i]);
			}
		}			
		
		for(var objnr = 0; objnr < allObjs.length; objnr++) {
			//alert(allObjs[objnr].objectType);
			if(allObjs[objnr].objectType != null) {

				if(!document.all && allObjs[objnr].style.borderWidth != "0")
				{	
					var intObjBorderW = parseInt(allObjs[objnr].style.borderWidth);
					
					allObjs[objnr].style.width = parseInt(allObjs[objnr].style.width) - (2 * intObjBorderW);
					allObjs[objnr].style.height = parseInt(allObjs[objnr].style.height) - (2 * intObjBorderW);
				}
				
				if(!document.all)
				{
					if(allObjs[objnr].style.fontSize == "x-small") allObjs[objnr].style.fontSize = "12px";
					if(allObjs[objnr].style.fontSize == "xx-small") allObjs[objnr].style.fontSize = "10px";
				}
				
				if(allObjs[objnr].objectType == menuObject || allObjs[objnr].objectType == submenuObject) {
					//** Set submenu
					allObjs[objnr].style.cursor = "pointer";
					allObjs[objnr].subMenu = InitializeArray(mainPage, allObjs[objnr].subMenuStr);
					allObjs[objnr].expanded = false;
					
					//allObjs[objnr].innerHTML = StripHTML(allObjs[objnr]);
					
					/*
					var strAtr = "";
					for(var aIdx = 0; aIdx < allObjs[objnr].attributes.length; aIdx++)
					{
						strAtr += allObjs[objnr].attributes[aIdx].name + " = " + allObjs[objnr].attributes[aIdx].value + "\n";
					}
					alert(strAtr);
					*/
					
					var oDivInnerText = document.createElement("DIV");
					oDivInnerText.innerHTML = allObjs[objnr].innerHTML;
					oDivInnerText.style.marginTop = allObjs[objnr].style.paddingTop;
					oDivInnerText.style.marginLeft = allObjs[objnr].style.paddingLeft;
					oDivInnerText.style.fontFamily = allObjs[objnr].style.fontFamily;
					oDivInnerText.style.fontSize = allObjs[objnr].style.fontSize;
					allObjs[objnr].innerHTML = "";
					allObjs[objnr].appendChild(oDivInnerText);
					allObjs[objnr].style.paddingTop = 0;
					allObjs[objnr].style.paddingLeft = 0;
					
					imgFileName = StripFileName(allObjs[objnr].normPicture);

					if(imgFileName != "") {
						allObjs[objnr].normPicture = "url(" + dataFolder + "pics/" + imgFileName + ")";
					}
					else {
						allObjs[objnr].normPicture = "";
					}
					
					imgFileName = StripFileName(allObjs[objnr].focusPicture);
					if(imgFileName != "") {
						allObjs[objnr].focusPicture = "url(" + dataFolder + "pics/" + imgFileName + ")";
					}
					else {
						allObjs[objnr].focusPicture = "";
					}

						//** New attributes
							if(allObjs[objnr].borderColor == null) {
								allObjs[objnr].borderColor = "";
							}
							if(allObjs[objnr].showLink == null) {
								allObjs[objnr].showLink = "";
							}
							if(allObjs[objnr].linkType == null) {
								allObjs[objnr].linkType = "";
							}
							if(allObjs[objnr].linkRef == null) {
								allObjs[objnr].linkRef = "";
							}

							/*
							if(allObjs[objnr].linkType == "ProjectLink") {
								alert(allObjs[objnr].showLink)
							}
							*/
							
							/*
							if(allObjs[objnr].showProject == null) {
								allObjs[objnr].showProject = "";
							}
							if(allObjs[objnr].showProjectID == null) {
								allObjs[objnr].showProjectID = "";
							}
							*/
						//******************
					
					//** Set expand options
					allObjs[objnr].expandType = Number(allObjs[objnr].expandType);
					allObjs[objnr].expandXOff = Number(allObjs[objnr].expandXOff);
					allObjs[objnr].expandYOff = Number(allObjs[objnr].expandYOff);
				
					//** Set events
					allObjs[objnr].onmouseover = ExpandMenu;
					allObjs[objnr].onmouseout = CollapseMenu;
					allObjs[objnr].onmousedown = GetPage;
					
					
					if(allObjs[objnr].showLink != null) {
						allObjs[objnr].showLink = allObjs[objnr].showLink.toString();
						/*
						if(allObjs[objnr].showLink != "undefined") {
							allObjs[objnr].onclick = ShowLink;
						}
						else {
							allObjs[objnr].showLink = "";
						}
						*/
					}
					else {
						allObjs[objnr].showLink = "";
					}
					
					//** IFRAME for showing menu over IFRAMES with content
					var newFrame = document.createElement("IFRAME");
					newFrame.isMenuFrame = true;
					newFrame.frameBorder = 0;
					newFrame.scrolling = "no";
					newFrame.style.position = "absolute";
					newFrame.style.visibility = "hidden";
					newFrame.style.width = allObjs[objnr].offsetWidth;
					//newFrame.style.posWidth = allObjs[objnr].style.posWidth;
					newFrame.style.height = allObjs[objnr].offsetHeight;
					//newFrame.style.posHeight = allObjs[objnr].style.posHeight;
					//allObjs[objnr].backFrame = allObjs[objnr].parentElement.appendChild(newFrame);
					allObjs[objnr].backFrame = allObjs[objnr].parentNode.appendChild(newFrame);
				}
				
				
				switch (allObjs[objnr].objectType) {
					case contactForm:
						for(var i = 0; i < allObjs[objnr].childNodes[0].childNodes.length; i++) {
							if(allObjs[objnr].childNodes[0].childNodes[i].type == "button") {
								allObjs[objnr].childNodes[0].childNodes[i].onclick = SendContactInfo;
							}
						}
						//** Set object events
						//allObjs[objnr].attachEvent("oncontextmenu", CancelEvent);						
						break;
					case pageObject:
						if(allObjs[objnr].startPage == "true") {
							allObjs[objnr].startPage = true;
						}
						else {
							allObjs[objnr].startPage = false;
						}
						//alert(allObjs[objnr].style.borderWidth)
						
						//** Set object events
						//allObjs[objnr].attachEvent("oncontextmenu", CancelEvent);
						break;
					case textObject:
						//allObjs[objnr].contentEditable = false;
						//** Set object events
						//allObjs[objnr].attachEvent("oncontextmenu", CancelEvent);
						break;
					case pictureObject:
						//allObjs[objnr].contentEditable = true;
						//** Set object events				
						//allObjs[objnr].attachEvent("oncontextmenu", CancelEvent);
						break;
					case menuObject:
						allObjs[objnr].mainMenu = allObjs[objnr];
						break;
					case submenuObject:
						allObjs[objnr].parentMenu = mainPage.getElementById(allObjs[objnr].parentMenuStr);
						allObjs[objnr].mainMenu = mainPage.getElementById(allObjs[objnr].mainMenuStr);
						allObjs[objnr].style.visibility = "hidden";
						break;
				}
			}
		}
		
		for(var linknr = 0; linknr < mainPage.links.length; linknr++) {
			if(mainPage.links[linknr].targetType != "_page") {
				mainPage.links[linknr].target = mainPage.links[linknr].targetType;
				if(mainPage.links[linknr].linkType == "FileLink") {
					mainPage.links[linknr].href = dataFolder + "docs/" + mainPage.links[linknr].linktoFile;
				}
			}
			else {
				mainPage.links[linknr].onclick = ShowLinkPage;
			}
		}
	}
	
	function InitializePage(mainPage) {
		InitializeNode(mainPage);
	}
	
	function FormatAttributes(forObj)
	{
		var strAtrName = "";
		var bolAtrNoStr = true;
		
		if(forObj.attributes && forObj.attributes.length > 1)
		{
			for(var aIdx = 0; aIdx < forObj.attributes.length; aIdx++)
			{
				strAtrName = "";
				bolAtrNoStr = true;
				
				switch (forObj.attributes[aIdx].name)
				{
					case "objecttype": strAtrName = "objectType"; break;
	
					case "bordercolor": strAtrName = "borderColor"; break;
					case "backgroundimage": strAtrName = "backgroundImage"; break;
					
					/* ContactFormObject */
					case "recipient": strAtrName = "recipient"; break;
					case "recipientcc": strAtrName = "recipientCC"; break;
					case "mailfrom": strAtrName = "mailFrom"; break;
					case "mailsubject": strAtrName = "mailSubject"; break;
					case "sentmessage": strAtrName = "sentMessage"; break;
					case "fieldtype": strAtrName = "fieldType"; break;
					case "title": strAtrName = "title"; break;
					case "maxlength": strAtrName = "maxlength"; break;
					case "type": strAtrName = "type"; break;
					
					/* MenuObject */ /* SubMenuObject*/
					case "showpage": strAtrName = "showPage"; break;
					case "showlink": strAtrName = "showLink"; break;
					case "linktype": strAtrName = "linkType"; break;
					case "linkref": strAtrName = "linkRef"; break;
					case "targettype": strAtrName = "targetType"; break;
					case "targetpage": strAtrName = "targetPage"; break;
					case "expandtype": strAtrName = "expandType"; break;
					case "expandxoff": strAtrName = "expandXOff"; break;
					case "expandyoff": strAtrName = "expandYOff"; break;
					case "expanded": strAtrName = "expanded"; bolAtrNoStr = false; break;
					case "normtextcolor": strAtrName = "normTextColor"; break;
					case "normbackcolor": strAtrName = "normBackColor"; break;
					case "normbackrepeat": strAtrName = "normBackRepeat"; break;
					case "normbordercolor": strAtrName = "normBorderColor"; break;
					case "normpicture": strAtrName = "normPicture"; break;
					case "focustextcolor": strAtrName = "focusTextColor"; break;
					case "focusbackcolor": strAtrName = "focusBackColor"; break;
					case "focusbackrepeat": strAtrName = "focusBackRepeat"; break;
					case "focusbordercolor": strAtrName = "focusBorderColor"; break;
					case "focuspicture": strAtrName = "focusPicture"; break;
					case "submenustr": strAtrName = "subMenuStr"; break;
					case "setpropsforstr": strAtrName = "setPropsForStr"; break;
					case "propertyas": strAtrName = "propertyAs"; break;
					
					/* SubMenuObject*/
					case "mainmenustr": strAtrName = "mainMenuStr"; break;
					case "parentmenustr": strAtrName = "parentMenuStr"; break;
					
					/* PageObject */
					case "startpage": strAtrName = "startPage"; break;
					
					/* PictureObject */
					case "normwidth": strAtrName = "normWidth"; break;
					case "normheight": strAtrName = "normHeight"; break;
					case "autowidth": strAtrName = "autoWidth"; break;
					case "autoheight": strAtrName = "autoHeight"; break;
					case "sizestate": strAtrName = "sizeState"; break;
				}
				
				if(strAtrName != "" && bolAtrNoStr) 
				{
					eval("forObj." + strAtrName + " = '" + forObj.attributes[aIdx].value + "'");
					//alert(eval("forObj." + strAtrName));
				}
				if(strAtrName != "" && !bolAtrNoStr) 
				{
					eval("forObj." + strAtrName + " = " + forObj.attributes[aIdx].value);
					//alert(eval("forObj." + strAtrName));
				}
				//alert(forObj.id + " : " + forObj.attributes[aIdx].name);
			}
		}
	}
	
	function InitializeNode(objParentNode) {
		//alert(objParentNode.objectType);
		if(!document.all && objParentNode.style.borderWidth != "0")
		{	
			var intObjBorderW = parseInt(objParentNode.style.borderWidth);
			
			if(intObjBorderW != "NaN")
			{
				objParentNode.style.width = parseInt(objParentNode.style.width) - (2 * intObjBorderW);
				objParentNode.style.height = parseInt(objParentNode.style.height) - (2 * intObjBorderW);
			}
		}
		
		for(var objnr = 0; objnr < objParentNode.childNodes.length; objnr++) {
			if(!document.all)
			{	
				FormatAttributes(objParentNode.childNodes[objnr]);
			}
			
			if(objParentNode.childNodes[objnr].objectType != null) {

				if(!document.all && objParentNode.childNodes[objnr].style.borderWidth != "0")
				{	
					var intObjBorderW = parseInt(objParentNode.childNodes[objnr].style.borderWidth);
					
					if(intObjBorderW != "NaN")
					{
						objParentNode.childNodes[objnr].style.width = parseInt(objParentNode.childNodes[objnr].style.width) - (2 * intObjBorderW);
						objParentNode.childNodes[objnr].style.height = parseInt(objParentNode.childNodes[objnr].style.height) - (2 * intObjBorderW);
					}
				}
				
				if(!document.all)
				{
					if(objParentNode.childNodes[objnr].style.fontSize == "x-small") objParentNode.childNodes[objnr].style.fontSize = "12px";
					if(objParentNode.childNodes[objnr].style.fontSize == "xx-small") objParentNode.childNodes[objnr].style.fontSize = "10px";
				}
				
				if(objParentNode.childNodes[objnr].objectType == menuObject || objParentNode.childNodes[objnr].objectType == submenuObject) {
					//** Set submenu
					objParentNode.childNodes[objnr].subMenu = InitializeArray(objParentNode, objParentNode.childNodes[objnr].subMenuStr);
					objParentNode.childNodes[objnr].expanded = false;
					
					imgFileName = StripFileName(objParentNode.childNodes[objnr].normPicture);
					if(imgFileName != "") {
						objParentNode.childNodes[objnr].normPicture = "url(" + dataFolder + "pics/" + imgFileName + ")";
					}
					else {
						objParentNode.childNodes[objnr].normPicture = "";
					}
					
					imgFileName = StripFileName(objParentNode.childNodes[objnr].focusPicture);
					if(imgFileName != "") {
						objParentNode.childNodes[objnr].focusPicture = "url(" + dataFolder + "pics/" + imgFileName + ")";
					}
					else {
						objParentNode.childNodes[objnr].focusPicture = "";
					}
					
					//** Set expand options
					objParentNode.childNodes[objnr].expandType = Number(objParentNode.childNodes[objnr].expandType);
					objParentNode.childNodes[objnr].expandXOff = Number(objParentNode.childNodes[objnr].expandXOff);
					objParentNode.childNodes[objnr].expandYOff = Number(objParentNode.childNodes[objnr].expandYOff);
				
					//** Set events
					objParentNode.childNodes[objnr].onmouseover = ExpandMenu;
					objParentNode.childNodes[objnr].onmouseout = CollapseMenu;
					objParentNode.childNodes[objnr].onmousedown = GetPage;
					
					
					if(objParentNode.childNodes[objnr].showLink != null) {
						objParentNode.childNodes[objnr].showLink = objParentNode.childNodes[objnr].showLink.toString();
						/*
						if(objParentNode.childNodes[objnr].showLink != "undefined") {
							objParentNode.childNodes[objnr].onclick = ShowLink;
						}
						else {
							objParentNode.childNodes[objnr].showLink = "";
						}
						*/
					}
					else {
						objParentNode.childNodes[objnr].showLink = "";
					}
					
					//** IFRAME for showing menu over IFRAMES with content
					var newFrame = document.createElement("IFRAME");
					newFrame.isMenuFrame = true;
					newFrame.frameBorder = 0;
					newFrame.scrolling = "no";
					newFrame.style.position = "absolute";
					newFrame.style.visibility = "hidden";
					//newFrame.style.posWidth = objParentNode.childNodes[objnr].style.posWidth;
					//newFrame.style.posHeight = objParentNode.childNodes[objnr].style.posHeight;
					newFrame.style.width = objParentNode.childNodes[objnr].offsetWidth;
					newFrame.style.height = objParentNode.childNodes[objnr].offsetHeight;
					objParentNode.childNodes[objnr].backFrame = objParentNode.childNodes[objnr].parentNode.appendChild(newFrame);
				}
				
				
				switch (objParentNode.childNodes[objnr].objectType) {
					case contactForm:
						for(var i = 0; i < objParentNode.childNodes[objnr].childNodes[0].childNodes.length; i++) {
							if(objParentNode.childNodes[objnr].childNodes[0].childNodes[i].type == "button") {
								//objParentNode.childNodes[objnr].children[0].children[i].attachEvent("onclick", SendContactInfo);
								objParentNode.childNodes[objnr].childNodes[0].childNodes[i].onclick = SendContactInfo;
							}
						}
						//** Set object events
						//objParentNode.childNodes[objnr].attachEvent("oncontextmenu", CancelEvent);						
						break;
					case pageObject:
						if(objParentNode.childNodes[objnr].startPage == "true") {
							objParentNode.childNodes[objnr].startPage = true;
						}
						else {
							objParentNode.childNodes[objnr].startPage = false;
						}
						//** Set object events
						//objParentNode.childNodes[objnr].attachEvent("oncontextmenu", CancelEvent);
						break;
					case textObject:
						//objParentNode.childNodes[objnr].contentEditable = false;
						//** Set object events
						//objParentNode.childNodes[objnr].attachEvent("oncontextmenu", CancelEvent);
						break;
					case pictureObject:
						//objParentNode.childNodes[objnr].contentEditable = true;
						//** Set object events				
						//objParentNode.childNodes[objnr].attachEvent("oncontextmenu", CancelEvent);
						break;
					case menuObject:
						objParentNode.childNodes[objnr].mainMenu = objParentNode.childNodes[objnr];
						break;
					case submenuObject:
						objParentNode.childNodes[objnr].parentMenu = objParentNode.childNodes(objParentNode.childNodes[objnr].parentMenuStr);
						objParentNode.childNodes[objnr].mainMenu = objParentNode.childNodes(objParentNode.childNodes[objnr].mainMenuStr);
						objParentNode.childNodes[objnr].style.visibility = "hidden";
						break;
				}
			}
			else {
				if(objParentNode.childNodes[objnr].tagName == "A") {
					if(objParentNode.childNodes[objnr].targetType != "_page") {
						objParentNode.childNodes[objnr].target = objParentNode.childNodes[objnr].targetType;
						if(objParentNode.childNodes[objnr].linkType == "FileLink") {
							objParentNode.childNodes[objnr].href = dataFolder + "docs/" + objParentNode.childNodes[objnr].linktoFile;
						}
					}
					else {
						objParentNode.childNodes[objnr].onclick = ShowLinkPage;
					}
				}
			}
		}
		if(objParentNode.childNodes[objnr] != null && objParentNode.childNodes[objnr].childNodes) {
			if(objParentNode.childNodes[objnr].childNodes.length > 0) {
				InitializeNode(objParentNode.childNodes[objnr]);
			}
		}
	}
	
	function PositionWorkArea() {	
		switch (document.getElementById("WorkArea").alignArea) {
			case "left":
				//document.getElementById("WorkArea").style.posLeft = 0;
				document.getElementById("WorkArea").style.left = 0;
				break;
			case "center":
				//if(((document.body.clientWidth / 2) - (document.getElementById("WorkArea").style.posWidth / 2)) < 0) {
				if(((document.body.clientWidth / 2) - (document.getElementById("WorkArea").offsetWidth / 2)) < 0) {
					//document.getElementById("WorkArea").style.posLeft = 0;
					document.getElementById("WorkArea").style.left = 0;
				}
				else {
					//document.getElementById("WorkArea").style.posLeft = (document.body.clientWidth / 2) - (document.getElementById("WorkArea").style.posWidth / 2);
					document.getElementById("WorkArea").style.left = (document.body.clientWidth / 2) - (document.getElementById("WorkArea").offsetWidth / 2);
				}
				break;
			case "right":
				//if((document.body.clientWidth - document.getElementById("WorkArea").style.posWidth) < 0) {
				if((document.body.clientWidth - document.getElementById("WorkArea").offsetWidth) < 0) {
					//document.getElementById("WorkArea").style.posLeft = 0;
					document.getElementById("WorkArea").style.left = 0;
				}
				else {
					//document.getElementById("WorkArea").style.posLeft = (document.body.clientWidth - document.getElementById("WorkArea").style.posWidth);
					document.getElementById("WorkArea").style.left = (document.body.clientWidth - document.getElementById("WorkArea").offsetWidth);
				}					
				break;
		}
		
		if(document.getElementById("WorkArea").autoSize == "width" || document.getElementById("WorkArea").autoSize == "width-height") {
			if(document.body.clientWidth < document.getElementById("WorkArea").minWidth) {
				//document.getElementById("WorkArea").style.posWidth = document.getElementById("WorkArea").minWidth;
				document.getElementById("WorkArea").style.width = document.getElementById("WorkArea").minWidth;
			}
			else {
				//document.getElementById("WorkArea").style.posWidth = (document.body.clientWidth - document.getElementById("WorkArea").style.posLeft);
				document.getElementById("WorkArea").style.width = (document.body.clientWidth - document.getElementById("WorkArea").offsetLeft);
			}					
		}
		else {
			//document.getElementById("WorkArea").style.posWidth = document.getElementById("WorkArea").minWidth;
			document.getElementById("WorkArea").style.width = document.getElementById("WorkArea").minWidth;
		}

		if(document.getElementById("WorkArea").autoSize == "height" || document.getElementById("WorkArea").autoSize == "width-height") {
			if(document.body.clientHeight < document.getElementById("WorkArea").minHeight) {
				//document.getElementById("WorkArea").style.posHeight = document.getElementById("WorkArea").minHeight;
				document.getElementById("WorkArea").style.height = document.getElementById("WorkArea").minHeight;
			}
			else {
				//document.getElementById("WorkArea").style.posHeight = (document.body.clientHeight - document.getElementById("WorkArea").style.posTop);
				document.getElementById("WorkArea").style.height = (document.body.clientHeight - document.getElementById("WorkArea").offsetTop);
			}					
		}
		else {
			//document.getElementById("WorkArea").style.posHeight = document.getElementById("WorkArea").minHeight;
			document.getElementById("WorkArea").style.height = document.getElementById("WorkArea").minHeight;
		}
		
		//if(document.getElementById("WorkArea").style.posWidth > document.body.clientWidth || document.getElementById("WorkArea").style.posHeight > document.body.clientHeight) {
		if(document.getElementById("WorkArea").offsetWidth > document.body.clientWidth || document.getElementById("WorkArea").offsetHeight > document.body.clientHeight) {
			document.body.scroll = "yes";
			if(GetAppVersion() >= 5) {
				document.body.scroll = "auto";
			}
		}
	}
	
	function SendFormInfo() {
		if(formObj != null) {
			formObj.submit();
		}
	}

	function SendContactInfo(e) {
		if(!e) e = event;
		if(e.srcElement.parentNode.tagName == "FORM" && e.srcElement.parentNode.parentNode.tagName == "DIV") {
			formObj = e.srcElement.parentNode;
			var curObj = e.srcElement.parentNode.parentNode;
			var aW = (window.screen.availWidth / 2) - 200;
			var aH = (window.screen.availHeight / 2) - 50;

			formObj.action = "SendMail.asp?rec=" + curObj.recipient + "&recCC=" + curObj.recipientCC + "&mailFrom=" + curObj.mailFrom + "&mailSubject=" + curObj.mailSubject + "&sentMessage=" + curObj.sentMessage;
			formObj.target = "sendContactWin";
			
			sendContactWin = window.open("", "sendContactWin", "left=" + aW + ",top=" + aH + ",width=400,height=100,scrollbars=0");
			
			setTimeout("SendFormInfo()", 500);
			//var retData = showModalDialog("SendContact.asp", event.srcElement.parentElement.parentElement, "dialogWidth: 300px; dialogHeight: 150px; status: no; help: no; resizable: no; edge: sunken; scroll: no;");
		}
	}

	function SetMenuChildren(menuObj) {
		for(var i = 0; i < menuObj.childNodes.length; i++) {
			if(menuObj.childNodes[i].childNodes.length > 0) {
				SetMenuChildren(menuObj.childNodes[i]);
			}
			menuObj.childNodes[i].style.cursor = "pointer";
		}
	}
	
	function ShowDocument() {
		curLinkWin.document.title = curLinkObj.showLink;
		curLinkWin.document.getElementById("DocFrame").src = curLinkObj.linkRef;
	}

	function ShowLink(lobj) {
		//alert(event.srcElement)
		//var cObj = event.srcElement;
		//if(event.srcElement == null) {
		//	cObj = extLinkObj;
		//}

		curLinkObj = GetContainer(lobj);
		
		if(curLinkObj.showLink != null) {
			if(curLinkObj.showLink != "") {
				if(curLinkObj.targetType == "_blank") {
					var aW = window.screen.availWidth - 100;
					var aH = window.screen.availHeight - 100;
					
					if(curLinkObj.linkType == "FileLink") {
						curLinkWin = window.open("ShowLink.asp?Link=" + curLinkObj.linkRef, "linkWin", "left=50,top=50,width=" + aW + ",height=" + aH + ",scrollbars=0,menubar=1,toolbar=0,resizable=1");
						//curLinkWin = window.open(curLinkObj.linkRef, "linkWin", "left=50,top=50,width=" + aW + ",height=" + aH + ",scrollbars=1,menubar=1,toolbar=0,resizable=1");
						//curLinkWin.attachEvent("onload", ShowDocument);
					}
					else {
						curLinkWin = window.open(curLinkObj.linkRef, "linkWin", "left=50,top=50,width=" + aW + ",height=" + aH + ",scrollbars=1,menubar=1,toolbar=0,resizable=1");
					}
				}
				
				if(curLinkObj.targetType == "_page") {
					if(document.getElementById(curLinkObj.targetPage) != null) {
						ShowPageOnLevel(document.getElementById(curLinkObj.targetPage).parentNode, document.getElementById(curLinkObj.targetPage));
						
						if(GetAppVersion() >= 5.5) {
							var frameObj = document.createElement("<IFRAME>");
							frameObj.width = "100%"; //GetPageWidt(document.all(curLinkObj.targetPage));
							frameObj.height = "100%"; //GetPageHeight(document.all(curLinkObj.targetPage));
							frameObj.scrolling = "auto";
							frameObj.frameBorder = 0;
							frameObj.src = curLinkObj.linkRef;
							frameObj.id = GetNewID("ExtPageFrame");
							frameObj.isExtPageFrame = true;
							document.getElementById(curLinkObj.targetPage).appendChild(frameObj);
						}
						else {
							document.getElementById(curLinkObj.targetPage).insertAdjacentHTML("afterBegin", "<iframe id='" + GetNewID("ExtPageFrame") + "' isExtPageFrame=true width='100%' height='100%' frameborder='0' scrolling='auto' src='" + curLinkObj.linkRef + "'></iframe>")
						}
					}
				}
				if(curLinkObj.targetType == "_self") {
					if(curLinkObj.linkType == "ProjectLink") {
						document.location = curLinkObj.linkRef;
					}
					else {
						if(curLinkObj.parentNode != null) {
							if(curLinkObj.parentNode.objectType == pageObject) {
								if(GetAppVersion() >= 5.5) {
									var divObj = document.createElement("<DIV>");
									divObj.style.position = "absolute";
									divObj.style.width = "100%";
									divObj.style.height = "100%";
									divObj.style.background = "silver";
									divObj.id = GetNewID("ExtPageDiv");
									divObj.isExtPageDiv = true;
									divObj = curLinkObj.parentNode.appendChild(divObj);
	
									var frameObj = document.createElement("<IFRAME>");
									frameObj.width = "100%"; //GetPageWidt(document.all(curLinkObj.targetPage));
									frameObj.height = "100%"; //GetPageHeight(document.all(curLinkObj.targetPage));
									frameObj.scrolling = "auto";
									frameObj.frameBorder = 0;
									
									frameObj.src = curLinkObj.linkRef;
									frameObj.id = GetNewID("ExtPageFrame");
									frameObj.isExtPageFrame = true;
									divObj.appendChild(frameObj);
								}
								else {
									curLinkObj.parentNode.insertAdjacentHTML("afterBegin", "<iframe id='" + GetNewID("ExtPageFrame") + "' isExtPageFrame=true width='100%' height='100%' frameborder='0' scrolling='auto' src='" + curLinkObj.linkRef + "'></iframe>")
								}
							}
							else {
								document.location = curLinkObj.linkRef;
							}
						}
					}
				}
			}
		}
	}
	
	function ShowLinkPage(e) {
		if(!e) e = event;
		switch (this.targetType) {
			case "_blank":
				var aW = window.screen.availWidth - 50;
				var aH = window.screen.availHeight - 100;
				newWin = window.open(this.linkTo, "newWin", "left=25,top=25,width=" + aW + ",height=" + aH + ",scrollbars=1,resizable=1,menubar=1");
				break;
			case "_self":
				if(this.parentNode != null) {
					if(this.parentNode.objectType == pageObject) {
						if(GetAppVersion() >= 5.5) {
							var divObj = document.createElement("<DIV>");
							divObj.style.position = "absolute";
							divObj.style.width = "100%";
							divObj.style.height = "100%";
							divObj.style.background = "silver";
							divObj.id = GetNewID("ExtPageDiv");
							divObj.isExtPageDiv = true;
							divObj = this.parentNode.appendChild(divObj);

							var frameObj = document.createElement("<IFRAME>");
							frameObj.width = "100%"; //GetPageWidt(document.all(curLinkObj.targetPage));
							frameObj.height = "100%"; //GetPageHeight(document.all(curLinkObj.targetPage));
							frameObj.scrolling = "auto";
							frameObj.frameBorder = 0;
							frameObj.src = curLinkObj.linkRef;
							frameObj.id = GetNewID("ExtPageFrame");
							frameObj.isExtPageFrame = true;
							divObj.appendChild(frameObj);
						}
						else {
							this.parentNode.insertAdjacentHTML("afterBegin", "<iframe id='" + GetNewID("ExtPageFrame") + "' isExtPageFrame=true width='100%' height='100%' frameborder='0' scrolling='auto' src='" + curLinkObj.linkRef + "'></iframe>");
						}
					}
				}
				break;
			case "_page":
				if(document.getElementById(this.targetPage) != null) {
					if(GetAppVersion() >= 5.5) {
						var frameObj = document.createElement("<IFRAME>");
						frameObj.width = "100%"; //GetPageWidt(document.all(curLinkObj.targetPage));
						frameObj.height = "100%"; //GetPageHeight(document.all(curLinkObj.targetPage));
						frameObj.scrolling = "auto";
						frameObj.frameBorder = 0;
						frameObj.src = this.href;
						frameObj.id = GetNewID("ExtPageFrame");
						frameObj.isExtPageFrame = true;
						document.getElementById(this.targetPage).appendChild(frameObj);
					}
					else {
						document.getElementById(this.targetPage).insertAdjacentHTML("afterBegin", "<iframe id='" + GetNewID("ExtPageFrame") + "' isExtPageFrame=true width='100%' height='100%' frameborder='0' scrolling='auto' src='" + this.href + "'></iframe>")
					}
				}
				e.returnValue = false;
				break;
		}
	}
	
	function HideChildPages(curPage) {
		for(var i = 0; i < curPage.childNodes.length; i++) {
			if(curPage.childNodes[i].objectType != null) {
				if(curPage.childNodes[i].objectType == pageObject) {
					curPage.childNodes[i].style.visibility = "hidden";
					if(curPage.childNodes[i].childNodes.length > 0) {
						HideChildPages(curPage.childNodes[i]);
					}
				}
			}
		}
	}
	
	function HideThePage(pageObj) {
		if(pageObj != null) {
			if(pageObj != document.body) {
				for(var objnr = 0; objnr < pageObj.parentNode.childNodes.length; objnr++) {
					if(pageObj.parentNode.childNodes[objnr].objectType != null) {
						if(pageObj.parentNode.childNodes[objnr].objectType == pageObject) {
							if(pageObj.parentNode.childNodes[objnr] == pageObj) {
								HideThePage(pageObj.parentNode);
								pageObj.parentNode.childNodes[objnr].style.visibility = "hidden";
							}
						}
					}
				}
			}
		}
	}
	
	function RemoveExtPageFrames() {
		var curFrame = null;
		var curFrameDiv = null;
		
		if(window.frames.length > 0) {
			for(var i=0; i < 100; i++) {
				curFrame = document.getElementById("ExtPageFrame" + i);
				if(curFrame != null) {
					curFrameDiv = curFrame.parentNode;
					if(curFrame.isExtPageFrame) {
						curFrame.parentNode.removeChild(curFrame);
					}
					if(curFrameDiv != null) {
						if(curFrameDiv.isExtPageDiv) {
							curFrameDiv.parentNode.removeChild(curFrameDiv);
						}
					}
				}
				else {
					break;
				}
			}		
		}
	}
	
	function ShowPageOnLevel(parentPage, subPage) {
		RemoveExtPageFrames();
		HideThePage(curPg);
		ShowThePageOnLevel(parentPage, subPage);
		curPg = subPage;
	}

	function ShowThePageOnLevel(parentPage, subPage) {
		var frameObj = null;							
		
		if(parentPage != null || subPage != null) {
			if(parentPage != document.body) {
				for(var objnr = 0; objnr < parentPage.childNodes.length; objnr++) {
					if(parentPage.childNodes[objnr].objectType != null) {
						if(parentPage.childNodes[objnr].objectType == pageObject) {
							if(parentPage.childNodes[objnr] == subPage) {
								ShowThePageOnLevel(parentPage.parentNode, parentPage);
								parentPage.childNodes[objnr].style.visibility = "visible";
							}
						}
					}
				}
			}
		}
		else {
			alert("parentPage or subPage is null");
		}
	}
	
	function StripFileName(filename) {
		var retFilename = "";
		
		retFilename = filename.substring(filename.lastIndexOf("/") + 1);
		if(retFilename.indexOf(")") != -1) {
			retFilename = retFilename.substring(0, retFilename.indexOf(")"));
		}
		
		return retFilename;
	}

	function StopEvent(e) {
		if(!e) e = event;
		e.cancelBubble = true;
	}
	
	//document.body.scroll = "no";
	InitializeData(document);
	
	//window.attachEvent("onresize", PositionWorkArea);
	window.onresize = PositionWorkArea;
	PositionWorkArea();
	
	document.body.contentEditable = false;

	if(urlShowPage == "") {
		var allWebDirObjs = document.body.getElementsByTagName("DIV");
		for(var objnr = 0; objnr < allWebDirObjs.length; objnr++) {
			if(allWebDirObjs[objnr].objectType != null) {
				//if(!document.all) { FormatAttributes(allWebDirObjs[objnr]);
				if(allWebDirObjs[objnr].objectType == pageObject) {
					if(allWebDirObjs[objnr].attributes["startPage"].value == "true") {
						startPg = allWebDirObjs[objnr];
					}
				}
			}
		}
	}
	else {
		startPg = document.getElementById[urlShowPage];
	}
	
	if(startPg != null) {
		ShowPageOnLevel(startPg.parentNode, startPg);
	}
	
	
