﻿// JScript 文件
/// <remarks>
/// TopMenu
///公共JS，隐藏DIV，显示蒙版，去空格等
/// 
/// 修改纪录
///    

 


        function IeTrueBody()
        {
            return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body;
        }

        function GetScrollTop()
        {
            var w3c=(document.getElementById)? true: false;
            var agt=navigator.userAgent.toLowerCase();
            var ie = ((agt.indexOf("msie") != -1) && (agt.indexOf("opera") == -1) && (agt.indexOf("omniweb") == -1));

             return ie ? IeTrueBody().scrollTop : window.pageYOffset;
        }



	    //显示或隐藏最底层DIV(基础页面)
	    function ShowHideLowerDiv(divId, isShow)
	    {
	        if(isShow == true)
	        {
	            document.getElementById(divId).style.display = "";
	        }
	        else
	        {
	            document.getElementById(divId).style.display = "none";
	        }
	    }
	    
	    //显示或隐藏最高层DIV(小窗口)
	    function ShowHideUpperDiv(divId, isShow)
	    {
	        if(isShow == true)
	        {
                document.getElementById(divId).style.display = "";
                document.getElementById(divId).style.position = "absolute";
                document.getElementById(divId).style.zIndex = "789";
                var tmp = document.body.scrollTop;
                document.getElementById(divId).style.top = 150 + GetScrollTop() + "px";
                document.getElementById(divId).style.left = (document.body.offsetWidth-document.getElementById(divId).clientWidth)/2+"px";
                
	        }
	        else
	        {
	            document.getElementById(divId).style.display = "none";
	        }
	    }
	    
	    //显示或隐藏蒙版层
	    function ShowHideMaskDiv(divId, isShow)
	    {
	        if(isShow == true)
	        {
                document.getElementById(divId).style.position = "absolute";
                document.getElementById(divId).style.zIndex = "1";
                document.getElementById(divId).style.width = document.body.offsetWidth + "px";
                document.getElementById(divId).style.height = document.body.offsetHeight + "px";
                document.getElementById(divId).style.top = "0px";
                document.getElementById(divId).style.left = "0px";
                document.getElementById(divId).style.background = "#000000";
                document.getElementById(divId).style.filter = "alpha(opacity=40)";
                document.getElementById(divId).style.opacity = "0.40";
                document.getElementById(divId).style.display = "";
            }
            else
            {
                document.getElementById(divId).style.display = "none";
                document.getElementById(divId).style.position = "";
                document.getElementById(divId).style.background = "#ffffff";
                document.getElementById(divId).style.filter = "alpha(opacity=100)";
            }
	    }
	
	    //设置蒙版层框架,盖住下拉框
	    function ShowMaskIFrame(iframeId)
	    {
            document.getElementById(iframeId).style.position = "absolute";
            document.getElementById(iframeId).style.visibility = "inherit";
            document.getElementById(iframeId).style.top = "0px";
            document.getElementById(iframeId).style.left = "0px";
            document.getElementById(iframeId).style.width = document.body.offsetWidth + "px";
            document.getElementById(iframeId).style.height = document.body.offsetHeight + "px";
            document.getElementById(iframeId).style.zIndex = "-1";
            document.getElementById(iframeId).style.background = "#000000";
            document.getElementById(iframeId).style.filter = "progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=0)";
	    }
	    
        //去除空格
        function  trim(str)
        {
            for(var  i  =  0  ;  i<str.length  &&  (str.charAt(i)==" " || str.charAt(i)=="　" || str.charAt(i)=="%" )  ;  i++  )  ;
            for(var  j  =str.length;  j>0  &&  (str.charAt(j-1)==" " || str.charAt(i)=="　" || str.charAt(i)=="%" )  ;  j--)  ;
            if(i>j)  return  "";  
            return  str.substring(i,j);  
        }

        //权限集Div生成脚本
        //显示
        function showDiv(treeID,iCount,ctlID)
        {
            if(iCount > 0)
            {
                for(var i=1; i <= iCount; i++)
                {
                    var strTemp = "";
                    if(i < 10)
                    {
                        strTemp = treeID.substr(0,3) + '00' + i;
                    }
                    else if(i < 100)
                    {
                        strTemp = treeID.substr(0,3) + '0' + i;
                    }
                    else
                    {
                        strTemp = treeID.substr(0,3) + i;
                    }
                    
                    if(document.getElementById(ctlID + "_pnl_List_" + strTemp)!=null)
                    {
                        ShowHideLowerDiv(ctlID + "_pnl_List_"+strTemp,false);
	                    document.getElementById(ctlID + "_pnl_tab_child_" + strTemp).className = "tabDiv";
	                    document.getElementById(ctlID + "_chk_tab_" + strTemp).disabled = false;
	                }
                }
                
                ShowHideLowerDiv(ctlID + "_pnl_List_" + treeID,true);
	            document.getElementById(ctlID + "_pnl_tab_child_" + treeID).className = "tabDiv tabFocusDiv";
	            document.getElementById(ctlID + "_chk_tab_" + treeID).disabled = false;
            }
            
            return false;
        }
        
        function showHideContentDiv(treeID,iCount,ctlID)
        {
            var imgTemp = document.getElementById(ctlID + "_img_title_" + treeID)
            var strSrc = imgTemp.src;
            var iStart = strSrc.indexOf("images");
            var strStart = strSrc.substr(0,iStart);
            if(strSrc.substr(iStart) == "images/collapse.gif")
            {
                imgTemp.src = strStart + "images/bu_expand.gif";
            }
            else
            {
                imgTemp.src = strStart + "images/collapse.gif";
            }
            
            if(iCount > 0)
            {
                for(var i=1; i <= iCount; i++)
                {
                    var strTemp = "";
                    if(i < 10)
                    {
                        strTemp = treeID + '00' + i;
                    }
                    else if(i < 100)
                    {
                        strTemp = treeID + '0' + i;
                    }
                    else
                    {
                        strTemp = treeID + i;
                    }
                    
	                if(document.getElementById(ctlID + "_pnl_content_" + strTemp).style.display == "")
	                {
                        ShowHideLowerDiv(ctlID + "_pnl_content_" + strTemp,false);
                    }
                    else
                    {
                        ShowHideLowerDiv(ctlID + "_pnl_content_" + strTemp,true);
                    }
                }
            }
            
            return false;
        }
        
        function checkTabChild(treeID,iCount,ctlID)
        {
            var isChecked = document.getElementById(ctlID + "_chk_tab_"+treeID).checked;
            if(iCount > 0)
            {
                for(var i=1; i <= iCount; i++)
                {
                    var strTemp = "";
                    if(i < 10)
                    {
                        strTemp = treeID + '00' + i;
                    }
                    else if(i < 100)
                    {
                        strTemp = treeID + '0' + i;
                    }
                    else
                    {
                        strTemp = treeID + i;
                    }
                    
	                document.getElementById(ctlID + "_chk_title_" + strTemp).checked = isChecked;
	                var iChildCount = getTreeCount(strTemp,ctlID);
                    checkTitleChild(strTemp,iChildCount,ctlID);
                }
            }       
            return false;
        }

        function checkTitleChild(treeID,iCount,ctlID)
        {
            var isChecked = document.getElementById(ctlID + "_chk_title_"+treeID).checked;
            if(iCount > 0)
            {
                for(var i=1; i <= iCount; i++)
                {
                    var strTemp = "";
                    if(i < 10)
                    {
                        strTemp = treeID + '00' + i;
                    }
                    else if(i < 100)
                    {
                        strTemp = treeID + '0' + i;
                    }
                    else
                    {
                        strTemp = treeID + i;
                    }
                    
	                document.getElementById(ctlID + "_chk_content_" + strTemp).checked = isChecked;
                }
            }    
            if(isChecked == false)
            {
                document.getElementById(ctlID + "_chk_tab_" + treeID.substr(0,6)).checked = isChecked;
            }
            else
            {
                var iTabCount = getTreeCount(treeID.substr(0,6),ctlID)
                var iTabCheckedCount = getTreeIsCheckedCount(treeID.substr(0,6),ctlID);
                if(iTabCheckedCount == iTabCount)
                {
                    document.getElementById(ctlID + "_chk_tab_" + treeID.substr(0,6)).checked = isChecked;
                }
            }
            
            return false;
        }
        
        function checkContent(treeID,ctlID)
        {
            var isChecked = document.getElementById(ctlID + "_chk_content_"+treeID).checked;
            if(isChecked == false)
            {
                document.getElementById(ctlID + "_chk_tab_" + treeID.substr(0,6)).checked = isChecked;
                document.getElementById(ctlID + "_chk_title_" + treeID.substr(0,9)).checked = isChecked;
            }
            else
            {
                var iTitleCount = getTreeCount(treeID.substr(0,9),ctlID)
                var iTitleCheckedCount = getTreeIsCheckedCount(treeID.substr(0,9),ctlID);
                if(iTitleCheckedCount == iTitleCount)
                {
                    document.getElementById(ctlID + "_chk_title_" + treeID.substr(0,9)).checked = isChecked;
                }
                
                var iTabCount = getTreeCount(treeID.substr(0,6),ctlID)
                var iTabCheckedCount = getTreeIsCheckedCount(treeID.substr(0,6),ctlID);
                if(iTabCheckedCount == iTabCount)
                {
                    document.getElementById(ctlID + "_chk_tab_" + treeID.substr(0,6)).checked = isChecked;
                }
            }
            return false;
        }
        
        function getTreeCount(treeID,ctlID)
        {
            var iCount = 20;
            var iNum = 0;
            var strIDBefore = "";
           
            for(var i=1; i <= iCount; i++)
            {
                var strTemp = "";
                if(i < 10)
                {
                    strTemp = treeID + '00' + i;
                }
                else if(i < 100)
                {
                    strTemp = treeID + '0' + i;
                }
                else
                {
                    strTemp = treeID + i;
                }
                
                if(treeID.length == 6)
                {
                    strIDBefore = ctlID + "_chk_title_";
                }
                else if(treeID.length == 9)
                {
                    strIDBefore = ctlID + "_chk_content_";
                }
                
                if(document.getElementById(strIDBefore + strTemp) != null)
                {
                    iNum ++;
                }
                else
                {
                    break;
                }
            }
            
            return iNum
        }

        function getTreeIsCheckedCount(treeID,ctlID)
        {
            var iCount = 20;
            var iNum = 0;
            var strIDBefore = "";
           
            for(var i=1; i <= iCount; i++)
            {
                var strTemp = "";
                if(i < 10)
                {
                    strTemp = treeID + '00' + i;
                }
                else if(i < 100)
                {
                    strTemp = treeID + '0' + i;
                }
                else
                {
                    strTemp = treeID + i;
                }
                
                if(treeID.length == 6)
                {
                    strIDBefore = ctlID + "_chk_title_";
                }
                else if(treeID.length == 9)
                {
                    strIDBefore = ctlID + "_chk_content_";
                }
                
                if(document.getElementById(strIDBefore + strTemp) != null)
                {
                    if(document.getElementById(strIDBefore + strTemp).checked)
                    {
                        iNum ++;
                    }
                }
                else
                {
                    break;
                }
            }
            
            return iNum
        }


    
