﻿/**
* WebClient 中外合资创世科技版权所有

* FileName.......: resourceuser.js
* Project........: WebClient
* Create DateTime: $Date: 2008/11/11 08:44:00 $
*/

ResourceUser = { 
    version:"v2008.11.11",
    lastModifyTime:"",
    historyModifyNote:[
       {"time":"2008/11/11 08:44:00","note":"1. 主导航菜单页面生成\n"},
       {"time":"2008/11/12 11:33:00","note":"1. 主导航菜单图片处理\n2. 导航菜单点击,鼠标响应处理方法"},
       {"time":"2008/11/13 10:26:00","note":"1. 创建云台控制区html元素\n2. 创建视频窗口及窗口数量切换"},
       {"time":"2008/11/20 10:09:00","note":"1. 创建资源树\n"},
       {"time":"2008/11/27 10:09:00","note":"1. 视频播放\n2. 窗口切换,录像,音频等\n3. 增加视频参数调节条"},
       {"time":"2008/11/27 10:09:00","note":"1. 增加视频参数预览设置"},
       {"time":"2008/12/27 10:09:00","note":"1. 完成界面样式切换功能\n2. 完成大小窗口互换"}
    ],
    
    connectId:null,
    activeWindowTitleBgColor:"ac59ff",
    popwnd:null,
    
    // 初始化ResourceUser页面
    Init:function(loginInformation,idResourceUserBox)
    {
        if(!loginInformation || !loginInformation.username)
        {
            Login.Init();
            return;
        }
       
        if(!loginInformation.password)
        {
            loginInformation.password = "";
        }
        Cookie.SetCookie("autologininformation","");
        
        // 先删除原body里所有元素
        var childsBody = $$("DIV");       
        for(var i = 0;i < childsBody.length;i++)
        {
            if(childsBody[i])
            childsBody[i].remove();
        }
        
        // 开始生成ResourceUser页面元素
        if(typeof idResourceUserBox == "undefined" || idResourceUserBox == "" || idResourceUserBox == null)
        {
            idResourceUserBox = "resourceuser";
        }
        
        // 没有ResourceUser对象
        if(!$(idResourceUserBox))
        {
            var idResourceUserBox = document.createElement("DIV");
            idResourceUserBox.setAttribute("id",idResourceUserBox);
            idResourceUserBox.className = "";
            idResourceUserBox.style.width = document.body.clientWidth+"px";
            document.getElementsByTagName("body").item(0).appendChild(idResourceUserBox);
        }
        
        var htmlstr = "";   
        htmlstr += this.NavMenu.GetHtml();       
        
        // 创建主功能区html元素
        //htmlstr = "";
        htmlstr += "<table class=\"contentbox\"><tr><td valign=top>";
        
            // 创建左边控制区html元素
            htmlstr += "<div class=\"leftbox\">";
            
                // 创建云台控制区html元素
                htmlstr += "<div>";
                htmlstr += this.VideoControlPad.GetHtml();
                htmlstr += "</div>";
                
                // 创建视频列表控制区html元素
                htmlstr += "<div>";
                htmlstr += this.ResourcePad.GetHtml();
                htmlstr += "</div>";
            
            htmlstr +="</div>";
            // 左边控制区html元素创建完成
            htmlstr += "</td><td>"
            // 创建视频窗口html元素
            htmlstr += "<div class=\"rightbox\">";
            htmlstr += this.PlayWindow.GetHtml();
            htmlstr += "</div>";
        
        htmlstr += "</tr>";
        htmlstr += "<tr><td class=\"bottombox\" colspan=\"2\" ></td></tr>";
        htmlstr += "</table>";
        htmlstr += "<div id=\"loading\" style=\"display:none;position:absolute;z-index:10;top:0px;left:0px;\"><img src=\"images/loading.gif\" width=12 height=12 /></div>";
        $(idResourceUserBox).innerHTML = htmlstr;
        
        WebClient.PreloadImages();
        WebClient.CurBody.Set("resourceuser");
        var t = document.styleSheets[1].rules;
        if(t)
        {
            for(var i = 0 ;i < t.length;i++)
            {
                if(t[i].selectorText == ".ActiveWindowTitleBgColor")
                {
                    this.activeWindowTitleBgColor= t[i].style.backgroundColor;
                }
            }        
        }
        
        //alert(this.activeWindowTitleBgColor);

        this.NavMenu.AttachNavMenuEvent();
        this.NavMenu.DisplayTimer();
        this.VideoControlPad.CreateVideoParamSliderBar("ptzspeed");
        this.VideoControlPad.CreateVideoParamSliderBar("brightness");
        this.VideoControlPad.CreateVideoParamSliderBar("contrast");
        this.VideoControlPad.CreateVideoParamSliderBar("hue");
        this.VideoControlPad.CreateVideoParamSliderBar("saturation");       
        this.VideoControlPad.AttachPtzEvent();
        this.PlayWindow.curWindowNumber = 0;
        this.PlayWindow.ChangeWindow(4);
        this.PlayWindow.AttachChangeNumberEvent();
        
        // 初始化一个Nrcap对象
        NrcapPlugs.Init();
        this.ResourcePad.SetResourceStatus(resourceUserLanguage.resource.open);
        
        // 新创建一个连接
        
        this.connectId = NrcapPlugs.CreateConnection(true,loginInformation,NrcapPlugs.NrcapClientType.resourceUser,ResourceUser.ConnectCallBack);
        if (this.connectId == NrcapPlugs.NrcapError.NRCAP_ERROR_INIT_CONNECTION_FAILED)
        {
            alert("初始化失败");
            this.connectId = null;
        }
        else if(this.connectId == NrcapPlugs.NrcapError.NRCAP_ERROR_CONNECTIONID_ALREADY)
        {
            alert("连接已经存在");
        }
        else if(this.connectId == NrcapPlugs.NrcapError.NRCAP_ERROR_INIT_NRCAPPLUG_FAILED)
        {
            alert("NrcapPlugs还未初始化");
            this.connectId = null;
        }
       
//        var t = document.styleSheets[0].rules;
//        for(var i = 0 ;i < t.length;i++)
//        {
//            alert(t[i].selectorText)
//        }
        
    },
    
    ReceveCallBack:
    {
        countDown:5,
        timer:null,
        showInterval:2000,
        Start:function(eventInfo)
        {
            ResourceUser.ReceveCallBack.countDown = 3;
            
            // 提示报警信息
            if(eventInfo.msgType == 0x0002)
            {
                // 站点上，下线更新资源树状态
                //alert(eventInfo.msgType);
                var s = $("resourcetree").getElementsByTagName("INPUT");//parentIndexs
                for(var i = 0;i < s.length;i++)
                {
                    if(s[i].id.search(eventInfo.guid) != -1)
                    {
                        if($(s[i].id.replace("parentIndexs","")+"childresourcebox"))
                        {
                            //alert($(s[i].id.replace("parentIndexs","")+"childresourcebox").innerHTML);
                            if($(s[i].id.replace("parentIndexs","")+"ico"))
                            {
                                var classname = $(s[i].id.replace("parentIndexs","")+"ico").className;
                                
                                $(s[i].id.replace("parentIndexs","")+"ico").className = (classname.search("_disabled") != -1 ? classname.replace("_disabled","") : classname+"_disabled" );
                            }
                            if($(s[i].id.replace("parentIndexs","")+"childresourcebox"))
                            {
                                WebClient.Expandsion($(s[i].id.replace("parentIndexs","")+"childresourcebox"),$(s[i].id.replace("parentIndexs","")+"title_img"));
                                $(s[i].id.replace("parentIndexs","")+"childresourcebox").innerHTML = "";
                            }
                        }
                        if(eventInfo.msgId = 0x0001)
                        {
                            // 站点退出,检查是否在播放此站点的视频
                            NrcapPlugs.Windows.each
                            (
                                function(item)
                                {
                                    if(item.value.window != null)
                                    {
                                        if(item.value.window.status.playvideoing && item.value.window.ivguid.substr(22) == s[i].id.replace("parentIndexs","").substr(22))
                                        {
                                            // 关闭此路视频
                                            ResourceUser.PlayWindow.StopVideo(item.key);
                                        }
                                        
                                    }
                                }
                            )   
                        }
                    }
                }
            }
            else if(eventInfo.msgId == 0x2018)
            {
                // 平台退出
                alert("服务器已经断开,系统退出!")
                ResourceUser.NavMenu.NavMenuClick("mm_exit");
                return false;
            }
            ResourceUser.ReceveCallBack.Show(eventInfo);
            ResourceUser.ReceveCallBack.timer = setInterval(ResourceUser.ReceveCallBack.Hiden,ResourceUser.ReceveCallBack.showInterval);
        },
        
        Show:function(eventInfo)
        {
            if(!$("tipEventInfoBox"))
            {
                var objTipEventInfoBox = document.createElement("DIV");
                objTipEventInfoBox.setAttribute("id","tipEventInfoBox");
                document.getElementsByTagName("body").item(0).appendChild(objTipEventInfoBox);
		        objTipEventInfoBox.style.filter="Alpha(Opacity=55)";
		        objTipEventInfoBox.style.filter.MozOpacity="0.6";
		        objTipEventInfoBox.style.filter.Opacity="0.6";
            }
            var lt = WebClient.ClientOffset($("mm_eventexplore"));
            $("tipEventInfoBox").style.display = "block";
            $("tipEventInfoBox").style.left=lt[0]+58;
            $("tipEventInfoBox").style.top=0;
            var htmlstr = "";
		    htmlstr += "<table cellpadding='0' cellspacing='0' border='0' ><tr><td><img src=\"images/alarm.gif\" style=\"vertical-align:middle;\" />&nbsp;［"+eventInfo.msgTypeDescription+"］</td></tr><tr><td>"+"时间:"+eventInfo.time+"&nbsp;&nbsp;&nbsp;&nbsp;来源:"+eventInfo.from+"</td></tr><tr><td>"+eventInfo.description+"&nbsp;&nbsp;&nbsp;&nbsp;"+eventInfo.featureDesc+"</td></tr></table>";  
		    $("tipEventInfoBox").innerHTML = htmlstr;		    
            window.status = "［"+eventInfo.msgTypeDescription+"］  时间:"+eventInfo.time+"  来源:"+eventInfo.from+"  "+eventInfo.description+"  "+eventInfo.featureDesc;
        },
        
        Hiden:function()
        {
            if(ResourceUser.ReceveCallBack.countDown > 0)
            {
                ResourceUser.ReceveCallBack.countDown--;
                return;
            }
            else
            {
                if(!$("tipEventInfoBox"))
                {
                    clearInterval(ResourceUser.ReceveCallBack.timer);
                    return;
                }
                clearInterval(ResourceUser.ReceveCallBack.timer);
                ResourceUser.ReceveCallBack.countDown = 3;
                $("tipEventInfoBox").style.display = "none";
                $("tipEventInfoBox").innerHTML = "";
                window.status = "";
            }
        }
        
    },
    
    ConnectCallBack:function(connectRv)
    {
        if(connectRv == NrcapPlugs.NrcapError.NRCAP_SUCCESS)
        {
            Cookie.SetCookie("autologininformation",Object.toJSON({path:NrcapPlugs.Connections.get(this.connectId).connParam.path,username:NrcapPlugs.Connections.get(this.connectId).connParam.username,savepwd:NrcapPlugs.Connections.get(this.connectId).connParam.savepwd,password:NrcapPlugs.Connections.get(this.connectId).connParam.password,selected:true}));
            NrcapPlugs.Event.Start(ResourceUser.ReceveCallBack.Start);
            
            // 保存成功登录信息
            var addNewConnParam = true;
            var logininformations = new Array();
            if(Cookie.GetCookie("logininformation") != null)
            {
                logininformations = eval(Cookie.GetCookie("logininformation"));
                if(Object.isArray(logininformations))
                {
                    for(var i = 0;i < logininformations.length;i++)
                    {
                        
                        logininformations[i].selected = false;                        
                        if(logininformations[i].path == NrcapPlugs.Connections.get(this.connectId).connParam.path)
                        {
                            addNewConnParam = false;
                            logininformations[i].selected = true;                            
                            logininformations[i].savepwd = NrcapPlugs.Connections.get(this.connectId).connParam.savepwd;
                            logininformations[i].username = NrcapPlugs.Connections.get(this.connectId).connParam.username;
                            logininformations[i].password = NrcapPlugs.Connections.get(this.connectId).connParam.password;
                            //break;   
                        }
                    }
                }
            }            

            if(addNewConnParam)
            {
                logininformations.push({path:NrcapPlugs.Connections.get(this.connectId).connParam.path,username:NrcapPlugs.Connections.get(this.connectId).connParam.username,savepwd:NrcapPlugs.Connections.get(this.connectId).connParam.savepwd,password:NrcapPlugs.Connections.get(this.connectId).connParam.password,selected:true})
            }
            
            Cookie.SetCookie("logininformation",Object.toJSON(logininformations));
            ResourceUser.ResourcePad.CreateResourceTree();
        }
        else
        {
            ResourceUser.ResourcePad.SetResourceStatus("");
            // 连接站点失败!
            if(confirm(NrcapPlugs.ShowErrorMessage(connectRv)+",您要重新登录么?"))
            {
                if (WebClient.autoLogin && typeof WebClient.autoLogin == "object" && WebClient.autoLogin.auto && WebClient.autoLogin.auto == true)
                {
                    ResourceUser.Init(WebClient.autoLogin);
                    return;
                }
                if(WebClient.agt.indexOf("msie 7.") != -1)
                {
                    window.showModalDialog("login.html", window,"dialogHeight=220px;dialogWidth=324px;center=yes;status=no;scroll=no;help=no;");
                }
                else
                {
                    window.showModalDialog("login.html", window,"dialogHeight=260px;dialogWidth=324px;center=yes;status=no;scroll=no;help=no;");
                }
                
            }
            else
            {
                // 关闭所有
                ResourceUser.NavMenu.NavMenuClick("mm_exit");
            }
        }
    },
    
    // 设置视频控制,主导航菜单等各按钮状态
    SetResourceUserStatus:function(windowKey)
    {
        $("testbar").innerHTML = "";                    
        if(NrcapPlugs.Windows.get(windowKey) && NrcapPlugs.Windows.get(windowKey).window && NrcapPlugs.Windows.get(windowKey).window.ivguid)
        {
            if(NrcapPlugs.Windows.get(windowKey).window.status.playvideoing)
            {
                this.NavMenu.Disabled(false);
                this.VideoControlPad.VideoParamDisabled(false,NrcapPlugs.Windows.get(windowKey).window.ivguid);
                if(NrcapPlugs.Windows.get(windowKey).window.ptzguid != null)
                {
                    this.VideoControlPad.PtzDisabled(false);
                }
                else
                {
                    this.VideoControlPad.PtzDisabled(true);
                }
                //alert(g_imageprefix+"/"+languageDir+"/top_menuicon"+imagePreFix+"_1.png");
                if (NrcapPlugs.Windows.get(windowKey).window.status.playaudioing)
                {
                    if($("mm_audio"))
                    {
                        $("mm_audio").style.backgroundImage = "url("+g_imageprefix+"/"+languageDir+"/top_menuicon"+imagePreFix+"_4.png)";
                    }
                }
                else
                {
                    if($("mm_audio"))
                    {
                        $("mm_audio").style.backgroundImage = "url("+g_imageprefix+"/"+languageDir+"/top_menuicon"+imagePreFix+"_1.png)";
                    }
                }
                
                if (NrcapPlugs.Windows.get(windowKey).window.status.playupaudioing)
                {
                    if($("mm_upaudio"))
                    {
                        $("mm_upaudio").style.backgroundImage = "url("+g_imageprefix+"/"+languageDir+"/top_menuicon"+imagePreFix+"_4.png)";
                    }
                }
                else
                {
                    if($("mm_upaudio"))
                    {
                        $("mm_upaudio").style.backgroundImage = "url("+g_imageprefix+"/"+languageDir+"/top_menuicon"+imagePreFix+"_1.png)";
                    }
                }
                
                if (NrcapPlugs.Windows.get(windowKey).window.status.recording)
                {
                    if($("mm_record"))
                    {
                        $("mm_record").style.backgroundImage = "url("+g_imageprefix+"/"+languageDir+"/top_menuicon"+imagePreFix+"_4.png)";
                    }
                }
                else
                {
                    if($("mm_record"))
                    {
                        $("mm_record").style.backgroundImage = "url("+g_imageprefix+"/"+languageDir+"/top_menuicon"+imagePreFix+"_1.png)";
                    }
                }
                //$("testbar").innerHTML = "test"+NrcapPlugs.Windows.get(windowKey).window.status.playvideoing+","+NrcapPlugs.Windows.get(windowKey).window.status.recording;
            }
            else
            {
                this.NavMenu.Disabled(true);
                this.VideoControlPad.PtzDisabled(true);
                this.VideoControlPad.VideoParamDisabled(true);
            }
            
        }
        else
        {
            this.NavMenu.Disabled(true);
            this.VideoControlPad.PtzDisabled(true);
                this.VideoControlPad.VideoParamDisabled(true);
        }
    },
    
    // 资源列表
    ResourcePad:
    {
        GetHtml:function()
        {
            var htmlstr = "";
            htmlstr += "<div id=\"resourcebox\" >";
            htmlstr += "<div class=\"titlebar1\" >"+resourceUserLanguage.resource.title+"</div>";
  
            htmlstr += "<div id=\"resourcetree\" class=\"\" style=\""+(WebClient.showVideoParamsBar == true ? "" : "height:430px")+"\" ></div>";
            htmlstr += "</div>"; 
            return htmlstr;
        },
        
        SetResourceStatus:function(noteStr)
        {
            $("resourcetree").innerHTML = "<div>"+noteStr+"</div>";
        },
        
        CreateResourceTree:function(resourceTreeType)
        {
            resourceTreeType = "resourceuser";
            //alert(this.connectId)
            if (ResourceUser.connectId != null)
            {
                ResourceUser.ResourcePad.SetResourceStatus(resourceUserLanguage.resource.CreateResourceTree);
                if(NrcapPlugs.Connections.get(ResourceUser.connectId) != null)
                {
                    var htmlstr = "";
                    //NrcapPlugs.Connections.get(connectId).ResourceSort();
                    var li = NrcapPlugs.Connections.get(ResourceUser.connectId).resource;
                    // 判断一下创建是什么样的资源树
                    if(resourceTreeType == "resourceuser")
                    {
                        var resource = new Hash();
                        //alert(NrcapPlugs.Connections.get(ResourceUser.connectId).connectionType)
			            // 特殊处理直连站点
                        if(NrcapPlugs.Connections.get(ResourceUser.connectId).connectionType == "station")
                        {                            
                            NrcapPlugs.Connections.get(ResourceUser.connectId).inputVideoResource = NrcapPlugs.ResourceSort(li.get("root").resource,"name");
                        }
                        else                       
		                {	                      
                            li.each
                            (
                                function(item)
                                {
                                    //if(item.value.resource != null)alert(item.key+":"+item.value.resource.keys().length)
                                
                                    if(item.value.resource != null && item.value.resource.keys().length > 0 && item.key == "ecoder" || item.key == "mobile_gateway")
                                    {
                                        // 合并编码器类型的资源和网关下的资源
                                        resource.update(item.value.resource);
                                    }
                                }
                            )
                            //alert(resource.inspect())
                            // 排序
                            NrcapPlugs.Connections.get(ResourceUser.connectId).inputVideoResource = NrcapPlugs.ResourceSort(resource,"name");
                   	                
		                } 
                        // 创建资源树脚本
                        htmlstr += ResourceUser.ResourcePad.GetResourceTreeHtml(NrcapPlugs.Connections.get(ResourceUser.connectId).inputVideoResource,NrcapPlugs.NrcapResourceType.input_video,1,li.get("root").description.guid);
                                               
                    }
                    else
                    {
                        var lastnode = "";
                        li.each
                        (
                            function(item)
                            {
                                if(item.value.resource != null && item.value.resource.keys().length > 0)
                                {
                                    lastnode = item.key;
                                    // 先建类型节点
                                    htmlstr += "<div style=\"border:0px solid red;white-space:nowrap;\" ><input id=\""+item.key+"title_img\" class=\"plus\" type='button' onFocus=\"this.blur()\" onclick=\"WebClient.Expandsion($('"+item.key+"childresourcebox'),$('"+item.key+"title_img'),$('"+item.key+"title_img2'));\" ><input id=\""+item.key+"title_img2\" class=\"stationmodel_expand\" type='button' onFocus=\"this.blur()\" onclick=\"WebClient.Expandsion($('"+item.key+"childresourcebox'),$('"+item.key+"title_img'),$('"+item.key+"title_img2'));\"/><a onclick=\"WebClient.Expandsion($('"+item.key+"childresourcebox'),$('"+item.key+"title_img'),$('"+item.key+"title_img2'));\" href=\"#self\" onfocus=\"this.blur()\" >"+item.value.name+"</a></div>";
                                    htmlstr += "<div id=\""+item.key+"childresourcebox\" class=\"childresourcebox_directline\" style=\"display:block;\" >";
                                    htmlstr += ResourceUser.ResourcePad.GetResourceTreeHtml(item.value.resource,'',1,item.key);
                                    htmlstr += "</div>";
                                }
                            }
                        )                        
                        htmlstr = htmlstr.replace(new RegExp("id=\""+lastnode+"childresourcebox\" class=\"childresourcebox_directline\"","gm"),"id=\""+lastnode+"childresourcebox\" class=\"childresourcebox_blankline\"");  
                    }
                    
                    htmlstr = "<div style=\"margin-left:6px;\" ><input id=\""+li.get("root").guid+"title_img\" class=\"minus\" type='button' onFocus=\"this.blur()\" onclick=\"WebClient.Expandsion($('"+li.get("root").guid+"childresourcebox'),$('"+li.get("root").guid+"title_img'));\" ><input class=\"root\" type='button' onFocus=\"this.blur()\" >"+li.get("root").name+"</div><div id=\""+li.get("root").guid+"childresourcebox\" style=\"margin-left:6px;display:;padding-left:16px;\">"+htmlstr+"</div>";
                    $("resourcetree").innerHTML = htmlstr;
                }
            }       
        },
        
        // 生成资源列表html
        GetResourceTreeHtml:function(resource,resourceType,level,parentIndexs)
        {
            var htmlstr = "";
            var lastnode = "";           
            var nodecount = 0;
            resource.each
            (
                function(item)
                {
                    var node = item.value;                    
                    var imgsuffix = "";                            
                    if(node.usable != 1 )
                    {
                        imgsuffix = "_disabled";
                    } 
                    if (resourceType == NrcapPlugs.NrcapResourceType.input_video)
                    {
                        var stationType = NrcapPlugs.GetStationType(node); 
                        if (node.type == NrcapPlugs.NrcapResourceType.station && (stationType == "ecoder" ||  stationType == "mobile_gateway"  ))
                        {
                            lastnode = node.guid;
                            htmlstr += "<div style=\"border:0px solid red;white-space:nowrap;\">";
                            
                            htmlstr += "<input id=\""+node.guid+"parentIndexs\" type=\"hidden\" value=\""+parentIndexs+"\" /><input id=\""+node.guid+"title_img\" class=\"plus\" type='button' onFocus=\"this.blur()\" onclick=\"ResourceUser.ResourcePad.GetChildResourceTreeHtml('"+node.guid+"',NrcapPlugs.NrcapResourceType.input_video,"+(level+1)+",'"+(parentIndexs+","+node.guid)+"');\" ><input id=\""+node.guid+"ico\" class=\""+(stationType == "mobile_gateway" ? "gateway" : "station")+imgsuffix+"\" type='button' onFocus=\"this.blur()\" onclick=\"WebClient.Expandsion($('"+node.guid+"childresourcebox'),$('"+node.guid+"title_img'));\"><a onclick=\"ResourceUser.ResourcePad.GetChildResourceTreeHtml('"+node.guid+"',NrcapPlugs.NrcapResourceType.input_video,"+(level+1)+",'"+(parentIndexs+","+node.guid)+"');\" href=\"#self\" onfocus=\"this.blur()\" >"+node.name+"</a></div>";
                        }
                        else if(node.type == NrcapPlugs.NrcapResourceType.input_video)
                        {
                            nodecount++;
                            htmlstr += "<div style=\"border:0px solid red;white-space:nowrap;\">";                           
                            htmlstr += "<input id=\""+node.guid+"parentIndexs\" type=\"hidden\" value=\""+parentIndexs+"\" /><input class=\"outline\" nodecount=\""+level+"#"+nodecount+"\" type='button' onFocus=\"this.blur()\" ><input id=\""+node.guid+"ico\" class=\"inputvideo"+imgsuffix+"\" type='button' onFocus=\"this.blur()\" ><a href=\"#self\" onfocus=\"this.blur()\" onclick=\"ResourceUser.PlayWindow.PlayVideo('"+node.guid+"')\">"+node.name+"</a></div>";
                        }

                        if(node.type == NrcapPlugs.NrcapResourceType.station  && (stationType == "ecoder" ||  stationType == "mobile_gateway"  ))
                        {
                            htmlstr += "<div id=\""+node.guid+"childresourcebox\" class=\"childresourcebox_directline\" style=\"display:none;\" ></div>";
                        }
                    }
                    else
                    {
                        var stationType = NrcapPlugs.GetStationType(node);  
                        
                        if (node.childResource != null && node.childResource.keys().length > 0 )    // 有子资源
                        {                           
                            htmlstr += "<div style=\"border:0px solid red;white-space:nowrap;\">";                            
                            htmlstr += "<input id=\""+node.guid+"title_img\" class=\"plus\" type='button' onFocus=\"this.blur()\" onclick=\"WebClient.Expandsion($('"+node.guid+"childresourcebox'),$('"+node.guid+"title_img'));\" ><input id=\""+node.guid+"ico\" class=\""+(stationType == "mobile_gateway" ? "gateway" : "station")+imgsuffix+"\" type='button' onFocus=\"this.blur()\" onclick=\"WebClient.Expandsion($('"+node.guid+"childresourcebox'),$('"+node.guid+"title_img'));\"><a onclick=\"WebClient.Expandsion($('"+node.guid+"childresourcebox'),$('"+node.guid+"title_img'));\" href=\"#self\" onfocus=\"this.blur()\" >"+node.name+"</a>";
                            htmlstr += "</div>";
                        }
                        else if(node.type == NrcapPlugs.NrcapResourceType.station)      // 是站点资源,但子资源数为零
                        {
                            lastnode = node.guid;                     
                            htmlstr += "<div style=\"border:0px solid red;white-space:nowrap;\">";                            
                            htmlstr += "<input id=\""+node.guid+"title_img\" class=\"outline\" type='button' onFocus=\"this.blur()\" ><input id=\""+node.guid+"ico\" class=\""+(stationType == "mobile_gateway" ? "gateway" : "station")+imgsuffix+"\" type='button' onFocus=\"this.blur()\" ><a href=\"#self\" onfocus=\"this.blur()\" >"+node.name+"</a>"; 
                            htmlstr += "</div>";
                        }
                        else
                        {
                            nodecount++;
                            htmlstr += "<div style=\"border:0px solid red;margin-left:0px;white-space:nowrap;\">";                           
                            htmlstr += "<input class=\"outline\" nodecount=\""+level+"#"+nodecount+"\"  type='button' onFocus=\"this.blur()\" ><input class=\"";
                            switch(node.type)
                            {
                                case NrcapPlugs.NrcapResourceType.input_video:
                                    htmlstr += "inputvideo";
                                    break;
                                case NrcapPlugs.NrcapResourceType.input_audio:
                                    htmlstr += "inputaudio";
                                    break;
                                case NrcapPlugs.NrcapResourceType.output_video:
                                    htmlstr += "outputvideo";
                                    break;
                                case NrcapPlugs.NrcapResourceType.output_audio:
                                    htmlstr += "outputaudio";
                                    break;
                                case NrcapPlugs.NrcapResourceType.serial_port:
                                    htmlstr += "serialport";
                                    break;
                                case NrcapPlugs.NrcapResourceType.ptz:
                                    htmlstr += "ptz";
                                    break;
                                case NrcapPlugs.NrcapResourceType.input_digital_line:
                                    htmlstr += "inputdigitalline"
                                    break;
                                case NrcapPlugs.NrcapResourceType.output_digital_line:
                                    htmlstr += "output_digital_line";
                                    break;
                                case NrcapPlugs.NrcapResourceType.speaker:
                                    htmlstr += "speaker";
                                    break;
                                case NrcapPlugs.NrcapResourceType.storager:
                                    htmlstr += "storager";
                                    break;
                                default:
                                    htmlstr += "inputvideo;"
                                    break;
                            }
                            htmlstr += imgsuffix+"\" type='button' onFocus=\"this.blur()\" >"+node.name;
                            htmlstr += "</div>";
                        }  
                                            
                        if(node.childResource != null && node.childResource.keys().length > 0 )
                        {
                            lastnode = node.guid;                            
                            htmlstr += "<div id=\""+node.guid+"childresourcebox\" class=\"childresourcebox_directline\" style=\"display:none;\" >"+ResourceUser.ResourcePad.GetResourceTreeHtml(node.childResource,'',level+1,node.guid)+"</div>";
                        }
                    }
                }
            )
           
            htmlstr = htmlstr.replace("class=\"outline\" nodecount=\""+level+"#"+nodecount+"\"","class=\"endline\" nodecount=\""+level+"#"+nodecount+"\"");
           
            htmlstr = htmlstr.replace("id=\""+lastnode+"title_img\" class=\"outline\"","id=\""+lastnode+"title_img\" class=\"endline\"");
            htmlstr = htmlstr.replace(new RegExp("id=\""+lastnode+"childresourcebox\" class=\"childresourcebox_directline\"","gm"),"id=\""+lastnode+"childresourcebox\" class=\"childresourcebox_blankline\"");
            return htmlstr;
        },
        
        GetChildResourceTreeHtml:function(guid,resourceType,level,parentIndexs)
        {
            if($(guid+"childresourcebox") && $(guid+"childresourcebox").innerHTML == "")
            {
                var lt = WebClient.ClientOffset($(guid+"title_img"));
                
                //$("loading").style.top = lt[1];
                //$("loading").style.left = lt[0]-15;
                // 此处要修改
                $("loading").style.left = window.event.x   +   document.body.scrollLeft;
                $("loading").style.top = window.event.y   +   document.body.scrollTop;
                $("loading").style.display = "block";                
               
                 setTimeout(
                    function()
                    {
                        try
                        {
                            if(parentIndexs)
                            {
                                keys = parentIndexs.split(",");                
                            }
                            var resourceObjString = "NrcapPlugs.Connections.get(ResourceUser.connectId).inputVideoResource";
                            for(var i = 1;i < keys.length;i++)
                            {
                                resourceObjString = resourceObjString + ".get('"+keys[i]+"').childResource";
                            }
                            resourceObjString = resourceObjString.replace(/\.childResource+$/,"")
                            // 1. 获取子资源
                            eval(resourceObjString).childResource = NrcapPlugs.GetResourceEx(NrcapPlugs.Connections.get(ResourceUser.connectId).session,guid,NrcapPlugs.NrcapControlID.Nrcap_GetChildrenGUIDDescriptionArray);
                            // 2. 
                            $(guid+"childresourcebox").innerHTML = ResourceUser.ResourcePad.GetResourceTreeHtml(eval(resourceObjString).childResource,resourceType,level,parentIndexs);
                            WebClient.Expandsion($(guid+"childresourcebox"),$(guid+"title_img"));
                            $("loading").style.display = "none";
                        }
                        catch(e)
                        {                            
                        }
                        
                        $("loading").style.display = "none";
                    },
                    1
                )
                
//                
//                if(parentIndexs)
//                {
//                    keys = parentIndexs.split(",");                
//                }
//                var resourceObjString = "NrcapPlugs.Connections.get(ResourceUser.connectId).inputVideoResource";
//                for(var i = 1;i < keys.length;i++)
//                {
//                    resourceObjString = resourceObjString + ".get('"+keys[i]+"').childResource";
//                }
//                resourceObjString = resourceObjString.replace(/\.childResource+$/,"")
//                // 1. 获取子资源
//                eval(resourceObjString).childResource = NrcapPlugs.GetResourceEx(NrcapPlugs.Connections.get(ResourceUser.connectId).session,guid,NrcapPlugs.NrcapControlID.Nrcap_GetChildrenGUIDDescriptionArray);
//                // 2. 
//                $(guid+"childresourcebox").innerHTML = ResourceUser.ResourcePad.GetResourceTreeHtml(eval(resourceObjString).childResource,resourceType,level,parentIndexs);
            }
            else
            {
                WebClient.Expandsion($(guid+"childresourcebox"),$(guid+"title_img"));
            }
            return;
        },
        
        GetResourceTreeHtmlEx:function(resource,resourceType,level,parentIndexs)
        {
            var htmlstr = "";
            var lastnode = "";           
            var nodecount = 0;
            resource.each
            (
                function(item)
                {
                    var node = item.value;                    
                    var imgsuffix = "";                            
                    if(node.usable != 1)
                    {
                        imgsuffix = "_disabled";
                    } 
                    if (resourceType == NrcapPlugs.NrcapResourceType.input_video)
                    {
                        var stationType = NrcapPlugs.GetStationType(node); 
                        if (node.childResource != null && node.childResource.keys().length > 0 && (stationType == "ecoder" ||  stationType == "mobile_gateway"  ))
                        {   
                            lastnode = node.guid;
                            htmlstr += "<div style=\"border:0px solid red;white-space:nowrap;\">";                            
                            htmlstr += "<input id=\""+node.guid+"parentIndexs\" type=\"hidden\" value=\""+parentIndexs+"\" /><input id=\""+node.guid+"title_img\" class=\"plus\" type='button' onFocus=\"this.blur()\" onclick=\"WebClient.Expandsion($('"+node.guid+"childresourcebox'),$('"+node.guid+"title_img'));\" ><input class=\""+(stationType == "mobile_gateway" ? "gateway" : "station")+imgsuffix+"\" type='button' onFocus=\"this.blur()\" onclick=\"WebClient.Expandsion($('"+node.guid+"childresourcebox'),$('"+node.guid+"title_img'));\"><a onclick=\"WebClient.Expandsion($('"+node.guid+"childresourcebox'),$('"+node.guid+"title_img'));\" href=\"#self\" onfocus=\"this.blur()\" >"+node.name+"</a></div>";
                        }
                        else if(node.type == NrcapPlugs.NrcapResourceType.station)
                        { 
                            lastnode = node.guid;
                            htmlstr += "<div style=\"border:0px solid red;white-space:nowrap;\">";                            
                            htmlstr += "<input id=\""+node.guid+"parentIndexs\" type=\"hidden\" value=\""+parentIndexs+"\" /><input id=\""+node.guid+"title_img\" class=\"outline\" type='button' onFocus=\"this.blur()\" ><input class=\""+(stationType == "mobile_gateway" ? "gateway" : "station")+imgsuffix+"\" type='button' onFocus=\"this.blur()\" ><a href=\"#self\" onfocus=\"this.blur()\" >"+node.name+"</a></div>";
                        }
                        else if(node.type == NrcapPlugs.NrcapResourceType.input_video)
                        {
                            nodecount++;
                            htmlstr += "<div style=\"border:0px solid red;white-space:nowrap;\">";                           
                            htmlstr += "<input id=\""+node.guid+"parentIndexs\" type=\"hidden\" value=\""+parentIndexs+"\" /><input class=\"outline\" nodecount=\""+level+"#"+nodecount+"\" type='button' onFocus=\"this.blur()\" ><input class=\"inputvideo"+imgsuffix+"\" type='button' onFocus=\"this.blur()\" ><a href=\"#self\" onfocus=\"this.blur()\" onclick=\"ResourceUser.PlayWindow.PlayVideo('"+node.guid+"')\">"+node.name+"</a></div>";
                        }  
                                            
                        if(node.childResource != null && node.childResource.keys().length > 0 && (stationType == "ecoder" ||  stationType == "mobile_gateway"  ))
                        {                            
                            htmlstr += "<div id=\""+node.guid+"childresourcebox\" class=\"childresourcebox_directline\" style=\"display:none;\" >"+ResourceUser.ResourcePad.GetResourceTreeHtml(node.childResource,NrcapPlugs.NrcapResourceType.input_video,level+1,parentIndexs+","+node.guid)+"</div>";
                        }
                    }
                    else
                    {
                        var stationType = NrcapPlugs.GetStationType(node);  
                        
                        if (node.childResource != null && node.childResource.keys().length > 0 )
                        {                           
                            htmlstr += "<div style=\"border:0px solid red;white-space:nowrap;\">";                            
                            htmlstr += "<input id=\""+node.guid+"title_img\" class=\"plus\" type='button' onFocus=\"this.blur()\" onclick=\"WebClient.Expandsion($('"+node.guid+"childresourcebox'),$('"+node.guid+"title_img'));\" ><input class=\""+(stationType == "mobile_gateway" ? "gateway" : "station")+imgsuffix+"\" type='button' onFocus=\"this.blur()\" onclick=\"WebClient.Expandsion($('"+node.guid+"childresourcebox'),$('"+node.guid+"title_img'));\"><a onclick=\"WebClient.Expandsion($('"+node.guid+"childresourcebox'),$('"+node.guid+"title_img'));\" href=\"#self\" onfocus=\"this.blur()\" >"+node.name+"</a></div>";
                        }
                        else if(node.type == NrcapPlugs.NrcapResourceType.station)
                        {
                            lastnode = node.guid;                     
                            htmlstr += "<div style=\"border:0px solid red;white-space:nowrap;\">";                            
                            htmlstr += "<input id=\""+node.guid+"title_img\" class=\"outline\" type='button' onFocus=\"this.blur()\" ><input class=\""+(stationType == "mobile_gateway" ? "gateway" : "station")+imgsuffix+"\" type='button' onFocus=\"this.blur()\" ><a href=\"#self\" onfocus=\"this.blur()\" >"+node.name+"</a></div>"; 
                        }
                        else
                        {
                            nodecount++;
                            htmlstr += "<div style=\"border:0px solid red;margin-left:0px;white-space:nowrap;\">";                           
                            htmlstr += "<input class=\"outline\" nodecount=\""+level+"#"+nodecount+"\"  type='button' onFocus=\"this.blur()\" ><input class=\"";
                            switch(node.type)
                            {
                                case NrcapPlugs.NrcapResourceType.input_video:
                                    htmlstr += "inputvideo";
                                    break;
                                case NrcapPlugs.NrcapResourceType.input_audio:
                                    htmlstr += "inputaudio";
                                    break;
                                case NrcapPlugs.NrcapResourceType.output_video:
                                    htmlstr += "outputvideo";
                                    break;
                                case NrcapPlugs.NrcapResourceType.output_audio:
                                    htmlstr += "outputaudio";
                                    break;
                                case NrcapPlugs.NrcapResourceType.serial_port:
                                    htmlstr += "serialport";
                                    break;
                                case NrcapPlugs.NrcapResourceType.ptz:
                                    htmlstr += "ptz";
                                    break;
                                case NrcapPlugs.NrcapResourceType.input_digital_line:
                                    htmlstr += "inputdigitalline"
                                    break;
                                case NrcapPlugs.NrcapResourceType.output_digital_line:
                                    htmlstr += "output_digital_line";
                                    break;
                                case NrcapPlugs.NrcapResourceType.speaker:
                                    htmlstr += "speaker";
                                    break;
                                case NrcapPlugs.NrcapResourceType.storager:
                                    htmlstr += "storager";
                                    break;
                                default:
                                    htmlstr += "inputvideo;"
                                    break;
                            }
                            htmlstr += imgsuffix+"\" type='button' onFocus=\"this.blur()\" >"+node.name+"</div>";
                        }  
                                            
                        if(node.childResource != null && node.childResource.keys().length > 0 )
                        {
                            lastnode = node.guid;                            
                            htmlstr += "<div id=\""+node.guid+"childresourcebox\" class=\"childresourcebox_directline\" style=\"display:none;\" >"+ResourceUser.ResourcePad.GetResourceTreeHtml(node.childResource,'',level+1,node.guid)+"</div>";
                        }
                    }
                }
            )
           
            htmlstr = htmlstr.replace("class=\"outline\" nodecount=\""+level+"#"+nodecount+"\"","class=\"endline\" nodecount=\""+level+"#"+nodecount+"\"");
            htmlstr = htmlstr.replace("id=\""+lastnode+"title_img\" class=\"outline\"","id=\""+lastnode+"title_img\" class=\"endline\"");
            htmlstr = htmlstr.replace(new RegExp("id=\""+lastnode+"childresourcebox\" class=\"childresourcebox_directline\"","gm"),"id=\""+lastnode+"childresourcebox\" class=\"childresourcebox_blankline\"");
            return htmlstr;
        }
    },
    
    // 主导航菜单对象
    NavMenu:{
        // 创建主导航菜单html元素
        GetHtml:function()
        {
            var htmlstr = "";            
            htmlstr += "<div id=\"navmenu\" >";
                htmlstr += "<ul>";
                    htmlstr += "<li><input type='button' id=\"mm_exit\" onFocus=\"this.blur()\" menutype='button' ></li>";
                    htmlstr += "<li><input type='button' id=\"mm_fullscreen\" onFocus=\"this.blur()\" menutype='button' disabled ></li>";
                    htmlstr += "<li><input type='button' id=\"mm_audio\" onFocus=\"this.blur()\" menutype='button' disabled ></li>";
                    htmlstr += "<li><input type='button' id=\"mm_snapshot\" onFocus=\"this.blur()\" menutype='button' disabled ></li>";
                    htmlstr += "<li><input type='button' id=\"mm_record\" onFocus=\"this.blur()\" menutype='button' disabled ></li>";   
                    htmlstr += "<li><input type='button' id=\"mm_upaudio\" onFocus=\"this.blur()\" menutype='button' disabled ></li>";
                    htmlstr += "<li><input type='button' id=\"mm_eventexplore\" onFocus=\"this.blur()\" menutype='button' ></li>";                    
                    htmlstr += "<li><div style=\"float:right;\"><div style=\"text-align:right;margin:2px 5px 0px 0px;font-size:12px;\"><span id=\"testbar\"></span><a href=\"webplugs.exe\" target=_self style=\"text-decoration:none;color:#ff0000;\" title=\"如果没有安装网络视频插件或者无法通过网页自动下载安装，请下载手动安装网络视频插件！\" >视频插件下载</a>&nbsp;&nbsp;&nbsp;&nbsp;<a href=\"#self\" onclick=\"WebClientStyleSheet.SetStyleSheet('blue');window.location.reload();\"><img src=\"images/blue.png\" border=0 /></a>&nbsp;&nbsp;<a href=\"#self\" onclick=\"WebClientStyleSheet.SetStyleSheet('newyear');window.location.reload();\"><img src=\"images/newyear.png\" border=0 /></a>&nbsp;&nbsp;</div><div class=\""+(WebClient.showLogo == true ? "logo" : "nologo")+"\"></div></div><div style=\"float:right;\"><div style=\"text-align:right;margin:12px 5px 0px 0px;font-size:14px;line-height:140%;\"><span id=\"web_time\" style=\"text-align:center;\"></span></div></div></li>";
                htmlstr += "</ul>";
            htmlstr += "</div>";     
            return htmlstr;
        },
        Timer:null,
        DisplayTimer:function()
        {
            if($("web_time"))
            {
                //ResourceUser.NavMenu.Timer = setInterval("if($('web_time')){var d=new Date();$('web_time').innerHTML=d.getYear()+'"+timeLable.year+"'+(d.getMonth()+1)+'"+timeLable.month+"'+d.getDate()+'"+timeLable.date+"&nbsp;<br/>'+d.getHours()+'"+timeLable.hour+"'+d.getMinutes()+'"+timeLable.minute+"'+d.getSeconds()+'"+timeLable.second+"&nbsp;'+timeLable.week[d.getDay()]+'&nbsp;'}else{clearInterval(ResourceUser.NavMenu.Timer);}",1000);
                
                ResourceUser.NavMenu.Timer = setInterval("if($('web_time')){var d=new Date();$('web_time').innerHTML=d.getHours()+'"+timeLable.hour+"'+d.getMinutes()+'"+timeLable.minute+"'+d.getSeconds()+'"+timeLable.second+"&nbsp;&nbsp;'+timeLable.week[d.getDay()]+'&nbsp;<br>'+d.getYear()+'"+timeLable.year+"'+(d.getMonth()+1)+'"+timeLable.month+"'+d.getDate()+'"+timeLable.date+"&nbsp;'}else{clearInterval(ResourceUser.NavMenu.Timer);}",1000);
            }       
        },
        // 绑定主导航菜单事件
        AttachNavMenuEvent:function()
        {
            var navmenu_li = $("navmenu").getElementsByTagName("INPUT");
            for(var i = 0;i < navmenu_li.length;i++)
            {
                if(navmenu_li[i].type == "button" && navmenu_li[i].id.search("mm_") != -1)
                {
                    if(navmenu_li[i].disabled)
                    {
                        navmenu_li[i].style.backgroundImage = "url("+g_imageprefix+"/"+languageDir+"/top_menuicon"+imagePreFix+"_3.png)";
                    }
                    else
                    {
                        navmenu_li[i].style.backgroundImage = "url("+g_imageprefix+"/"+languageDir+"/top_menuicon"+imagePreFix+"_1.png)";
                    }
                    var tmpid = navmenu_li[i].id;
                    navmenu_li[i].onmouseover = function(){this.style.backgroundImage=(this.style.backgroundImage.toString().substr(this.style.backgroundImage.toString().length-6,1) > 3 -1 ? "url("+g_imageprefix+"/"+languageDir+"/top_menuicon"+imagePreFix+"_5.png)" : "url("+g_imageprefix+"/"+languageDir+"/top_menuicon"+imagePreFix+"_2.png)" );};
                    navmenu_li[i].onmouseout = function(){this.style.backgroundImage=(this.style.backgroundImage.toString().substr(this.style.backgroundImage.toString().length-6,1) > 3 ? "url("+g_imageprefix+"/"+languageDir+"/top_menuicon"+imagePreFix+"_4.png)" : "url("+g_imageprefix+"/"+languageDir+"/top_menuicon"+imagePreFix+"_1.png)" );};
                    navmenu_li[i].onclick = function(){ResourceUser.NavMenu.NavMenuClick(this.id);};
                }
            }        
        },        
        
        // 主导航菜单点击响应处理
        NavMenuClick:function(navMenuId)
        {
            switch(navMenuId)
            {
                case "mm_exit":
                    //NrcapPlugs.DisConnection(ResourceUser.connectId);
                    NrcapPlugs.UnLoad();
                    if(ResourceUser.popwnd !=null) {ResourceUser.popwnd.close();ResourceUser.popwnd = null;}
                    WebClient.Exit("reload");
                    break;
                case "mm_fullscreen":         
                    NrcapPlugs.Windows.each(
                        function(item)
                        {
                            if(item.value.window != null && item.value.active)
                            {
                                if(item.value.window.status.playvideoing)
                                {
                                    //item.value.window.wnd.enableFullScreen(true);
                                    item.value.window.wnd.fullScreen();
                                    NrcapPlugs.FireFullScreen(item.value.window);
                                    return;
                                }
                            }
                        }
                    )                    
                    break;
                case "mm_audio":         
                    NrcapPlugs.Windows.each(
                        function(item)
                        {
                            if(item.value.window != null && item.value.active)
                            {
                                if(item.value.window.status.playvideoing)
                                {
                                    ResourceUser.PlayWindow.PlayAudio($(item.key.replace("windowbox","windowtitle")+"_audio"),item.key);
                                    return;
                                }
                            }
                        }
                    )                    
                    break;
                case "mm_upaudio":         
                    NrcapPlugs.Windows.each(
                        function(item)
                        {
                            if(item.value.window != null && item.value.active)
                            {
                                if(item.value.window.status.playvideoing)
                                {
                                    ResourceUser.PlayWindow.PlayUpAudio($(item.key.replace("windowbox","windowtitle")+"_upaudio"),item.key);
                                    return;
                                }
                            }
                        }
                    )                    
                    break;
                case "mm_snapshot":         
                    NrcapPlugs.Windows.each(
                        function(item)
                        {
                            if(item.value.window != null && item.value.active)
                            {
                                if(item.value.window.status.playvideoing)
                                {
                                    ResourceUser.PlayWindow.SnapShot($(item.key.replace("windowbox","windowtitle")+"_snapshot"),item.key);
                                    return;
                                }
                            }
                        }
                    )                    
                    break;
                case "mm_record":         
                    NrcapPlugs.Windows.each(
                        function(item)
                        {
                            if(item.value.window != null && item.value.active)
                            {
                                if(item.value.window.status.playvideoing)
                                {
                                    ResourceUser.PlayWindow.Record($(item.key.replace("windowbox","windowtitle")+"_record"),item.key);
                                    return;
                                }
                            }
                        }
                    )                    
                    break;
                case "mm_eventexplore":
                    ResourceUser.popwnd = window.showModelessDialog("eventexplore.html", window,"dialogHeight=360px;dialogWidth=620px;center=yes;status=no;scroll=no;help=no;"); 
                    break;
                default:
                    break;
            }
        },        
        
        // 设置主导航菜单状态 
        Disabled:function(status)
        {
            var navmenu_li = $("navmenu").getElementsByTagName("INPUT");
            for(var i = 0;i < navmenu_li.length;i++)
            {
                if(navmenu_li[i].type == "button" && navmenu_li[i].id.search("mm_") != -1 && navmenu_li[i].id != "mm_exit" && navmenu_li[i].id != "mm_eventexplore" )
                {
                    navmenu_li[i].disabled = status;
                    if(status)
                    {
                        navmenu_li[i].style.backgroundImage = "url("+g_imageprefix+"/"+languageDir+"/top_menuicon"+imagePreFix+"_3.png)";
                    }
                    else
                    {
                        navmenu_li[i].style.backgroundImage = "url("+g_imageprefix+"/"+languageDir+"/top_menuicon"+imagePreFix+"_1.png)";
                    }   
                }
            }      
        }
    },
    
    // 云台控制对象
    VideoControlPad:{
        // 创建云台控制html元素
        SliderBars:new Hash(),
        GetHtml:function()
        {
            var htmlstr = "";    
            htmlstr += "<div class=\"titlebar1\" >"+resourceUserLanguage.ptz.title+"</div>";
            
            // 云台控制
            htmlstr += "<div id=\"ptzbox\" class=\"ptz\" style=\"\" >";            
                htmlstr += "<div style=\"float:left;width:104px;\" >";                
                    // 向上
                    htmlstr += "<div ><input type=\"button\" id=\"ptz_up\" name=\"ptz_up\" webclienttype=\"ptzcontrol\" disabled /></div>";
                    // 向左,向右
                    htmlstr += "<div>";
                    htmlstr += "<input type=\"button\" id=\"ptz_left\" name=\"ptz_left\" webclienttype=\"ptzcontrol\" disabled /><input type=\"button\" id=\"ptz_center\" name=\"ptz_center\" webclienttype=\"ptzcontrol\" disabled /><input type=\"button\" id=\"ptz_right\" name=\"ptz_right\" webclienttype=\"ptzcontrol\" disabled />";
                    htmlstr += "</div>";                
                    //向下
                    htmlstr += "<div ><input type=\"button\" id=\"ptz_down\" name=\"ptz_down\" webclienttype=\"ptzcontrol\" disabled /></div>"; 
                htmlstr += "</div>";
                
                htmlstr += "<div style=\"float:left;width:84px;border:0px solid red;\" >";
                    htmlstr += "<input type=\"button\" id=\"ptz_focusfar\" name=\"ptz_focusfar\" webclienttype=\"ptzcontrol\" disabled /><input type=\"button\" id=\"ptz_focusnear\" name=\"ptz_focusnear\" webclienttype=\"ptzcontrol\" disabled />";
                    htmlstr += "<input type=\"button\" id=\"ptz_zoomin\" name=\"ptz_zoomin\" webclienttype=\"ptzcontrol\" disabled /><input type=\"button\" id=\"ptz_zoomout\" name=\"ptz_zoomout\" webclienttype=\"ptzcontrol\" disabled />";
                    htmlstr += "<input type=\"button\" id=\"ptz_aperturem\" name=\"ptz_aperturem\" webclienttype=\"ptzcontrol\" disabled /><input type=\"button\" id=\"ptz_aperturea\" name=\"ptz_aperturea\" webclienttype=\"ptzcontrol\" disabled />";                
                htmlstr += "</div>";
            htmlstr += "</div>";
            
            htmlstr += "<div>";
            htmlstr += "<div><table><tr><td width=\"55\" align=center ><div calss=\"slider-title\" id=\"ptzspeed-slider-title\" >"+resourceUserLanguage.ptz.ptzspeed+"</div></td><td><div class=\"slider\" id=\"ptzspeed-slider\" tabIndex=\"1\" style=\"background:transparent;\"><input class=\"slider-input\" id=\"ptzspeed-slider-input\" /></div></td><td><input id=\"ptzspeed-input\" maxlength=\"3\" tabindex=\"2\" style=\"width:24px;height:14px;background:#FFFFFF;border:1px solid #b0b0b0;\" ></td></tr></table></div>";
            htmlstr += "</div>";
            
            // 视频参数控制
            htmlstr += "<div id=\"videoparambox\" style=\"display:"+(WebClient.showVideoParamsBar == true ? "" : "none")+";\">";
            htmlstr += "<div><table><tr><td width=\"55\" align=center ><div calss=\"slider-title\" id=\"brightness-slider-title\" >"+resourceUserLanguage.ptz.brightness+"</div></td><td><div class=\"slider\" id=\"brightness-slider\" tabIndex=\"1\" style=\"background:transparent;\"><input class=\"slider-input\" id=\"brightness-slider-input\" /></div></td><td><input id=\"brightness-input\" maxlength=\"3\" tabindex=\"2\" style=\"width:24px;height:14px;background:#FFFFFF;border:1px solid #b0b0b0;\" ></td></tr></table></div>";
            htmlstr += "<div><table><tr><td width=\"55\" align=center ><div calss=\"slider-title\" id=\"contrast-slider-title\" >"+resourceUserLanguage.ptz.contrast+"</div></td><td><div class=\"slider\" id=\"contrast-slider\" tabIndex=\"1\" style=\"background:transparent;\"><input class=\"slider-input\" id=\"contrast-slider-input\" /></div></td><td><input id=\"contrast-input\" maxlength=\"3\" tabindex=\"2\" style=\"width:24px;height:14px;background:#FFFFFF;border:1px solid #b0b0b0;\" ></td></tr></table></div>";
            htmlstr += "<div><table><tr><td width=\"55\" align=center ><div calss=\"slider-title\" id=\"hue-slider-title\" >"+resourceUserLanguage.ptz.hue+"</div></td><td><div class=\"slider\" id=\"hue-slider\" tabIndex=\"1\" style=\"background:transparent;\"><input class=\"slider-input\" id=\"hue-slider-input\" /></div></td><td><input id=\"hue-input\" maxlength=\"3\" tabindex=\"2\" style=\"width:24px;height:14px;background:#FFFFFF;border:1px solid #b0b0b0;\" ></td></tr></table></div>";
            htmlstr += "<div><table><tr><td width=\"55\" align=center ><div calss=\"slider-title\" id=\"saturation-slider-title\" >"+resourceUserLanguage.ptz.saturation+"</div></td><td><div class=\"slider\" id=\"saturation-slider\" tabIndex=\"1\" style=\"background:transparent;\"><input class=\"slider-input\" id=\"saturation-slider-input\" /></div></td><td><input id=\"saturation-input\" maxlength=\"3\" tabindex=\"2\" style=\"width:24px;height:14px;background:#FFFFFF;border:1px solid #b0b0b0;\" ></td></tr></table></div>";
                        
            htmlstr += "</div>";
            return htmlstr;
        },
        
        // 绑定云台控制事件
        AttachPtzEvent:function()
        {
            if ($("ptzbox")) {
                var ptzbuttons = $("ptzbox").getElementsByTagName("INPUT");
                for(var i = 0;i < ptzbuttons.length;i++)
                {
                    if (ptzbuttons[i].type == "button" && ptzbuttons[i].webclienttype == "ptzcontrol")
                    {
                        if (ptzbuttons[i].disabled)
                        {
                            ptzbuttons[i].style.backgroundImage = "url("+g_imageprefix+"/ptz_yellow_4.png)";
                        }
                        else
                        {
                            ptzbuttons[i].style.backgroundImage = "url("+g_imageprefix+"/ptz_yellow_1.png)";
                        }
                        
                        ptzbuttons[i].onfocus = function(){this.blur();};
                        ptzbuttons[i].onmouseover = function(){this.style.backgroundImage="url("+g_imageprefix+"/ptz_yellow_2.png)";};
                        ptzbuttons[i].onmouseout = function(){this.style.backgroundImage="url("+g_imageprefix+"/ptz_yellow_1.png)";ResourceUser.PlayWindow.PTZControl(this.id,'stop');};
                        ptzbuttons[i].onmousedown = function(){this.style.backgroundImage="url("+g_imageprefix+"/ptz_yellow_3.png)";ResourceUser.PlayWindow.PTZControl(this.id,'start');};
                        ptzbuttons[i].onmouseup = function(){this.style.backgroundImage="url("+g_imageprefix+"/ptz_yellow_1.png)";ResourceUser.PlayWindow.PTZControl(this.id,'stop');};
                        ptzbuttons[i].onclick = function(){};
                    }
                }
            }
        },
        
        // 设置云台控制状态
        PtzDisabled:function(disabled)
        {
            if ($("ptzbox")) {
                var ptzbuttons = $("ptzbox").getElementsByTagName("INPUT");
                for(var i = 0;i < ptzbuttons.length;i++)
                {
                    if (ptzbuttons[i].type == "button" && ptzbuttons[i].webclienttype == "ptzcontrol")
                    {
                        ptzbuttons[i].disabled = disabled;
                        ptzbuttons[i].style.backgroundImage = disabled ? "url("+g_imageprefix+"/ptz_yellow_4.png)" : "url("+g_imageprefix+"/ptz_yellow_1.png)";
                    }
                }
            }
        },
        
        CreateVideoParamSliderBar:function(sliderName)
        {
		    this.SliderBars.set(
		        sliderName,
		        {
		            title:null,
		            bar:null,
		            input:null,
		            guid:null,
		            originalValue:0,
		            SetStatus:function(status,ivguid)
		            {		            
	                    this.bar.setStatus(status);
	                    if(!status)
	                    {
	                        this.title.style.color = "#A0A0A0";
	                        this.input.disabled = true;
	                        this.originalValue = 0;
	                        this.bar.setValue(this.originalValue);
	                        this.input.value  = this.originalValue;
	                        this.guid = null;
	                    }
	                    else
	                    {
	                        if(ivguid)
	                        {
	                            this.guid = ivguid;
	                        }
	                        this.title.style.color = "#000000";
	                        this.input.disabled = false;
	                        if(this.guid)
	                        {
	                            // 获取值
	                            switch(sliderName)
	                            {
	                                case "ptzspeed":
	                                    this.originalValue = NrcapPlugs.GetPTZSpeed(ResourceUser.connectId,this.guid);
	                                    break;
	                                case "brightness":
	                                    this.originalValue = NrcapPlugs.GetInputVideoParam(ResourceUser.connectId,this.guid,"brightness");
	                                    break;
	                                case "contrast":
	                                    this.originalValue = NrcapPlugs.GetInputVideoParam(ResourceUser.connectId,this.guid,"contrast");
	                                    break;
	                                case "hue":
	                                    this.originalValue = NrcapPlugs.GetInputVideoParam(ResourceUser.connectId,this.guid,"hue");
	                                    break;
	                                case "saturation":
	                                    this.originalValue = NrcapPlugs.GetInputVideoParam(ResourceUser.connectId,this.guid,"saturation");
	                                    break;
                                    default:
	                                    break;
	                            }
	                            this.bar.setValue(this.originalValue);
	                        }
	                    }
	                    
		            },
                    callbacks:
                    {
                        mouseup:function()
                        {
                            if(ResourceUser.VideoControlPad.SliderBars.get(sliderName).originalValue != ResourceUser.VideoControlPad.SliderBars.get(sliderName).bar.getValue())
                            {
                                var rv = 0;
                                if (sliderName == "ptzspeed")
                                {
                                    rv = NrcapPlugs.SetPTZSpeed(ResourceUser.connectId,ResourceUser.VideoControlPad.SliderBars.get(sliderName).guid,ResourceUser.VideoControlPad.SliderBars.get(sliderName).bar.getValue());
                                }
                                else
                                {
                                    rv = NrcapPlugs.SetInputVideoParam(ResourceUser.connectId,ResourceUser.VideoControlPad.SliderBars.get(sliderName).guid,sliderName,ResourceUser.VideoControlPad.SliderBars.get(sliderName).bar.getValue());
                                }
                                
                                
                                if(rv == NrcapPlugs.NrcapError.NRCAP_SUCCESS)
                                {
                                    ResourceUser.VideoControlPad.SliderBars.get(sliderName).originalValue = ResourceUser.VideoControlPad.SliderBars.get(sliderName).bar.getValue(); 
                                }
                            }
                            
                        },
                        blur:function()
                        {
                            if(ResourceUser.VideoControlPad.SliderBars.get(sliderName).originalValue != ResourceUser.VideoControlPad.SliderBars.get(sliderName).bar.getValue())
                            {
                                var rv = 0;
                                if (sliderName == "ptzspeed")
                                {
                                    rv = NrcapPlugs.SetPTZSpeed(ResourceUser.connectId,ResourceUser.VideoControlPad.SliderBars.get(sliderName).guid,ResourceUser.VideoControlPad.SliderBars.get(sliderName).bar.getValue());
                                }
                                else
                                {
                                    rv = NrcapPlugs.SetInputVideoParam(ResourceUser.connectId,ResourceUser.VideoControlPad.SliderBars.get(sliderName).guid,sliderName,ResourceUser.VideoControlPad.SliderBars.get(sliderName).bar.getValue());
                                }
                                
                                if(rv == NrcapPlugs.NrcapError.NRCAP_SUCCESS)
                                {
                                    ResourceUser.VideoControlPad.SliderBars.get(sliderName).originalValue = ResourceUser.VideoControlPad.SliderBars.get(sliderName).bar.getValue(); 
                                }
                            }
                            
                        }
                    }
		        }
		    );
		    
		    this.SliderBars.get(sliderName).bar = new Slider($(sliderName+"-slider"),$(sliderName+"-slider-input"),null,this.SliderBars.get(sliderName).callbacks);
		    this.SliderBars.get(sliderName).bar.setMaximum(100);
    		
		    this.SliderBars.get(sliderName).title = $(sliderName+"-slider-title");

		    this.SliderBars.get(sliderName).input = $(sliderName+"-input");
		    this.SliderBars.get(sliderName).input.onchange = function()
		    {
			    ResourceUser.VideoControlPad.SliderBars.get(sliderName).bar.setValue(parseInt(this.value));
			    ResourceUser.VideoControlPad.SliderBars.get(sliderName).callbacks.mouseup();
		    }
    		
		    this.SliderBars.get(sliderName).bar.onchange = function()
		    {
			    ResourceUser.VideoControlPad.SliderBars.get(sliderName).input.value = ResourceUser.VideoControlPad.SliderBars.get(sliderName).bar.getValue();	
//		        if(NrcapPlugs.Windows.get(ResourceUser.PlayWindow.curActiveWindowKey) && NrcapPlugs.Windows.get(ResourceUser.PlayWindow.curActiveWindowKey).window && NrcapPlugs.Windows.get(ResourceUser.PlayWindow.curActiveWindowKey).window.ivguid == ResourceUser.VideoControlPad.SliderBars.get(sliderName).guid)
//		        {
//		            var rv = NrcapPlugs.PreviewInputVideoParam(ResourceUser.connectId,ResourceUser.VideoControlPad.SliderBars.get(sliderName).guid,sliderName,ResourceUser.VideoControlPad.SliderBars.get(sliderName).bar.getValue());		        
//		        }
			    if (typeof window.onchange == "function")
				    window.onchange();
				    
			    // 这个地方应该执行预览命令
//			    if(typeof callbackfun == "function")
//				    callbackfun(sliderName,ResourceUser.VideoControlPad.SliderBars.get(sliderName).input.value);
		    }
		    this.SliderBars.get(sliderName).SetStatus(false);
        },
        
//        SetVideoParam:function(param)
//        {            
//        },
        
        VideoParamDisabled:function(disabled,ivguid)
        {
            if(!disabled)
            {
                ResourceUser.VideoControlPad.SliderBars.get("ptzspeed").SetStatus(true,ivguid);
                ResourceUser.VideoControlPad.SliderBars.get("brightness").SetStatus(true,ivguid);
                ResourceUser.VideoControlPad.SliderBars.get("contrast").SetStatus(true,ivguid);
                ResourceUser.VideoControlPad.SliderBars.get("hue").SetStatus(true,ivguid);
                ResourceUser.VideoControlPad.SliderBars.get("saturation").SetStatus(true,ivguid);
            }
            else
            {
                ResourceUser.VideoControlPad.SliderBars.get("ptzspeed").SetStatus(false,ivguid);
                ResourceUser.VideoControlPad.SliderBars.get("brightness").SetStatus(false,ivguid);
                ResourceUser.VideoControlPad.SliderBars.get("contrast").SetStatus(false,ivguid);
                ResourceUser.VideoControlPad.SliderBars.get("hue").SetStatus(false,ivguid);
                ResourceUser.VideoControlPad.SliderBars.get("saturation").SetStatus(false,ivguid);
            }
        }
    },
    
    // 视频窗口对象
    PlayWindow:
    {
        curWindowNumber:0,
        curActiveWindowKey:null,
        GetHtml:function()
        {
            var htmlstr = "";
            htmlstr += "<div id=\"windowsbox\" class=\"windowsbox\">";
            //htmlstr += this.changeWindow(16);
            htmlstr += "</div>";            
            htmlstr += "<div id=\"changenumberbox\" class=\"changenumber\">";
                htmlstr += "<input type=\"button\" id=\"chagennumber1\" name=\"chagennumber1\" webclienttype=\"changenumber\" />";
                htmlstr += "<input type=\"button\" id=\"chagennumber4\" name=\"chagennumber4\" webclienttype=\"changenumber\" />";
                htmlstr += "<input type=\"button\" id=\"chagennumber9\" name=\"chagennumber9\" webclienttype=\"changenumber\" />";
                htmlstr += "<input type=\"button\" id=\"chagennumber16\" name=\"chagennumber16\" webclienttype=\"changenumber\" />";
                htmlstr += "<input type=\"button\" id=\"chagennumber6\" name=\"chagennumber6\" webclienttype=\"changenumber\" />";
                htmlstr += "<input type=\"button\" id=\"chagennumber8\" name=\"chagennumber8\" webclienttype=\"changenumber\" />";
                htmlstr += "<input type=\"button\" id=\"chagennumber10\" name=\"chagennumber10\" webclienttype=\"changenumber\" />";
                htmlstr += "<input type=\"button\" id=\"chagennumber12\" name=\"chagennumber12\" webclienttype=\"changenumber\" />";
            htmlstr += "</div>"
            return htmlstr;
        },
        // 绑定切换窗口按钮事件
        AttachChangeNumberEvent:function()
        {
            if ($("changenumberbox")) 
            {
                var changeNumberBtns = $("changenumberbox").getElementsByTagName("INPUT");
                for(var i = 0;i < changeNumberBtns.length;i++)
                {
                    if (changeNumberBtns[i].type == "button" && changeNumberBtns[i].webclienttype == "changenumber")
                    {
                        changeNumberBtns[i].style.backgroundImage = "url("+g_imageprefix+"/winnumber_1.png)";
                        changeNumberBtns[i].onfocus = function(){this.blur();};
                        changeNumberBtns[i].onmouseover = function(){this.style.backgroundImage="url("+g_imageprefix+"/winnumber_2.png)";};
                        changeNumberBtns[i].onmouseout = function(){this.style.backgroundImage="url("+g_imageprefix+"/winnumber_1.png)";};
                        changeNumberBtns[i].onmousedown = function(){this.style.backgroundImage="url("+g_imageprefix+"/winnumber_3.png)";};
                        changeNumberBtns[i].onmouseup = function(){this.style.backgroundImage="url("+g_imageprefix+"/winnumber_2.png)";};
                        changeNumberBtns[i].onclick = function(){ResourceUser.PlayWindow.ChangeWindow(parseInt(this.id.replace("chagennumber","")));};
                    }
                }
            }
        },
        
        // 初始化窗口
        InitWindows:function()
        {
            if(NrcapPlugs.InitWindows() == NrcapPlugs.NrcapError.NRCAP_SUCCESS)
            {
                if ($("windowsbox"))
                {
                    var wndboxs = $("windowsbox").getElementsByTagName("DIV");
                    for(var i = 0;i < wndboxs.length;i++)
                    {
                        if(wndboxs[i].id.search("windowbox") != -1)
                        {
                            wndboxs[i].onclick = function(){ResourceUser.PlayWindow.ActiveWindow(this.id);};
                            NrcapPlugs.Windows.set(wndboxs[i].id,{container:wndboxs[i],active:false,window:null,description:null});
                        }
                    }
                }            
            }
            else
            {
                // 初始化窗口对象组失败
            }
        },
        
        // 激活窗口
        ActiveWindow:function(wndId)
        {
            try
            {
                ResourceUser.PlayWindow.curActiveWindowKey = null;
                NrcapPlugs.Windows.each
                (
                    function(item)
                    {
                        node = item.value;                        
                        if (node.container.id == wndId)
                        {
                            node.active = true;
                            //alert(item.key)
                            $(wndId).style.backgroundColor = ResourceUser.activeWindowTitleBgColor;
                            ResourceUser.PlayWindow.curActiveWindowKey = item.key;
                            ResourceUser.SetResourceUserStatus(item.key);
                        }
                        else
                        {
                            node.container.style.backgroundColor = "#6e6e6e";
                            node.active = false;
                        }
                    }
                )
            }
            catch(e)
            {
                alert(e.message+e.name)
            }
        },
        
        // 改变窗口数量
        ChangeWindow:function(wndnumber)
        {
            if(this.curWindowNumber == wndnumber)
            {
                return;
            }
            var tmpwindows = new Hash();
            var confirmChange = false;
            var stopChange = false;
            // 如果有视频在播放,保存在临时组里
            var oldwndcount = 0;               
            NrcapPlugs.Windows.each(
                function(item)
                {
                    if(item.value.window && item.value.window.status.playvideoing)
                    {
                        // 判断在播放的视频数量是否大于要切换的窗口数量,如果大于关闭剩余的视频
                        if (oldwndcount < wndnumber)
                        {
                            tmpwindows.set(item.key,{container:$(item.key),active:false,window:item.value.window,description:item.value.description});
                            oldwndcount++;
                        }
                        else
                        {
                            if(!confirmChange)
                            {
                                confirmChange = true;
                                if(!confirm("有摄像机可能要断开,您确定要切换窗口么?"))
                                {
                                    stopChange = true;
                                    return;
                                }
                            }
                            if(!stopChange)
                            {
                                ResourceUser.PlayWindow.StopVideo(item.key);
                            }
                            
                        }
                    }
                }
            );
            
            if(stopChange)
            {
                return ;
            }
            
            // 开始变化窗口数量
            if ($("windowsbox"))
            {

                var htmlstr = "";
                switch(wndnumber) 
                {         
                    case 1:
                    case 4:
                    case 9:
                    case 16:
                        for(var i= 0 ;i < wndnumber;i++)
                        {
                            htmlstr += "<div id=\"windowbox"+i+"\" class=\"window"+wndnumber+"box\">";
                                htmlstr += "<div id=\"window"+i+"\" class=\"window\">";                                
                                htmlstr += "</div>";
                                htmlstr += "<div id=\"windowtitle"+i+"\" class=\"windowtitle\"><div class=\"title1\" >"+ resourceUserLanguage.window.title +"</div></div>";
                            htmlstr += "</div>"; 
                        }
                	    break;
                	case 6:
                        for(var i= 0,j = 1;i < 9;i++,j++)
                        {
                            if ((i+1) < 3 && ((i+1)%3) !=0) {
                                htmlstr += "<div id=\"windowbox"+j+"\" class=\"window6box\">";
                                    htmlstr += "<div id=\"window"+j+"\" class=\"window\"></div>";
                                    htmlstr += "<div id=\"windowtitle"+j+"\" class=\"windowtitle\"><div class=\"title1\" >"+ resourceUserLanguage.window.title +"</div></div>";
                                htmlstr += "</div>";
                                i+= 3;
                            }
                            else
                            {
                                htmlstr += "<div id=\"windowbox"+j+"\" class=\"window9box\">";
                                    htmlstr += "<div id=\"window"+j+"\" class=\"window\"></div>";
                                    htmlstr += "<div id=\"windowtitle"+j+"\" class=\"windowtitle\"><div class=\"title1\" >"+ resourceUserLanguage.window.title +"</div></div>";
                                htmlstr += "</div>";
                            }
                        }
                	    break;
                	case 8:
                        for(var i= 0,j= 1 ;i < 16;i++,j++)
                        {
                            if ((i+1) < 4 && ((i+1)%4) !=0) {
                                htmlstr += "<div id=\"windowbox"+j+"\" class=\"window8box\">";
                                    htmlstr += "<div id=\"window"+j+"\" class=\"window\"></div>";
                                    htmlstr += "<div id=\"windowtitle"+j+"\" class=\"windowtitle\"><div class=\"title1\" >"+ resourceUserLanguage.window.title +"</div></div>";
                                htmlstr += "</div>";
                                i+= 8;
                            }
                            else
                            {
                                htmlstr += "<div id=\"windowbox"+j+"\" class=\"window16box\">";
                                    htmlstr += "<div id=\"window"+j+"\" class=\"window\"></div>";
                                    htmlstr += "<div id=\"windowtitle"+j+"\" class=\"windowtitle\"><div class=\"title1\" >"+ resourceUserLanguage.window.title +"</div></div>";
                                htmlstr += "</div>";
                            }
                        }
                	    break;
                	case 10:                        
                        for(var i= 0,j = 1;i < 25;i++)
                        {
                            if ((i+1) < 5 && ((i+1)%5) !=0) {
                                htmlstr += "<div id=\"windowbox"+j+"\" class=\"window10box\">";
                                    htmlstr += "<div id=\"window"+j+"\" class=\"window\"></div>";
                                    htmlstr += "<div id=\"windowtitle"+j+"\" class=\"windowtitle\"><div class=\"title1\" >"+ resourceUserLanguage.window.title +"</div></div>";
                                htmlstr += "</div>";
                                i+= 15;
                                j++;
                            }
                            else
                            {
                                htmlstr += "<div id=\"windowbox"+j+"\" class=\"window25box\">";
                                    htmlstr += "<div id=\"window"+j+"\" class=\"window\"></div>";
                                    htmlstr += "<div id=\"windowtitle"+j+"\" class=\"windowtitle\"><div class=\"title1\" >"+ resourceUserLanguage.window.title +"</div></div>";
                                htmlstr += "</div>";
                                j++;
                            }
                        }                        
                	    break;
                	case 12:
                        for(var i= 0,j = 1 ;i < 36;i++)
                        {
                            //alert("windowbox"+j);
                            if ((i+1) < 6 && ((i+1)%6) !=0) {
                                htmlstr += "<div id=\"windowbox"+j+"\" class=\"window12box\">";
                                    htmlstr += "<div id=\"window"+j+"\" class=\"window\"></div>";
                                    htmlstr += "<div id=\"windowtitle"+j+"\" class=\"windowtitle\"><div class=\"title1\" >"+ resourceUserLanguage.window.title +"</div></div>";
                                htmlstr += "</div>";
                                i+= 24;
                                j++;
                            }
                            else
                            {
                                htmlstr += "<div id=\"windowbox"+j+"\" class=\"window36box\">";
                                    htmlstr += "<div id=\"window"+j+"\" class=\"window\"></div>";
                                    htmlstr += "<div id=\"windowtitle"+j+"\" class=\"windowtitle\"><div class=\"title1\" >"+ resourceUserLanguage.window.title +"</div></div>";
                                htmlstr += "</div>";
                                j++;
                            }
                        }
                	    break;
                    default:
                        for(var i= 0 ;i < 4;i++)
                        {
                            htmlstr += "<div id=\"windowbox"+i+"\" class=\"window4box\">";
                                htmlstr += "<div id=\"window"+i+"\" class=\"window\"></div>";
                                htmlstr += "<div id=\"windowtitle"+i+"\" class=\"windowtitle\"><div class=\"title1\" >"+ resourceUserLanguage.window.title +"</div></div>";
                            htmlstr += "</div>"; 
                        }
                    break;
                }
                this.curWindowNumber = wndnumber;
                $("windowsbox").innerHTML = htmlstr;
                
                this.InitWindows();
                
                // 恢复以前在播放的视频
                if(tmpwindows.keys().length > 0)
                {
                    var keys = NrcapPlugs.Windows.keys();
                    var j = 0;                    
                    tmpwindows.each(
                        function(item)
                        {
                            if(keys[j])
                            {
                                var key = keys[j];
                                j++;                            
                                NrcapPlugs.Windows.set(key,{container:$(key),active:false,window:item.value.window,description:item.value.description});
                                
                                NrcapPlugs.Windows.get(key).window.wnd  = NrcapPlugs.ReCreateWindow(key.replace("windowbox","window"));       
                                NrcapPlugs.Windows.get(key).window.wnd.style.visibility = "visible";
                                NrcapPlugs.ReAttachDisplayWindow(NrcapPlugs.Windows.get(key).window.ivguid,ResourceUser.connectId,NrcapPlugs.Windows.get(key).window);
                                
                                var windowEvent = Object.clone(NrcapPlugs.WindowEvent);
                                windowEvent.onStop.status = true;
                                windowEvent.onStop.callback = function(){ResourceUser.PlayWindow.StopVideo(key);};
                                
                                windowEvent.onClick.status = true;
                                windowEvent.onClick.callback = function(){ResourceUser.PlayWindow.ActiveWindow(key);};
                                
                                windowEvent.onStartRecord.status = true;
                                windowEvent.onStartRecord.callback = function(){ResourceUser.PlayWindow.Record($(key.replace("windowbox","windowtitle")+"_record"),key);};
                                
                                windowEvent.onStopRecord.status = true;
                                windowEvent.onStopRecord.callback = function(){ResourceUser.PlayWindow.Record($(key.replace("windowbox","windowtitle")+"_record"),key);};
                                windowEvent.onPTZControl.status = true;
                                
                                windowEvent.onFullScreen.status = true;
                                windowEvent.onRestore.status = true;
                                windowEvent.onSnapshot.status = true;
                                if(parseInt(key.replace("windowbox","")) > 1 && this.curWindowNumber != 1 && this.curWindowNumber != 4 && this.curWindowNumber != 9 && this.curWindowNumber != 16 )
                                {
                                    //alert(item.key.replace("windowbox",""))
                                    windowEvent.onCustomMenuCommand.status = true;                                
                                    windowEvent.onCustomMenuCommand.menu = [{key:"separator",text:""},{key:"tobigwnd",text:"大窗口播放"}];
                                    windowEvent.onCustomMenuCommand.callback = function(){ResourceUser.PlayWindow.CustomMenuCommandCallBack(key,arguments);};
                                }
                                else
                                {
                                    windowEvent.onCustomMenuCommand.status = false;
                                }
                                
                                NrcapPlugs.WindowAttachEvent(windowEvent,NrcapPlugs.Windows.get(key).window);
                                ResourceUser.PlayWindow.SetWindowTitle(key);
                                ResourceUser.SetResourceUserStatus(key);
                            }
                        }
                    )
                }
                
                // 激活首个窗口为默认的
                ResourceUser.PlayWindow.ActiveWindow(NrcapPlugs.Windows.keys()[0]);

            }
        },
        
        SenseVideoStatusTimer:new Hash(),
        
        // 播放视频
        PlayVideo:function(ivguid)
        {
            
            NrcapPlugs.Windows.each
            (
                function(item)
                {
                    if(item.value.active)
                    {
                        var create = true;
                        var play = true;
                        if(item.value.window != null)
                        {
                            if(ivguid == item.value.window.ivguid && item.value.window.status.playvideoing)
                            {
                                // 此视频正在播放
                                create = false;
                                play = false;
                            }
                            else if(ivguid == item.value.window.ivguid)
                            {
                                // 窗口已绑定,但未播放
                                create = false;
                                //play = true;
                            }
                            else if(ivguid != item.value.window.ivguid && item.value.window.status.playvideoing)
                            {
                                // 窗口正在播放其它视频
                                create = false;
                                NrcapPlugs.StopVideo(item.value.window);
                            }
                        }
                        var rv = NrcapPlugs.GetDesciption(ResourceUser.connectId,ivguid,$F(ivguid+"parentIndexs"));
                        if (rv != NrcapPlugs.NrcapError.NRCAP_ERROR_GETDESCRIPTION_FAILED)
                        {
                            item.value.description = rv;
                        }
                        if(!rv.usable || !rv.enable)
                        {
                            if(WebClient.debug)
                            {
                                alert("设备不在线");
                            }
                            return;
                        }
                        
                        if(create)
                        {
                            // 初始化一个窗口
                            
                            var windowEvent = Object.clone(NrcapPlugs.WindowEvent);
                            windowEvent.onStop.status = true;
                            windowEvent.onStop.callback = function(){ResourceUser.PlayWindow.StopVideo(item.key);};
                            
                            windowEvent.onClick.status = true;
                            windowEvent.onClick.callback = function(){ResourceUser.PlayWindow.ActiveWindow(item.key);};
                            
                            windowEvent.onStartRecord.status = true;
                            windowEvent.onStartRecord.callback = function(){ResourceUser.PlayWindow.Record($(item.key.replace("windowbox","windowtitle")+"_record"),item.key);};
                            
                            windowEvent.onStopRecord.status = true;
                            windowEvent.onStopRecord.callback = function(){ResourceUser.PlayWindow.Record($(item.key.replace("windowbox","windowtitle")+"_record"),item.key);};
                            windowEvent.onPTZControl.status = true;
                            windowEvent.onFullScreen.status = true;
                            windowEvent.onRestore.status = true;
                            windowEvent.onSnapshot.status = true;
                            
                            if(parseInt(item.key.replace("windowbox","")) > 1 && ResourceUser.PlayWindow.curWindowNumber != 1 && ResourceUser.PlayWindow.curWindowNumber != 4 && ResourceUser.PlayWindow.curWindowNumber != 9 && ResourceUser.PlayWindow.curWindowNumber != 16 )
                            {
                                windowEvent.onCustomMenuCommand.status = true;                                
                                windowEvent.onCustomMenuCommand.menu = [{key:"separator",text:""},{key:"tobigwnd",text:"大窗口播放"}];
                                windowEvent.onCustomMenuCommand.callback = function(){ResourceUser.PlayWindow.CustomMenuCommandCallBack(item.key,arguments);};
                            }
                            else
                            {
                                windowEvent.onCustomMenuCommand.status = false;
                            }
                            item.value.window = NrcapPlugs.CreateWindow(ResourceUser.connectId,item.key.replace("windowbox","window"),windowEvent);
                        }
                        else
                        {
                            if(play)
                            {
                                item.value.window.wnd.style.visibility = "visible";
                            }
                        }
                        
                        if (play)
                        {
                            // 设置窗口样式
                            item.value.window.style.enableFullScreen = true;
                            item.value.window.style.enableMask = false;                           
                            // 开始播放
                            NrcapPlugs.PlayVideo(ivguid,ResourceUser.connectId,item.value.window);
                            
                            // 开始侦测播放视频状态
                            if(ResourceUser.PlayWindow.SenseVideoStatusTimer.get(item.key))
                            {
                            }
                            else
                            {
                                ResourceUser.PlayWindow.SenseVideoStatusTimer.set(item.key,{timer:null,interval:100});
                                ResourceUser.PlayWindow.SenseVideoStatusTimer.get(item.key).timer = setInterval("ResourceUser.PlayWindow.SetWindowTitle('"+item.key+"')",ResourceUser.PlayWindow.SenseVideoStatusTimer.get(item.key).interval);
                                
                            }
                            
                            // 设置播放窗口信息条
                            ResourceUser.PlayWindow.SetWindowTitle(item.key);
                            ResourceUser.SetResourceUserStatus(item.key);
                        }
                        
                        
                        return true;
                    }
                }
            )
        },
        
        CustomMenuCommandCallBack:function(windowKey,t_arguments)
        {
            switch(t_arguments[0])
            {
                case "tobigwnd":        // 小窗口到大窗口播放
                    ResourceUser.PlayWindow.SwapToBigWnd(windowKey);
            	    break;
                default:
                    break;
            }
        },
        SwapToBigWnd:function(windowKey)
        {
            if(this.curWindowNumber != 1 && this.curWindowNumber != 4 && this.curWindowNumber != 9 && this.curWindowNumber != 16 && NrcapPlugs.Windows.get("windowbox1") && NrcapPlugs.Windows.get(windowKey).window)
            {
                var bigivguid = "";
                
                // 如果原大窗口没有窗口对象,要创建                
                if(!NrcapPlugs.Windows.get("windowbox1").window)
                {
                    NrcapPlugs.Windows.get("windowbox1").description = {"guid":"","type":"","model":"","name":"","description":null,"usable":false,"enable":false,"childResource":null};
                    
                    var windowEvent = Object.clone(NrcapPlugs.WindowEvent);
                    windowEvent.onStop.status = true;
                    windowEvent.onStop.callback = function(){ResourceUser.PlayWindow.StopVideo("windowbox1");};
                    
                    windowEvent.onClick.status = true;
                    windowEvent.onClick.callback = function(){ResourceUser.PlayWindow.ActiveWindow("windowbox1");};
                    
                    windowEvent.onStartRecord.status = true;
                    windowEvent.onStartRecord.callback = function(){ResourceUser.PlayWindow.Record($("windowtitle1_record"),"windowbox1");};
                    
                    windowEvent.onStopRecord.status = true;
                    windowEvent.onStopRecord.callback = function(){ResourceUser.PlayWindow.Record($("windowtitle1_record"),"windowbox1");};
                    windowEvent.onPTZControl.status = true;
                    windowEvent.onFullScreen.status = true;
                    windowEvent.onRestore.status = true;
                    windowEvent.onSnapshot.status = true;
                    windowEvent.onCustomMenuCommand.status = false;
                    NrcapPlugs.Windows.get("windowbox1").window = NrcapPlugs.CreateWindow(ResourceUser.connectId,"window1",windowEvent); 
                }
                else
                {                    
                    if(NrcapPlugs.Windows.get("windowbox1").window.wnd.style.visibility != "visible")
                    {
                        NrcapPlugs.Windows.get("windowbox1").window.wnd.style.visibility = "visible";
                    }
                }
                
                //alert(NrcapPlugs.Windows.get(windowKey).description.name);
                var description = NrcapPlugs.Windows.get(windowKey).description;
                
                NrcapPlugs.Windows.get(windowKey).description = NrcapPlugs.Windows.get("windowbox1").description;
                NrcapPlugs.Windows.get("windowbox1").description = description;
                
                NrcapPlugs.SwapWindow(NrcapPlugs.Windows.get("windowbox1").window,NrcapPlugs.Windows.get(windowKey).window);
                
                // 更新大窗口状态                
                ResourceUser.PlayWindow.SetWindowTitle("windowbox1");
                ResourceUser.SetResourceUserStatus("windowbox1");               
                
                // 更新原窗口状态
                if(!NrcapPlugs.Windows.get(windowKey).window.status.playvideoing)
                {
                    NrcapPlugs.Windows.get(windowKey).window.wnd.style.visibility = "hidden";
                    
                    if(ResourceUser.PlayWindow.SenseVideoStatusTimer.get(windowKey))
                    {
                        clearInterval(ResourceUser.PlayWindow.SenseVideoStatusTimer.timer);
                        ResourceUser.PlayWindow.SenseVideoStatusTimer.unset(windowKey);
                    }
                }
                ResourceUser.SetResourceUserStatus(windowKey);
                ResourceUser.PlayWindow.SetWindowTitle(windowKey);
            }
        },
        
        // 停止视频
        StopVideo:function(windowKey)
        {            
            try
            {
                if(windowKey)
                {
                    if (NrcapPlugs.Windows.get(windowKey))
                    {
                        NrcapPlugs.StopVideo(NrcapPlugs.Windows.get(windowKey).window);
                        ResourceUser.PlayWindow.SetWindowTitle(windowKey);
                        ResourceUser.SetResourceUserStatus(windowKey);
                        NrcapPlugs.Windows.get(windowKey).window.wnd.style.visibility = "hidden";//visible
                        
                        if(ResourceUser.PlayWindow.SenseVideoStatusTimer.get(windowKey))
                        {
                            clearInterval(ResourceUser.PlayWindow.SenseVideoStatusTimer.timer);
                            ResourceUser.PlayWindow.SenseVideoStatusTimer.unset(windowKey);
                        }
                    }
                }            
            }
            catch(e)
            {
                if (WebClient.debug)
                {
                    alert("StopVideo:"+e.message+","+e.name);
                    throw e;
                }            
            }
        },
        
        // 录像
        Record:function(obj,windowKey)
        {
            try
            {
                if(obj && windowKey)
                {
                    if (NrcapPlugs.Windows.get(windowKey))
                    {
                        NrcapPlugs.RecordVideo(NrcapPlugs.Windows.get(windowKey).window);
                        ResourceUser.PlayWindow.WindowTitleEvent(obj.id,"mouseup",windowKey);
                        //ResourceUser.PlayWindow.SetWindowTitle(windowKey);
                    }
                }            
            }
            catch(e)
            {
                if (WebClient.debug)
                {
                    alert("Record:"+e.message+","+e.name);
                    throw e;
                }            
            }
        },
        
        // 播放音频
        PlayAudio:function(obj,windowKey)
        {
            try
            {
                if(obj && windowKey)
                {
                    if (NrcapPlugs.Windows.get(windowKey))
                    {
                        var playaudioed = false;
                        NrcapPlugs.Windows.each
                        (
                            function(item)
                            {
                                if(item.value.window != null)
                                {
                                    if(item.value.window.status.playvideoing && item.value.window.status.playaudioing)
                                    {
                                        if (item.key == windowKey)
                                        {
                                            playaudioed = true;
                                        }
                                        else
                                        {
                                            NrcapPlugs.PlayAudio(item.value.window);                                            
                                            ResourceUser.PlayWindow.WindowTitleEvent(item.key.replace("windowbox","windowtitle")+"_audio","mouseup",item.key);
                                            //ResourceUser.PlayWindow.SetWindowTitle(item.key);
                                        }
                                        throw $break;
                                    }
                                    
                                }
                            }
                        )                       
                        //if(playaudioed)
                        {
                            NrcapPlugs.PlayAudio(NrcapPlugs.Windows.get(windowKey).window);
                            ResourceUser.PlayWindow.WindowTitleEvent(obj.id,"mouseup",windowKey);
                            //ResourceUser.PlayWindow.SetWindowTitle(windowKey);
                        }
                    }
                }            
            }
            catch(e)
            {
                if (WebClient.debug)
                {
                    alert("Record:"+e.message+","+e.name);
                    throw e;
                }            
            }        
        },
        
        // 喊话
        PlayUpAudio:function(obj,windowKey)
        {
            try
            {
                if(obj && windowKey)
                {
                    if (NrcapPlugs.Windows.get(windowKey))
                    {
                        var playupaudioed = false;
                        NrcapPlugs.Windows.each
                        (
                            function(item)
                            {
                                if(item.value.window != null)
                                {
                                    if(item.value.window.status.playvideoing && item.value.window.status.playupaudioing)
                                    {
                                        if (item.key == windowKey)
                                        {
                                            playupaudioed = true;
                                        }
                                        else
                                        {
                                            NrcapPlugs.PlayUpAudio(item.value.window);                                            
                                            ResourceUser.PlayWindow.WindowTitleEvent(item.key.replace("windowbox","windowtitle")+"_upaudio","mouseup",item.key);
                                        }
                                        throw $break;
                                    }
                                    
                                }
                            }
                        )
                        
                        NrcapPlugs.PlayUpAudio(NrcapPlugs.Windows.get(windowKey).window);
                        ResourceUser.PlayWindow.WindowTitleEvent(obj.id,"mouseup",windowKey);
                        
                    }
                }            
            }
            catch(e)
            {
                if (WebClient.debug)
                {
                    alert("Record:"+e.message+","+e.name);
                    throw e;
                }            
            }
        },
        
        // 抓拍
        SnapShot:function(obj,windowKey)
        {
            try
            {
                if(obj && windowKey)
                {
                    if (NrcapPlugs.Windows.get(windowKey))
                    {
                        NrcapPlugs.SnapShot(NrcapPlugs.Windows.get(windowKey).window);
                    }
                }            
            }
            catch(e)
            {
                if (WebClient.debug)
                {
                    alert("SnapShot:"+e.message+","+e.name);
                    throw e;
                }            
            }    
        },
        
        // 云台控制
        PTZControl:function(objId,control)
        {
            try
            {
                if($(objId))
                {
                    NrcapPlugs.Windows.each
                    (
                        function(item)
                        {
                            // 找到当前选择的播放窗口
                            if(item.value.window != null && item.value.active)
                            {
                                if(item.value.window.status.playvideoing && item.value.window.ptzguid != null)
                                {
                                    var direction = "";
                                    switch(objId)
                                    {
                                        case "ptz_up":
                                            direction = "turnup";                                            
                                            break;
                                        case "ptz_down":
                                            direction = "turndown";
                                            break;
                                        case "ptz_left":
                                            direction = "turnleft";
                                            break;
                                        case "ptz_right":
                                            direction = "turnright";
                                            break;
                                        case "ptz_zoomin":
                                            direction = "zoomin";
                                            break;
                                        case "ptz_zoomout":
                                            direction = "zoomout";
                                            break;
                                        case "ptz_aperturem":
                                            direction = "aperturem";
                                            break;
                                        case "ptz_aperturea":
                                            direction = "aperturea";
                                            break;
                                        case "ptz_focusfar":
                                            direction = "focusfar";
                                            break;
                                        case "ptz_focusnear":
                                            direction = "focusnear";
                                            break;
                                        default:
                                            break;
                                    }
                                    if(direction != "")
                                    {
                                        window.status = "发送"+control+","+objId+"命令";
                                        NrcapPlugs.PTZControl(item.value.window,control,direction);
                                    }
                                }                                
                            }
                        }
                    )
                }
            }
            catch(e)
            {
                if(WebClient.debug)
                {
                    alert("PTZControl:"+e.message+","+e.name);
                    throw e;
                }
            }        
        },
        
        // 设置播放窗口状态条html
        SetWindowTitle:function(windowKey)
        {
            var titleId = windowKey.replace("windowbox","windowtitle");
            if($(titleId) && NrcapPlugs.Windows.get(windowKey))
            {
                //alert(windowKey+","+NrcapPlugs.Windows.get(windowKey).description)
                if(NrcapPlugs.Windows.get(windowKey).description)
                {
                    var htmlstr = "";
                    
                    if (NrcapPlugs.Windows.get(windowKey).window.status.playvideoing)
                    {
                        htmlstr += "<div class=\"title1\" >"+ NrcapPlugs.Windows.get(windowKey).description.name +"&nbsp;"+resourceUserLanguage.playVideoStatus[NrcapPlugs.GetVideoStatus(NrcapPlugs.Windows.get(windowKey).window)]+"</div>";
                        htmlstr += "<div class=\"title2\">";
                        if(NrcapPlugs.Windows.get(windowKey).window.status.recording)
                        {
                            htmlstr += "<input id=\""+titleId+"_record\" type=\"button\" class=\"startrecord_onmousedown\" webclienttype=\"windowtitle\" onfocus=\"this.blur();\" onmouseout=\"ResourceUser.PlayWindow.WindowTitleEvent(this.id,'mouseout','"+windowKey+"');\" onmouseover=\"ResourceUser.PlayWindow.WindowTitleEvent(this.id,'mouseover','"+windowKey+"');\" onmousedown=\"ResourceUser.PlayWindow.WindowTitleEvent(this.id,'mousedown','"+windowKey+"');\"  onclick=\"ResourceUser.PlayWindow.Record(this,'"+windowKey+"');\" title=\""+resourceUserLanguage.window.recordtitle.stop+"\" />&nbsp;";
                        }
                        else
                        {
                            htmlstr += "<input id=\""+titleId+"_record\" type=\"button\" class=\"startrecord_onmouseout\" webclienttype=\"windowtitle\" onfocus=\"this.blur();\" onmouseout=\"ResourceUser.PlayWindow.WindowTitleEvent(this.id,'mouseout','"+windowKey+"');\" onmouseover=\"ResourceUser.PlayWindow.WindowTitleEvent(this.id,'mouseover','"+windowKey+"');\" onmousedown=\"ResourceUser.PlayWindow.WindowTitleEvent(this.id,'mousedown','"+windowKey+"');\"  onclick=\"ResourceUser.PlayWindow.Record(this,'"+windowKey+"');\" title=\""+resourceUserLanguage.window.recordtitle.start+"\" />&nbsp;";
                        }
                        
                        htmlstr += "<input id=\""+titleId+"_snapshot\" type=\"button\" class=\"snapshot_onmouseout\" webclienttype=\"windowtitle\" onfocus=\"this.blur();\" onmouseout=\"this.className='snapshot_onmouseout';\" onmouseover=\"this.className='snapshot_onmouseover';\" onmousedown=\"this.className='snapshot_onmousedown';\"  onclick=\"ResourceUser.PlayWindow.SnapShot(this,'"+windowKey+"');\" title=\""+resourceUserLanguage.window.snapshottitle+"\" />&nbsp;";
                        
                        if(NrcapPlugs.Windows.get(windowKey).window.status.playaudioing)                        
                        {
                            htmlstr += "<input id=\""+titleId+"_audio\" type=\"button\" class=\"audio_onmousedown\" webclienttype=\"windowtitle\" onfocus=\"this.blur();\" onmouseout=\"ResourceUser.PlayWindow.WindowTitleEvent(this.id,'mouseout','"+windowKey+"');\" onmouseover=\"ResourceUser.PlayWindow.WindowTitleEvent(this.id,'mouseover','"+windowKey+"');\" onmousedown=\"ResourceUser.PlayWindow.WindowTitleEvent(this.id,'mousedown','"+windowKey+"');\"  onclick=\"ResourceUser.PlayWindow.PlayAudio(this,'"+windowKey+"');\" title=\""+resourceUserLanguage.window.audiotitle.start+"\" />&nbsp;";
                        }
                        else
                        {
                            htmlstr += "<input id=\""+titleId+"_audio\" type=\"button\" class=\"audio_onmouseout\" webclienttype=\"windowtitle\" onfocus=\"this.blur();\" onmouseout=\"ResourceUser.PlayWindow.WindowTitleEvent(this.id,'mouseout','"+windowKey+"');\" onmouseover=\"ResourceUser.PlayWindow.WindowTitleEvent(this.id,'mouseover','"+windowKey+"');\" onmousedown=\"ResourceUser.PlayWindow.WindowTitleEvent(this.id,'mousedown','"+windowKey+"');\"  onclick=\"ResourceUser.PlayWindow.PlayAudio(this,'"+windowKey+"');\" title=\""+resourceUserLanguage.window.audiotitle.start+"\" />&nbsp;";
                        }
                        
                        if(NrcapPlugs.Windows.get(windowKey).window.status.playupaudioing)                        
                        {
                            htmlstr += "<input id=\""+titleId+"_upaudio\" type=\"button\" class=\"upaudio_onmousedown\" webclienttype=\"windowtitle\" onfocus=\"this.blur();\" onmouseout=\"ResourceUser.PlayWindow.WindowTitleEvent(this.id,'mouseout','"+windowKey+"');\" onmouseover=\"ResourceUser.PlayWindow.WindowTitleEvent(this.id,'mouseover','"+windowKey+"');\" onmousedown=\"ResourceUser.PlayWindow.WindowTitleEvent(this.id,'mousedown','"+windowKey+"');\"  onclick=\"ResourceUser.PlayWindow.PlayUpAudio(this,'"+windowKey+"');\" title=\""+resourceUserLanguage.window.upaudiotitle.start+"\" />&nbsp;";
                        }
                        else
                        {
                            htmlstr += "<input id=\""+titleId+"_upaudio\" type=\"button\" class=\"upaudio_onmouseout\" webclienttype=\"windowtitle\" onfocus=\"this.blur();\" onmouseout=\"ResourceUser.PlayWindow.WindowTitleEvent(this.id,'mouseout','"+windowKey+"');\" onmouseover=\"ResourceUser.PlayWindow.WindowTitleEvent(this.id,'mouseover','"+windowKey+"');\" onmousedown=\"ResourceUser.PlayWindow.WindowTitleEvent(this.id,'mousedown','"+windowKey+"');\"  onclick=\"ResourceUser.PlayWindow.PlayUpAudio(this,'"+windowKey+"');\" title=\""+resourceUserLanguage.window.upaudiotitle.start+"\" />&nbsp;";
                        }
                        htmlstr += "</div>"
                    }
                    else
                    {
                        htmlstr += "<div class=\"title1\" >"+ resourceUserLanguage.window.title +"</div>";
                        htmlstr += "<div class=\"title2\"></div>"
                    }    
                    $(titleId).innerHTML = htmlstr;            
                }
            }        
        },
        
        // 视频窗口控制事件
        WindowTitleEvent:function(titleEventId,titleEvent,windowKey)
        {
            if (windowKey && NrcapPlugs.Windows.get(windowKey))
            {
                if(titleEventId.search("_record") != -1)
                {
                    if(NrcapPlugs.Windows.get(windowKey).window.status.recording)
                    {
                        // 正在录像                      
                        if($("mm_record"))
                        {
                            $("mm_record").style.backgroundImage = "url("+g_imageprefix+"/"+languageDir+"/top_menuicon"+imagePreFix+"_4.png)";
                        }
                        $(titleEventId).className = "startrecord_onmousedown";
                        $(titleEventId).title = resourceUserLanguage.window.recordtitle.stop;
                    }
                    else
                    {                      
                        if($("mm_record"))
                        {
                            $("mm_record").style.backgroundImage = "url("+g_imageprefix+"/"+languageDir+"/top_menuicon"+imagePreFix+"_1.png)";
                        }
                        if(titleEvent == "mouseover")
                        {
                            // 正在录像
                            $(titleEventId).className = "startrecord_onmouseover";
                        }
                        else
                        {
                            // 正在播放
                            $(titleEventId).className = "startrecord_onmouseout";
                        }
                        $(titleEventId).title = resourceUserLanguage.window.recordtitle.start;
                    }
                }
                else if(titleEventId.search("_audio") != -1)
                {
                    if(NrcapPlugs.Windows.get(windowKey).window.status.playaudioing)
                    {
                        // 正在播放
                        $(titleEventId).className = "audio_onmousedown";                        
                        if($("mm_audio"))
                        {
                            $("mm_audio").style.backgroundImage = "url("+g_imageprefix+"/"+languageDir+"/top_menuicon"+imagePreFix+"_4.png)";
                        }
                        $(titleEventId).title = resourceUserLanguage.window.audiotitle.stop;
                    }
                    else
                    {
                        if($("mm_audio"))
                        {
                            $("mm_audio").style.backgroundImage = "url("+g_imageprefix+"/"+languageDir+"/top_menuicon"+imagePreFix+"_1.png)";
                        }
                        if(titleEvent == "mouseover")
                        {
                            // 正在录像
                            $(titleEventId).className = "audio_onmouseover";
                        }
                        else
                        {
                            // 正在播放
                            $(titleEventId).className = "audio_onmouseout";
                        }
                        $(titleEventId).title = resourceUserLanguage.window.audiotitle.start;
                    }
                }
                else if(titleEventId.search("_upaudio") != -1)
                {
                    if(NrcapPlugs.Windows.get(windowKey).window.status.playupaudioing)
                    {
                        // 正在播放
                        $(titleEventId).className = "upaudio_onmousedown";                        
                        if($("mm_upaudio"))
                        {
                            $("mm_upaudio").style.backgroundImage = "url("+g_imageprefix+"/"+languageDir+"/top_menuicon"+imagePreFix+"_4.png)";
                        }
                        $(titleEventId).title = resourceUserLanguage.window.upaudiotitle.stop;
                    }
                    else
                    {
                        if($("mm_upaudio"))
                        {
                            $("mm_upaudio").style.backgroundImage = "url("+g_imageprefix+"/"+languageDir+"/top_menuicon"+imagePreFix+"_1.png)";
                        }
                        if(titleEvent == "mouseover")
                        {
                            // 正在录像
                            $(titleEventId).className = "upaudio_onmouseover";
                        }
                        else
                        {
                            // 正在播放
                            $(titleEventId).className = "upaudio_onmouseout";
                        }
                        $(titleEventId).title = resourceUserLanguage.window.upaudiotitle.start;
                    }
                }
                
            }
            else
            {
                // 异常
            }
        }
    }
    
}


