// WebTrends SmartSource Data Collector Tag
// Version: 8.6.2
// Tag Builder Version: 3.0
// Created: 4/30/2009 3:55:56 PM
// Last modified: Tom Reinhardt Technology Leaders - 7/22/2010
/*
 *7/2010 - Removed tlAddHostPage function to accomodate change to z_promo parameter format
 *          z_promo is placed as parameter on MCR site and is used to build the z_partnerpromo &
 *          z_brandpromo parameters which are sent to WebTrends.  The 4th value of this parameter was
 *          being overwritten by tlAddHostPage to indicate what page the promotion was on.  This 4th value
 *          will now be used to hold slot # negating the need for tlAddHostPage.  TJR/7.22.2010
 *
 *          In order to accomodate the Catalog-View All feature effective 7/27/2010, the tlCatalogViewAll
 *          function was added.  The promotion parameter tied to a View All scenario puts the WebTrends
 *          request string over the 2048 QS limit, necessitating multiple calls to WebTrends to capture all
 *          image promotional info.  Conditional logic has been added to dcsTag() to help facilitate this
 *          feature.  This logic ignores the z_partnerp,z_partnerpromo,z_partnerimps,z_simps values stored in
 *          WT object, compiles all other QS data, then invokes tlCatalogViewAll to determine how many
 *          calls are needed and to make them.
 *
 *           This feature only covers partner promotions(no Brand Promotions) and will only trigger
 *           when the catalog.do page is open with a queryparameter string of itemPerPage=1000.  TJR/7.22.2010
 *
 */


