//
// User configuration
// Customize your menu below.
//
// You may copy and use this script for free, but if you like it
// please go to http://www.wiltech.net/downloads/menuj/create.htm and donate
// just $1.
//
// Thanks!
//
// coderunner (Joseph Sullivan)
//	
var mainMenuColor="#ffffff"; // this is the border colour
var menuItemColor="#F8BA47"; // default background colour
var highlightColor="#E29911"; // highlight background colour
var borderWidth=1;
var borderHeight=1;
var paddingWidth=3;
var paddingHeight=3;
var itemWidth=142;
var itemHeight=17;
var hAlign="left";
var vAlign="middle";
var anchorClass="navtop";
var itemTagsOpen="<span class='navtop'>";
var itemTagsClose="</span>";
var menuDelay=0.3; 	

var lockArray=new Array();
var clrByJump = false;

	// Added 3/27/01 JS
	// For OK Farm site
function getLock(name){
	if(lockArray[name]!=true)
		return false;
	else    return true;
}

function clearLock(name){
	lockArray[name]=false;
}

function setLock(name){
	lockArray[name]=true;
}

function clearLocks() {
	for (a=0; a<lockArray.length;a++)
		lockArray[a]=false;
}

function clearByJump() {
	// Image restore goes here
	clrByJump = true;
}


// Variable (and "constant") declaration:
var TYPE_NONE = 0;
var TYPE_IE4 = 1;
var TYPE_NS4=2;
var TYPE_COMPLIANT=4;
var menus=new Array();
var menuCount=0;

function menu (left,top) 
	{
	this.childMenuOpen=-1; 
	this.parentMenuIndex=-1; 
	this.hasMouse=false; 
	this.left=left; 
	this.top=top; 
	this.childCount=0; 
	this.children=new Array; 
	this.url="";
	}

function menuItem (contents,url,background)
	{ 
	this.transparent=false; 
	this.childMenuIndex=-1; 
	this.background=background; 
	this.image=""; 
	this.html=contents; 
	this.url=url;
	}

	// Browser detection:
	var type= TYPE_NONE;
	if (document.layers) type = TYPE_NS4;
	if (document.all) type=TYPE_IE4;
	if (document.getElementById) type=TYPE_COMPLIANT;


function menuOn (index) {
	
	setLock(index);	
	 
	showMenu(index);
	menus[index].hasMouse=true;

	// If this menu has a parent, turn the parent on, too:
	var parentIndex=menus[index].parentMenuIndex;
	if (parentIndex > -1 ) {
	   menus[parentIndex].childMenuOpen=index;
		showMenu(parentIndex);
//		menus[parentIndex].hasMouse=true;
	}

}

function menuOff(index,buttonName) {


		menus[index].hasMouse=false;

		// If this menu has a child open with the mouse, don't close: 
		if ((menus[index].childMenuOpen > -1)&&(menus[menus[index].childMenuOpen].hasMouse)) return;
		
		// If this is a child menu, close the parent too if the parent doesn't have the mouse:
		if (menus[index].parentMenuIndex > -1) {
		   if (menus[menus[index].parentMenuIndex].hasMouse==false)
		   this.timer=setTimeout(("hideMenu('"+menus[index].parentMenuIndex+"')"),1000*menuDelay);
		   menus[menus[index].parentMenuIndex].childMenuOpen=-1;  // We closed the child.
		}	
		
		// If this menu has an open child that doesn't have the mouse, close them both:
//		if(menus[index].childMenuOpen > -1){
	//		if((menus[index].hasMouse==false)&&(menus[(menus[index].childMenuOpen)].hasMouse==false))	;					  		
			//	this.timer=setTimeout(("hideMenu('"+menus[index].childMenuOpen+"')"),1000*menuDelay);
		//}	
		
		this.timer=setTimeout(("hideMenu('"+index+"')"),1000*menuDelay);
}


