// *********************************
// Wellness related code begins here
// *********************************
var wellness_categories_array = new Array('Nutrition','Health & beauty',
                'Weight management','Sports Nutrition','Herbal',
                'Alternative medicine');
                
var category_index = '';

// *********************************
// Tree Object
// *********************************
var TreeTest = function(){
    // shorthand    
    var Tree = Ext.tree;
    return {
        init : function( parm ){
            // yui-ext tree
            var tree = new Tree.TreePanel({
                el:'tree',
                animate:true,
                autoScroll:true,
                loader: new Tree.TreeLoader({dataUrl:'test_service.do?well_cat='+parm}),
                enableDD:false,
                containerScroll: true,
                dropConfig: {appendOnly:true}
            });
            
            tree.on({
                'click' : {
                    fn: nodeclicked,
                    scope: this
                },
                'mouseover' : {
                    fn: this.onMouseOver,
                    scope: this
                },
                'mouseout' : {
                    fn: this.onMouseOut,
                    scope: this
                }
            });

            // add a tree sorter in folder mode
            new Tree.TreeSorter(tree, {folderSort:true});

            // set the root node
            var root = new Tree.AsyncTreeNode({
                text: 'Category Searched',
                draggable:false, // disable root node dragging
                id:'source'
            });
            tree.setRootNode(root);

            // render the tree
            tree.render();

            root.expand(false, /*with anim*/ true);
        }
    };
    
    function nodeclicked(node){
        var node_text = node.text;
        if( node_text != "" ){
            getsupplementcombosfor(node_text);
        }
    } 
}();
        
       
                       
function toggle_wellness_categories(){
    var t = document.getElementById('wellness_action_text').innerHTML;
    if( wellness_cat_text1 == t ){
        document.getElementById('wellness_action_text').innerHTML = wellness_cat_text2;
        var s = '';
        for(var i = 0; i < wellness_categories_array.length; i++){
            s = s + '<a href=javascript:wellness_category_clicked('+i+
                    ')>- '+wellness_categories_array[i]+'</a><br>';
        }
        document.getElementById('wellness_categories').innerHTML = s;
    }else{
        document.getElementById('wellness_action_text').innerHTML = wellness_cat_text1;
        document.getElementById('wellness_categories').innerHTML = '';
    }   
}

function wellness_category_clicked( click_index ){
    tempfixIE();
    category_index = click_index;
    addTab(wellness_categories_array[ click_index ],'pages/wellnessCategoryFrame.jsp',
        tab_load_chain_method,true);
}

function tab_load_chain_method(){
    TreeTest.init( category_index );
}
var last_cat;
function getsupplementcombosfor(category){
    last_cat = category;
    var url = 'getcatsupp.do?category='+category.replace("&","*am*");
    makeAjaxCall( url, gotsupplementcombos );
}

function tempfixIE(){
    for(var i = 0; i < wellness_categories_array.length; i++){
        removeTab(wellness_categories_array[i]);
    }
}

function gotsupplementcombos(theXMLObject){
    var response = theXMLObject.documentElement;
    var x = response.getElementsByTagName("option");
    var val,concat = "<b>Supplements associated with " + last_cat + "</b><br><br>";
    for(var i = 0;i < x.length; i++){
        val = x[i].getElementsByTagName("val")[0].firstChild.data;
        concat += "&nbsp;&nbsp;&nbsp;&nbsp;" + val +  "<br>";
    }   
    document.getElementById('combin_holder').style.visibility = 'visible';
    document.getElementById('combin_holder').innerHTML = concat;
}

function commonPageBuild(){
    var coordinates = findPos( document.getElementById( 'mainTable' ) );
    var mObj = document.createElement('DIV');
    mObj.id = 'menuPageShow';
    mObj.style.width = '530px';
    mObj.style.height = '524px';
    mObj.style.position = 'absolute';
    mObj.style.left = (coordinates[0] + 212 ) + 'px';//centered on the main table
    mObj.style.top = (coordinates[1] + 10) + 'px';//top of the main table
    mObj.style.border = '1px solid #886e36';
    document.body.appendChild(mObj);        
    mObj.innerHTML = "<table width='530px' height='95%'><tr><td align='right'>"+
    "<a class='closeLink' href='javascript:removeMenuPage();'>Close X</a></td></tr><tr><td><div class='menuPageContentStyle' id='menuPageContent'></td></tr></table>";    
}

function showFAQPage(){
    var url = 'faqContent.do';
    makeAjaxCall( url, builtFaqPage );
}

function builtFaqPage(){
    removeMenuPage();
    commonPageBuild();
    var url='pages/faqPage.jsp';
    makeAjaxCallFillDiv( url, 'menuPageContent', gotMenuPage );
}

function showMenuPage( pageName ){
    removeMenuPage();
    commonPageBuild();
    var url = 'menuContent.do?colname_page_content='+pageName;
    makeAjaxCallFillDiv( url, 'menuPageContent', gotMenuPage );
}
var showPage = "";
function showQuestionPage( page ){
    showPage = page;
    removeMenuPage();   
    commonPageBuild();
    var url = 'pages/questionsPage.jsp?page='+page;
    makeAjaxCallFillDiv( url, 'menuPageContent', gotQuestionPage );
}

function gotMenuPage( returnHTML ){
}

function removeMenuPage(){
    if( document.getElementById('menuPageShow') != null ){
        document.body.removeChild(document.getElementById('menuPageShow'));
    }    
}

function gotQuestionPage(){
    setTimeout('waited()',1000);
    
}
function waited(){
    document.getElementById(showPage).scrollIntoView(true);
}