function WebTrends(env){
	var that=this;
	// begin: user modifiable
  if (env == "prod" || env == "prev") {
	this.dcsid="dcso58g52100008ukenmpuiyd_3k6o";
  } else {
	this.dcsid="dcsc5tb4n10000ctme15opxee_8v5u";
  }
	this.domain="statse.webtrendslive.com";
	this.timezone=-5;
	this.fpcdom=".mycokerewards.com";
	this.onsitedoms="";
	this.downloadtypes="xls,doc,pdf,txt,csv,zip,mp3";
	this.navigationtag="div,table";
	this.trackevents=true;
	this.trimoffsiteparams=true;
	this.enabled=true;
	this.i18n=false;
	this.fpc="WT_FPC";
	this.paidsearchparams="gclid";
	// end: user modifiable
	this.DCS={};
	this.WT={};
	this.DCSext={};
	this.images=[];
	this.index=0;
	this.exre=(function(){return(window.RegExp?new RegExp("dcs(uri)|(ref)|(aut)|(met)|(sta)|(sip)|(pro)|(byt)|(dat)|(p3p)|(cfg)|(redirect)|(cip)","i"):"");})();
	this.re=(function(){return(window.RegExp?(that.i18n?{"%25":/\%/g}:{"%09":/\t/g,"%20":/ /g,"%23":/\#/g,"%26":/\&/g,"%2B":/\+/g,"%3F":/\?/g,"%5C":/\\/g,"%22":/\"/g,"%7F":/\x7F/g,"%A0":/\xA0/g}):"");})();
}
WebTrends.prototype.dcsGetId=function(){
	if (this.enabled&&(document.cookie.indexOf(this.fpc+"=")==-1)&&(document.cookie.indexOf("WTLOPTOUT=")==-1)){
		document.write("<scr"+"ipt type='text/javascript' src='"+"http"+(window.location.protocol.indexOf('https:')==0?'s':'')+"://"+this.domain+"/"+this.dcsid+"/wtid.js"+"'><\/scr"+"ipt>");
	}
}
WebTrends.prototype.dcsGetCookie=function(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==this.fpc)){
			var dLatest=new Date(0);
			for (i=0;i<cmatchCount;i++){
				var lv=parseInt(this.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;
	}
}
WebTrends.prototype.dcsGetCrumb=function(cval,crumb,sep){
	var aCookie=cval.split(sep||":");
	for (var i=0;i<aCookie.length;i++){
		var aCrumb=aCookie[i].split("=");
		if (crumb==aCrumb[0]){
			return aCrumb[1];
		}
	}
	return null;
}
WebTrends.prototype.dcsGetIdCrumb=function(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;
}
WebTrends.prototype.dcsIsFpcSet=function(name,id,lv,ss){
	var c=this.dcsGetCookie(name);
	if (c){
		return ((id==this.dcsGetIdCrumb(c,"id"))&&(lv==this.dcsGetCrumb(c,"lv"))&&(ss==this.dcsGetCrumb(c,"ss")))?0:3;
	}
	return 2;
}
WebTrends.prototype.dcsFPC=function(){
	if (document.cookie.indexOf("WTLOPTOUT=")!=-1){
		return;
	}
	var WT=this.WT;
	var name=this.fpc;
	var dCur=new Date();
	var adj=(dCur.getTimezoneOffset()*60000)+(this.timezone*3600000);
	dCur.setTime(dCur.getTime()+adj);
	var dExp=new Date(dCur.getTime()+315360000000);
	var dSes=new Date(dCur.getTime());
	WT.co_f=WT.vtid=WT.vtvs=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 curt=dCur.getTime().toString();
			for (var i=2;i<=(32-curt.length);i++){
				WT.co_f+=Math.floor(Math.random()*16.0).toString(16);
			}
			WT.co_f+=curt;
			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=this.dcsGetCookie(name);
		var id=this.dcsGetIdCrumb(c,"id");
		var lv=parseInt(this.dcsGetCrumb(c,"lv"));
		var ss=parseInt(this.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.vtid=(typeof(this.vtid)=="undefined")?WT.co_f:(this.vtid||"");
	WT.vtvs=(dSes.getTime()-adj).toString();
	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=/"+(((this.fpcdom!=""))?("; domain="+this.fpcdom):(""));
	var rc=this.dcsIsFpcSet(name,WT.co_f,cur,ses);
	if (rc!=0){
		WT.co_f=WT.vtvs=WT.vt_f_s=WT.vt_f_d=WT.vt_f_tlh=WT.vt_f_tlv="";
		if (typeof(this.vtid)=="undefined"){
			WT.vtid="";
		}
		WT.vt_f=WT.vt_f_a=rc;
	}
}
WebTrends.prototype.dcsIsOnsite=function(host){
	if (host.length>0){
		host=host.toLowerCase();
		if (host==window.location.hostname.toLowerCase()){
			return true;
		}
		if (typeof(this.onsitedoms.test)=="function"){
			return this.onsitedoms.test(host);
		}
		else if (this.onsitedoms.length>0){
			var doms=this.dcsSplit(this.onsitedoms);
			var len=doms.length;
			for (var i=0;i<len;i++){
				if (host==doms[i]){
					return true;
				}
			}
		}
	}
	return false;
}
WebTrends.prototype.dcsTypeMatch=function(pth, typelist){
	var type=pth.toLowerCase().substring(pth.lastIndexOf(".")+1,pth.length);
	var types=this.dcsSplit(typelist);
	var tlen=types.length;
	for (var i=0;i<tlen;i++){
		if (type==types[i]){
			return true;
		}
	}
	return false;
}
WebTrends.prototype.dcsEvt=function(evt,tag){
	var e=evt.target||evt.srcElement;
	while (e.tagName&&(e.tagName.toLowerCase()!=tag.toLowerCase())){
		e=e.parentElement||e.parentNode;
	}
	return e;
}
WebTrends.prototype.dcsNavigation=function(evt){
	var id="";
	var cname="";
	var elems=this.dcsSplit(this.navigationtag);
	var elen=elems.length;
	var i,e,elem;
	for (i=0;i<elen;i++){
		elem=elems[i];
		if (elem.length){
			e=this.dcsEvt(evt,elem);
			id=(e.getAttribute&&e.getAttribute("id"))?e.getAttribute("id"):"";
			cname=e.className||"";
			if (id.length||cname.length){
				break;
			}
		}
	}
	return id.length?id:cname;
}
WebTrends.prototype.dcsBind=function(event,func){
	if ((typeof(func)=="function")&&document.body){
		if (document.body.addEventListener){
			document.body.addEventListener(event, func.wtbind(this), true);
		}
		else if(document.body.attachEvent){
			document.body.attachEvent("on"+event, func.wtbind(this));
		}
	}
}
WebTrends.prototype.dcsET=function(){
	var e=(navigator.appVersion.indexOf("MSIE")!=-1)?"click":"mousedown";
	this.dcsBind(e,this.dcsDownload);
	this.dcsBind(e,this.dcsOffsite);
	this.dcsBind("contextmenu",this.dcsRightClick);
}
WebTrends.prototype.dcsMultiTrack=function(){
	var args=dcsMultiTrack.arguments?dcsMultiTrack.arguments:arguments;
	if (args.length%2==0){
		this.dcsSetProps(args);
//custom TL
if (typeof this.WT.z_promo != 'undefined') this.tlPromoClickCheck('dmt');
		var dCurrent=new Date();
		this.DCS.dcsdat=dCurrent.getTime();
		this.dcsFPC();
			this.dcsTag();
this.tlPromoInit();
	}
}
WebTrends.prototype.dcsCleanUp=function(){
	this.DCS={};
	this.WT={};
	this.DCSext={};
	if (arguments.length%2==0){
		this.dcsSetProps(arguments);
	}
}
WebTrends.prototype.dcsSetProps=function(args){
	for (var i=0;i<args.length;i+=2){
		if (args[i].indexOf('WT.')==0){
			this.WT[args[i].substring(3)]=args[i+1];
		}
		else if (args[i].indexOf('DCS.')==0){
			this.DCS[args[i].substring(4)]=args[i+1];
		}
		else if (args[i].indexOf('DCSext.')==0){
			this.DCSext[args[i].substring(7)]=args[i+1];
		}
	}
}
WebTrends.prototype.dcsSplit=function(list){
	var items=list.toLowerCase().split(",");
	var len=items.length;
	for (var i=0;i<len;i++){
		items[i]=items[i].replace(/^\s*/,"").replace(/\s*$/,"");
	}
	return items;
}
// Code section for Track clicks to download links.
WebTrends.prototype.dcsDownload=function(evt){
	evt=evt||(window.event||"");
	if (evt&&((typeof(evt.which)!="number")||(evt.which==1))){
		var e=this.dcsEvt(evt,"A");
		if (e.href){
			var hn=e.hostname?(e.hostname.split(":")[0]):"";
			if (this.dcsIsOnsite(hn)&&this.dcsTypeMatch(e.pathname,this.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=this.dcsEvt(evt,"IMG");
				if (img.alt){
					ttl=img.alt;
				}
				else if (text){
					ttl=text;
				}
				else if (e.innerHTML){
					ttl=e.innerHTML;
				}
//Custom TL
this.tlPromoCheck(e.href);
				this.dcsMultiTrack("DCS.dcssip",hn,"DCS.dcsuri",pth,"DCS.dcsqry",e.search||"","WT.ti","Download:"+ttl,"WT.dl","20","WT.nv",this.dcsNavigation(evt));
				this.DCS.dcssip=this.DCS.dcsuri=this.DCS.dcsqry=this.WT.ti=this.WT.dl=this.WT.nv="";
//Custom TL
//this.tlPromoInit();
			}
		}
	}
}
// Code section for Track right clicks to download links.
WebTrends.prototype.dcsRightClick=function(evt){
	evt=evt||(window.event||"");
	if (evt){
		var btn=evt.which||evt.button;
		if ((btn!=1)||(navigator.userAgent.indexOf("Safari")!=-1)){
			var e=this.dcsEvt(evt,"A");
			if ((typeof(e.href)!="undefined")&&e.href){
				if ((typeof(e.protocol)!="undefined")&&e.protocol&&(e.protocol.indexOf("http")!=-1)){
					if ((typeof(e.pathname)!="undefined")&&this.dcsTypeMatch(e.pathname,this.downloadtypes)){
						var pth=e.pathname?((e.pathname.indexOf("/")!=0)?"/"+e.pathname:e.pathname):"/";
						var hn=e.hostname?(e.hostname.split(":")[0]):"";
						this.dcsMultiTrack("DCS.dcssip",hn,"DCS.dcsuri",pth,"DCS.dcsqry","","WT.ti","RightClick:"+pth,"WT.dl","25");
						this.DCS.dcssip=this.DCS.dcsuri=this.WT.ti=this.WT.dl=this.WT.nv="";
					}
				}
			}
		}
	}
}
// Code section for Track clicks to links leading offsite.
WebTrends.prototype.dcsOffsite=function(evt){
	evt=evt||(window.event||"");
	if (evt&&((typeof(evt.which)!="number")||(evt.which==1))){
		var e=this.dcsEvt(evt,"A");
		if (e.href){
			var hn=e.hostname?(e.hostname.split(":")[0]):"";
			var pr=e.protocol||"";
			if ((hn.length>0)&&(pr.indexOf("http")==0)&&!this.dcsIsOnsite(hn)){
				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):"/";
//Custom TL
this.tlPromoCheck(e.href);
				this.dcsMultiTrack("DCS.dcssip",hn,"DCS.dcsuri",pth,"DCS.dcsqry",this.trimoffsiteparams?"":qry,"DCS.dcsref",window.location,"WT.ti","Offsite:"+hn+pth+"?"+qry,"WT.dl","24","WT.nv",this.dcsNavigation(evt));
				this.DCS.dcssip=this.DCS.dcsuri=this.DCS.dcsqry=this.DCS.dcsref=this.WT.ti=this.WT.dl=this.WT.nv="";
//Custom TL
//this.tlPromoInit();
			}
		}
	}
}

WebTrends.prototype.dcsAdv=function(){
	if (this.trackevents&&(typeof(this.dcsET)=="function")){
		if (window.addEventListener){
			window.addEventListener("load",this.dcsET.wtbind(this),false);
		}
		else if (window.attachEvent){
			window.attachEvent("onload",this.dcsET.wtbind(this));
		}
	}
	this.dcsFPC();
}
WebTrends.prototype.dcsVar=function(){
	var dCurrent=new Date();
	var WT=this.WT;
	var DCS=this.DCS;
	WT.tz=parseInt(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=(function(){
		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;
	})();
	WT.ct="unknown";
	if (document.body&&document.body.addBehavior){
		try{
			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";
		}
		catch(e){
		}
	}
	if (document.all){
		WT.bs=document.body?document.body.offsetWidth+"x"+document.body.offsetHeight:"unknown";
	}
	else{
		WT.bs=window.innerWidth+"x"+window.innerHeight;
	}
	WT.fv=(function(){
		var i,flash;
		if (window.ActiveXObject){
			for(i=10;i>0;i--){
				try{
					flash=new ActiveXObject("ShockwaveFlash.ShockwaveFlash."+i);
					return i+".0";
				}
				catch(e){
				}
			}
		}
		else if (navigator.plugins&&navigator.plugins.length){
			for (i=0;i<navigator.plugins.length;i++){
				if (navigator.plugins[i].name.indexOf('Shockwave Flash')!=-1){
					return navigator.plugins[i].description.split(" ")[2];
				}
			}
		}
		return "Not enabled";
	})();
	WT.slv=(function(){
		var slv="Not enabled";
		try{
			if (navigator.userAgent.indexOf('MSIE')!=-1){
				var sli = new ActiveXObject('AgControl.AgControl');
				if (sli){
					slv="Unknown";
				}
			}
			else if (navigator.plugins["Silverlight Plug-In"]){
				slv="Unknown";
			}
		}
		catch(e){
		}
		if (slv!="Not enabled"){
			var i,j,v;
			if ((typeof(Silverlight)=="object")&&(typeof(Silverlight.isInstalled)=="function")){
				for(i=3;i>0;i--){
					for (j=9;j>=0;j--){
						v=i+"."+j;
						if (Silverlight.isInstalled(v)){
							slv=v;
							break;
						}
					}
					if (slv==v){
						break;
					}
				}
			}
		}
		return slv;
	})();
	if (this.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="8.6.2";
//	WT.sp="@@SPLITVALUE@@";
	WT.dl="0";
	WT.ssl=(window.location.protocol.indexOf('https:')==0)?"1":"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 (DCS.dcsqry){
		var dcsqry=DCS.dcsqry.toLowerCase();
		var params=this.paidsearchparams.length?this.paidsearchparams.toLowerCase().split(","):[];
		for (var i=0;i<params.length;i++){
			if (dcsqry.indexOf(params[i]+"=")!=-1){
				WT.srch="1";
				break;
			}
		}
	}
	if ((window.document.referrer!="")&&(window.document.referrer!="-")){
		if (!(navigator.appName=="Microsoft Internet Explorer"&&parseInt(navigator.appVersion)<4)){
			DCS.dcsref=window.document.referrer;
		}
	}
}
WebTrends.prototype.dcsEscape=function(S, REL){
	if (REL!=""){
		S=S.toString();
		for (var R in REL){
			if (REL[R] instanceof RegExp){
				S=S.replace(REL[R],R);
			}
		}
		return S;
	}
	else{
		return escape(S);
	}
}
WebTrends.prototype.dcsA=function(N,V){
	if (this.i18n&&(this.exre!="")&&!this.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+"="+this.dcsEncode(val);
				}
			}
			V=V.substring(0,1)+newV;
		}
		else{
			V=this.dcsEncode(V);
		}
	}
	return "&"+N+"="+this.dcsEscape(V, this.re);
}
WebTrends.prototype.dcsEncode=function(S){
	return (typeof(encodeURIComponent)=="function")?encodeURIComponent(S):escape(S);
}
WebTrends.prototype.dcsCreateImage=function(dcsSrc){
	if (document.images){
		this.images[this.index]=new Image();
		this.images[this.index].src=dcsSrc;
		this.index++;
	}
	else{
		document.write('<IMG ALT="" BORDER="0" NAME="DCSIMG" WIDTH="1" HEIGHT="1" SRC="'+dcsSrc+'">');
	}
}
WebTrends.prototype.dcsMeta=function(){
	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.toUpperCase().indexOf("WT.")==0){
					this.WT[name.substring(3)]=content;
				}
				else if (name.toUpperCase().indexOf("DCSEXT.")==0){
					this.DCSext[name.substring(7)]=content;
				}
				else if (name.toUpperCase().indexOf("DCS.")==0){
					this.DCS[name.substring(4)]=content;
				}
			}
		}
	}
}
WebTrends.prototype.dcsTag=function(){
    if (document.cookie.indexOf("WTLOPTOUT=")!=-1){
        return;
    }
    //custom TL
    this.tlEventPre();
    var WT=this.WT;
    var DCS=this.DCS;
    var DCSext=this.DCSext;
    var i18n=this.i18n;
    var P="http"+(window.location.protocol.indexOf('https:')==0?'s':'')+"://"+this.domain+(this.dcsid==""?'':'/'+this.dcsid)+"/dcs.gif?";
    if (i18n){
        WT.dep="";
    }
    for (var N in DCS){
        if (DCS[N]&&(typeof DCS[N]!="function")){
            P+=this.dcsA(N,DCS[N]);
        }
    }
    var keys=["co_f","vtid","vtvs","vt_f_tlv"];
    for (var i=0;i<keys.length;i++){
        var key=keys[i];
        if (WT[key]){
            P+=this.dcsA("WT."+key,WT[key]);
            delete WT[key];
        }
    }

    for (N in DCSext){
        if (DCSext[N]&&(typeof DCSext[N]!="function")){
            if (i18n){
                WT.dep=(WT.dep.length==0)?N:(WT.dep+";"+N);
            }
            P+=this.dcsA(N,DCSext[N]);
        }
    }
    if (i18n&&(WT.dep.length>0)){
        P+=this.dcsA("WT.dep",WT.dep);
    }


    var pattern = /itemsPerPage=1000/i;
    var viewAll = pattern.test(DCS["dcsqry"]);
    if(DCS["dcsuri"] == "/catalog.do" && viewAll){
        for (N in WT){
            if (WT[N]&&(typeof WT[N]!="function")){
                switch(N){
                    case 'z_partnerpromo' :
                        break;
                    case 'z_partnerp' :
                        break;
                    case 'z_partnerimp' :
                        break;
                    case 'z_simps' :
                        break;
                    default:
                        P+=this.dcsA("WT."+N,WT[N]);
                }
            }
        }
        this.tlcatalogViewAll(P);
    }else{
        for (N in WT){
            if (WT[N]&&(typeof WT[N]!="function")){
                P+=this.dcsA("WT."+N,WT[N]);
            }
        }

        if (P.length>2048&&navigator.userAgent.indexOf('MSIE')>=0){
            P=P.substring(0,2040)+"&WT.tu=1";
        }
        this.dcsCreateImage(P);
    }

    this.WT.ad="";
}
WebTrends.prototype.dcsDebug=function(){
	var t=this;
	var i=t.images[0].src;
	var q=i.indexOf("?");
	var r=i.substring(0,q).split("/");
	var m="<b>Protocol</b><br><code>"+r[0]+"<br></code>";
	m+="<b>Domain</b><br><code>"+r[2]+"<br></code>";
	m+="<b>Path</b><br><code>/"+r[3]+"/"+r[4]+"<br></code>";
	m+="<b>Query Params</b><code>"+i.substring(q+1).replace(/\&/g,"<br>")+"</code>";
	m+="<br><b>Cookies</b><br><code>"+document.cookie.replace(/\;/g,"<br>")+"</code>";
	if (t.w&&!t.w.closed){
		t.w.close();
	}
	t.w=window.open("","dcsDebug","width=500,height=650,scrollbars=yes,resizable=yes");
	t.w.document.write(m);
	t.w.focus();
}
WebTrends.prototype.dcsCollect=function(){
	if (this.enabled){
		this.dcsVar();
		this.dcsMeta();
		this.dcsAdv();
//custom TL
this.tlDoPre();
		this.dcsTag();
//custom TL
this.tlDoPost();
	}
}

