?? getclientinfo_house.js
字號:
var _suds_js_ver_="cookie:3.12";
var cp_rf="http://beacon.sina.com.cn/a.gif";
function getUniproCookie(ckName)
{
var start = document.cookie.indexOf(ckName+"=");
if (-1 == start)
{
return "";
}
start = document.cookie.indexOf("=", start)+1;
var end = document.cookie.indexOf(";", start);
if (0 >= end)
{
end = document.cookie.length;
}
ckValue = document.cookie.substring(start, end);
return ckValue;
}
function setUniproCookie(ckName, ckValue, expires)
{
if (ckValue != null)
{
if (("undefined" == expires)||(null == expires))
{
document.cookie = ckName + "=" + ckValue + "; domain=sina.com.cn; path=/" ;
}
else
{
var now = new Date();
var time = now.getTime();
time = time + 86400000 * expires;
now.setTime(time);
time = now.getTime();
document.cookie = ckName + "=" + ckValue + "; domain=sina.com.cn; expires="+now.toUTCString()+ "; path=/";
}
}
}
function putToBeacon(strQuest)
{
sudsclickstreamdiv.innerHTML="<img src='"+cp_rf+"?"+strQuest+"' border='0' alt='' />";
}
function getPathFormUrl(pageUrl)
{
var pstart = pageUrl.indexOf("://");
if (pstart < 0) { pstart=0; }
var pend = pageUrl.indexOf("?");
if (pend < 0) { pend = pageUrl.indexOf("#"); }
if (pend > 0)
{ var pagePath = pageUrl.substring(pstart+3,pend); }
else
{ var pagePath = pageUrl.substring(pstart+3); }
pstart = pagePath.indexOf("sina.com.cn");
if (pstart> 0)
{
var tmpStr=pagePath.substring(0,pstart);
tmpStr=tmpStr+"sr"+pagePath.substring(pstart+11);
pagePath =tmpStr;
}
return pagePath;
}
function shrinkCT(strCT)
{
var page_id = new Array();
var page_cnt = new Array();
var p_cnt=0,p_i="",ps=0,pe=0,pl,sp=0;
pl=strCT.length;
while(ps<pl)
{
pe=strCT.indexOf("|",ps);
if(pe<0) pe=pl;
p_i=strCT.substring(ps,pe);
sp=p_i.indexOf(":");
if(sp>0)
{
page_id[p_cnt]=p_i.substring(0,sp);
page_cnt[p_cnt]=p_i.substring(sp+1);
p_cnt=p_cnt+1;
}
ps=pe+1;
}
n_v="";
ct_i=0;
while(ct_i<p_cnt)
{
pmax=ct_i;
j=ct_i+1;
while(j<p_cnt)
{
if(page_cnt[pmax]<page_cnt[j])
{
pmax=j;
}
j=j+1;
}
if(pmax!=ct_i)
{
tmp_id=page_id[ct_i];
tmp_cnt=page_cnt[ct_i];
page_id[ct_i]=page_id[pmax];
page_cnt[ct_i]=page_cnt[pmax];
page_id[pmax]=tmp_id;
page_cnt[pmax]=tmp_cnt;
}
ct_i=ct_i+1;
}
ct_i=0;
while(ct_i<p_cnt)
{
n_v=n_v+page_id[ct_i]+":"+page_cnt[ct_i]+"|";
if (n_v.length>512) break;
ct_i=ct_i+1;
}
return n_v;
}
function getConnectionType()
{
var contype ="";
try{
window.document.body.addBehavior("#default#clientCaps");
contype = window.document.body.connectionType;
}catch(E){
contype="unkown";
}
return contype;
}
function pageIsHomepage()
{
var cul = "";
var isH ="";
try{
cul = window.document.location.href;
window.document.body.addBehavior("#default#homePage");
isH = window.document.body.isHomePage(cul)?"Y":"N";
}catch(E){
isH="unkown";
}
return isH;
}
function getJSVersion()
{
var p,appsign,appver,jsver=1.0,isN6=0;
if ('Microsoft Internet Explorer' == navigator.appName)
{
appsign = 'MSIE';
p = navigator.appVersion.indexOf(appsign);
if (p>=0)
{
appver = parseInt(navigator.appVersion.substring(p+5));
if (3<=appver)
{
jsver = 1.1;
if (4<=appver)
{
jsver = 1.3;
}
}
}
}
else if (("Netscape" == navigator.appName)||("Opera" == navigator.appName)||("Mozilla" == navigator.appName))
{
if ("Netscape" == navigator.appName)
{
appsign = 'Netscape';
p = navigator.appVersion.indexOf(appsign);
appver = parseInt(navigator.appVersion.substring(p+9));
appsign = 'Netscape6';
p = navigator.appVersion.indexOf(appsign);
if (p>=0)
{
isN6=1;
appver = parseInt(appVersion.substring(p+10));
}
}
if ("Opera" == navigator.appName)
{
appsign = 'Opera';
p = navigator.appVersion.indexOf(appsign);
appver = parseInt(appVersion.substring(p+6));
}
if ("Mozilla" == navigator.appName)
{
appsign = 'Mozilla';
p = navigator.appVersion.indexOf(appsign);
appver = parseInt(navigator.appVersion.substring(p+8));
}
if (1==isN6)
{jsver = 1.5;}
else if (3<=appver)
{
jsver = 1.1;
if (4<=appver)
{
jsver = 1.2;
if (4.5<=appver)
{ jsver = 1.3;}
}
}
}
return jsver;
}
function clickpathinfo(pathinfo)
{
if (("undefined" != pathinfo)||(null != pathinfo))
{ this.$content=pathinfo; }
else
{ this.$content=""; }
this.$userid="";
if (""!=this.$content)
{
var pstart = this.$content.indexOf("lb:");
if (pstart < 0)
{ this.$content = ""; }
pstart = 0;
var pend = this.$content.indexOf("|*|");
if (pend>0)
{ this.$userid=this.$content.substring(pstart, pend); }
}
if ("" == this.$userid)
{
this.$userid = getUniproCookie("UNIPROU");
if ("" == this.$userid)
{ this.$userid = getUniproCookie("Apache"); }
this.$content = this.$userid+"|*|";
}
}
clickpathinfo.prototype.getPageIDbyUrl = function(pageUrl)
{
var pstart = 0;
var pend = 0;
if (("undefined"==pageUrl)||(""==pageUrl))
{ return ""; }
pageUrl=getPathFormUrl(pageUrl);
pend = this.$content.lastIndexOf(pageUrl);
if (pend > 0)
{
pstart = this.$content.lastIndexOf("pid:", pend);
if (pstart < 0)
{ return ""; }
pstart = pstart+4;
pend = this.$content.indexOf("|", pstart);
if (pend < 0)
{ return ""; }
return this.$content.substring(pstart, pend);
}
else
{ return "";}
}
//iflb=0 no
//iflb=1 yes
//iflb=2 no but after layback
clickpathinfo.prototype.currPageInfo = function(PageID,iflb)
{
var sid = getUniproCookie("Apache");
var now = new Date();
var pid = "pid:"+PageID;
var currUrl = document.URL;
var currPath=getPathFormUrl(currUrl);
var st = "st:0";
var pre_pid = this.getPageIDbyUrl(document.referrer);
var et = "et:"+now.getTime();
var hp="hp:"+pageIsHomepage();
var lb="lb:"+iflb;
return sid+"|"+pid+"|"+currPath+"|"+st+"|"+et+"|"+pre_pid+"|"+hp+"|"+lb+"|*|";
}
clickpathinfo.prototype.saveToCookie = function(expires)
{
if (("undefined" == expires)||(null == expires))
{ setUniproCookie("UNIPROPATH", this.$content, 360);}
else
{ setUniproCookie("UNIPROPATH", this.$content, expires); }
}
clickpathinfo.prototype.addPageInfo = function(pageInfo)
{
this.$content = this.$content+pageInfo;
}
clickpathinfo.prototype.getUserId = function()
{ return this.$userid; }
clickpathinfo.prototype.getPageInfoByLb0 = function()
{
var pstart=0,pend=0,pkey=0;
var lbKey="lb:0",backInfo="",tmpStr="";
pkey=this.$content.indexOf(lbKey);
while (pkey>0)
{
pstart=this.$content.lastIndexOf("|*|",pkey);
pend=this.$content.indexOf("|*|",pkey);
if((pstart>0)&&(pend>0))
{
pstart=pstart+3;
pend=pend+3;
backInfo=backInfo+this.$content.substring(pstart,pend);
tmpStr= this.$content.substring(0,pkey)+"lb:1"+this.$content.substring(pkey+4);
this.$content=tmpStr;
}
pkey=this.$content.indexOf(lbKey,pkey+4);
}
return backInfo;
}
clickpathinfo.prototype.getPageInfoByLb2 = function()
{
var pstart=0,pend=0,pkey=0,ptmp=0;
var lbKey="lb:2",backInfo="",tmpStr="";
pkey=this.$content.indexOf(lbKey);
while (pkey>0)
{
pstart=this.$content.lastIndexOf("|*|",pkey);
pend=this.$content.indexOf("|*|",pkey);
if((pstart>0)&&(pend>0))
{
pstart=pstart+3;
pend=pend+3;
tmpStr=this.$content.substring(pstart,pend);
ptmp=tmpStr.indexOf("st:0");
if(-1==ptmp)
{
backInfo=backInfo+tmpStr;
tmpStr= this.$content.substring(0,pkey)+"lb:1"+this.$content.substring(pkey+4);
this.$content=tmpStr;
}
}
pkey=this.$content.indexOf(lbKey,pkey+4);
}
return backInfo;
}
clickpathinfo.prototype.getLaybackInfo = function()
{
return this.getPageInfoByLb0()+this.getPageInfoByLb2();
}
clickpathinfo.prototype.shrinkContent = function()
{
var pstart = this.$content.indexOf("|*|");
if (pstart < 0)
{ return 0; }
var lbKey="lb:1",stKey="st:0";
var pend = 0;
var plbKey = this.$content.indexOf(lbKey, pstart);
var pstKey = 0;
var tmpContent = "",tmpStr="",et="";
var maxinter = 86400000 * 1;
var now = new Date();
var curt = now.getTime();
var inter=0;
var ifDel=0;
var petst=0,peted=0;
//var pstart=0,pend=0,pkey=0,ptmp=0;
while(plbKey>0)
{
pstart=this.$content.lastIndexOf("|*|",plbKey);
pend=this.$content.indexOf("|*|",plbKey);
if((pstart>0)&&(pend>0))
{
ifDel=0;
pstart=pstart+3;
pend=pend+3;
tmpStr=this.$content.substring(pstart,pend);
pstKey=tmpStr.indexOf(stKey);
if (pstKey>0)
{
petst = tmpStr.indexOf("et:");
if (petst > 0)
{ peted = tmpStr.indexOf("|", petst); }
if (peted > 0)
{
petst=petst +3;
et=tmpStr.substring(petst,peted);
inter=curt-et;
if(inter > maxinter)
{ ifDel=1; }
}
}
else
{ifDel=1;}
if(1==ifDel)
{
tmpContent = this.$content.substring(0,pstart);
tmpContent = tmpContent + this.$content.substring(pend);
this.$content = tmpContent;
}
}
plbKey = this.$content.indexOf(lbKey, plbKey+4);
}
return 0;
}
clickpathinfo.prototype.setShrink = function(ifShrink)
{
this.$shrink = ifShrink;
}
clickpathinfo.prototype.setSTbyPageID = function(PageID, stay_time)
{
if (("undefined"==PageID)||(""==PageID))
{ return ""; }
if (("undefined"==stay_time)||(0==stay_time))
{ return ""; }
var lpstart = this.$content.indexOf("pid:"+PageID);
var pend = 0;
if (lpstart > 0)
{
while(lpstart > 0)
{
var pstart = this.$content.indexOf("st:", lpstart);
if (pstart < 0)
{ return ""; }
pstart = pstart+3;
pend = this.$content.indexOf("|", pstart);
if (pend < 0)
{ return ""; }
var tmpContent = this.$content.substring(0,pstart) + stay_time;
tmpContent = tmpContent + this.$content.substring(pend);
this.$content = tmpContent;
lpstart = this.$content.indexOf("pid:"+PageID,lpstart+14);
}
}
else
{ return ""; }
}
var suds_uld_bak;
function myOnunload()
{
var now = new Date();
var out_time = now.getTime();
var stay_time = (out_time - entry_time) /1000;
if(suds_uld_bak) {suds_uld_bak()};
var path = getUniproCookie("UNIPROPATH");
var pinfo = new clickpathinfo(path);
pinfo.shrinkContent();
pinfo.setSTbyPageID(currPageId,stay_time);
pinfo.saveToCookie();
}
function getEnvInfo()
{
var ckTmp = new String();
var ckValue = new String();
var ctPageId = new String();
var now = new Date();
var pct=0;
ckTmp=screen.width+"x"+screen.height;
ckValue="sz:"+ckTmp+"||";
ckTmp=screen.colorDepth;
ckValue=ckValue+"dp:"+ckTmp+"||";
ckTmp=navigator.appCodeName;
ckValue=ckValue+"ac:"+ckTmp+"||";
ckTmp=navigator.appName;
ckValue=ckValue+"an:"+ckTmp+"||";
ckTmp=navigator.appVersion;
var pos=0;
var tmpValue="";
var len=ckTmp.length;
var pos2=0;
pos2 = ckTmp.indexOf(";",pos);
while(pos2>=0)
{
tmpValue = tmpValue + ckTmp.substring(pos,pos2)+",";
pos=pos2+1;
pos2 = ckTmp.indexOf(";",pos)
}
tmpValue = tmpValue + ckTmp.substring(pos,len);
ckValue=ckValue+"av:"+tmpValue+"||";
ckTmp=navigator.cpuClass;
ckValue=ckValue+"cpu:"+ckTmp+"||";
ckTmp=navigator.platform;
ckValue=ckValue+"pf:"+ckTmp+"||";
ckTmp=getJSVersion();
ckValue=ckValue+"jv:"+ckTmp+"||";
ckTmp=getConnectionType();
ckValue=ckValue+"ct:"+ckTmp+"||";
ckTmp=navigator.systemLanguage;
ckValue=ckValue+"lg:"+ckTmp+"||";
ckTmp=now.getTimezoneOffset()/60;
ckValue=ckValue+"tz:"+ckTmp;
return ckValue;
}
function pageStat(ctPageId)
{
if ("undefined" == ctPageId)
{ return 0; }
var ckCount = getUniproCookie("UNIPROCT");
var newValue = "";
if ("" == ckCount)
{
newValue = ctPageId +":1"
}
else
{
if(ckCount.length>1024)
{
ckCount = shrinkCT(ckCount);
}
var pStart = ckCount.indexOf(ctPageId+":");
if (pStart >= 0)
{
pStart = ckCount.indexOf(":",pStart);
var pEnd = ckCount.indexOf("|",pStart);
if (pEnd<0)
{ pEnd = ckCount.length; }
pStart = pStart+1;
var oldCnt = ckCount.substring(pStart,pEnd);
var newCnt = (oldCnt-0) + 1;
newValue = ckCount.substring(0,pStart)+newCnt;
newValue = newValue + ckCount.substring(pEnd);
}
else
{
newValue = ckCount+"|"+ctPageId +":1"
}
}
setUniproCookie("UNIPROCT", newValue, 360);
}
var currPageId;
var entry_time;
function setBaseCookie(shrink, leve1, leve2, leve3, leve4, leve5)
{
var ckTmp = new String();
var ckValue = new String();
var ctPageId = new String();
var now = new Date();
var pct=0;
ckTmp = getUniproCookie("Apache");
if("" == ckTmp)
{
ckTmp = now.getTime()+Math.random();
setUniproCookie("Apache",ckTmp);
}
ckTmp = getUniproCookie("UNIPROINFO");
if("" != ckTmp) { pct = ckTmp.indexOf("tz"); }
if (("-1" == ckTmp)||("" == ckTmp)||(pct<0))
{
ckValue = getEnvInfo();
setUniproCookie("UNIPROINFO", ckValue, 10);
}
else
{ ckValue=ckTmp; }
var envStr="UNIPROINFO="+ckValue+";";
ckValue="";
ctPageId = "";
if ("undefined" != leve1)
{ ckValue=leve1; }
if ("undefined" != leve2)
{ ckValue=ckValue+"-"+leve2; }
if ("undefined" != leve3)
{
ckValue=ckValue+"-"+leve3;
ctPageId = ckValue;
}
if ("undefined" != leve4)
{ ckValue=ckValue+"-"+leve4; }
if ("undefined" != leve5)
{ ckValue=ckValue+"-"+leve5; }
currPageId = ckValue;
if ("" != ctPageId)
{ pageStat(ctPageId); }
entry_time = now.getTime();
var oldValue="";
oldValue = getUniproCookie("UNIPROPATH");
if(oldValue.length>1024)
{shrink=1;}
//--------------------------------------
var cp = new clickpathinfo(oldValue);
cp.setShrink(shrink);
var currPageStr=cp.currPageInfo(currPageId,shrink); //shrink=2 in flow
if (1==shrink)
{
var lbStr=cp.$userid+"|*|"+cp.getLaybackInfo()+currPageStr;
lbStr=envStr+"UNIPROPATH="+lbStr+";";
putToBeacon(lbStr);
cp.shrinkContent();
}
cp.addPageInfo(currPageStr);
cp.saveToCookie();
}
function setCltCookie(leve1, leve2, leve3, leve4, leve5)
{
setBaseCookie(0, leve1, leve2, leve3, leve4, leve5);
}
function shrinkCookie(leve1, leve2, leve3, leve4, leve5)
{
setBaseCookie(1, leve1, leve2, leve3, leve4, leve5);
}
document.write("<div id=sudsclickstreamdiv style='position: absolute;width:80;top:-300;left:100;visibility: visible;z-index: 1'></div>");
suds_uld_bak=window.onunload;
window.onunload=myOnunload;
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -