﻿   
    var request = 
    { 
        QueryString : function(val) 
        { 
            var uri = monitorjs.src; 
            var re = new RegExp("" +val+ "=([^&?]*)", "ig"); 
            return ((uri.match(re))?(uri.match(re)[0].substr(val.length+1)):null); 
        } 
    };   
   
   
    function MM_reloadPage(init) {  //reloads the window if Nav4 resized
      if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
        document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
      else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
    }
    
    MM_reloadPage(true);

    function MM_preloadImages() { //v3.0
      var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
        var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
        if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
    }

    function MM_swapImgRestore() { //v3.0
      var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
    }

    function MM_findObj(n, d) { //v4.01
      var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
        d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
      if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
      for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
      if(!x && d.getElementById) x=d.getElementById(n); return x;
    }

    function MM_swapImage() { //v3.0
      var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
       if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
    }

    // Base64编码解码文件
       var    keyStr    =    "ABCDEFGHIJKLMNOP"    +     
                          "QRSTUVWXYZabcdef"    +     
                          "ghijklmnopqrstuv"    +     
                          "wxyz0123456789+/"    +     
                          "=";     
    
      function    encode64(input)    {     
      input    =    escape(input);     
      var    output    =    "";     
      var    chr1,    chr2,    chr3    =    "";     
      var    enc1,    enc2,    enc3,    enc4    =    "";     
      var    i    =    0;     
    
      do    {     
        chr1    =    input.charCodeAt(i++);     
        chr2    =    input.charCodeAt(i++);     
        chr3    =    input.charCodeAt(i++);     
    
        enc1    =    chr1    >>    2;     
        enc2    =    ((chr1    &    3)    <<    4)    |    (chr2    >>    4);     
        enc3    =    ((chr2    &    15)    <<    2)    |    (chr3    >>    6);     
        enc4    =    chr3    &    63;     
    
        if    (isNaN(chr2))    {     
          enc3    =    enc4    =    64;     
        }    else    if    (isNaN(chr3))    {     
          enc4    =    64;     
        }     
    
        output    =    output    +     
        keyStr.charAt(enc1)    +     
        keyStr.charAt(enc2)    +     
        keyStr.charAt(enc3)    +     
        keyStr.charAt(enc4);     
        chr1    =    chr2    =    chr3    =    "";     
        enc1    =    enc2    =    enc3    =    enc4    =    "";     
      }    while    (i    <    input.length);     
    
      return    output;     
    }     
    
    function    decode64(input)    {     
      var    output    =    "";     
      var    chr1,    chr2,    chr3    =    "";     
      var    enc1,    enc2,    enc3,    enc4    =    "";     
      var    i    =    0;     
    if(input == "AA==")//空字符直接返回，否则会出现不可见字符做字串连接无效。
        return output;
      //    remove    all    characters    that    are    not    A-Z,    a-z,    0-9,    +,    /,    or    =     
      var    base64test    =    /[^A-Za-z0-9\+\/\=]/g;     
      if    (base64test.exec(input))    {     
        alert("There    were    invalid    base64    characters    in    the    input    text.\n"    +     
        "Valid    base64    characters    are    A-Z,    a-z,    0-9,    '+',    '/',    and    '='\n"    +     
        "Expect    errors    in    decoding.");     
      }     
      input    =    input.replace(/[^A-Za-z0-9\+\/\=]/g,    "");     
    
      do    {     
        enc1    =    keyStr.indexOf(input.charAt(i++));     
        enc2    =    keyStr.indexOf(input.charAt(i++));     
        enc3    =    keyStr.indexOf(input.charAt(i++));     
        enc4    =    keyStr.indexOf(input.charAt(i++));     
        
        chr1    =    (enc1    <<    2)    |    (enc2    >>    4);     
        chr2    =    ((enc2    &    15)    <<    4)    |    (enc3    >>    2);     
        chr3    =    ((enc3    &    3)    <<    6)    |    enc4;     
    
        output    =    output    +    String.fromCharCode(chr1);     
        
        if    (enc3    !=    64)    {     
          output    =    output    +    String.fromCharCode(chr2);     
        }     
        if    (enc4    !=    64)    {     
          output    =    output    +    String.fromCharCode(chr3);     
        }     
        
        chr1    =    chr2    =    chr3    =    "";     
        enc1    =    enc2    =    enc3    =    enc4    =    "";     
        
      }    while    (i    <    input.length);    
      return    unescape(output);     
    }       


    if(!web1800) var web1800={};
    if(!web1800.Sys) web1800.Sys={};
    if(!web1800.utils) web1800.utils={};
    if(!web1800.Drag) web1800.Drag={};
    
    web1800.Sys.getObj = function(objId){
        if (document.getElementById){
            return document.getElementById(objId);}
        else if (document.all){
            return document.all(objId);}};
            
    web1800.Sys.urlEncode = function(str){
	    var i,c,ret="",strSpecial="!\"#$%&'()*+,/:;<=>?@[\]^`{|}~%";
	    for(i=0;i<str.length;i++){
		    c=str.charAt(i);
		    if(c==" "){ret+="+";}
		    else if(strSpecial.indexOf(c)!=-1){
			    ret+="%"+str.charCodeAt(i).toString(16);}
		    else{
		    ret+=c;}
	    }
	    return ret;
    };
    
    web1800.Sys.urlDecode = function(str){
	    if("undefined" == typeof decodeURIComponent){
		    return unescape(str).replace(/\+/g, ' ').replace(/%2B/g,'+');
  	    } else {
  		    return unescape(str).replace(/\+/g, ' ').replace(/%2B/g,'+');
      }
    };   
    
    web1800.Sys.Is_enablecookie=function(){
		document.cookie="testcookie=web1800";
		var cookiestr=new String(document.cookie);
		var cookiename="testcookie=web1800";
		var beginpos=cookiestr.indexOf(cookiename);
		if(beginpos!=-1){
			return true;
		}else{
			return false;
		}
    };
    web1800.Sys.setCookie=function(name,value)
    {
        var Days = 256;
        var exp  = new Date(); 
            exp.setTime(exp.getTime() + Days*24*60*60*1000);
            document.cookie = name + "="+ escape (value)+";domain="+web1800.DomainName+";path=/;expires="+exp.toGMTString();
            document.cookie = name + "="+ escape (value)+";path=/;expires="+exp.toGMTString();
    };
    web1800.Sys.getCookie=function(name){
	        var arr,reg=new RegExp("(^| )"+name+"=([^;]*)(;|$)");
		    arr=document.cookie.match(reg);
            if(arr){return unescape(arr[2]);}
            else{return null;}
    };
    
    
    web1800.getVisitorId = function(){
        var visitorId = web1800.Sys.getCookie("VisitorId");
        if(visitorId == null || visitorId == 0)
        {
            visitorId = new Date().getTime()*10+Math.round(Math.random()*9)+1;
            web1800.Sys.setCookie("VisitorId",visitorId);
        }
        return visitorId;
    };
    
    web1800.serviceId = request.QueryString("ServiceId");
    web1800.urlReferrer = window.document.referrer;
    web1800.pageTitle = encodeURIComponent(window.document.title);
    web1800.pageURL = encodeURIComponent(window.document.URL);
    web1800.codeImage = new Image();
    web1800.PageVisitorId= new Date().getTime()*10+Math.round(Math.random()*9)+1;
    web1800.VisitorId = web1800.getVisitorId();
    web1800.timerId_WaitBeforSayHI = null;
    web1800.ShowVisitSecond = 30000;
    web1800.blGetVisitSecondSuccess = false;
    web1800.serviceURL = "http://www2.web1800.com/Web1800/";
    web1800.DomainName = "www2.web1800.com";
    web1800.imageURL = web1800.serviceURL + "Images/CaptureImages/";
    web1800.sayhibg = "sayhibg1.jpg";
    web1800.sayhibtn = "sayhibtn1.gif";
    web1800.sayhibtnc = "sayhibtnc1.gif";
    
    if (request.QueryString("Imagebg") != null && request.QueryString("Imagebg") != "")
    {
        if (request.QueryString("Imagebg").indexOf(".") != -1)
            web1800.sayhibg = web1800.serviceId + "/" + request.QueryString("Imagebg");
        else
            web1800.sayhibg = "sayhibg" + request.QueryString("Imagebg") + ".jpg";
    }
    if (request.QueryString("Imagebtn") != null && request.QueryString("Imagebtn") != "")
    {
        if (request.QueryString("Imagebtn").indexOf(".") != -1)
            web1800.sayhibtn = web1800.serviceId + "/" + request.QueryString("Imagebtn");
        else
            web1800.sayhibtn = "sayhibtn" + request.QueryString("Imagebtn") + ".gif";
    }
    if (request.QueryString("Imagebtn2") != null && request.QueryString("Imagebtn2") != "")
    {
        if (request.QueryString("Imagebtn2").indexOf(".") != -1)
            web1800.sayhibtnc = web1800.serviceId + "/" + request.QueryString("Imagebtn2");
        else
            web1800.sayhibtnc = "sayhibtnc" + request.QueryString("Imagebtn2") + ".gif";
    }
    web1800.actionURL = web1800.serviceURL + "Service/ServiceType.aspx?ServiceId="+web1800.serviceId+"&title="
                      + web1800.pageTitle+"&PageVisitorId="+web1800.PageVisitorId+"&url="+web1800.pageURL+"&UrlReferrer="+web1800.urlReferrer+"&VisitorId="+web1800.VisitorId;
    
    MM_preloadImages(web1800.serviceURL+web1800.sayhibg, web1800.serviceURL+web1800.sayhibtn);
    web1800.WaitingDiv = null;
    web1800.waitingDivTop = null;
    web1800.waitingDivLeft = null;
    web1800.delayTime = 8;
    web1800.lastDelayTime = null;
    web1800.RespectLanguage1 = "SGklMkMldTZCMjIldThGQ0UldTUxNDkldTRFMzQlMkMldTYyMTEldTY2MkYldTY3MkMldTUxNkMldTUzRjgldTU3MjgldTdFQkYldTVCQTIldTY3MEQlMkM=";
    web1800.RespectLanguage2 = "JXU2NzA5JXU0RUMwJXU0RTQ4JXU1M0VGJXU0RUU1JXU1RTJFJXU0RjYwJXU3Njg0JXU1NDE3JTNG";
    if (request.QueryString("RespectCH") != null && request.QueryString("RespectCH") != "")
    {
        var RespectLanguageCH = decode64(request.QueryString("RespectCH")); 
        if (RespectLanguageCH.indexOf("\r\n") != -1)
        {
            var arrRespectLanguageCH = RespectLanguageCH.split("\r\n");
            web1800.RespectLanguage1 = encode64(arrRespectLanguageCH[0]);
            web1800.RespectLanguage2 = encode64(arrRespectLanguageCH[1]);
        }
        else
        {
            web1800.RespectLanguage1 = encode64(RespectLanguageCH);
            web1800.RespectLanguage2 = encode64("");
        }    
    }
    web1800.ClientLanguage = web1800.Sys.getCookie("Language");
    if (web1800.ClientLanguage == null || web1800.ClientLanguage == "")
        web1800.ClientLanguage = window.navigator.systemLanguage;    
    if(web1800.ClientLanguage != "zh-cn") 
    {
        web1800.RespectLanguage1 = "V2VsY29tZSUyMHRvJTIwb3VyJTIwd2Vic2l0ZSUyMSUyMElzJTIwdGhlcmU=";
        web1800.RespectLanguage2 = "YW55dGhpbmclMjBJJTIwY2FuJTIwaGVscCUyMHlvdSUyMHdpdGglM0Y=";
        if (request.QueryString("RespectEN") != null && request.QueryString("RespectEN") != "")
        {
            var RespectLanguageEN = decode64(request.QueryString("RespectEN"));        
            if (RespectLanguageEN.indexOf("\r\n") != -1)
            {
                var arrRespectLanguageEN = RespectLanguageEN.split("\r\n");
                web1800.RespectLanguage1 = encode64(arrRespectLanguageEN[0]);
                web1800.RespectLanguage2 = encode64(arrRespectLanguageEN[1]);
            }
            else
            {
                web1800.RespectLanguage1 = encode64(RespectLanguageEN);
                web1800.RespectLanguage2 = encode64("");
            }    
        }
    }
    web1800.waitingDivHtml ="<div id='WaitingDiv' style='display:block;z-index:888;position:absolute;top:-300;'>"+
        "<table width='397' border='0' cellspacing='0' cellpadding='0'>"+
            "<tr>"+
              "<td height='185' valign='top' background='"+web1800.imageURL + web1800.sayhibg + "'><table width='100%'  border='0' cellspacing='0' cellpadding='0'>"+
                "<tr>"+
                  "<td height='8' colspan='4'></td>"+
                  "</tr>"+
                "<tr>"+
                  "<td height='32'>&nbsp;</td>"+
                  "<td>&nbsp;</td>"+
                  "<td width='119'>&nbsp;</td>"+
                  "<td width='29' valign='top'><img src='"+web1800.imageURL+"btnc1.gif' onclick=\"web1800.OnRejectChat();\" name='closechat' width='17' height='17' id='closechat' onMouseOver=\"MM_swapImage('closechat','','"+web1800.imageURL+"btnc2.gif',1)\" onMouseOut='MM_swapImgRestore()'></td>"+
                "</tr>"+
                "<tr>"+
                  "<td>&nbsp;</td>"+
                  "<td height='28'>&nbsp;</td>"+
                  "<td colspan='2'>&nbsp;</td>"+
                "</tr>"+
                "<tr>"+
                  "<td width='168' height='50' rowspan='2'>&nbsp;</td>"+
                  "<td colspan='3' height='30' style=\"color: #081157 ; font-size:12px; font-family:'宋体', Arial\">"+ decode64(web1800.RespectLanguage1)+"</td>"+
                "</tr>"+
                "<tr>"+
                  "<td colspan='2' height='20' valign='top' style=\"color: #081157 ; font-size:12px; font-family:'宋体', Arial\">"+decode64(web1800.RespectLanguage2)+"</td>"+
                "</tr>"+
                "<tr>"+
                  "<td>&nbsp;</td>"+
                  "<td height='40'><div align='right'><a href='#'><img src='"+web1800.imageURL+web1800.sayhibtn +"'  onclick=\"web1800.OnAcceptChat();\" name='hi' width='78' height='24' border='0' id='hi'></a></div></td>"+
                  "<td height='40' colspan='2'><div align='center'><a href='#'><img src='"+web1800.imageURL+web1800.sayhibtnc +"'  onclick=\"web1800.OnRejectChat();\" name='hi' width='78' height='24' border='0' id='cancel'></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</div></td>"+
                "</tr>"+
                "<tr>"+
                  "<td>&nbsp;</td>"+
                  "<td height='22'>&nbsp;</td>"+
                  "<td colspan='2'>&nbsp;</td>"+
                "</tr>"+
              "</table></td>"+
            "</tr>"+
          "</table>"+
          "<iframe id='ifameVisitor' width='100' name='ifameVisitor' src='" + web1800.serviceURL + "Service/VisitorEndUser.aspx?DomainName=" + web1800.DomainName + "&VisitorId=" + web1800.VisitorId + "' style='display:none'></iframe>" +
    "</div> ";    
    
   web1800.Drag.isDrag = false;
   web1800.Drag.offsetX = 0;
   web1800.Drag.offsetY = 0;

   web1800.Drag.SetDivDrag=function(divId){
        web1800.WaitingDiv = document.getElementById(divId); 
//        web1800.waitingDivLeft = parseInt(web1800.WaitingDiv.style.left);
//        web1800.waitingDivTop   = parseInt(web1800.WaitingDiv.style.top);
        web1800.WaitingDiv.onmousedown = function onMouseDown(evt){
              var e = window.event?window.event:evt;
              if((e.which && e.which == 1) ||
                        (e.button && e.button == 1)){
                web1800.Drag.isDrag = true;
                web1800.Drag.offsetY =   e.clientY + document.documentElement.scrollTop;
                web1800.Drag.offsetX =   e.clientX + document.documentElement.scrollLeft;
                web1800.WaitingDiv.style.cursor="move";
              }
        }
        
         document.onmousemove = function(evt){
            if(web1800.Drag.isDrag){
              var e = window.event?window.event:evt;
              web1800.WaitingDiv.style.left = e.clientX + document.documentElement.scrollLeft + web1800.waitingDivLeft - web1800.Drag.offsetX + "px";
              web1800.WaitingDiv.style.top   = e.clientY + document.documentElement.scrollTop + web1800.waitingDivTop - web1800.Drag.offsetY + "px";
            }
        }
        
        document.onmouseup = function (){
            web1800.Drag.isDrag = false;
            web1800.WaitingDiv.style.cursor="default";
            if(web1800.WaitingDiv.style.top != -300)
            {
                web1800.waitingDivLeft = parseInt(web1800.WaitingDiv.style.left);
                web1800.waitingDivTop   = parseInt(web1800.WaitingDiv.style.top);
            }
        }
        
    }
 
    
    web1800.getCode =function(){    
            this.codeImage.onload = this.OnCodeSuccess; 
            //alert(this.codeImage.width);   
            this.codeImage.src =  this.actionURL + "&ActionCode=1800&v="+(new Date()).getTime();            
            setTimeout("web1800.getCode()", web1800.ShowVisitSecond + 3000);                
        };
        
   web1800.isShowVisitorPage =function(){    
            this.codeImage.onload = this.OnCodeSuccess; 
            //alert(this.codeImage.width);   
            this.codeImage.src =  this.actionURL + "&ActionCode=1805&v="+(new Date()).getTime();            

        };
   web1800.getVisitSecond =function(){    
            this.codeImage.onload = this.OnCodeSuccess; 
            //alert(this.codeImage.width);   
            this.codeImage.src =  this.actionURL + "&ActionCode=1806&v="+(new Date()).getTime();            
                      
        };
   
   web1800.OnCodeSuccessActoin=function(value){
            value = value + 1799;
            switch(value)
            {
                case 1800:
                    break;
                case 1801:            
                    if(web1800.waitingDivTop == null || isNaN(web1800.waitingDivTop) || web1800.waitingDivTop < 0)
                        web1800.waitingDivTop = web1800.IeTrueBody().clientHeight/2-79;//document.body.scrollTop+76;//(document.body.scrollHeight-document.body.scrollTop-153)/2;        
                    web1800.WaitingDiv.style.top = web1800.waitingDivTop;//(document.body.clientHeight-120)/2;
                    if(web1800.waitingDivLeft == null || isNaN(web1800.waitingDivLeft) || web1800.waitingDivLeft < 0)
                        web1800.waitingDivLeft = web1800.IeTrueBody().clientWidth/2-198;//document.body.scrollLeft+198;//(document.body.scrollWidth-document.body.scrollLeft-396)/2;
                    web1800.WaitingDiv.style.left = web1800.waitingDivLeft ;   
                    if(web1800.lastDelayTime == null ||  ((new Date()).getTime() - web1800.lastDelayTime)/1000 > web1800.delayTime)
                    {                 
                        WaitingDiv.style.display = "block";
                        window.focus();
                    }
                    break;
                default:
                    if (value >= 1810)
                    {
                        web1800.ShowVisitSecond = (value - 1810) * 1000;
                        if (web1800.ShowVisitSecond == 0)
                            web1800.ShowVisitSecond = 100;
                        web1800.blGetVisitSecondSuccess = true;
                    }
                    break;
            }
        };
    web1800.OnCodeSuccess=function(){
            web1800.OnCodeSuccessActoin(this.width);
        };
    web1800.OnAcceptChat=function(){                    
            window.open(web1800.serviceURL +"Service/WebChat.aspx?PageVisitorId="+web1800.PageVisitorId,Math.floor(Math.random()*1000+1),"width=593,height=423,toolbar=no, menubar=no, scrollbars=no, resizable=no,location=no, status=no"); 
            this.codeImage.src =  web1800.actionURL + "&ActionCode=1802&v="+(new Date()).getTime();  
            WaitingDiv.style.display = "none";
            web1800.WaitingDiv.style.top = -300;     
            web1800.lastDelayTime = (new Date()).getTime();
        };
    web1800.OnRejectChat=function(){
            WaitingDiv.style.display = "none";
            web1800.WaitingDiv.style.top = -300;
            web1800.codeImage.src =  web1800.actionURL + "&ActionCode=1804&v="+(new Date()).getTime();   
            web1800.lastDelayTime = (new Date()).getTime();
        };
    web1800.OnExitPage=function(){
           web1800.codeImage.src =  web1800.actionURL + "&ActionCode=1801&v="+(new Date()).getTime();   
        }; 
        
    web1800.ResetPonsition=function(){
        
        web1800.waitingDivTop = web1800.IeTrueBody().scrollTop+web1800.IeTrueBody().clientHeight/2-76;
        web1800.waitingDivLeft = web1800.IeTrueBody().scrollLeft+web1800.IeTrueBody().clientWidth/2-198;
        web1800.WaitingDiv.style.top = web1800.waitingDivTop;
        web1800.WaitingDiv.style.Left = web1800.waitingDivLeft;
    };
    web1800.SayHI=function(){ 
        window.setTimeout("web1800.isShowVisitorPage()",web1800.ShowVisitSecond);
    };
    web1800.WaitBeforSayHI=function(){ 
        if (web1800.blGetVisitSecondSuccess)
        {
            web1800.SayHI();
            window.clearInterval(web1800.timerId_WaitBeforSayHI);
        }
    };
    web1800.IeTrueBody=function(){
        return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body;
    }
          
    if (window.attachEvent)
    {
        window.attachEvent("onbeforeunload",web1800.OnExitPage);
        window.attachEvent("onscroll",web1800.ResetPonsition);
    }
    else
    {
        window.addEventListener("beforeunload",web1800.OnExitPage, false);
        window.addEventListener("scroll",web1800.ResetPonsition, false);
    }
    //window.onbeforeunload = web1800.OnExitPage;
    window.onresize = web1800.ResetPonsition;
    window.setTimeout("web1800.ResetPonsition()",1);
    document.write(web1800.waitingDivHtml);
    web1800.WaitingDiv = document.getElementById("WaitingDiv"); 
    WaitingDiv.style.display = "none";
    web1800.Drag.SetDivDrag("WaitingDiv");    
    web1800.getCode();
    web1800.getVisitSecond()
    web1800.timerId_WaitBeforSayHI = window.setInterval(web1800.WaitBeforSayHI, 100);

    
    