/* body event */
if (window.attachEvent) {
    window.attachEvent(
        "onload",
        function()
        {
            document.title = documentTitle;
            if(WebClient.Resize())
            {
                if (WebClient.autoLogin && typeof WebClient.autoLogin == "object" && WebClient.autoLogin.auto && WebClient.autoLogin.auto == true)
                {
                    WebClient.LoginStatus.Set(true);
                    ResourceUser.Init(WebClient.autoLogin);
                }
                else
                {
                    if (WebClient.LoginStatus.GetCookieStatus() && WebClient.CurBody.Get() != "login")
                    {
                        if(typeof ResourceUser == "object" && Cookie.GetCookie("autologin") == "true")
                        {
                            var autologininformation = eval("("+Cookie.GetCookie("autologininformation")+")");                        
                            if(autologininformation && typeof autologininformation == "object" && autologininformation.username )
                            {
                                WebClient.LoginStatus.Set(true);
                                ResourceUser.Init(autologininformation);
                                return;
                            }
                        }
                    }
                    
                    Login.Init();
                }
                
            } 
        }
    );
    window.attachEvent(
        "onresize",
        function()
        {
            if (WebClient.size.width == 1024 && WebClient.forceSize) 
            {
                WebClient.Resize();
            }
        }
    );
    window.attachEvent(
        "onunload",
        function()
        {
            Cookie.SetCookie("autologin","true",null);
            WebClient.Refresh();
        }
    );
    document.attachEvent(
        "ondragstart",
        function()
        {
            if (WebClient && WebClient.LoginStatus.GetCookieStatus() && WebClient.CurBody.Get() == "resourceuser")
            {   
                return false;
            }
            else
            {
                return true;
            }
        }
    )
    document.attachEvent(
        "onselectstart",
        function()
        {            
            if (WebClient && WebClient.LoginStatus.GetCookieStatus() && WebClient.CurBody.Get() == "resourceuser")
            {   
                return false;
            }
            else
            {
                return true;
            }
        }
    )     
}