// Shows a menu...
function showMenu(index) {

	var parentIndex=menus[index].parentMenuIndex;
	var childIndex=menus[index].childMenuOpen;
	
	if (type==TYPE_NS4) {		// For Netscape browsers
	  // Hide all menus, except 1) This menu, 2) it's parent, and 3) any open child menu.
	   for (var n=0; n<menuCount; n++) if((n!=index)&&(n!=parentIndex)&&(n!=childIndex)) {	document.layers[n].visibility="hidden"; }
	   // Show this menu.
		document.layers[index].visibility="show";
	} else if (type==TYPE_IE4) {	// For IE browsers
	  // Hide all menus, except 1) This menu, 2) it's parent, and 3) any open child menu.
 	  for (var n=0; n<menuCount; n++) if((n!=index)&&(n!=parentIndex)&&(n!=childIndex)) { document.all("menu"+n+"d").style.visibility="hidden"; }    
	   // Show this menu.
		document.all("menu"+index+"d").style.visibility="visible";
	} else if (type==TYPE_COMPLIANT) {
	  // Hide all menus, except 1) This menu, 2) it's parent, and 3) any open child menu.
 	  for (var n=0; n<menuCount; n++) if((n!=index)&&(n!=parentIndex)&&(n!=childIndex)) { document.getElementById("menu"+n+"d").style.visibility="hidden"; }    
	   // Show this menu.
		document.getElementById("menu"+index+"d").style.visibility="visible";

	}

}


// Hides a menu...
function hideMenu(index) {

	// Just leave alone if this menu still has mouse over it, or has an open child with the mouse.
	if(menus[index].hasMouse) return;	
	if(menus[index].childMenuOpen > -1) {
		if (menus[menus[index].childMenuOpen].hasMouse) return;
	}
	
	// If this window has an open child, shut it down, too:
	if (menus[index].childMenuOpen > -1){
	   hideMenu(menus[index].childMenuOpen);  // Recursive call!
	   menus[index].childMenuOpen =-1;
	}
	
	if (type==TYPE_NS4) {		// For Netscape browsers
		document.layers[index].visibility="hidden";
	} else if (type==TYPE_IE4) {	// For IE browsers
		document.all("menu"+index+"d").style.visibility="hidden";
	} else if (type==TYPE_COMPLIANT) {
		document.getElementById("menu"+index+"d").style.visibility="hidden";
	}

	if ((getLock(index) == true)&&(menus[index].parentMenuIndex==-1)){	// Clear lock for root menus only
		// Image restore goes here
		clearLock(index);
	}


}

function onMouseOverItem (index1, index2) {
		 
	// Highlight the menu:
	if (type==TYPE_NS4) {
		document.layers[index1].layers[index2].bgColor=highlightColor;
	} else if (type==TYPE_IE4) {
		document.all("menu"+index1+index2).style.background=highlightColor;
	} else if (type==TYPE_COMPLIANT){
		document.getElementById("menu"+index1+index2).style.background=highlightColor;
	}

	// Hide any popout (children) menus that may be visible from previously:
	if(menus[index1].childMenuOpen > -1)
			hideMenu(menus[index1].childMenuOpen);
								   
	// If this item has a popout child, show the child:
	if ((menus[index1].children[index2].childMenuIndex) > -1){			   	  	   // Do we have a child menu?
	   menus[index1].childMenuOpen=menus[index1].children[index2].childMenuIndex;  // Remember which child is open
	   showMenu(menus[index1].children[index2].childMenuIndex);					   // Open the child	  
	   }
}

function onMouseOutItem (index1, index2) {

	if(menus[index1].children[index2].transparent) itemColor="";
	else    itemColor=menuItemColor;												

	if (type==TYPE_NS4) {
		document.layers[index1].layers[index2].bgColor=menuItemColor;
	} else if (type==TYPE_IE4) {
		document.all("menu"+index1+index2).style.background=itemColor;
	} else if (type==TYPE_COMPLIANT) {
		document.getElementById("menu"+index1+index2).style.background=itemColor;
	}
}