function dcsMultiTrack(){
	if (typeof(_tag)!="undefined"){
		return(_tag.dcsMultiTrack());
	}
}

function dcsDebug(){
	if (typeof(_tag)!="undefined"){
		return(_tag.dcsDebug());
	}
}

Function.prototype.wtbind = function(obj){
	var method=this;
	var temp=function(){
		return method.apply(obj,arguments);
	};
	return temp;
}

//custom functions begin here

//shared functions
function getParam (name, source) {
	if (typeof(source) == "undefined" || typeof(name)=="undefined"||
		source.indexOf("?")==-1 || source.indexOf(name+"=",source.indexOf("?")) == -1) {
		return "";
	}
	var param=source.substring(source.indexOf(name)+name.length);
	var results = param.match(/^=([^&#]*)/);

	if( results == null )
			return "";
	else
			return results[1];
}
Array.prototype.unique = function () {
	var r = new Array();
	o:for(var i = 0, n = this.length; i < n; i++)
	{
		for(var x = 0, y = r.length; x < y; x++)
		{
			if(r[x]==this[i])
			{
				continue o;
			}
		}
		r[r.length] = this[i];
	}
	return r;
}
Array.prototype.sumUp = function () {
	s = 0;
	for(var i = 0; i < this.length; i++)
		if (this[i]) s += parseFloat(this[i]);

	return s;
}
function isSE (uri_stem) {
//detects search engine. if recognized,
//returns its search phrase query parameter

	if (typeof(window.knownSE)=="undefined")
	   var knownSE=[["yahoo","p"],["msn","q"],["bing","q"],["aol","query"],
["aol","encquery"],["lycos","query"],["ask","q"],["altavista","q"],
["netscape","query"],["cnn","query"],["looksmart","qt"],["about","terms"],
["mamma","query"],["alltheweb","q"],["gigablast","q"],["voila","rdata"],
["virgilio","qs"],["live","q"],["baidu","wd"],["alice","qs"],
["yandex","text"],["najdi","q"],["aol","q"],["club-internet","query"],
["mama","query"],["seznam","q"],["search","q"],["wp","szukaj"],
["onet","qt"],["netsprint","q"],["google.interia","q"],["szukacz","q"],
["yam","k"],["pchome","q"],["kvasir","searchExpr"],["sesam","q"],["ozu","q"],
["terra","query"],["nostrum","query"],["mynet","q"],["ekolay","q"],
["search.ilse","search_for"]];
	else
	   var knownSE=window.knownSE; //loaded external definitions

	for ( i=0; i < knownSE.length;i++) {
	  if (uri_stem.indexOf(knownSE[i][0]) != -1)
		   result = getParam(knownSE[i][1], _tag.DCS.dcsref);
	  else
		   result = "";

	  if (result) return result;
	  //complete match only if both se and its parameters
	  //have been recognized
	}
  return result;
}
//simple session cookie make/empty
WebTrends.prototype.tlSesCook=function(A, B){
	var thiscookie = A+"="+B+"; path=/"+(((this.fpcdom!=""))?("; domain="+this.fpcdom):(""))
	document.cookie= thiscookie;
}
//return any parameter A value found in string B
WebTrends.prototype.tlGetParam=function(A, B) {
	re = new RegExp(A+"=[\"|\'|]?([^\"\'&#$]+)");
		var match = re.exec(B);
	if (match && match[1]) return (match[1]);
	else return "";
}
//end shared functions

//check for 0 catalog bounces
WebTrends.prototype.tlCatBounce=function(){

	var isB = this.dcsGetCookie("CB");

	if (typeof this.WT.z_catsearch != 'undefined' && this.WT.z_catsearch
	&& (typeof this.WT.z_catresults == 'undefined' || this.WT.z_catresults == '0')) {
			this.WT.z_catbounce='1';
			this.tlSesCook('CB', '1');
	}
	if (typeof this.WT.z_details != 'undefined' && this.WT.z_details) {
			if (isB) {
				this.tlSesCook('CB', '');
				this.WT.z_catbounce='0';
			}
	}
}
//empty impression arrays
WebTrends.prototype.tlPromoInit=function() {
	_tag.WT.z_brandpromo=_tag.WT.z_partnerpromo="";
	_tag.WT.z_brandp=_tag.WT.z_partnerp=_tag.WT.z_partnertier="";
	_tag.WT.z_partnerimp=_tag.WT.z_brandimp="";
	_tag.WT.z_partnerclick=_tag.WT.z_brandclick="";
	_tag.WT.z_simps=_tag.WT.z_sclicks="";
	_tag.WT.z_promo=_tag.WT.z_ppartner=_tag.WT.z_pbrand=_tag.WT.z_pclick=_tag.WT.z_tier="";
	_tag.WT.z_sweeps_details=_tag.WT.z_reward_details=_tag.WT.z_school_details=_tag.WT.z_donate_details=_tag.WT.z_instant_details="";
	_tag.WT.pp="";
}
WebTrends.prototype.tlBuildPromo=function(a) {

			Pr =this.tlGetParam('WT.z_promo', a);
			B =this.tlGetParam('WT.z_pbrand', a);
			Pa =this.tlGetParam('WT.z_ppartner', a);
			Ti =this.tlGetParam('WT.z_tier', a);

			if (!B && !Pa) Pa = 'None';

			if (!Pr) return;

						if (B) {
							//explode multiple brands
							if (B.indexOf(';')!=-1) {
								var T = B.split(';');
								_tag.WT.z_brandp += T[0]+";";
								_tag.WT.z_brandpromo += Pr+";";
									for (i=1;i<T.length;i++) {
										_tag.WT.z_brandpromo+=Pr+";";
										_tag.WT.z_brandp+=T[i]+";";
									}
							}
							//or set single brand
							else { _tag.WT.z_brandp += B+";"; _tag.WT.z_brandpromo += Pr+";"; }
						}
						if (Pa) {
							//explode multiple partners
							if (Pa.indexOf(';')!=-1) {
								var T = Pa.split(';');
								_tag.WT.z_partnerp += T[0]+";";
								_tag.WT.z_partnerpromo += Pr+";";
								_tag.WT.z_partnertier += Ti+";";

									for (i=1;i<T.length;i++) {
										_tag.WT.z_partnerpromo+=Pr+";";
										_tag.WT.z_partnerp+=T[i]+";";
										_tag.WT.z_partnertier += Ti+";";
									}
							}
							//or set single partner
							else { _tag.WT.z_partnerp += Pa+";"; _tag.WT.z_partnerpromo += Pr+";"; _tag.WT.z_partnertier += Ti+";"; }
						}
}


//deduplicate links to same promo
WebTrends.prototype.tlPromoDedup=function(a, b, c) {
	if (!a || !b) return;

	a = a.split(';');
	a = a.splice(0, a.length - 1);
	b = b.split(';');
	b = b.splice(0, b.length - 1);

	if (c) {
	c = c.split(';');
	c = c.splice(0, c.length - 1);
	}

	d = new Array();
	r1=r2=r3="";
	if (a.length == 1) { d[0]=a; d[1]=b; if(c) d[2]=c; return;}
	for (i=0; i<a.length; i++) { if (c) d[i] = a[i]+'|'+b[i]+'|'+c[i]; else d[i] = a[i]+'|'+b[i]; }
	d = d.unique();
	for (i=0; i<d.length; i++) { a = d[i].split('|'); r1+=a[0]+";"; r2+=a[1]+";"; if(c) r3+=a[2]+";"; }
	d = []; d[0]=r1; d[1]=r2; d[2]=r3;
	return d;

}

//check if we have a promo click, attribute, calculate stakeholder click totals
WebTrends.prototype.tlPromoClickCheck=function(a) {

	if (a.indexOf('WT.z_promo')!=-1) {
			Pr = this.tlGetParam('WT.z_promo', a);
			B = this.tlGetParam('WT.z_pbrand', a);
			Pa = this.tlGetParam('WT.z_ppartner', a);
			Ti = this.tlGetParam('WT.z_tier', a);

	}
	else
	if (a.indexOf('dmt')==0) {
			Pr = this.WT.z_promo;
			B = this.WT.z_pbrand;
			Pa = this.WT.z_ppartner;
			Ti = this.WT.z_tier;
		_tag.WT.z_promo=_tag.WT.z_ppartner=_tag.WT.z_pbrand=_tag.WT.z_tier="";
	}
	else return;

			if (!Pr) return;

				if (B) {
					_tag.WT.z_brandclick="";
					//zero fill for clicks on all brand impressions
					for (i = 0; i < (_tag.WT.z_brandp.split(';').length-1); i++)
						_tag.WT.z_brandclick += "0;";

					for (i = 0; i < B.split(';').length; i++) {
							_tag.WT.z_brandclick += "1;";
							_tag.WT.z_brandimp += "0;";
							_tag.WT.z_brandpromo += Pr+";";
					}
					_tag.WT.z_brandp+=B+";";
				}

				if (Pa) {
					_tag.WT.z_partnerclick="";
					//zero fill for clicks on all partner impressions
					for (i = 0; i < (_tag.WT.z_partnerp.split(';').length-1); i++)
						_tag.WT.z_partnerclick += "0;";

					for (i = 0; i < Pa.split(';').length; i++) {
							_tag.WT.z_partnerclick += "1;";
							_tag.WT.z_partnerimp += "0;";
							_tag.WT.z_partnerpromo += Pr+";";
							if (Ti) _tag.WT.z_partnertier += Ti+";";
					}
					_tag.WT.z_partnerp+=Pa+";";
				}
		//now tally up stakeholder clicks
		_tag.WT.z_sclicks = 0;
		if (_tag.WT.z_partnerclick)_tag.WT.z_sclicks += _tag.WT.z_partnerclick.split(';').sumUp();
		if (_tag.WT.z_brandclick)_tag.WT.z_sclicks += _tag.WT.z_brandclick.split(';').sumUp();

}

//scan page for hrefs with stakeholder tagging, build impression arrays
WebTrends.prototype.tlPageScan=function() {

	if (document.links){
	  for (var i=0;i<document.links.length;i++) {
		if (document.links[i].href){
		  var a=document.links[i].href;
			if (a.indexOf('WT.z_promo')!=-1) {
				this.tlBuildPromo(a);
			}
		}
	  }
	}

	if (document.images){
	  for (var i=0;i<document.images.length;i++) {
		if (document.images[i].id){
		  var a=document.images[i].id;
			if (a.indexOf('WT.z_promo')!=-1) {
				this.tlBuildPromo(a);
			}
		}
	  }
	}

	//deduplicate all promos
	C = this.tlPromoDedup(_tag.WT.z_brandp, _tag.WT.z_brandpromo, "");
	if (C){
		_tag.WT.z_brandp = C[0];
		_tag.WT.z_brandpromo = C[1];
	}
	C = this.tlPromoDedup(_tag.WT.z_partnerp, _tag.WT.z_partnerpromo, _tag.WT.z_partnertier);
	if (C){
		_tag.WT.z_partnerp = C[0];
		_tag.WT.z_partnerpromo = C[1];
		_tag.WT.z_partnertier = C[2];
	}

	//add impression arrays
	if (_tag.WT.z_brandp) {
		for (i=0;i<(_tag.WT.z_brandp.split(';').length-1);i++)
			_tag.WT.z_brandimp += "1;";
	}
	if (_tag.WT.z_partnerp) {
		for (i=0;i<(_tag.WT.z_partnerp.split(';').length-1);i++)
			_tag.WT.z_partnerimp += "1;";
	}

	//calculate unique stakeholder impressions total
	_tag.WT.z_simps = (_tag.WT.z_partnerp.split(';').length-1)+(_tag.WT.z_brandp.split(';').length-1);


	this.tlPromoClickCheck(window.location.search+window.location.hash);
}

//adds stakeholder click data to download & offsite link clicks
WebTrends.prototype.tlPromoCheck=function(a) {
	if (a.indexOf('WT.z_promo')!= -1)
		this.tlPromoClickCheck(a);
	else return;
}
//trimming methods
WebTrends.prototype.tlCompress=function() {

		//encode promo type and placement for brands
		if(typeof _tag.WT.z_brandpromo != 'undefined') {
			_tag.WT.z_brandpromo=_tag.WT.z_brandpromo.replace(/\+/g,'');
			_tag.WT.z_brandpromo=_tag.WT.z_brandpromo.replace(/_lead_/g,'_1_').replace(/_leader_/g,'_1_').replace(/_lge_/g,'_2_').replace(/_med_/g,'_3_').replace(/_text_/g,'_4_').replace(/_foot_/g,'_5_').replace(/_dt_/g,'_6_').replace(/_thmb_/g,'_7_');
			_tag.WT.z_brandpromo=_tag.WT.z_brandpromo.replace(/rwd_/g,'1_').replace(/ee_/g,'2_').replace(/eo_/g,'3_').replace(/swp_/g,'4_').replace(/iw_/g,'5_').replace(/fl_/g,'6_').replace(/dt_/g,'7_').replace(/ofr_/g,'8_');
			_tag.WT.z_brandpromo=_tag.WT.z_brandpromo.replace(/_na;/g,'_1;').replace(/_54x33;/g,'_2;').replace(/_60x60;/g,'_3;').replace(/_62x33;/g,'_4;').replace(/_70x45;/g,'_5;').replace(/_76x76;/g,'_6;').replace(/_135x33;/g,'_7;').replace(/_180x150;/g,'_8;').replace(/_190x190;/g,'_9;').replace(/_640x340;/g,'_10;');
		}

		//unset tier if nothing to pass
	if (typeof _tag.WT.z_partnerp == 'undefined'
		|| typeof _tag.WT.z_partnerpromo == 'undefined') return;
	if (	_tag.WT.z_partnertier != 'undefined'
		&& 	_tag.WT.z_partnertier.indexOf('1')==-1
		&& 	_tag.WT.z_partnertier.indexOf('2')==-1
		&& 	_tag.WT.z_partnertier.indexOf('3')==-1)
		_tag.WT.z_partnertier="";

		//strip plus signs
		_tag.WT.z_partnerpromo=_tag.WT.z_partnerpromo.replace(/\+/g,'');

	//trim all base stakeholder parameters from query string
	if (typeof this.DCS.dcsqry != 'undefined' && this.DCS.dcsqry)
	_tag.DCS.dcsqry = _tag.DCS.dcsqry.replace(/[?&#]WT\.z_pclick=[^&#;]*/g,'').replace(/[?&#]WT\.z_ppartner=[^&#;]*/g,'').replace(/[?&#]WT\.z_pbrand=[^&#;]*/g,'').replace(/[?&#]WT\.z_promo=[^&#;]*/g,'').replace(/[?&#]WT\.z_tier=[^&#;]*/g,'');

	var A = _tag.WT.z_partnerp.split(';');
	var B = _tag.WT.z_partnerpromo.split(';');
	var C = "";
		for (i=0;i<(A.length-1);i++) {

				D = A[i]
				E = B[i].match(/^[^_]+_[^_]+_([^_]+)/);
				F = B[i].match(/^([^_]+)/);
				if (!D || !E || !F) return;
					C += D+"-"+E[1]+";";
					C = C.replace(/\-1;/g,'-lead;');
                                        C = C.replace(/\-2;/g,'-lge;');
                                        C = C.replace(/\-3;/g,'-med;');
                                        C = C.replace(/\-4;/g,'-text;');
                                        C = C.replace(/\-5;/g,'-foot;');
                                        C = C.replace(/\-6;/g,'-dt;');
                                        C = C.replace(/\-7;/g,'-thmb;');
                                        C = C.replace(/\-8;/g,'-tier1;');
                                        C = C.replace(/\-9;/g,'-tier2;');
                                        C = C.replace(/\-10;/g,'-tier3;');
                                        C = C.replace(/\-11;/g,'-tr;');
                                        C = C.replace(/\-12;/g,'-br;');
                                        C = C.replace(/\-13;/g,'-bt;');
                                        C = C.replace(/\-14;/g,'-na;');
			//add item detail flags based on partner
			if (E[1]=='dt') {
				_tag.WT.z_details=1;
				if (F[1] == 'rwd')
				_tag.WT.z_reward_details=1;
				else if (F[1] == 'swp')
				_tag.WT.z_sweeps_details=1;
				else if (F[1] == 'iw')
				_tag.WT.z_instant_details=1;
			}
		}
	if (C)
	_tag.WT.z_partnerp=C;

	//encode promo type and placement for patners
	_tag.WT.z_partnerpromo=_tag.WT.z_partnerpromo.replace(/_lead_/g,'_1_').replace(/_leader_/g,'_1_').replace(/_lge_/g,'_2_').replace(/_med_/g,'_3_').replace(/_text_/g,'_4_').replace(/_foot_/g,'_5_').replace(/_dt_/g,'_6_').replace(/_thmb_/g,'_7_');
	_tag.WT.z_partnerpromo=_tag.WT.z_partnerpromo.replace(/rwd_/g,'1_').replace(/ee_/g,'2_').replace(/eo_/g,'3_').replace(/swp_/g,'4_').replace(/iw_/g,'5_').replace(/fl_/g,'6_').replace(/dt_/g,'7_').replace(/ofr_/g,'8_');
	_tag.WT.z_partnerpromo=_tag.WT.z_partnerpromo.replace(/_na;/g,'_1;').replace(/_54x33;/g,'_2;').replace(/_60x60;/g,'_3;').replace(/_62x33;/g,'_4;').replace(/_70x45;/g,'_5;').replace(/_76x76;/g,'_6;').replace(/_135x33;/g,'_7;').replace(/_180x150;/g,'_8;').replace(/_190x190;/g,'_9;').replace(/_640x340;/g,'_10;');

}

//generates a flat partner + placement array
WebTrends.prototype.tlGenDetails=function() {
	if (typeof _tag.WT.z_brandp != 'undefined'
	|| typeof _tag.WT.z_brandpromo != 'undefined') {
			A = _tag.WT.z_brandp.split(';');
			B = _tag.WT.z_brandpromo.split(';');
			C = "";
				for (i=0;i<(A.length-1);i++) {
						D = A[i].substr(0,2);
						D += A[i].substr(A[i].length-2);
						E = B[i].match(/^[^_]+_[^_]+_([^_]+)/);
						F = B[i].match(/^([^_]+)/);
						if (!D || !E || !F) return;
					//add item detail flags based on brand
					if (E[1]=='dt') {
						_tag.WT.z_details=1;
						if (F[1] == 'rwd')
						_tag.WT.z_reward_details=1;
						else if (F[1] == 'swp')
						_tag.WT.z_sweeps_details=1;
						else if (F[1] == 'iw')
						_tag.WT.z_instant_details=1;
					}

					if (_tag.WT.z_spend != 'undefined' && (_tag.WT.z_spend == "1" || _tag.WT.z_spend ==1)) {

						if (F[1] == 'rwd')
						_tag.WT.z_redeem=1;
						else if (F[1] == 'swp')
						_tag.WT.z_sweeps=1;
						else if (F[1] == 'iw')
						_tag.WT.z_instant=1;

					}

				}
	} // end brand details generation
}
WebTrends.prototype.tlGenSegments=function() {

	if (typeof _tag.WT.z_g == 'undefined'
		|| typeof _tag.WT.z_a == 'undefined') return;

	var a=_tag.WT.z_a;
	var g=_tag.WT.z_g;
	var s="";

	if (g=='1') {
			 if (a=='1') s='M/F: 13-18';
		else if (a=='2') s='M/F: 19-24';
		else if (a=='3') s='M: 25-34';
		else if (a=='4') s='M: 35-49';
		else if (a=='5') s='M/F: 50-64';
		else if (a=='6') s='M/F: 65+';
	}
	else if (g='2') {
			 if (a=='1') s='M/F: 13-18';
		else if (a=='2') s='M/F: 19-24';
		else if (a=='3') s='F: 25-34';
		else if (a=='4') s='F: 35-49';
		else if (a=='5') s='M/F: 50-64';
		else if (a=='6') s='M/F: 65+';
	}
	if (s) _tag.WT.seg_3=s;
}

WebTrends.prototype.tlDoConsolidate=function() {
// -- if no actual campaign id is found
// -- spoofs organic and referring sites campaigns
// -- must be called after dcsVar and before dcsTag

var campID = "";
var campIDt = "";
var campIDq = "";
var results = "";
var result = "";
var hostn = "";

//try in WT object first
  if (typeof this.WT.mc_id != "undefined")
	  campIDt = this.WT.mc_id;
//try in query string
	  campIDq = getParam("WT.mc_id", this.DCS.dcsqry);

  // If we don't have an mc_id in either source
  // begin spoof of organic and referring sites campaigns

  if(!campIDt && !campIDq) {
	if (typeof this.DCS.dcsref != "undefined") {

	//referrer found
	var regex = new RegExp ("//([^/:?#]+)");
	//extract host from URL
	results = regex.exec(this.DCS.dcsref);
	if (!results) return;
   //do nothing if referrer is internal (self) or on-site
	if (this.fpcdom && results[1].indexOf(this.fpcdom) != -1) return;
	if (this.onsitedoms && this.onsitedoms.indexOf(results[1]) != -1) return;
	if (results[1].indexOf(window.location.hostname) != -1) return;

	//first check if IP
	var regex = new RegExp ("^([0-9]+\\.[0-9]+\\.[0-9]+\\.[0-9]+)$");
	result = regex.exec(results[1]);
	if (result) var isIP=results[1];

	var regex = new RegExp ("([^.]*\\.?[^.]+\\.[a-z]{2,3})$"); // Include top level country domains and potential
									// and potential TLDs within: ayataka.co.jp
	result = regex.exec(results[1]);
   //  if (result) results[1]='www.'+results[1];  This is not needed for the next searches
	//compose Campaign Partner
	//strip prefix & suffixes
	if (result) {  // Result exists only if there is a top level domain
	   var zones = result[1].split(".");  // either 2 or 3 elements based on above
		if ( zones.length==2) {
			hostn = zones[0]; // top level domains always if two elements
		 } else if (zones[2].length == 3) {
			hostn = zones[1]; // top level  domains for .COM/ORG, etc
		  } else { // We don't know how different countries work so we join all but the last
			hostn = zones[0] +","+ zones[1]; // we do know that there are 3 elements
		  }
	 } else {
		hostn = results[1];
	 }
	//capitalize, store as company name
	if (isIP)
	campID = "Unknown+Domain_";
	else
		campID = hostn.charAt(0).toUpperCase()+hostn.substr(1)+"_";

   //check if search engine
	var searchresult = isSE(results[1]);
   //add search phrase
	if (searchresult)
	  campID = "Organic+Search_"+campID+searchresult;
	else { //add referrer url without query string
	  var regex = new RegExp ("(^[^?#]+)");
	  results = regex.exec(this.DCS.dcsref);
	  campID = "Referring+Sites_"+campID+results[1];
	}

	//add the spoofed campaign ID to WT object
	  this.WT.mc_id = this.dcsEncode(campID);
	}
	else { } //no referrer, assume direct traffic
  }
  else {
	if (campIDt)
		_tag.WT.mc_id = campIDt.replace(/SOURCEREG:/, "");
	else if (campIDq)
		_tag.DCS.dcsqry = _tag.DCS.dcsqry.replace(/WT\.mc_id=[^&#;]*/g, "WT.mc_id="+campIDq.replace(/SOURCEREG:/, ""));
	//we have an actual WT.mc_id, set non-organic campaign flag
	this.WT.z_campaign = "1";
  }
}
// include in beginning of dcsTag
WebTrends.prototype.tlDoBounce=function(){
  // check for first page bounce
  if(typeof this.WT.vt_f_s == "undefined") {
	this.WT.z_bounces = "0";
  } else if (this.WT.vt_f_s == "1" ) {
	this.WT.z_bounces = "1";
  } else if (this.WT.vt_f_s == "" || this.WT.vt_f_s == 0 ) {
	this.WT.z_bounces = "0";
  }

  if (typeof this.WT.vt_f != "undefined" && this.WT.vt_f == "1")
	_tag.WT.z_newvisit=1;

}
//custom func. loop before dcsTag
WebTrends.prototype.tlDoPre=function() {
	this.tlPromoInit();
	this.tlPageScan();
}
//custom func. loop after dcsTag
WebTrends.prototype.tlDoPost=function() {
	this.tlPromoInit();
	_tag.WT.z_flt1=_tag.WT.z_flt2=_tag.WT.z_flt3=_tag.WT.z_flt4="";
	_tag.WT.z_details=_tag.WT.z_reward_details=_tag.WT.z_sweeps_details=_tag.WT.z_instant_details="";

	_tag.WT.z_spend=_tag.WT.z_redeem=_tag.WT.z_sweeps=_tag.WT.z_instant="";
}
//custom func. loop inside dcsTag (event call capture)
WebTrends.prototype.tlEventPre=function() {
	this.tlDoBounce();
	this.tlGenDetails();
	this.tlCompress();
	this.tlGenSegments();
	this.tlDoConsolidate();
	this.tlCatBounce();
}
function doTracking(A) {

//legacy tagging translations go here
	if (A[0].indexOf('page.TakeaTour.FAQs')!=-1)
	dcsMultiTrack('DCS.dcsuri','/flashpage_help_takeatour_faqs','WT.ti','Flash Page: Help Take a Tour FAQs');
	else if (A[0].indexOf('page.Help.Rules')!=-1)
	dcsMultiTrack('DCS.dcsuri','/flashpage_help_rules','WT.ti','Flash Page: Help Rules');
	else if (A[0].indexOf('page.Help.TermsOfUse')!=-1)
	dcsMultiTrack('DCS.dcsuri','/flashpage_help_termsofuse','WT.ti','Flash Page: Help Terms of Use');
	else if (A[0].indexOf('page.Help.PrivacyPolicy')!=-1)
	dcsMultiTrack('DCS.dcsuri','/flashpage_help_privacypolicy','WT.ti','Flash Page: Help Privacy Policy');
	else if (A[0].indexOf('page.Common.ParticipatingBrands')!=-1)
	dcsMultiTrack('DCS.dcsuri','/flashpage_participatingbrands_'+A[0].split('.')[3],'WT.ti','Participating Brands: '+A[0].split('.')[3]);
	else if (A[0].indexOf('module.media.Experience.PibbXtra.CowboyGame.Start')!=-1)
	dcsMultiTrack('DCS.dcsuri','/flashpage_pibb_gamestart','WT.ti','Flash Page: Pibb Xtra Cowboy Game Start');
	else if (A[0].indexOf('Link.ExperiencePibbXtra.ParticipatingBrands')!=-1)
	dcsMultiTrack('DCS.dcsuri','/flashpage_pibb_participatingbrands','WT.ti','Flash Page: Help Privacy Policy');
	else if (A[0].indexOf('Link.ExperienceMMaid.RewardsToGo')!=-1)
	dcsMultiTrack('DCS.dcsuri','/flashpage_mmaid_rewardstogo','WT.ti','Flash Page: Minute Maid Clickthrough to Catalog');
	else if (A[0].indexOf('Link.ExperienceBarqs.ParticipatingBrands')!=-1)
	dcsMultiTrack('DCS.dcsuri','/flashpage_barqs_participatingbrands','WT.ti','Flash Page: Barqs Clickthrough to Participating Brands');
	else if (A[0].indexOf('button.Experience.Brand.16.skip')!=-1)
	dcsMultiTrack('DCS.dcsuri','/flashpage_fresca_introskip','WT.ti','Flash Page: Fresca Intro Skip');

	else if (A[0].indexOf('Link.ExperienceFresca.ParticipatingBrands')!=-1)
	dcsMultiTrack('DCS.dcsuri','/flashpage_fresca_participatingbrands','WT.ti','Flash Page: Fresca Clickthrough to Participating Brands');
	else if (A == "Link.ExperienceBarqs") {
		window.open('http://www.barqs.com/');
		dcsMultiTrack('DCS.dcsuri','/offsite_www.barqs.com','WT.ti','Offsite: http://www.barqs.com','WT.dl','24','DCS.dcsqry','');
	}
	else if (A == 'Link.ExperienceBarqsFreebies') {
		window.open('http://www.barqs.com/freebies.jsp');
		dcsMultiTrack('DCS.dcsuri','/offsite_www.barqs.com/freebies.jsp','WT.ti','Offsite: http://www.barqs.com/freebies.jsp','WT.dl','24','DCS.dcsqry','');
	}
	else if (A == 'Link.ExperienceBarqsPodcast') {
		window.open('http://www.barqs.com/podcast.jsp');
		dcsMultiTrack('DCS.dcsuri','/offsite_www.barqs.com/podcast.jsp','WT.ti','Offsite: http://www.barqs.com/podcast.jsp','WT.dl','24','DCS.dcsqry','');
	}
	else if (A == 'Link.ExperienceFresca') {
		window.open('http://www.fresca.com/flash_content/index.jsp?guest=no');
		dcsMultiTrack('DCS.dcsuri','/offsite_www.fresca.com/flash_content/index.jsp?guest=no','WT.ti','Offsite: http://www.fresca.com/flash_content/index.jsp?guest=no','WT.dl','24','DCS.dcsqry','');
	}
	else if (A == 'Link.ExperiencesFrescaRecipes') {
	window.open('http://www.fresca.com/frescarecipes.pdf');
	dcsMultiTrack('DCS.dcsuri','/offsite_www.fresca.com/frescarecipes.pdf','WT.ti','Offsite: http://www.fresca.com/frescarecipes.pdf','WT.dl','24','DCS.dcsqry','');
	}
}

WebTrends.prototype.tlcatalogViewAll=function(base){

    var baseLength = base.length;
    var dcsimgreq = base;
    var totLength;

    //
    var tmpPartner = "";
    var tmpPromo = "";
    var tmpImpressions = "";
    var simps = 0;
    //Break out partner strings into arrays
    var partnerp=this.WT["z_partnerp"].split(';');
    var pp=this.WT["z_partnerpromo"].split(';');
    var pimp=this.WT["z_partnerimp"].split(';');
    var i = j = 0;
    do{
        tmpPartner += partnerp[i] + ';';
        tmpPromo += pp[i] + ';';
        tmpImpressions += pimp[i] + ';';
        simps += 1;
        totLength = baseLength + tmpPartner.length + tmpPromo.length + tmpImpressions.length;
        //If we're bumping up against the QS upper bound limit, aggregate data and send to Webtrends
        if(totLength > 1800){
            dcsimgreq += this.dcsA("WT.z_partnerp",tmpPartner);
            dcsimgreq += this.dcsA("WT.z_partnerpromo",tmpPromo);
            dcsimgreq += this.dcsA("WT.z_partnerimp",tmpImpressions);
            dcsimgreq += this.dcsA("WT.z_simps",simps);
            if (j > 0){
                dcsimgreq = dcsimgreq.replace(/dcsuri=\/catalog/,"dcsuri=/vcatalog");
                dcsimgreq = dcsimgreq.replace(/WT\.ti=Catalog/,'WT.ti=VCatalog');
                dcsimgreq = dcsimgreq.replace(/WT\.dl=0/,'WT.dl=1');
            }
            this.dcsCreateImage(dcsimgreq);
            tmpPartner = "";
            tmpPromo = "";
            tmpImpressions = "";
            simps = 0;
            j++;
            dcsimgreq = base;
        }
        i++;
    } while (i< pp.length-1)
    // if temp strings have data after exiting loop, send data to WebTrends
    if(tmpPartner.length > 0){
        dcsimgreq = dcsimgreq.replace(/dcsuri=\/catalog/,"dcsuri=/vcatalog");
        dcsimgreq = dcsimgreq.replace(/WT\.ti=Catalog/,'WT.ti=VCatalog');
        dcsimgreq = dcsimgreq.replace(/WT\.dl=0/,'WT.dl=1');
        dcsimgreq += this.dcsA("WT.z_partnerp",tmpPartner);
        dcsimgreq += this.dcsA("WT.z_partnerpromo",tmpPromo);
        dcsimgreq += this.dcsA("WT.z_partnerimp",tmpImpressions);
        dcsimgreq += this.dcsA("WT.z_simps",simps);
        this.dcsCreateImage(dcsimgreq);
    }

}
//custom functions end here