/* Globals */

var t;
var cancelTimeout = 0;
var period = 3000;
var MenuID = new Array();   // The name of each menu

var oLeft, oTop;

//-------------------------------------------------------------------
function preloadImgs()
{
 var d=document,a=arguments;
 if(!d.imgs) d.imgs=new Array();
 for(var i=0; i<a.length; i++) { d.imgs[i]=new Image; d.imgs[i].src=a[i]; }
}
//-------------------------------------------------------------------
function init()
{
		//document.styleSheets[1].disabled = true;	
	   //document.styleSheets[2].disabled = true;	
	   
	  // if (navigator.appName != "Microsoft Internet Explorer")
	   //{
			//document.styleSheets[1].disabled = false; // Enable Netscape-compatible styles
	   //}

	   //if (screen.height <= 600)
  	   //{
		 // document.styleSheets[2].disabled = false;
  	   //}

	   //preloadImgs(	/*url*/'images/equipment-on.jpg',
	//				/*url*/'images/glass-on.jpg',					
	 //  				/*url*/'images/gas-on.jpg',
//					/*url*/'images/laboratory-on.jpg',					
//					/*url*/'images/special-on.jpg',
//	   				/*url*/'images/industrial-on.jpg',
//					/*url*/'images/controllers-on.jpg',
//					/*url*/'images/spares-on.jpg',
//					/*url*/'images/dental-on.jpg',							
//				    /*url*/'images/education-on.jpg',
//	   				/*url*/'images/hobby-on.jpg',					
//					/*url*/'images/studio-on.jpg');
}

/* ------------------------- */
function menusOff()
{
	//tbMenu1.className = "tbMenu";
	//tbMenu2.className = "tbMenu";
}
/* ------------------------- */
/*
function closeMenu(m)
{
	if (cancelTimeout == 0)
	{
		m.className = "tbMenu";
	}
	else
	{
		cancelTimeout = 0;
	}
}
*/
/* ------------------------- */
function timeoutOn(m)
{
	var s = "MenuClose('" + m + "')";
	cancelTimeout = 0;	
	t = setTimeout(s, period);
}
/* ------------------------- */
function timeoutOff()
{
	cancelTimeout = 1;
	//clearTimeout(t);
}
/* ------------------------- */
function animateMenu(mu, clas)
{
	var s;
	mu.className=clas;
	cancelTimeout = 0;
	s = "closeMenu(" + mu.id + ")";
	t = setTimeout(s, period);	
	//timeoutOn(mu);	
}
/* ------------------------- */
function showCentre(im, s)
{
	txtImage.innerHTML=s;
	imCentrePic.className="imCentreOn";
	imCentrePic.src=im;
	imOverStamp.className="imStampOn";

}
/* ------------------------- */
function clearCentre()
{
	txtImage.innerHTML="&nbsp;";
	txtHeading.innerHTML="&nbsp;";
	imCentrePic.className="imNoDisplay";
	imOverStamp.className="imNoDisplay";	
}
/* ------------------------- */
function showHide(idRef)
{
	// Hide the other menus first ..
	var s;
	for (var i=2; i<=4; i++)
	{
		s = document.getElementById("ulMenu" + i);
		if (s.id != idRef.id && s.className != "noDisplay")
		{
			s.className = "noDisplay";	
		}
	}
	// Now show or hide the specific ID ..
	
	if (idRef.className == "noDisplay")
	{
		idRef.className="";
	}
	else
	{
		idRef.className="noDisplay";
	}
}
/* ------------------------- */

// Maintain a list of child menus for each parent menu so that when a parent menu is Closed,
// all its' child menus can be closed too.

function addMenu(parent, child)
{
	// First find any other open menus
	
	for (var i=0; i < MenuID.length; i++)
	{	
		if (MenuID[i][0] == parent)
		{
			if (MenuID[i][1] > "")
			{
				closeMenu(MenuID[i][1]);	
			}
		}	
	}
	
	var MenuNumber = MenuID.length;
	MenuID[MenuNumber] = new Array(2);
	MenuID[MenuNumber][0] = parent;
	MenuID[MenuNumber][1] = child;
	
	var div = document.getElementById(child);
	
	div.className="";	// Show the menu
}
/* ------------------------- */

