// MNB
// 12/7/08
// used to create the left nav control

//an anonymous function wraps our code to keep our variables
//in function scope rather than in the global namespace:
(function() {
	var tree; //will hold our TreeView instance
	
	function treeInit() {
	
		//Hand off ot a method that randomly generates tree nodes:
		buildBusinessNodeTree();
		
	}
	
	//This method will build a Tree View navigation for the business section
	function buildBusinessNodeTree() {

		//instantiate the tree:
		tree = new YAHOO.widget.TreeView("treeDiv1");
		

		
		//building products
		var buildingProducts = new YAHOO.widget.MenuNode("Building Products", tree.getRoot(), false);
		
		//cordless tools object and node
		var buildingCordlessToolsObject = { label: "Cordless Tools", href: "/catcordlesstools/" }; 
		
		var buildingCordlessToolsNode = new YAHOO.widget.TextNode(buildingCordlessToolsObject, buildingProducts, false);
		
		//ventilation systems object and node
		var buildingVentilationSystemsObject = { label: "Ventilation Systems", href: "/business/building-products/ventilation-systems/" }; 
		
		var buildingVentilationSystemsNode = new YAHOO.widget.TextNode(buildingVentilationSystemsObject, buildingProducts, false);
		
		
		

		
		
		
		//hospitality
		var hospitality = new YAHOO.widget.MenuNode("Hospitality", tree.getRoot(), false);
		
		//commercial food service object and node
		var buildingCommercialObject = { label: "Commercial Food Service", href: "/business/commercial-food-services/" }; 
		
		var hospitalityCommercialNode = new YAHOO.widget.TextNode(buildingCommercialObject, hospitality, false);
		
		//monitors and plasma object and node
		var buildingCommercialObject2 = { label: "Monitors & Plasma Displays", href: "/bps_hospitality/" }; 
		
		var hospitalityMonitorsNode = new YAHOO.widget.MenuNode(buildingCommercialObject2, hospitality, false);
		
		//hospitality info sys object and node
		var buildingCommercialObject3 = { label: "Point of Sale & Drive-Thru", href: "/pos/" }; 
		
		var hospitalityInformationNode = new YAHOO.widget.TextNode(buildingCommercialObject3, hospitality, false);
		




        
		




		//medical video
		var medicalVideoObject = { label: "Medical &amp; Industrial Video", href: "/medicalVideo/" }; 
		var medicalVideo = new YAHOO.widget.MenuNode(medicalVideoObject, tree.getRoot(), false);
		
		//mobile computers
		var mobileComputersObject = { label: "Mobile Computers", href: "/toughbook/" }; 
		var mobileComputers = new YAHOO.widget.MenuNode(mobileComputersObject, tree.getRoot(), false);
		
		//office products
		var officeProductsObject = { label: "Office Products", href: "/office/" }; 
		var officeProducts = new YAHOO.widget.MenuNode(officeProductsObject, tree.getRoot(), false);
		
		//plasma and monitors
		var plasmaMonitorsObject = { label: "Plasma & Monitors", href: "/bps_displays/" }; 
		var plasmaMonitors = new YAHOO.widget.MenuNode(plasmaMonitorsObject, tree.getRoot(), false);

		//professional video
		var proVideoObject = { label: "Professional Video", href: "/provideo/" }; 
		var proVideo = new YAHOO.widget.MenuNode(proVideoObject, tree.getRoot(), false);
        
        
        //OLD PROVIDEO DD 
		//var professionalVideo = new YAHOO.widget.MenuNode("Professional Video", tree.getRoot(), false);
		
		//camcorders object and node
		//var proVideoCamcorderObject = { label: "Camcorders", href: "/business/provideo/cat_camcorders.asp" }; 	
		//var proVideoCamcorderNode = new YAHOO.widget.TextNode(proVideoCamcorderObject, professionalVideo, false);
		
        //camera object and node
		//var proVideoCameraObject = { label: "Camera Systems", href: "/business/provideo/cat_cam_systems.asp" }; 	
		//var proVideoCameraNode = new YAHOO.widget.TextNode(proVideoCameraObject, professionalVideo, false);
		
        //mixers object and node
		//var proVideoMixersObject = { label: "Mixers & Switchers", href: "/business/provideo/cat_mixers_studio.asp" }; 	
		//var proVideoMixersNode = new YAHOO.widget.TextNode(proVideoMixersObject, professionalVideo, false);
		
        //monitors object and node
		//var proVideoMonitorsObject = { label: "Monitors & Plasma Displays", href: "/business/provideo/cat_displays.asp" }; 	
		//var proVideoMonitorsNode = new YAHOO.widget.TextNode(proVideoMonitorsObject, professionalVideo, false);
		
        //tape object and node
		//var proVideoTapeObject = { label: "Tape & Media", href: "/business/provideo/cat_tape_media.asp" }; 		
		//var proVideoTapeNode = new YAHOO.widget.TextNode(proVideoTapeObject, professionalVideo, false);
		
        //video recorders object and node
		//var proVideoRecordersObject = { label: "Video Recorders & Players", href: "/business/provideo/cat_vtrs_vcrs.asp" }; 
		//var proVideoRecordersNode = new YAHOO.widget.TextNode(proVideoRecordersObject, professionalVideo, false);
		// OLD PROVIDEO DD END

		//projectors
		var projectorsObject = { label: "Projectors", href: "/projectors/" }; 
		var projectors = new YAHOO.widget.MenuNode(projectorsObject, tree.getRoot(), false);

		//security products
		var securityObject = { label: "Security Products", href: "/cctv/" }; 
		var security = new YAHOO.widget.MenuNode(securityObject, tree.getRoot(), false);		

		
		
		//systems integration
		var systemsIntegration = new YAHOO.widget.MenuNode("Systems Integration", tree.getRoot(), false);

        //enterprise solutions object and node
		var systemsEnterpriseSolutionsObject = { label: "Enterprise Solutions", href: "http://www.panasonic.com/experience/" }; 
		
		var systemsEnterpriseSolutionsNode = new YAHOO.widget.MenuNode(systemsEnterpriseSolutionsObject, systemsIntegration, false);
		

		//render our TreeView nav:
		tree.draw();
		
		//defined in local site js
		//ex: (comm foods) /business/includes/local-includes/commercial-food-services/js/local_left_nav.js
		setCurrentSiteDefault();
	}
	
	//When the DOM is done loading, we can initialize our TreeView
	//instance:
	YAHOO.util.Event.onDOMReady(treeInit);

})();//anonymous function wrapper closed; () notation executes function