// Draws the menus.
function drawMenus ()
	{
    // Loop through the menu items, looking for items that are parents of submenus.
	// For each one we find, set it's child menu's parentMenuIndex.
	for (var n=0; n<menuCount; n++)
		{
		for (var m=0; m<menus[n].childCount; m++)
			{
			if (menus[n].children[m].childMenuIndex > -1)
			   menus[menus[n].children[m].childMenuIndex].parentMenuIndex=n;
			}
		}
				
	if (type==TYPE_NS4)
		{
		// Draw Netscape menus.
		for (var curMenu=0; curMenu<menuCount; curMenu++) {
			document.writeln("<layer visibility='hidden' width='"+(itemWidth+(2*borderWidth))+"' height='"+((itemHeight+borderHeight)*(menus[curMenu].childCount)+borderHeight)+"' pagex='"+menus[curMenu].left+"' pagey='"+menus[curMenu].top+"' bgcolor='"+mainMenuColor+"' onmouseover='menuOn("+curMenu+")' onmouseout='menuOff("+curMenu+")'>");
			for (var curItem=0; curItem<menus[curMenu].childCount; curItem++)
				{
				document.write("<layer width='"+itemWidth+"' height='"+itemHeight+"' top='"+(borderHeight+(curItem*(itemHeight+borderHeight)))+"' left='"+borderWidth+"' bgcolor='"+menuItemColor+"'><center><table cellspacing='0' cellpadding='0' border='0' background='"+menus[curMenu].children[curItem].background+"' width='"+(itemWidth-(2*paddingWidth))+"' height='"+(itemHeight-(2*paddingHeight))+"'><tr><td align='"+hAlign+"' valign='"+vAlign+"'><a class='"+anchorClass+"' href='"+menus[curMenu].children[curItem].url+"'  onmouseover='onMouseOverItem("+curMenu+","+curItem+")' onmouseout='onMouseOutItem("+curMenu+","+curItem+")'>");
				document.write(itemTagsOpen+menus[curMenu].children[curItem].html+itemTagsClose);
				document.writeln("</a></td></tr></table></center></layer>");
				}
			document.writeln("</layer>");
			}
		}
	else if ((type==TYPE_IE4)||(type==TYPE_COMPLIANT)) {		// Draw IE menus.

		for (var curMenu=0; curMenu<menuCount; curMenu++) {
			document.writeln("<div id='menu"+curMenu+"d' style='background:"+mainMenuColor+";position:absolute;visibility:hidden;width:"+(itemWidth+(2*borderWidth))+";height:"+((itemHeight+borderHeight)*(menus[curMenu].childCount)+borderHeight)+";left:"+menus[curMenu].left+";top:"+menus[curMenu].top+";' onmouseover='menuOn("+curMenu+")' onmouseout='menuOff("+curMenu+")'>");
			for (var curItem=0; curItem<menus[curMenu].childCount; curItem++) {
				if(menus[curMenu].children[curItem].transparent) itemColor="";
				else    itemColor=menuItemColor;												
				document.write("<div id='menu"+curMenu+""+curItem+"' style='background:"+itemColor+";position:absolute;width:"+itemWidth+";height:"+itemHeight+";top:"+(borderHeight+(curItem*(itemHeight+borderHeight)))+";left:"+borderWidth+";' bgcolor='"+menuItemColor+"'><center><table cellspacing='0' cellpadding='0' border='0' background='"+menus[curMenu].children[curItem].background+"' width='"+(itemWidth-(2*paddingWidth))+"' height='"+(itemHeight-(2*paddingHeight))+"'><tr><td align='"+hAlign+"' valign='"+vAlign+"'><img src='images/p.gif' width=1 height=2><br><a href='"+menus[curMenu].children[curItem].url+"' class='"+anchorClass+"' onmouseover='onMouseOverItem("+curMenu+","+curItem+")' onmouseout='onMouseOutItem("+curMenu+","+curItem+")'>");
				document.write(itemTagsOpen+menus[curMenu].children[curItem].html+itemTagsClose);
				document.writeln("</a></td></tr></table></center></div>");
			}
			document.writeln("</div>");
		}



	}

}


