// OWA Tracker Min file created 1295114210 //// Start of json2 //// if(!this.JSON){this.JSON={};} (function(){"use strict";function f(n){return n<10?'0'+n:n;} if(typeof Date.prototype.toJSON!=='function'){Date.prototype.toJSON=function(key){return isFinite(this.valueOf())?this.getUTCFullYear()+'-'+ f(this.getUTCMonth()+1)+'-'+ f(this.getUTCDate())+'T'+ f(this.getUTCHours())+':'+ f(this.getUTCMinutes())+':'+ f(this.getUTCSeconds())+'Z':null;};String.prototype.toJSON=Number.prototype.toJSON=Boolean.prototype.toJSON=function(key){return this.valueOf();};} var cx=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,escapable=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,gap,indent,meta={'\b':'\\b','\t':'\\t','\n':'\\n','\f':'\\f','\r':'\\r','"':'\\"','\\':'\\\\'},rep;function quote(string){escapable.lastIndex=0;return escapable.test(string)?'"'+string.replace(escapable,function(a){var c=meta[a];return typeof c==='string'?c:'\\u'+('0000'+a.charCodeAt(0).toString(16)).slice(-4);})+'"':'"'+string+'"';} function str(key,holder){var i,k,v,length,mind=gap,partial,value=holder[key];if(value&&typeof value==='object'&&typeof value.toJSON==='function'){value=value.toJSON(key);} if(typeof rep==='function'){value=rep.call(holder,key,value);} switch(typeof value){case'string':return quote(value);case'number':return isFinite(value)?String(value):'null';case'boolean':case'null':return String(value);case'object':if(!value){return'null';} gap+=indent;partial=[];if(Object.prototype.toString.apply(value)==='[object Array]'){length=value.length;for(i=0;i");queryAsAssoc[key[0]]=key[1];}} return queryAsAssoc;},parseCookieStringToJson:function parseQuery(v){var queryAsObj=new Object;var queryString=unescape(v);var keyValues=queryString.split("|||");for(var i in keyValues){if(keyValues.hasOwnProperty(i)){var key=keyValues[i].split("=>");queryAsObj[key[0]]=key[1];}} return queryAsObj;},nsParams:function(obj){var new_obj=new Object;for(param in obj){if(obj.hasOwnProperty(param)){new_obj['owa_'+param]=obj[param];}} return new_obj;},urlEncode:function(str){str=(str+'').toString();return encodeURIComponent(str).replace(/!/g,'%21').replace(/'/g,'%27').replace(/\(/g,'%28').replace(/\)/g,'%29').replace(/\*/g,'%2A').replace(/%20/g,'+');},urldecode:function(str){return decodeURIComponent(str.replace(/\+/g,'%20'));},parseUrlParams:function(url){var _GET={};for(var i,a,m,n,o,v,p=location.href.split(/[?&]/),l=p.length,k=1;k';outer=outer||'|||';if(str){if(!this.strpos(str,inner)){return str;}else{var assoc={};outer_array=str.split(outer);for(var i=0,n=outer_array.length;i'+obj[prop];if(i>>8)^x;} return crc^(-1);},utf8_encode:function(argString){var string=(argString+'');var utftext="";var start,end;var stringl=0;start=end=0;stringl=string.length;for(var n=0;n127&&c1<2048){enc=String.fromCharCode((c1>>6)|192)+String.fromCharCode((c1&63)|128);}else{enc=String.fromCharCode((c1>>12)|224)+String.fromCharCode(((c1>>6)&63)|128)+String.fromCharCode((c1&63)|128);} if(enc!==null){if(end>start){utftext+=string.substring(start,end);} utftext+=enc;start=end=n+1;}} if(end>start){utftext+=string.substring(start,string.length);} return utftext;},utf8_decode:function(str_data){var tmp_arr=[],i=0,ac=0,c1=0,c2=0,c3=0;str_data+='';while(i191)&&(c1<224)){c2=str_data.charCodeAt(i+1);tmp_arr[ac++]=String.fromCharCode(((c1&31)<<6)|(c2&63));i+=2;}else{c2=str_data.charCodeAt(i+1);c3=str_data.charCodeAt(i+2);tmp_arr[ac++]=String.fromCharCode(((c1&15)<<12)|((c2&63)<<6)|(c3&63));i+=3;}} return tmp_arr.join('');},trim:function(str,charlist){var whitespace,l=0,i=0;str+='';if(!charlist){whitespace=" \n\r\t\f\x0b\xa0\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u200b\u2028\u2029\u3000";}else{charlist+='';whitespace=charlist.replace(/([\[\]\(\)\.\?\/\*\{\}\+\$\^\:])/g,'$1');} l=str.length;for(i=0;i=0;i--){if(whitespace.indexOf(str.charAt(i))===-1){str=str.substring(0,i+1);break;}} return whitespace.indexOf(str.charAt(0))===-1?str:'';},rand:function(min,max){var argc=arguments.length;if(argc===0){min=0;max=2147483647;}else if(argc===1){throw new Error('Warning: rand() expects exactly 2 parameters, 1 given');} return Math.floor(Math.random()*(max-min+1))+min;},base64_encode:function(data){var b64="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var o1,o2,o3,h1,h2,h3,h4,bits,i=0,ac=0,enc="",tmp_arr=[];if(!data){return data;} data=this.utf8_encode(data+'');do{o1=data.charCodeAt(i++);o2=data.charCodeAt(i++);o3=data.charCodeAt(i++);bits=o1<<16|o2<<8|o3;h1=bits>>18&0x3f;h2=bits>>12&0x3f;h3=bits>>6&0x3f;h4=bits&0x3f;tmp_arr[ac++]=b64.charAt(h1)+b64.charAt(h2)+b64.charAt(h3)+b64.charAt(h4);}while(i>16&0xff;o2=bits>>8&0xff;o3=bits&0xff;if(h3==64){tmp_arr[ac++]=String.fromCharCode(o1);}else if(h4==64){tmp_arr[ac++]=String.fromCharCode(o1,o2);}else{tmp_arr[ac++]=String.fromCharCode(o1,o2,o3);}}while(i=len)?'':Array(1+len-str.length>>>0).join(chr);return leftJustify?str+padding:padding+str;};var justify=function(value,prefix,leftJustify,minWidth,zeroPad,customPadChar){var diff=minWidth-value.length;if(diff>0){if(leftJustify||!zeroPad){value=pad(value,minWidth,customPadChar,leftJustify);}else{value=value.slice(0,prefix.length)+pad('',diff,'0',true)+value.slice(prefix.length);}} return value;};var formatBaseX=function(value,base,prefix,leftJustify,minWidth,precision,zeroPad){var number=value>>>0;prefix=prefix&&number&&{'2':'0b','8':'0','16':'0x'}[base]||'';value=prefix+pad(number.toString(base),precision||0,'0',false);return justify(value,prefix,leftJustify,minWidth,zeroPad);};var formatString=function(value,leftJustify,minWidth,precision,zeroPad,customPadChar){if(precision!=null){value=value.slice(0,precision);} return justify(value,'',leftJustify,minWidth,zeroPad,customPadChar);};var doFormat=function(substring,valueIndex,flags,minWidth,_,precision,type){var number;var prefix;var method;var textTransform;var value;if(substring=='%%'){return'%';} var leftJustify=false,positivePrefix='',zeroPad=false,prefixBaseX=false,customPadChar=' ';var flagsl=flags.length;for(var j=0;flags&&j-1?6:(type=='d')?0:undefined;}else if(precision=='*'){precision=+a[i++];}else if(precision.charAt(0)=='*'){precision=+a[precision.slice(1,-1)];}else{precision=+precision;} value=valueIndex?a[valueIndex.slice(0,-1)]:a[i++];switch(type){case's':return formatString(String(value),leftJustify,minWidth,precision,zeroPad,customPadChar);case'c':return formatString(String.fromCharCode(+value),leftJustify,minWidth,precision,zeroPad);case'b':return formatBaseX(value,2,prefixBaseX,leftJustify,minWidth,precision,zeroPad);case'o':return formatBaseX(value,8,prefixBaseX,leftJustify,minWidth,precision,zeroPad);case'x':return formatBaseX(value,16,prefixBaseX,leftJustify,minWidth,precision,zeroPad);case'X':return formatBaseX(value,16,prefixBaseX,leftJustify,minWidth,precision,zeroPad).toUpperCase();case'u':return formatBaseX(value,10,prefixBaseX,leftJustify,minWidth,precision,zeroPad);case'i':case'd':number=parseInt(+value,10);prefix=number<0?'-':positivePrefix;value=prefix+pad(String(Math.abs(number)),precision,'0',false);return justify(value,prefix,leftJustify,minWidth,zeroPad);case'e':case'E':case'f':case'F':case'g':case'G':number=+value;prefix=number<0?'-':positivePrefix;method=['toExponential','toFixed','toPrecision']['efg'.indexOf(type.toLowerCase())];textTransform=['toString','toUpperCase']['eEfFgG'.indexOf(type)%2];value=prefix+Math.abs(number)[method](precision);return justify(value,prefix,leftJustify,minWidth,zeroPad)[textTransform]();default:return substring;}};return format.replace(regex,doFormat);},clone:function(mixed){var newObj=(mixed instanceof Array)?[]:{};for(i in mixed){if(mixed[i]&&(typeof mixed[i]=="object")){newObj[i]=OWA.util.clone(mixed[i]);}else{newObj[i]=mixed[i];}} return newObj;},strtolower:function(str){return(str+'').toLowerCase();},in_array:function(needle,haystack,argStrict){var key='',strict=!!argStrict;if(strict){for(key in haystack){if(haystack[key]===needle){return true;}}}else{for(key in haystack){if(haystack[key]==needle){return true;}}} return false;},dechex:function(number){if(number<0){number=0xFFFFFFFF+number+1;} return parseInt(number,10).toString(16);},explode:function(delimiter,string,limit){var emptyArray={0:''};if(arguments.length<2||typeof arguments[0]=='undefined'||typeof arguments[1]=='undefined'){return null;} if(delimiter===''||delimiter===false||delimiter===null){return false;} if(typeof delimiter=='function'||typeof delimiter=='object'||typeof string=='function'||typeof string=='object'){return emptyArray;} if(delimiter===true){delimiter='1';} if(!limit){return string.toString().split(delimiter.toString());}else{var splitted=string.toString().split(delimiter.toString());var partA=splitted.splice(0,limit-1);var partB=splitted.join(delimiter.toString());partA.push(partB);return partA;}}} //// End of owa //// //// Start of owa.tracker //// OWA.event=function(){this.properties=new Object();this.set('timestamp',OWA.util.getCurrentUnixTimestamp());} OWA.event.prototype={id:'',siteId:'',properties:{},get:function(name){if(this.properties.hasOwnProperty(name)){return this.properties[name];}},set:function(name,value){this.properties[name]=value;},setEventType:function(event_type){this.set("event_type",event_type);},getProperties:function(){return this.properties;},merge:function(properties){for(param in properties){if(properties.hasOwnProperty(param)){this.set(param,properties[param]);}}}} OWA.commandQueue=function(){OWA.debug('Command Queue object created');} OWA.commandQueue.prototype={asyncCmds:'',push:function(cmd){var args=Array.prototype.slice.call(cmd,1);var obj_name='';var method='';var check=OWA.util.strpos(cmd[0],'.');if(!check){obj_name='OWATracker';method=cmd[0];}else{var parts=cmd[0].split('.');obj_name=parts[0];method=parts[1];} OWA.debug('cmd queue object name %s',obj_name);OWA.debug('cmd queue object method name %s',method);if(typeof window[obj_name]=="undefined"){OWA.debug('making global object named: %s',obj_name);window[obj_name]=new OWA.tracker({globalObjectName:obj_name});} window[obj_name][method].apply(window[obj_name],args);},loadCmds:function(cmds){this.asyncCmds=cmds;},process:function(){for(var i=0;i0){this.page.merge(owa_params);}}} OWA.tracker.prototype={id:'',siteId:'',init:0,stateInit:false,globalEventProperties:{},sharableStateStores:['v','s','c'],startTime:null,endTime:null,campaignState:[],isNewCampaign:false,isNewSessionFlag:false,isTrafficAttributed:false,cookie_names:['owa_s','owa_v','owa_c'],linkedStateSet:false,hashCookiesToDomain:true,urlParams:{},streamBindings:['bindMovementEvents','bindScrollEvents','bindKeypressEvents','bindClickEvents'],page:'',click:'',domstream:'',movement:'',keystroke:'',hover:'',last_event:'',last_movement:'',event_queue:[],player:'',overlay:'',setDebug:function(bool){OWA.setSetting('debug',bool);},checkForLinkedState:function(){var ls=this.getUrlParam('owa_state');if(!ls){ls=this.getAnchorParam('owa_state');} if(ls){OWA.debug('Shared OWA state detected...');ls=OWA.util.base64_decode(OWA.util.urldecode(ls));OWA.debug('linked state: %s',ls);var state=ls.split('.');OWA.debug('linked state: %s',JSON.stringify(state));if(state){for(var i=0;state.length>i;i++){var pair=state[i].split('=');OWA.debug('pair: %s',pair);var value=OWA.util.urldecode(pair[1]);OWA.debug('pair: %s',value);decodedvalue=OWA.util.decodeCookieValue(value);var format=OWA.util.getCookieValueFormat(value);decodedvalue.cdh=OWA.util.getCookieDomainHash(this.getCookieDomain());OWA.replaceState(pair[0],decodedvalue,true,format);}}} this.linkedStateSet=true;},shareStateByLink:function(url){OWA.debug('href of link: '+url);if(url){var state=this.createSharedStateValue();var anchor=this.getUrlAnchorValue();if(!anchor){OWA.debug('shared state: %s',state);document.location.href=url+'#owa_state.'+state;}else{}}},createSharedStateValue:function(){var state='';for(var i=0;this.sharableStateStores.length>i;i++){var value=OWA.getState(this.sharableStateStores[i]);value=OWA.util.encodeJsonForCookie(value,OWA.getStateStoreFormat(this.sharableStateStores[i]));if(value){state+=OWA.util.sprintf('%s=%s',this.sharableStateStores[i],OWA.util.urlEncode(value));if(this.sharableStateStores.length!=(i+1)){state+='.';}}} if(state){OWA.debug('linked state to send: %s',state);state=OWA.util.base64_encode(state);state=OWA.util.urlEncode(state);return state;}},shareShareByPost:function(form){var state=this.createSharedStateValue();form.action+='#owa_state.'+state;form.submit();},getCookieDomain:function(){return this.getOption('cookie_domain')||OWA.getSetting('cookie_domain')||document.domain;},setCookieDomain:function(domain){var not_passed=false;if(!domain){domain=document.domain;not_passed=true;} var period=domain.substr(0,1);if(period==='.'){domain=domain.substr(1);} var contains_www=false;var www=domain.substr(0,4);if(www==='www.'){if(not_passed){domain=domain.substr(4);} contains_www=true;} var match=false;if(document.domain===domain){match=true;} domain='.'+domain;this.setOption('cookie_domain',domain);this.setOption('cookie_domain_set',true);OWA.setSetting('cookie_domain',domain);OWA.debug('Cookie domain is: %s',domain);},getCookieDomainHash:function(domain){return OWA.util.crc32(domain);},setCookieDomainHashing:function(value){this.hashCookiesToDomain=value;OWA.setSetting('hashCookiesToDomain',value);},checkForOverlaySession:function(){var a=this.getAnchorParam('owa_overlay');if(a){a=OWA.util.base64_decode(OWA.util.urldecode(a));a=OWA.util.urldecode(a);OWA.debug('overlay anchor value: '+a);OWA.util.setCookie('owa_overlay',a,'','/',document.domain);this.pause();OWA.startOverlaySession(OWA.util.decodeCookieValue(a));}},getUrlAnchorValue:function(){var anchor=self.document.location.hash.substring(1);OWA.debug('anchor value: '+anchor);return anchor;},getAnchorParam:function(name){var anchor=this.getUrlAnchorValue();if(anchor){OWA.debug('anchor is: %s',anchor);var pairs=anchor.split(',');OWA.debug('anchor pairs: %s',JSON.stringify(pairs));if(pairs.length>0){var values={};for(var i=0;pairs.length>i;i++){var pieces=pairs[i].split('.');OWA.debug('anchor pieces: %s',JSON.stringify(pieces));values[pieces[0]]=pieces[1];} OWA.debug('anchor values: %s',JSON.stringify(values));if(values.hasOwnProperty(name)){return values[name];}}}},getUrlParam:function(name){this.urlParams=this.urlParams||OWA.util.parseUrlParams();if(this.urlParams.hasOwnProperty(name)){return this.urlParams[name];}else{return false;}},dynamicFunc:function(func){var args=Array.prototype.slice.call(func,1);this[func[0]].apply(this,args);},setPageTitle:function(title){this.page.set("page_title",title);},setPageType:function(type){this.page.set("page_type",type);},setSiteId:function(site_id){this.siteId=site_id;},getSiteId:function(){return this.siteId;},setEndpoint:function(endpoint){endpoint=('https:'==document.location.protocol?window.owa_baseSecUrl||endpoint.replace(/http:/,'https:'):endpoint);this.setOption('baseUrl',endpoint);OWA.config.baseUrl=endpoint;},setLoggerEndpoint:function(url){this.setOption('logger_endpoint',this.forceUrlProtocol(url));},getLoggerEndpoint:function(){var url=this.getOption('logger_endpoint')||this.getEndpoint()||OWA.getSetting('baseUrl');return url+'log.php';},setApiEndpoint:function(url){this.setOption('api_endpoint',this.forceUrlProtocol(url));OWA.setApiEndpoint(url);},getApiEndpoint:function(){return this.getOption('api_endpoint')||this.getEndpoint()+'api.php';},forceUrlProtocol:function(url){url=('https:'==document.location.protocol?url.replace(/http:/,'https:'):url);return url;},getEndpoint:function(){return this.getOption('baseUrl');},trackPageView:function(url){if(url){this.page.set('page_url',url);} this.page.setEventType("base.page_request");return this.trackEvent(this.page);},trackAction:function(action_group,action_name,action_label,numeric_value){var event=new OWA.event;event.setEventType('track.action');event.set('site_id',this.getSiteId());event.set('page_url',this.page.get('page_url'));event.set('action_group',action_group);event.set('action_name',action_name);event.set('action_label',action_label);event.set('numeric_value',numeric_value);this.trackEvent(event);OWA.debug("Action logged");},trackClicks:function(handler){this.setOption('logClicksAsTheyHappen',true);this.bindClickEvents();},bindClickEvents:function(){if(!this.isClickTrackingEnabled){var that=this;if(window.addEventListener){window.addEventListener('click',function(e){that.clickEventHandler(e);},false);}else if(window.attachEvent){window.attachEvent('click',function(e){that.clickEventHandler(e);});} this.isClickTrackingEnabled=true;}},trackDomStream:function(){if(this.active){var rand=Math.floor(Math.random()*100+1);if(rand<=this.getOption('logDomStreamPercentage')){this.setOption('trackDomStream',true);var len=this.streamBindings.length;for(var i=0;ithis.options.domstreamEventThreshold){if(!this.domstream.get('domstream_guid')){var salt='domstream'+this.page.get('page_url')+this.getSiteId();this.domstream.set('domstream_guid',OWA.util.generateRandomGuid(salt));} this.domstream.setEventType('dom.stream');this.domstream.set('site_id',this.getSiteId());this.domstream.set('page_url',this.page.get('page_url'));this.domstream.set('timestamp',OWA.util.getCurrentUnixTimestamp());this.domstream.set('duration',this.getElapsedTime());this.domstream.set('stream_events',JSON.stringify(this.event_queue));this.domstream.set('stream_length',this.event_queue.length);this.trackEvent(this.domstream);this.event_queue=[];}else{OWA.debug("Domstream had too few events to log.");}},startDomstreamTimer:function(){var interval=this.getOption('domstreamLoggingInterval') var that=this;var domstreamTimer=setInterval(function(){that.logDomStream()},interval);},log:function(){this.page.setEventType("base.page_request");return this.logEvent(this.page);},logEventAjax:function(event,method){if(this.active){if(event instanceof OWA.event){var properties=event.getProperties();}else{var properties=event;} method=method||'GET';if(method==='GET'){return this.ajaxGet(properties);}else{this.ajaxPost(properties);return;}}},isObjectType:function(obj,type){return!!(obj&&type&&type.prototype&&obj.constructor==type.prototype.constructor);},getAjaxObj:function(){if(window.XMLHttpRequest){var ajax=new XMLHttpRequest()}else{if(window.ActiveXObject){var ajax=new ActiveXObject("Microsoft.XMLHTTP");}} return ajax;},ajaxGet:function(properties){var url=this._assembleRequestUrl(properties);var ajax=this.getAjaxObj();ajax.open("GET",url,false);ajax.send(null);},ajaxPost:function(properties){var ajax=this.getAjaxObj();var params=this.prepareRequestParams(properties);ajax.open("POST",this.getLoggerEndpoint(),false);ajax.setRequestHeader("Content-type","application/x-www-form-urlencoded");ajax.setRequestHeader("Content-length",params.length);ajax.setRequestHeader("Connection","close");ajax.onreadystatechange=function(){if(ajax.readyState==4&&ajax.status==200){}} ajax.send(params);},ajaxJsonp:function(url){var script=document.createElement("script");script.setAttribute("src",url);script.setAttribute("type","text/javascript");document.body.appendChild(script);},prepareRequestParams:function(properties){var get='';properties.site_id=this.getSiteId();for(param in properties){var value='';var kvp='';if(properties.hasOwnProperty(param)){if(OWA.util.is_array(properties[param])){for(var i=0,n=properties[param].length;i0){dom_name=targ.name;} click.set("dom_element_name",dom_name);var dom_value='(not set)';if(targ.hasOwnProperty('value')&&targ.value.length>0){dom_value=targ.value;} click.set("dom_element_value",dom_value);var dom_id='(not set)';if(!targ.hasOwnProperty('id')&&targ.id.length>0){dom_id=targ.id;} click.set("dom_element_id",dom_id);var dom_class='(not set)';if(targ.hasOwnProperty('className')&&targ.className.length>0){dom_class=targ.className;} click.set("dom_element_class",dom_class);click.set("dom_element_tag",OWA.util.strtolower(targ.tagName));click.set("page_url",window.location.href);var viewport=this.getViewportDimensions();click.set("page_width",viewport.width);click.set("page_height",viewport.height);var properties=this.getDomElementProperties(targ);click.merge(this.filterDomProperties(properties));click.set("dom_element_x",this.findPosX(targ)+'');click.set("dom_element_y",this.findPosY(targ)+'');var coords=this.getCoords(e);click.set('click_x',coords.x);click.set('click_y',coords.y);if(this.getOption('trackDomStream')){this.addToEventQueue(click)} var full_click=OWA.util.clone(click);if(this.getOption('logClicksAsTheyHappen')){this.trackEvent(full_click);} this.click=full_click;},filterDomProperties:function(properties){return properties;},callMethod:function(string,data){return this[string](data);},addDomStreamEventBinding:function(method_name){this.streamBindings.push(method_name);},bindMovementEvents:function(){var that=this;document.onmousemove=function(e){that.movementEventHandler(e);}},movementEventHandler:function(e){e=e||window.event;var now=this.getTime();if(now>this.last_movement+this.getOption('movementInterval')){this.movement=new OWA.event();this.movement.setEventType("dom.movement");var coords=this.getCoords(e);this.movement.set('cursor_x',coords.x);this.movement.set('cursor_y',coords.y);this.addToEventQueue(this.movement);this.last_movement=now;}},bindScrollEvents:function(){var that=this;window.onscroll=function(e){that.scrollEventHandler(e);}},scrollEventHandler:function(e){e=e||window.event;var now=this.getTimestamp();var event=new OWA.event();event.setEventType('dom.scroll');var coords=this.getScrollingPosition();event.set('x',coords.x);event.set('y',coords.y);var targ=this._getTarget(e);event.set("dom_element_name",targ.name);event.set("dom_element_value",targ.value);event.set("dom_element_id",targ.id);this.addToEventQueue(event);this.last_scroll=now;},getScrollingPosition:function(){var position=[0,0];if(typeof window.pageYOffset!='undefined'){position={x:window.pageXOffset,y:window.pageYOffset};}else if(typeof document.documentElement.scrollTop!='undefined'&&document.documentElement.scrollTop>0){position={x:document.documentElement.scrollLeft,y:document.documentElement.scrollTop};}else if(typeof document.body.scrollTop!='undefined'){position={x:document.body.scrollLeft,y:document.body.scrollTop};} return position;},bindHoverEvents:function(){},bindFocusEvents:function(){var that=this;},bindKeypressEvents:function(){var that=this;document.onkeypress=function(e){that.keypressEventHandler(e);}},keypressEventHandler:function(e){var targ=this._getTarget(e);if(targ.tagName==='INPUT'&&targ.type==='password'){return;} var key_code=e.keyCode?e.keyCode:e.charCode var key_value=String.fromCharCode(key_code);var event=new OWA.event();event.setEventType('dom.keypress');event.set('key_value',key_value);event.set('key_code',key_code);event.set("dom_element_name",targ.name);event.set("dom_element_value",targ.value);event.set("dom_element_id",targ.id);event.set("dom_element_tag",targ.tagName);this.addToEventQueue(event);},getTimestamp:function(){return OWA.util.getCurrentUnixTimestamp();},getTime:function(){return Math.round(new Date().getTime());},getElapsedTime:function(){return this.getTimestamp()-this.startTime;},getOption:function(name){if(this.options.hasOwnProperty(name)){return this.options[name];}},setOption:function(name,value){this.options[name]=value;},setLastEvent:function(event){return;},addToEventQueue:function(event){if(this.active&&!this.isPausedBySibling()){var now=this.getTimestamp();if(event!=undefined){this.event_queue.push(event.getProperties());}else{}}},isPausedBySibling:function(){return OWA.getSetting('loggerPause');},sleep:function(delay){var start=new Date().getTime();while(new Date().getTime()0){this.urlParams=OWA.util.parseUrlParams(document.URL);OWA.debug('GET: '+JSON.stringify(this.urlParams));} var campaignKeys=this.getOption('campaignKeys');var campaign_params={};for(var i=0,n=campaignKeys.length;ithis.options.maxPriorCampaigns){var removed=this.campaignState.splice(0,1);OWA.debug('Too many prior campaigns in state store. Dropping oldest to make room.');} this.setCampaignCookie(this.campaignState);this.isTrafficAttributed=true;}},originalAttributionModel:function(campaign_params){if(this.campaignState.length>0){OWA.debug('Original attribution detected.');campaign_params=this.campaignState[0];this.isTrafficAttributed=true;}else{OWA.debug('Setting Original Campaign touch.');if(this.isNewCampaign){this.campaignState.push(campaign_params);this.setCampaignCookie(this.campaignState);this.isTrafficAttributed=true;}} return campaign_params;},setTrafficAttribution:function(event){var campaignState=OWA.getState('c','attribs');if(campaignState){this.campaignState=campaignState;} var campaign_params=this.getCampaignProperties();switch(this.options.trafficAttributionMode){case'direct':OWA.debug('Applying "Direct" Traffic Attribution Model');this.directAttributionModel(campaign_params);break;case'original':OWA.debug('Applying "Original" Traffic Attribution Model');campaign_params=this.originalAttributionModel(campaign_params);break;default:OWA.debug('Applying Default (Direct) Traffic Attribution Model');this.directAttributionModel(campaign_params);} if(this.isTrafficAttributed){OWA.debug('Attributing Traffic to: %s',JSON.stringify(campaign_params));this.applyCampaignPropertiesToEvent(event,campaign_params);if(this.campaignState.length>0){this.setGlobalEventProperty('attribs',JSON.stringify(this.campaignState));}}else{OWA.debug('No traffic attribution.');}},setCampaignCookie:function(values){OWA.setState('c','attribs',values,'','json',this.options.campaignAttributionWindow);},checkRefererForSearchEngine:function(referer){var _get=OWA.util.parseUrlParams(referer);var query_params=['q','p','search','Keywords','ask','keyword','keywords','kw','pattern','pgm','qr','qry','qs','qt','qu','query','queryterm','question','sTerm','searchfor','searchText','srch','su','what'];for(var i=0,n=query_params.length;i