//listener for building products expansion
YAHOO.util.Event.addListener("ygtv1", "click", setLeftNavBuildingProductsChildHoverFromLabelOnAvailable);
//used if the user clicks the label instead of the arrow (checks for availability)
YAHOO.util.Event.addListener("ygtvlabelel1", "click", setLeftNavBuildingProductsChildHoverFromLabelOnAvailable);

function setLeftNavBuildingProductsChildHoverFromLabelOnAvailable()
{
    YAHOO.util.Event.onAvailable("ygtv2", setLeftNavBuildingProductsChildHover);
}

function setLeftNavBuildingProductsChildHover()
{
    //cordless tools
	var ygtv2 = document.getElementById("ygtv2");

	//set up ie hover for cordless tools
	if (ygtv2 != null)
	{
	    if (defaultTab == 2)
	    {
		    ygtv2.className = "hovered";
		}
		else
		{
		    var originalClass = ygtv2.className;
		}

		var ygtvlabelel2 = document.getElementById("ygtvlabelel2");
		
		//checks to see if label hover should be set as well (white font on hover of td)
		if (ygtvlabelel2 != null)
		{
		    if (defaultTab == 2)
		    {
		        ygtvlabelel2.className = "hovered";
		    }
		    else
		    {
			    var labelOriginalClass = ygtvlabelel2.className;
				
			    ygtv2.onmouseover = function() { ygtv2.className = "hovered"; ygtvlabelel2.className = "hovered";};
			    ygtv2.onmouseout = function() { ygtv2.className = originalClass; ygtvlabelel2.className = labelOriginalClass; };
		    }
		}
		else
		{
			ygtv2.onmouseover = function() { ygtv2.className = "hovered"; };
			ygtv2.onmouseout = function() { ygtv2.className = originalClass };
		}
	}

	//ventilation systems
	var ygtv3 = document.getElementById("ygtv3");

	if (ygtv3 != null)
	{
	    if (defaultTab == 3)
	    {
		    ygtv3.className = "hovered";
		}
		else
		{
		    var originalClass = ygtv3.className;
		}
		
		var ygtvlabelel3 = document.getElementById("ygtvlabelel3");
		
		//checks to see if label hover should be set as well (white font on hover of td)
		if (ygtvlabelel3 != null)
		{
		    if (defaultTab == 3)
		    {
		        ygtvlabelel3.className = "hovered";
		    }
		    else
		    {
			    var labelOriginalClass = ygtvlabelel3.className;
				
			    ygtv3.onmouseover = function() { ygtv3.className = "hovered"; ygtvlabelel3.className = "hovered";};
			    ygtv3.onmouseout = function() { ygtv3.className = originalClass; ygtvlabelel3.className = labelOriginalClass; };
		    }
		}
		else
		{
			ygtv3.onmouseover = function() { ygtv3.className = "hovered"; };
			ygtv3.onmouseout = function() { ygtv3.className = originalClass };
		}
	}
}

//listener for hospitality expansion
YAHOO.util.Event.addListener("ygtv4", "click", setLeftNavHospitalityChildHoverFromLabelOnAvailable);
//used if the user clicks the label instead of the arrow (checks for availability)
YAHOO.util.Event.addListener("ygtvlabelel4", "click", setLeftNavHospitalityChildHoverFromLabelOnAvailable);

function setLeftNavHospitalityChildHoverFromLabelOnAvailable()
{
	YAHOO.util.Event.onAvailable("ygtv5", setLeftNavHospitalityChildHover);
}