// Adds a menu to the list 
function addMenu (left,top) {
		 if(type==TYPE_IE4) 
		 		 menus[menuCount]=new menu(left,top);
		 else
		 		 menus.push(new menu(left,top));

		 menuCount++;
		 
}

// Adds a submenu item to the current menu item 
function addMenuItem (html,url,background) {
		 if (type==TYPE_IE4)
		 	menus[menuCount-1].children[(menus[menuCount-1].childCount)]=new menuItem(html,url,background);
		 else
		 	 menus[menuCount-1].children.push(new menuItem(html,url,background));

		 menus[menuCount-1].childCount++;
}

// Adds an expandable submenu item to the current menu item 
function addExpandableMenuItem (html,url,background,index) {
		 // Add the menu item:
		 addMenuItem (html,url,background);
		 // Set the item's child index:
		 menus[menuCount-1].children[(menus[menuCount-1].childCount-1)].childMenuIndex=index;
}

// Makes the previous entry transparent:
function makeTransparent() {
		 menus[menuCount-1].children[(menus[menuCount-1].childCount)-1].transparent=true;
}
// menu 0 General Info
addMenu(82,149);
addMenuItem("Locations","locations.php","");
addMenuItem("Trade Shows","tradeshows.php","");
addMenuItem("Industry Links","industrylinks.php","");
addMenuItem("Training","training.php","");
addMenuItem("Privacy Policy","privacy.php","");

// menu 1 New to Embroidery
addMenu(126,149);
addMenuItem("Getting Started","start.php","");
addMenuItem("Glossary of Terms","glossary.php","");
addMenuItem("History of Embroidery","history.php","");
addMenuItem("SWF Owners Group","swfowners.php","");
addMenuItem("SWF Machines Group","swfmachines.php","");
addMenuItem("Sierra Owners Group","sierraowners.php","");
addMenuItem("Books & Publications","books.php","");

// menu 2 Machines
addMenu(144,149);
addMenuItem("Embroidery Machines","embroidery_machines.php","");
addMenuItem("Pictaflex","pictaflex.php","");
addMenuItem("Trade Machine","trade.php","");
addExpandableMenuItem("DTG Digital >","dtg.php","",9);
addExpandableMenuItem("Screen & Pad Printing >","screen_pad_printing.php","",8);
addMenuItem("Pre-Owned Machines","preowned_machines.php","");
addMenuItem("Daytona","daytona.php","");

// menu 3 Software
addMenu(240,149);
addMenuItem("Embroidery Software","http://www.pulsesignature.com/","");

// menu 4 Service
addMenu(340,149);
addMenuItem("Machines Tech Info ","faq_machines.php","");
addMenuItem("Software Tech Info","faq_software.php","");
addMenuItem("Training CDs","machinecd.php","");
addMenuItem("Contact Service","contact.php","");

// menu 5 Accessories
addMenu(430,149);
addMenuItem("Supplies","http://www.coatsaustralia.com.au/index.php","");
addMenuItem("Hoopmaster","hoopmaster.php","");

// menu 6 Lease Program
addMenu(550,149);
addMenuItem("Custom Leasing","http://www.financeonthenet.com.au/home/default.asp","");

// menu 7 Contact Us
addMenu(630,149);
addMenuItem("Sales","sales.php","");
addMenuItem("Service","contact.php","");
addMenuItem("Employment Opportunities","employment.php","");

// menu 8 Print-All Range
addMenu(144 + 143,221);
addMenuItem("The Printall","screen_pad_printing.php","");
addMenuItem("Hot Foiler","hot_foiler.php","");
addMenuItem("Textile Plus","textile_plus.php","");
addMenuItem("Cure All","cure_all.php","");
addMenuItem("Pad Printing","pad_printing.php","");

// menu 9 DTG
addMenu(144 + 143,203);
addMenuItem("Workflow","dtg_workflow.php","");
addMenuItem("Print Gallery","dtg_gallery.php","");
addMenuItem("Inks & Coatings","dtg_inks.php","");

// menu 10 Store
addMenu(725,149);
addMenuItem("Store","store.php","");

drawMenus();
 
  

 
 

 
 
