//==================================================================
//	Create Element / NOV Object
//==================================================================


//------------------------------------------------------------------
//	class
//------------------------------------------------------------------
function xMMS_NAV(){
	//--------------------------------------------------------------
	// variables
	//--------------------------------------------------------------
		var isIE			= false;
		var NAV			= "";
		var display		= "";
		var value		= "";
		var rootPath		= "";
		var xmlFile			= "";

	//--------------------------------------------------------------
	// arrays
	//--------------------------------------------------------------
		

	//--------------------------------------------------------------
	// constructor
	//--------------------------------------------------------------
		// set global class level variables
		//----------------------------------------------------------
		this.setGlobals = function(NAV, display, value){
			// IE check
			if(window.ActiveXObject){isIE = true;}

			//	set class vars
			this.NAV			= this.getObject(NAV);
			this.display		= display;
			this.value			= value;
		}

	//--------------------------------------------------------------
	// methods
	//--------------------------------------------------------------
		this.addTrail = function(){
			//	get document object for handling
			//-----------------------------------------------------
			OBJ = this.NAV;

			//	count child elements of OBJ
			//-----------------------------------------------------
			cN	= OBJ.childNodes.length;

			// create elements and ready for append
			//---------------------------------------------

			if(isIE){
				var ELEMENT	= document.createElement("<div style='clear:both;float:left;margin:1px;padding:1px;'>");
				var GO		= document.createElement("<img src='images/buttons/submit_red.jpg' style='clear:both;float:right;border:none;margin:1px;'>");
			}
			else{
				var ELEMENT	= document.createElement("div");
				ELEMENT.setAttribute("style", "clear:both;float:left;margin:1px;padding:1px;");

				var GO		= document.createElement("img");
				GO.setAttribute("style", "float:right;border:none;margin:1px;");
				GO.setAttribute("src", "images/buttons/submit_red.jpg");
			}

			// create link
			//---------------------------------------------
			var A		= document.createElement("a");
			url			= "javascript:navJump('" + OBJ.id + "', " + cN + ",'" + this.xmlFile + "');";
			A.setAttribute("href", url);

			// create link text
			//---------------------------------------------
			var TEXT	= document.createTextNode(this.display + " ")
			A.appendChild(TEXT);

			// apend link to div
			//---------------------------------------------
			ELEMENT.appendChild(A);

			//===================================================================================
	
	
			// create link text
			//---------------------------------------------

			var A		= document.createElement("a");
			url			= "javascript:alert('" + this.display +  "');";
			A.setAttribute("href", url);

			// create link text
			//---------------------------------------------
			//var TEXT	= document.createTextNode("[ GO! ]")
			A.appendChild(GO);

			// apend link to div
			//---------------------------------------------
			//GO.appendChild(A);
			
			// set vars for goURL() in xBUTTON;
			//---------------------------------------------
			ELEMENT.display	= this.display;
			ELEMENT.xmlFile	= this.xmlFile;

			//	append the parent with the newly created object
			//-------------------------------------------------
			OBJ.appendChild(ELEMENT);
			OBJ.appendChild(A);
			xBUTTON.setURL(this.display, this.xmlFile);
		}

		//------------------------------------------------
		//	Get Object for usage
		//------------------------------------------------
		this.getObject  = function(name){
				if (document.getElementById){
				   OBJ = document.getElementById(name);
				}
				else if (document.all){
				   OBJ = document.all[name];
				}
				else if (document.layers){
					if (document.layers[name]){
						OBJ = document.layers[name];
					}
				}
			return OBJ;
		}
}

//==================================================================
//	Other DOM and MISC functions
//==================================================================

//------------------------------------------------
//	navJump
//------------------------------------------------
function navJump(OBJ, cN, xmlFile){
	//	count child elements of OBJ
	//-----------------------------------------------------	
	OBJ	= getObject(OBJ);
	tN	= OBJ.childNodes.length;

	// set vars for goURL() in xBUTTON;
	//---------------------------------------------
	if(cN != 1){
		ELEMENT				= OBJ.childNodes[(cN - 1)];
		xBUTTON.setURL(ELEMENT.display, ELEMENT.xmlFile);
	}

	/*
	if(cN == 3){
		BUTTON = getObject('jump');
		BUTTON.disabled = true;
		BUTTON.style.visbility = 'hidden';
		BUTTON.style.display = 'none';
	}
	*/

	for(n = (tN - 1); n >= cN; n--){
		CHILD = OBJ.childNodes[n];

		// remove item
		//---------------------------------------------
		OBJ.removeChild(CHILD)
	}


	// remove Original element
	//---------------------------------------
	NAV		= getObject('Control');
	PARENT	= getObject('Menu');
	if(NAV){PARENT.removeChild(NAV);}

	DOTS = getObject('DOTS');
	if(DOTS){PARENT.removeChild(DOTS);}
	
	// reassign xmlFile to xMMS
	//---------------------------------------
	xMMS.setGlobals();
	xMMS.rootPath	= "xml/";
	xMMS.xmlFile	= xmlFile;
	xMMS.loadXML();
}

//------------------------------------------------
//	Get Object for usage
//------------------------------------------------
function getObject(name){
		if (document.getElementById){
		   OBJ = document.getElementById(name);
		}
		else if (document.all){
		   OBJ = document.all[name];
		}
		else if (document.layers){
			if (document.layers[name]){
				OBJ = document.layers[name];
			}
		}
	return OBJ;
}