﻿// WebTrends SmartSource Data Collector Tag
// Version: 1.1.1
// Created: 5/28/2008 1:39:37 AM
function dcsCookie(){
 if (typeof(dcsOther)=="function"){
  dcsOther();
 }
 else if (typeof(dcsFPC)=="function"){
  dcsFPC(dcsInit.timezone);
 }
}
function dcsGetCookie(name){
 var cookies=document.cookie.split("; ");
 var cmatch=[];
 var idx=0;
 var i=0;
 var namelen=name.length;
 var clen=cookies.length;
 for (i=0;i<clen;i++){
  var c=cookies[i];
  if ((c.substring(0,namelen+1))==(name+"=")){
   cmatch[idx++]=c;
  }
 }
 var cmatchCount=cmatch.length;
 if (cmatchCount>0){
  idx=0;
  if ((cmatchCount>1)&&(name==dcsInit.fpc)){
   var dLatest=new Date(0);
   for (i=0;i<cmatchCount;i++){
    var lv=parseInt(dcsGetCrumb(cmatch[i],"lv"));
    var dLst=new Date(lv);
    if (dLst>dLatest){
     dLatest.setTime(dLst.getTime());
     idx=i;
    }
   }
  }
  return unescape(cmatch[idx].substring(namelen+1));
 }
 else{
  return null;
 }
}
function dcsGetCrumb(cval,crumb){
 var aCookie=cval.split(":");
 for (var i=0;i<aCookie.length;i++){
  var aCrumb=aCookie[i].split("=");
  if (crumb==aCrumb[0]){
   return aCrumb[1];
  }
 }
 return null;
}
function dcsGetIdCrumb(cval,crumb){
 var id=cval.substring(0,cval.indexOf(":lv="));
 var aCrumb=id.split("=");
 for (var i=0;i<aCrumb.length;i++){
  if (crumb==aCrumb[0]){
   return aCrumb[1];
  }
 }
 return null;
}
function dcsIsFpcSet(name,id,lv,ss){
 var c=dcsGetCookie(name);
 if (c){
  return ((id==dcsGetIdCrumb(c,"id"))&&(lv==dcsGetCrumb(c,"lv"))&&(ss=dcsGetCrumb(c,"ss")))?0:3;
 }
 return 2;
}
function dcsFPC(offset){
 if (typeof(offset)=="undefined"){
  return;
 }
 if (document.cookie.indexOf("WTLOPTOUT=")!=-1){
  return;
 }
 var name=dcsInit.fpc;
 var dCur=new Date();
 var adj=(dCur.getTimezoneOffset()*60000)+(offset*3600000);
 dCur.setTime(dCur.getTime()+adj);
 var dExp=new Date(dCur.getTime()+315360000000);
 var dSes=new Date(dCur.getTime());
 WT.co_f=WT.vt_sid=WT.vt_f=WT.vt_f_a=WT.vt_f_s=WT.vt_f_d=WT.vt_f_tlh=WT.vt_f_tlv="";
 if (document.cookie.indexOf(name+"=")==-1){
  if ((typeof(gWtId)!="undefined")&&(gWtId!="")){
   WT.co_f=gWtId;
  }
  else if ((typeof(gTempWtId)!="undefined")&&(gTempWtId!="")){
   WT.co_f=gTempWtId;
   WT.vt_f="1";
  }
  else{
   WT.co_f="2";
   var cur=dCur.getTime().toString();
   for (var i=2;i<=(32-cur.length);i++){
    WT.co_f+=Math.floor(Math.random()*16.0).toString(16);
   }
   WT.co_f+=cur;
   WT.vt_f="1";
  }
  if (typeof(gWtAccountRollup)=="undefined"){
   WT.vt_f_a="1";
  }
  WT.vt_f_s=WT.vt_f_d="1";
  WT.vt_f_tlh=WT.vt_f_tlv="0";
 }
 else{
  var c=dcsGetCookie(name);
  var id=dcsGetIdCrumb(c,"id");
  var lv=parseInt(dcsGetCrumb(c,"lv"));
  var ss=parseInt(dcsGetCrumb(c,"ss"));
  if ((id==null)||(id=="null")||isNaN(lv)||isNaN(ss)){
   return;
  }
  WT.co_f=id;
  var dLst=new Date(lv);
  WT.vt_f_tlh=Math.floor((dLst.getTime()-adj)/1000);
  dSes.setTime(ss);
  if ((dCur.getTime()>(dLst.getTime()+1800000))||(dCur.getTime()>(dSes.getTime()+28800000))){
   WT.vt_f_tlv=Math.floor((dSes.getTime()-adj)/1000);
   dSes.setTime(dCur.getTime());
   WT.vt_f_s="1";
  }
  if ((dCur.getDay()!=dLst.getDay())||(dCur.getMonth()!=dLst.getMonth())||(dCur.getYear()!=dLst.getYear())){
   WT.vt_f_d="1";
  }
 }
 WT.co_f=escape(WT.co_f);
 WT.vt_sid=WT.co_f+"."+(dSes.getTime()-adj);
 var expiry="; expires="+dExp.toGMTString();
 var cur=dCur.getTime().toString();
 var ses=dSes.getTime().toString();
 document.cookie=name+"="+"id="+WT.co_f+":lv="+cur+":ss="+ses+expiry+"; path=/"+(((dcsInit.fpcdom!=""))?("; domain="+dcsInit.fpcdom):(""));
 var rc=dcsIsFpcSet(name,WT.co_f,cur,ses);
 if (rc!=0){
  WT.co_f=WT.vt_sid=WT.vt_f_s=WT.vt_f_d=WT.vt_f_tlh=WT.vt_f_tlv="";
  WT.vt_f=WT.vt_f_a=rc;
    }
}
// Code section for Generate an Ad View query parameter for every Ad Click link.
function dcsAdSearch(){
 if (document.links){
  var param=dcsInit.adclickparam+"=";
  var paramlen=param.length;
  var paramre=new RegExp(param,"i");
  var len=document.links.length;
  for (var i=0;i<len;i++){
      if (document.links[i].href){
       var anch=document.links[i].href+"";
       var pos=anch.search(paramre);
       if (pos!=-1){
        var start=pos+paramlen;
        var end=anch.indexOf("&",start);
        var value=anch.substring(start,(end!=-1)?end:anch.length);
        WT.ad=WT.ad?(WT.ad+";"+value):value;
       }
   }
  }
 }
}
function dcsIsOnsite(host){
 host=host.toLowerCase();
 if (host==window.location.hostname.toLowerCase())
 {
  return true;
 }
 if (typeof(dcsInit.onsitedoms.test)=="function"){
  return dcsInit.onsitedoms.test(host);
 }
 else if (dcsInit.onsitedoms.length>0){
  var doms=dcsInit.onsitedoms.toLowerCase().split(",");
  var len=doms.length;
  for (var i=0;i<len;i++){
   if (host==doms[i]){
       return true;
   }
  }
 }
 return false;
}
function dcsTypeMatch(pth, typelist){
 var type=pth.substring(pth.lastIndexOf(".")+1,pth.length);
 var types=typelist.split(",");
 for (var i=0;i<types.length;i++){
  if (type==types[i]){
   return true;
  }
 }
 return false;
}
function dcsEvt(evt,tag){
 var e=evt.target||evt.srcElement;
 while (e.tagName&&(e.tagName!=tag)){
  e=e.parentElement||e.parentNode;
 }
 return e;
}
function dcsNavigation(evt){
 return "";
}
function dcsBind(event,func){
 if ((typeof(window[func])=="function")&&document.body){
  if (document.body.addEventListener){
   document.body.addEventListener(event, window[func], true);
  }
  else if(document.body.attachEvent){
   document.body.attachEvent("on"+event, window[func]);
  }
 }
}
function dcsET(){
 var e=(navigator.appVersion.indexOf("MSIE")!=-1)?"click":"mousedown";
 dcsBind(e,"dcsDownload");
 dcsBind(e,"dcsDynamic");
 dcsBind(e,"dcsFormButton");
 dcsBind(e,"dcsOffsite");
 dcsBind(e,"dcsAnchor");
 dcsBind("contextmenu","dcsRightClick");
 dcsBind(e,"dcsImageMap");
}
function dcsMultiTrack(){
 if (arguments.length%2==0){
  for (var i=0;i<arguments.length;i+=2){
   if (arguments[i].indexOf('WT.')==0){
    WT[arguments[i].substring(3)]=arguments[i+1];
   }
   else if (arguments[i].indexOf('DCS.')==0){
    DCS[arguments[i].substring(4)]=arguments[i+1];
   }
   else if (arguments[i].indexOf('DCSext.')==0){
    DCSext[arguments[i].substring(7)]=arguments[i+1];
   }
  }
  var dCurrent=new Date();
  DCS.dcsdat=dCurrent.getTime();
  dcsFunc("dcsCookie");
  dcsTag();
 }
}
// Add event handlers here
// Code section for Track clicks to download links.
function dcsDownload(evt){
 evt=evt||(window.event||"");
 if (evt&&((typeof(evt.which)!="number")||(evt.which==1))){
  var e=dcsEvt(evt,"A");
  if (e.hostname&&dcsIsOnsite(e.hostname)){
   if (dcsTypeMatch(e.pathname,dcsInit.downloadtypes)){
    var qry=e.search?e.search.substring(e.search.indexOf("?")+1,e.search.length):"";
    var pth=e.pathname?((e.pathname.indexOf("/")!=0)?"/"+e.pathname:e.pathname):"/";
    var ttl="";
    var text=document.all?e.innerText:e.text;
    var img=dcsEvt(evt,"IMG");
    if (img.alt){
     ttl=img.alt;
    }
    else if (text){
     ttl=text;
    }
    else if (e.innerHTML){
     ttl=e.innerHTML;
    }
    dcsMultiTrack("DCS.dcssip",e.hostname,"DCS.dcsuri",pth,"DCS.dcsqry",e.search||"","WT.ti","Download:"+ttl,"WT.dl","20","WT.nv",dcsNavigation(evt));
    DCS.dcssip=DCS.dcsuri=DCS.dcsqry=WT.ti=WT.dl=WT.nv="";
   }
  }
 }
}
// Code section for Track clicks to links leading offsite.
function dcsOffsite(evt){
 evt=evt||(window.event||"");
 if (evt&&((typeof(evt.which)!="number")||(evt.which==1))){
  var e=dcsEvt(evt,"A");
  if (e.hostname&&!dcsIsOnsite(e.hostname)){
   var qry=e.search?e.search.substring(e.search.indexOf("?")+1,e.search.length):"";
   var pth=e.pathname?((e.pathname.indexOf("/")!=0)?"/"+e.pathname:e.pathname):"/";
   var trim=true;
   dcsMultiTrack("DCS.dcssip",e.hostname,"DCS.dcsuri",pth,"DCS.dcsqry",trim?"":qry,"WT.ti","Offsite:"+e.hostname+pth+qry,"WT.dl","24","WT.nv",dcsNavigation(evt));
   DCS.dcssip=DCS.dcsuri=DCS.dcsqry=WT.ti=WT.dl=WT.nv="";
  }
 }
}
function dcsAdv(){
 if (dcsInit.trackevents){
  dcsFunc("dcsET");
 }
 dcsFunc("dcsCookie");
 dcsFunc("dcsAdSearch");
 dcsFunc("dcsTP");
 dcsFunc("dcsMetaCap");
}
// Add customizations here
function dcsVar(){
 var dCurrent=new Date();
 WT.tz=(dCurrent.getTimezoneOffset()/60*-1)||"0";
 WT.bh=dCurrent.getHours()||"0";
 WT.ul=navigator.appName=="Netscape"?navigator.language:navigator.userLanguage;
 if (typeof(screen)=="object"){
  WT.cd=navigator.appName=="Netscape"?screen.pixelDepth:screen.colorDepth;
  WT.sr=screen.width+"x"+screen.height;
 }
 if (typeof(navigator.javaEnabled())=="boolean"){
  WT.jo=navigator.javaEnabled()?"Yes":"No";
 }
 if (document.title){
  if (window.RegExp){
   var tire=new RegExp("^"+window.location.protocol+"//"+window.location.hostname+"\\s-\\s");
   WT.ti=document.title.replace(tire,"");
  }
  else{
   WT.ti=document.title;
  }
 }
 WT.js="Yes";
 WT.jv=dcsJV();
 if (document.body&&document.body.addBehavior){
  document.body.addBehavior("#default#clientCaps");
  WT.ct=document.body.connectionType||"unknown";
  document.body.addBehavior("#default#homePage");
  WT.hp=document.body.isHomePage(location.href)?"1":"0";
 }
 else{
  WT.ct="unknown";
 }
 if (document.all){
  WT.bs=document.body?document.body.offsetWidth+"x"+document.body.offsetHeight:"unknown";
 }
 else{
  WT.bs=window.innerWidth+"x"+window.innerHeight;
 }
 WT.fi="No";
 if (window.ActiveXObject){
  for(var i=10;i>0;i--){
   try{
    var flash = new ActiveXObject("ShockwaveFlash.ShockwaveFlash."+i);
    WT.fi="Yes";
    WT.fv=i+".0";
    break;
   }
   catch(e){
   }
  }
 }
 else if (navigator.plugins&&navigator.plugins.length){
  for (var i=0;i<navigator.plugins.length;i++){
   if (navigator.plugins[i].name.indexOf('Shockwave Flash')!=-1){
    WT.fi="Yes";
    WT.fv=navigator.plugins[i].description.split(" ")[2];
    break;
   }
  }
 }
 if (dcsInit.i18n){
  if (typeof(document.defaultCharset)=="string"){
   WT.le=document.defaultCharset;
  } 
  else if (typeof(document.characterSet)=="string"){
   WT.le=document.characterSet;
  }
  else{
   WT.le="unknown";
  }
 }
 WT.tv="1.1.1";
// WT.sp="@@SPLITVALUE@@";
 WT.dl="0";
 DCS.dcsdat=dCurrent.getTime();
 DCS.dcssip=window.location.hostname;
 DCS.dcsuri=window.location.pathname;
 WT.es=DCS.dcssip+DCS.dcsuri;
 if (window.location.search){
  DCS.dcsqry=window.location.search;
  if (dcsInit.qp.length>0){
   for (var i=0;i<dcsInit.qp.length;i++){
    var pos=DCS.dcsqry.indexOf(dcsInit.qp[i]);
    if (pos!=-1){
     var front=DCS.dcsqry.substring(0,pos);
     var end=DCS.dcsqry.substring(pos+dcsInit.qp[i].length,DCS.dcsqry.length);
     DCS.dcsqry=front+end;
    }
   }
  }
 }
 if ((window.document.referrer!="")&&(window.document.referrer!="-")){
  if (!(navigator.appName=="Microsoft Internet Explorer"&&parseInt(navigator.appVersion)<4)){
   DCS.dcsref=window.document.referrer;
  }
 }
}
function dcsA(N,V){
 if (dcsInit.i18n&&(dcsInit.exre!="")&&!dcsInit.exre.test(N)){
  if (N=="dcsqry"){
   var newV="";
   var params=V.substring(1).split("&");
   for (var i=0;i<params.length;i++){
    var pair=params[i];
    var pos=pair.indexOf("=");
    if (pos!=-1){
     var key=pair.substring(0,pos);
     var val=pair.substring(pos+1);
     if (i!=0){
      newV+="&";
     }
     newV+=key+"="+dcsEncode(val);
    }
   }
   V=V.substring(0,1)+newV;
  }
  else{
   V=dcsEncode(V);
  }
 }
 return "&"+N+"="+dcsEscape(V, dcsInit.re);
}
function dcsEscape(S, REL){
 if (REL!=""){
  S=S.toString();
  for (var R in REL){
   S=S.replace(REL[R],R);
  }
  return S;
 }
 else{
  return escape(S);
 }
}
function dcsEncode(S){
 return (typeof(encodeURIComponent)=="function")?encodeURIComponent(S):escape(S);
}
function dcsCreateImage(dcsSrc){
 if (document.images){
  dcsInit.images[dcsInit.index]=new Image;
  dcsInit.images[dcsInit.index].src=dcsSrc;
  dcsInit.index++;
 }
 else{
  document.write('<IMG ALT="" BORDER="0" NAME="DCSIMG" WIDTH="1" HEIGHT="1" SRC="'+dcsSrc+'">');
 }
}
function dcsMeta(){
 var elems;
 if (document.all){
  elems=document.all.tags("meta");
 }
 else if (document.documentElement){
  elems=document.getElementsByTagName("meta");
 }
 if (typeof(elems)!="undefined"){
  var length=elems.length;
  for (var i=0;i<length;i++){
   var name=elems.item(i).name;
   var content=elems.item(i).content;
   var equiv=elems.item(i).httpEquiv;
   if (name.length>0){
    if (name.indexOf("WT.")==0){
     WT[name.substring(3)]=content;
    }
    else if (name.indexOf("DCSext.")==0){
     DCSext[name.substring(7)]=content;
    }
    else if (name.indexOf("DCS.")==0){
     DCS[name.substring(4)]=content;
    }
   }
  }
 }
}
function dcsTag(){
 if (document.cookie.indexOf("WTLOPTOUT=")!=-1){
  return;
 }
 var P="http"+(window.location.protocol.indexOf('https:')==0?'s':'')+"://"+dcsInit.domain+(dcsInit.dcsid==""?'':'/'+dcsInit.dcsid)+"/dcs.gif?";
 if (dcsInit.i18n){
  WT.dep="";
 }
 for (var N in DCS){
  if (DCS[N]){
   P+=dcsA(N,DCS[N]);
  }
 }
 var keys=["co_f","vt_sid","vt_f_tlv"];
 for (var i=0;i<keys.length;i++){
  var key=keys[i];
  if (WT[key]){
   P+=dcsA("WT."+key,WT[key]);
   delete WT[key];
  }
 }
 for (N in WT){
  if (WT[N]){
   P+=dcsA("WT."+N,WT[N]);
  }
 }
 for (N in DCSext){
  if (DCSext[N]){
   if (dcsInit.i18n){
    WT.dep=(WT.dep.length==0)?N:(WT.dep+";"+N);
   }
   P+=dcsA(N,DCSext[N]);
  }
 }
 if (dcsInit.i18n&&(WT.dep.length>0)){
  P+=dcsA("WT.dep",WT.dep);
 }
 if (P.length>2048&&navigator.userAgent.indexOf('MSIE')>=0){
  P=P.substring(0,2040)+"&WT.tu=1";
 }
 dcsCreateImage(P);
 WT.ad="";
}
function dcsJV(){
 var agt=navigator.userAgent.toLowerCase();
 var major=parseInt(navigator.appVersion);
 var mac=(agt.indexOf("mac")!=-1);
 var ff=(agt.indexOf("firefox")!=-1);
 var ff0=(agt.indexOf("firefox/0.")!=-1);
 var ff10=(agt.indexOf("firefox/1.0")!=-1);
 var ff15=(agt.indexOf("firefox/1.5")!=-1);
 var ff20=(agt.indexOf("firefox/2.0")!=-1);
 var ff3up=(ff&&!ff0&&!ff10&!ff15&!ff20);
 var nn=(!ff&&(agt.indexOf("mozilla")!=-1)&&(agt.indexOf("compatible")==-1));
 var nn4=(nn&&(major==4));
 var nn6up=(nn&&(major>=5));
 var ie=((agt.indexOf("msie")!=-1)&&(agt.indexOf("opera")==-1));
 var ie4=(ie&&(major==4)&&(agt.indexOf("msie 4")!=-1));
 var ie5up=(ie&&!ie4);
 var op=(agt.indexOf("opera")!=-1);
 var op5=(agt.indexOf("opera 5")!=-1||agt.indexOf("opera/5")!=-1);
 var op6=(agt.indexOf("opera 6")!=-1||agt.indexOf("opera/6")!=-1);
 var op7up=(op&&!op5&&!op6);
 var jv="1.1";
 if (ff3up){
  jv="1.8";
 }
 else if (ff20){
  jv="1.7";
 }
 else if (ff15){
  jv="1.6";
 }
 else if (ff0||ff10||nn6up||op7up){
  jv="1.5";
 }
 else if ((mac&&ie5up)||op6){
  jv="1.4";
 }
 else if (ie5up||nn4||op5){
  jv="1.3";
 }
 else if (ie4){
  jv="1.2";
 }
 return jv;
}
function dcsFunc(func){
 if (typeof(window[func])=="function"){
  window[func]();
 }
}
if (dcsInit.enabled){
    dcsVar();
    dcsMeta();
    dcsFunc("dcsAdv");
    dcsTag();
}