function highlightText()
{
	// The object with the selected test must be the main text input area ..
	
	if (document.selection.createRange().parentElement().id != "inpText")
	{
		return;	
	}

	var v = document.getElementById("inpHTMLTags");
	var tag = v.options[v.selectedIndex].value;
	
	
	theSelection = document.selection.createRange().text;
	document.selection.createRange().text = "(#" + tag + "#)" + theSelection + "(#/" + tag + "#)";
}
/* ------------------------- */
function MenuOpen(mu, clas)
{
	//var s;
	//alert(mu + "/" + clas);
	var e = document.getElementById(mu);	
	//findPos(mu);
	//mu.offsetLeft = oLeft;
	//mu.offsetTop = oTop;
	e.className = clas;
	//mu.className=clas;
	cancelTimeout = 0;
	s = "MenuClose('" + mu + "')";
	t = setTimeout(s, period);	
	//timeoutOn(mu);	
}
function MenuClose(mu)
{
    if (!cancelTimeout)
    {
	    MenuHide(mu);
	}
}
function MenuHide(mu)
{
    document.getElementById(mu).className='invisible';
}
// Save the parent/child information for this sub menu and open the sub menu.

function closeMenu(menu)
{
	var c;
	for (var i=0; i < MenuID.length; i++)
	{
		// If this menu has child menus, hide those ..
		
		if (MenuID[i][0] == menu)
		{
			if (MenuID[i][1] > "")
			{
				closeMenu(MenuID[i][1]);	
			}
			MenuID.splice(i,1);			// Delete that array element
		}
	}

	// Now delete any entry where 'menu' is a child, there should be 1 only ..	
	
	for (i=0; i < MenuID.length; i++)
	{	
		if (MenuID[i][1] == menu)
		{
			MenuID.splice(i,1);	
		}	
	}
	c = document.getElementById(menu);
	c.className = "noDisplay";		// Hide the parent menu itself
}
/* ------------------------- */
// Show or hide all hidden sections.

function showHideAll()
{
	var id,c,fn,im,showHide;
	var divs = document.all.tags("div");
	var	btClick = document.getElementById("imExpandAll");
	fn = btClick.src.substring(btClick.src.lastIndexOf("/") + 1, btClick.src.length);		

	if (fn == "plus-on.jpg")
	{
		showHide = "show";
		btClick.src = "images/minus-on.jpg";
	}
	else
	{
		showHide = "hide";
		btClick.src = "images/plus-on.jpg";
	}
	
	for (var i=0; i < divs.length; i++)
	{
		if (divs[i].id.substring(0,14) == "dvDetailHidden")
		{
			if (showHide == "show")
			{
				divs[i].className = "ulBullet";
			}
			else
			{
				divs[i].className = "noDisplay";
			}
			showHideImages(showHide);
		}
	}
}
/* ------------------------- */
function showHideImages(showHide)
{
	var fn,c,im,s;
	for (var i=0; i < document.images.length; i++)
	{
		im = document.images[i];
		c = im.className;
		fn = im.src.substring(im.src.lastIndexOf("/") + 1, im.src.length);	
		
		// The +/- symbol first ..
		
		if (c == "imExpander")
		{
			if (showHide == "show" && fn == "plus.jpg")
			{
				document.images[i].src = "images/minus.jpg";	
			}
			else
			if (showHide == "hide" && fn == "minus.jpg")
			{
				document.images[i].src = "images/plus.jpg";	
			}
			continue;
		}
		
		// Now the detail image ..
		
		s = document.getElementById("sp-" + document.images[i].id);  // The surrounding span
		
		if (im.id.substring(0,8) == "imDetail")
		{
			if (showHide == "show" && c == "imHidden")
			{
				document.images[i].className = "imDetail";
				if (s != null) s.className = "imDetail";
			}
			else
			if (showHide == "hide" && c == "imDetail")
			{
				document.images[i].className = "imHidden";
				if (s != null) s.className = "imHidden";				
			}	
		}
	}
}
/* ------------------------- */
function ClickExpander(control, ul, im)
{
	var c;
	var d;
	var i;

	c = document.getElementById(ul);
	i = document.getElementById(im);
	d = document.getElementById(control);
	if (i != null) s = document.getElementById("sp-" + i.id);
	
	if (c.className == "noDisplay")
	{
		c.className = "ulBullet";
		d.src = "images/minus-on.jpg";
		i.className = "imDetail";
		if (s != null) s.className = "imDetail";
	}
	else
	{
		c.className = "noDisplay";
		d.src = "images/plus-on.jpg";
		i.className = "imHidden";		
		if (s != null) s.className = "imHidden";		
	}
}
/* ------------------------- */
function OverExpander(t)
{
	var im = document.getElementById(t);
	
	var fn = im.src.substring(im.src.lastIndexOf("/") + 1, im.src.length);
	
	switch (fn)
	{
		case "plus.jpg":
			im.src = "images/plus-on.jpg";
			im.Title = "Click to open this section";
			break;
			
		case "plus-on.jpg":
			im.src = "images/plus.jpg";
			im.Title = "Click to close this section";
			break;
			
		case "minus.jpg":
			im.src = "images/minus-on.jpg";
			im.Title = "Click to open this section";
			break;

		case "minus-on.jpg":
			im.src = "images/minus.jpg";
			im.Title = "Click to close this section";			
			break;		
	}
}
/* ------------------------- */
// This function allows the user to click on the category heading and have specific
// divisions and images displayed or hidden.

function ExpandGroup(elnum)
{
	var elID, fn;
	var	elSearch = "dvDetailHidden" + elnum + "-";
	
	var div = document.getElementsByTagName("div");
	for (var i=0; i < div.length; i++)
	{
		elID = div[i].id;
		if (elID.substring(0, elSearch.length) == elSearch)
		{
			if (div[i].className == "noDisplay")
			{
				div[i].className = "ulBullet";
			}
			else
			{
				div[i].className = "noDisplay";
			}
		}
	}

	elSearch = "imDetail" + elnum + "-";
	exSearch = "imExpander" + elnum + "-";	
	var img = document.getElementsByTagName("img");
	var sp;
	for (i=0; i < img.length; i++)
	{
		elID = img[i].id;
		if (elID.substring(0, elSearch.length) == elSearch)
		{
			sp = document.getElementById("sp-" + elID);
			if (img[i].className == "imHidden")
			{
				img[i].className = "imDetail";
				if (sp != null)
				{
					sp.className = "imDetail";	
				}
			}
			else
			{
				img[i].className = "imHidden";
				if (sp != null)
				{
					sp.className = "imHidden";	
				}
			}
			continue;
		}
		if (elID.substring(0, exSearch.length) == exSearch)
		{
			fn = img[i].src.substring(img[i].src.lastIndexOf("/") + 1, img[i].src.length);
			if (fn == "plus.jpg")
			{
				img[i].src = "images/minus.jpg";
			}
			else
			{
				img[i].src = "images/plus.jpg";
			}
		}		
	}	
	/*(							  
	while (document.getElementById("txtCategoryHead-" + ) != null) 
	{
		alert(i);
	}*/
	
}
/* ------------------------- */

// Debugging only.

function listMenus()
{
//	var c;
//	for (var i=0; i < MenuID.length; i++)
//	{
		//for (var j=0;j < 2; j++)
	//	{
			//document.write("<p>" & MenuID[i][j] & "</p>");
			//alert("i=" + i + " j=" + j + " value=" + MenuID[i][j]);
			//alert(j);
	//	}
//	}
}
function menuText(id)
{

	switch (id)
	{
		case 0:
			dvMenuText.innerHTML = "";
			break;
			
		case 1:
			dvMenuText.innerHTML = "<p>Navigate to the site home page</p>";
			break;
			
		case 2:
			dvMenuText.innerHTML = "<p>Hobby Kilns</p>";
			break;		
			
		case 3:
			dvMenuText.innerHTML = "<p>Glass Kilns</p>";
			break;
			
		case 4:
			dvMenuText.innerHTML = "<p>Studio Kilns</p>";
			break;
						
		case 5:
			dvMenuText.innerHTML = "<p>Education</p>";
			break;			
						
		case 6:
			dvMenuText.innerHTML = "<p>Gas</p>";
			break;			
						
		case 7:
			dvMenuText.innerHTML = "<p>Dental Furnaces</p>";
			break;
						
		case 8:
			dvMenuText.innerHTML = "<p>Laboratory</p>";
			break;	
						
		case 9:
			dvMenuText.innerHTML = "<p>Special Furnaces</p>";
			break;
						
		case 10:
			dvMenuText.innerHTML = "<p>Industrial</p>";
			break;										
						
		case 11:
			dvMenuText.innerHTML = "<p>Equipment</p>";
			break;
						
		case 12:
			dvMenuText.innerHTML = "<p>Spares & Service</p>";
			break;						
						
		case 13:
			dvMenuText.innerHTML = "<p>Contact</p>";
			break;			
	}
	
}
function initPage()
{
    alert("1");
    var obj = document.getElementById("dvLeftNav");
    obj.style.height = "1000px";
}
function findPos(obj)
{
	var curleft = curtop = 0;
	var e = document.getElementById(obj);
	oLeft = 0;
	oTop = 0;
	
	if (e.offsetParent)
	{
        do
        {
			curleft += obj.offsetLeft;
			curtop += obj.offsetTop;
		} while (obj = obj.offsetParent);
		
	oLeft = curleft;
	oTop = curtop;
	
    return [curleft,curtop];
    }
}

function doFind(obj)
{
    alert(findPos(obj));
}
