( function() {
    var tree; // will hold our TreeView instance

    function treeInit() {
        // Hand off ot a method that randomly generates tree nodes:
        buildTextNodeTree();

        // handler for collapsing all nodes
        YAHOO.util.Event.on("collapse", "click", function(e) {
            tree.collapseAll();
            YAHOO.util.Event.preventDefault(e);
        });
    }

    function buildTextNodeTree() {
        tree = new YAHOO.widget.TreeView("treeDiv1");

        var root = tree.getRoot();
        
		var p1obj = {
            label :"SaaS Solution",
            link :"solutions/ASP.html"
        }

        var p2obj = {
            label :"Server Solution",
            link :"solutions/Server.html"
        }

        var p1 = new YAHOO.widget.TextNode(p1obj, root, false);
        var p2 = new YAHOO.widget.TextNode(p2obj, root, false);


		/** build all sub menu for FAQ * */
   		var p1_1obj = {
            label :"Home Business",
            link :"solutions/home_business.html"
        }
		   	
		var p1_2obj = {
            label :"Small Business",
            link :"solutions/small_midium.html"
        }
		
		var p2_1obj = {
            label :"Large Enterprise",
            link :"solutions/large_enterprise.html"
		};
		
	    var p2_2obj = {
            label :"Multi-location Business",
            link :"solutions/Transcontinental .html"
		};
		

	 			
		

		var p1_1 = new YAHOO.widget.TextNode(p1_1obj, p1, false);
		var p1_2 = new YAHOO.widget.TextNode(p1_2obj, p1, false);
		
		var p2_1 = new YAHOO.widget.TextNode(p2_1obj, p2, false);
		var p2_2 = new YAHOO.widget.TextNode(p2_2obj, p2, false);

        // setup the event listeners
        tree.subscribe("labelClick", function(node) {
            if (node.data.link != "#")
            {
                updateContents(node);
            }
        });


        // render default page
        // document.getElementById("contents").innerHTML =
        // YAHOO.util.Connect.asyncRequest("GET", o.data.link, callback);

        // render the tree
        tree.draw();
    }

    function updateContents(o) {
        var content = document.getElementById("contents");

        var callback = {
            success : function(a) {
                content.innerHTML = a.responseText;
                content.style.visibility = "visible";
            },
            failure : function(a) {
                content.innerHTML = "This page is currently updating. Please come back later.";
                content.style.visibility = "visible";
            }
        };

        var conn = YAHOO.util.Connect
        .asyncRequest("GET", o.data.link, callback);
    }

    //When the DOM is done loading, we can initialize our TreeView
    //instance:
    YAHOO.util.Event.onDOMReady(treeInit);
})();