function setLeftNavHospitalityChildHover()
{		
	//commercial food service 
	var ygtv5 = document.getElementById("ygtv5");

	if (ygtv5 != null)
	{
	    if (defaultTab == 5)
	    {
		    ygtv5.className = "hovered";
		}
		else
		{
		    var originalClass = ygtv5.className;
		}
		
		var ygtvlabelel5 = document.getElementById("ygtvlabelel5");

		//checks to see if label hover should be set as well (white font on hover of td)
		if (ygtvlabelel5 != null)
		{
		    if (defaultTab == 5)
		    {
		        ygtvlabelel5.className = "hovered";
		    }
		    else
		    {
			    var labelOriginalClass = ygtvlabelel5.className;
			
			    ygtv5.onmouseover = function() { ygtv5.className = "hovered"; ygtvlabelel5.className = "hovered";};
			    ygtv5.onmouseout = function() { ygtv5.className = originalClass; ygtvlabelel5.className = labelOriginalClass; };
		    }
		}
		else
		{
			ygtv5.onmouseover = function() { ygtv5.className = "hovered"; };
			ygtv5.onmouseout = function() { ygtv5.className = originalClass };
		}
	}
	
	//monitors & plasma displays
	var ygtv6 = document.getElementById("ygtv6");

	if (ygtv6 != null)
	{
	    if (defaultTab == 6)
	    {
		    ygtv6.className = "hovered";
		}
		else
		{
		    var originalClass = ygtv6.className;
		}
		
		var ygtvlabelel6 = document.getElementById("ygtvlabelel6");
	
		//checks to see if label hover should be set as well (white font on hover of td)
		if (ygtvlabelel6 != null)
		{
		    if (defaultTab == 6)
		    {
		        ygtvlabelel6.className = "hovered";
		    }
		    else
		    {
			    var labelOriginalClass = ygtvlabelel6.className;
				
			    ygtv6.onmouseover = function() { ygtv6.className = "hovered"; ygtvlabelel6.className = "hovered";};
			    ygtv6.onmouseout = function() { ygtv6.className = originalClass; ygtvlabelel6.className = labelOriginalClass; };
		    }
		}
		else
		{
			ygtv6.onmouseover = function() { ygtv6.className = "hovered"; };
			ygtv6.onmouseout = function() { ygtv6.className = originalClass };
		}
	}
	
	//hospitality information systems
	var ygtv7 = document.getElementById("ygtv7");

	if (ygtv7 != null)
	{
	    if (defaultTab == 7)
	    {
		    ygtv7.className = "hovered";
		}
		else
		{
		    var originalClass = ygtv7.className;
		}
		
		var ygtvlabelel7 = document.getElementById("ygtvlabelel7");
		
		//checks to see if label hover should be set as well (white font on hover of td)
		if (ygtvlabelel7 != null)
		{
		    if (defaultTab == 7)
		    {
		        ygtvlabelel7.className = "hovered";
		    }
		    else
		    {
			    var labelOriginalClass = ygtvlabelel7.className;
				
			    ygtv7.onmouseover = function() { ygtv7.className = "hovered"; ygtvlabelel7.className = "hovered";};
			    ygtv7.onmouseout = function() { ygtv7.className = originalClass; ygtvlabelel7.className = labelOriginalClass; };
		    }
		}
		else
		{
			ygtv7.onmouseover = function() { ygtv7.className = "hovered"; };
			ygtv7.onmouseout = function() { ygtv7.className = originalClass };
		}
	}
}

//listener for systems integration expansion
YAHOO.util.Event.addListener("ygtv15", "click", setLeftNavSystemsChildHoverFromLabelOnAvailable);
//used if the user clicks the label instead of the arrow (checks for availability)
YAHOO.util.Event.addListener("ygtvlabelel15", "click", setLeftNavSystemsChildHoverFromLabelOnAvailable);

function setLeftNavSystemsChildHoverFromLabelOnAvailable()
{
	YAHOO.util.Event.onAvailable("ygtv16", setLeftNavSystemsChildHover);
}

function setLeftNavSystemsChildHover()
{
    //Enterprise Systems
	var ygtv16 = document.getElementById("ygtv16");

	if (ygtv16 != null)
	{
	    if (defaultTab == 16)
	    {
		    ygtv16.className = "hovered";
		}
		else
		{
		    var originalClass = ygtv16.className;
        }

		var ygtvlabelel16 = document.getElementById("ygtvlabelel16");
	
		//checks to see if label hover should be set as well (white font on hover of td)
		if (ygtvlabelel16 != null)
		{
		    if (defaultTab == 16)
		    {
		        ygtvlabelel16.className = "hovered";
		    }
		    else
		    {
			    var labelOriginalClass = ygtvlabelel16.className;
				
			    ygtv16.onmouseover = function() { ygtv16.className = "hovered"; ygtvlabelel16.className = "hovered";};
			    ygtv16.onmouseout = function() { ygtv16.className = originalClass; ygtvlabelel16.className = labelOriginalClass; };
		    }
		}
		else
		{
			ygtv16.onmouseover = function() { ygtv16.className = "hovered"; };
			ygtv16.onmouseout = function() { ygtv16.className = originalClass };
		}
	}
}