/*Odds matrix tree menu javascript*/
var tree = new YAHOO.widget.TreeView("treeDiv1");
var globalID;
function showOdd(){
    var rootNode = tree.getRoot();
    
    var idsStr = "";
    
    if (rootNode != null && rootNode.hasChildren()) {
        var childrenNode = rootNode.children;
        for (var i = 0, j = childrenNode.length; i < j; i++) {
            var tempStr = putAllCheckedNodeIdToStr(childrenNode[i]);
            if (tempStr != "") {
                if (idsStr == "") {
                    idsStr = tempStr;
                }
                else {
                    idsStr = idsStr + ":" + tempStr;
                }
            }
        }
    }
    if (idsStr == "") {
        showDiv("showOddsErrorMessage");
    }
    else {
        hideDiv('showOddsErrorMessage');
        visitOddstable(idsStr);
    }
}

function showQuickBetOdd(){
    var rootNode = tree.getRoot();
    var idsStr = "";
    
    if (rootNode != null && rootNode.hasChildren()) {
        var childrenNode = rootNode.children;
        for (var i = 0, j = childrenNode.length; i < j; i++) {
            var tempStr = putAllCheckedNodeIdToStr(childrenNode[i]);
            if (tempStr != "") {
                if (idsStr == "") {
                    idsStr = tempStr;
                }
                else {
                    idsStr = idsStr + ":" + tempStr;
                }
            }
        }
    }
    if (idsStr == "") {
        showDiv("showOddsErrorMessage");
    }
    else {
        hideDiv('showOddsErrorMessage');
        visitQuickBetOddsTable(idsStr);
    }
}

function hideDiv(divId){
    $(divId).style.display = "none"
}

function showDiv(divId){
    window.clearTimeout(st);
    $(divId).style.display = "block";
}

function visitOddstable(id){
	
	//reset the value of searchedName
	resetValueOfSearchedName();
	
    betTypeIdShown = -1;
    scopeIdShown = -1;
    showLoadingPic();
    curBetType='all';
    curScope=-1;
    timeFilters = null;
    var ajaxReq = new XHR({
        'method': 'post',
        'autoCancel': 'true',
        onSuccess: function(response){
            fillOddsTable(response);
            urlStatus = 'oddstable';
            changeHeadPic();
        },
        onFailure: function(){
            processFailure();
        }
    });
    globalID = id;
    
    ajaxReq.send('/oddstable.do', 'id=' + id + '&x=' + (Math.random() * 100));
    ajaxReq = null;
    
    afterClickLeftTree();
}

function visitQuickBetOddsTable(id){
	//reset the value of searchedName
	resetValueOfSearchedName();
	
    betTypeIdShown = -1;
    scopeIdShown = -1;
    showLoadingPic();
    timeFilters = null;
    var ajaxReq = new XHR({
        'method': 'post',
        'autoCancel': 'true',
        onSuccess: function(response){
            fillOddsTable(response);
            urlStatus = 'quickBetOddsTable';
            changeHeadPic();
        },
        onFailure: function(){
            processFailure();
        }
    });
    globalID = id;
    
    ajaxReq.send('/quickBetOddsTable.do', 'id=' + id + '&x=' + (Math.random() * 100));
    ajaxReq = null;
}

function showLoadingPic(){
    //$("oddstable").innerHTML = $("div_loadPicTab").innerHTML;
    $("div_loadPicTab").style.display = "block";
}

function visitOddstableRisk(id){
    betTypeIdShown = -1;
    scopeIdShown = -1;
    var ajaxReq = new XHR({
        'method': 'post',
        'autoCancel': 'true',
        onSuccess: function(response){
            if ($defined($('oddstable').getChildren()[0])) {
                $('oddstable').removeChild($('oddstable').getChildren()[0]);
            }
            fillOddsTable(response);
        },
        onFailure: function(){
            processFailure();
        }
    });
    globalID = id;
    ajaxReq.send('/riskMatchBettings.do', 'id=' + id + '&x=' + (Math.random() * 100));
    ajaxReq = null;
}

function putAllCheckedNodeIdToStr(node){
    var idStr = "";
    
    if (node != null && node.hasChildren()) {
        var level2Nodes = node.children;
        
        for (var i0 = 0, j0 = level2Nodes.length; i0 < j0; i0++) {
            var currentNode = level2Nodes[i0];
            
            if (currentNode.checkState != 0) {
                var level3Nodes = currentNode.children;
                
                for (var i1 = 0, j1 = level3Nodes.length; i1 < j1; i1++) {
                    var currentNode1 = level3Nodes[i1];
                    if (currentNode1.checkState != 0) {
                        if (idStr == "") {
                            idStr = currentNode1.id;
                        }
                        else {
                            idStr = idStr + ":" + currentNode1.id;
                        }
                    }
                }
            }
        }
    }
    return idStr;
}

function nodeClick(id, index){
    
    if ($defined($("tm")) && $defined($("tFilter"))) {
        $("tm").innerHTML = "";
        $("tFilter").value = "";
    }
    //BetonBet only
    if ($defined($('iframeMidTop'))) {
        var iframeForBOB = $('iframeMidTop');
        if (iframeForBOB.src.indexOf('sports.betonbet.com') > -1) {
            iframeForBOB.style.display='none';
        }
    }
    //Betexpress only
    if($defined($('topBannerDivBE')) ){
       	   $('topBannerDivBE').setStyle('visibility','hidden');
       	   $('topBannerDivBE').setStyle('height','0px');       	
       	   $('BsArea').setStyles('');
       	   if( !tempFlag ){
       	   		originalTop=originalTop-198; 
       	   		tempFlag = true;      	   	
       	   };
    }
    YAHOO.widget.TreeView.getNode(id, index).toggle();
}

function uncheckAll(){
    var topNodes = tree.getRoot().children;
    for (var i = 0; i < topNodes.length; ++i) {
        var childrenNodes = topNodes[i].children;
        for (var j = 0; j < childrenNodes.length; ++j) {
            childrenNodes[j].uncheck();
        }
    }
}
