/* Link Tracking Config */
s_time.trackDownloadLinks=true
s_time.trackExternalLinks=true
s_time.trackInlineStats=true
s_time.linkDownloadFileTypes="exe,zip,wav,mp3,mov,mpg,avi,doc,pdf,xls,xml,rss,swf"
s_time.linkInternalFilters="javascript:,timecovers,time.com,timearchive,time-blog.com,time.blogs.com,techland.com,timeinc.net"
s_time.linkTrackVars="None"
s_time.linkTrackEvents="None"
s_time.events="event1,event32";
/*-------------- User Status Cookie handler MB - 07/06/11 ----------*/
if (s_time.c_r('TimeIAT')) {s_time.prop31=s_time.eVar41='logged-in';	
s_time.events=s_time.events+',event24';}
else {s_time.prop31=s_time.eVar41='not-logged-in';
s_time.events=s_time.events+',event25';}
/*------------------------------------------------------------------*/
/* Do not relocate: If session cookie is there then count the iid   */
if (s_time.c_r('s_cc')) {s_time.eVar1=s_time.getQueryParam('iid');
if (s_time.eVar1) {s_time.prop9=s_time.eVar1;s_time.events=s_time.events+',event2';}}
/*------------------------------------------------------------------*/
function omnitureHookFunction() {
if (typeof(s_time.pageName) == "string") s_time.eVar23 = s_time.pageName;
if (typeof(s_time.prop16) == "string") s_time.eVar24 = s_time.prop16;}
/* Plugin Config */
s_time.usePlugins=true
function s_time_doPlugins(s_time) {
/* Add calls to plugins here */
s_time.campaign = s_time.getQueryParam('xid');
//s_time.eVar1 = s_time.getQueryParam('iid');
s_time.eVar2 = s_time.getQueryParam('pkw');
/* 5-13-08 - MB Set eVar18 if prop18 is set - also set event21 for all unique searches */
if(s_time.prop18){
s_time.eVar18 = s_time.prop18
/* Set de-duped onsite search event */
var t_search = s_time.getValOnce(s_time.eVar18,'s_var_18',0)
if(t_search) s_time.events=s_time.events+',event21';
}
/*----------- 09/23/2008 visit number -----------*/
s_time.eVar32=s_time.getVisitNumCustom('d'); // daily visits
s_time.eVar33=s_time.getVisitNumCustom('w'); // weekly visit
s_time.eVar34=s_time.getVisitNumCustom('m'); // monthly visits
/*----------- 09/20/2011 time parting -----------*/
s_time.prop36 = s_time.eVar31 = s_time.getTimeParting('h','-5',s_time.tiiGetFullYear());
s_time.prop38 = s_time.eVar38 = s_time.getTimeParting('d','-5',s_time.tiiGetFullYear());
s_time.prop37 = s_time.eVar37 = s_time.getTimeParting('w','-5',s_time.tiiGetFullYear());
/*------- URL override - MB - 2/16/2011 ---------*/
s_time.prop17=location.protocol+"//"+location.host+location.pathname;
if(s_time.setFreeTeaserPV) {s_time.events=s_time.events+',event28';}
if(s_time.setFreeFullPV) {s_time.events=s_time.events+',event29';}
if(s_time.setPaidFullPV) {s_time.events=s_time.events+',event30';}
/* MB - 08/16/11 - Added eVar30, also changed to double pipes on 9/22/11 */
//if (typeof (s_time.prop26) != "undefined") {s_time.eVar30=s_time.prop14+'|'+s_time.prop30;}
if (typeof (s_time.prop26) != "undefined") {s_time.eVar30='||'+s_time.prop14+'||'+s_time.prop30+'||';}
}
s_time.doPlugins=s_time_doPlugins
/*********Media Module Calls**************/
s_time.loadModule("Media") // possibly make this conditional
s_time.Media.autoTrack=false; // no auto
s_time.Media.trackWhilePlaying=true; // track while playing
s_time.Media.monitor = function (s,media){}
/*--------------------------------------------------------------------------------------------*/
/* Begin HTML5 Video block                                                                    */
/*--------------------------------------------------------------------------------------------*/
var omniStartFlg=omni50PctFlg=true;var mediaName=videoMMSS='';var omniPauseFlg=false;
var html5Video=new Array;var spinFlg=true;var lastVideoTitle='';var playerName='html5';
if (navigator.userAgent.indexOf('iPad')!=-1){playerName='ipad';}
if (navigator.userAgent.indexOf('iPhone')!=-1){playerName='iphone';}
if (navigator.userAgent.indexOf('iPod')!=-1){playerName='ipod';}
/*--------------------------------------------------------------------------------------------*/				 
function addVideoListeners(){for (i=0;i<document.getElementsByTagName('video').length;i++) {  
html5Video[i]=document.getElementsByTagName('video').item(i); 
html5Video[i].addEventListener('pause',onPause,false);html5Video[i].addEventListener('ended',onComplete,false); 
html5Video[i].addEventListener('seeked',onSeeked,false);html5Video[i].addEventListener('timeupdate',newTimeUpdate,false);}}
/*--------------------------------------------------------------------------------------------*/
function onPause() {omniPauseFlg=true;s_time.Media.stop(mediaName,Math.round(this.currentTime));}
/*--------------------------------------------------------------------------------------------*/
function newTimeUpdate() {if (Math.round(this.currentTime) == 0 && spinFlg) { // first time through zero
if (isNaN(this.duration)) {return;}spinFlg=false;if (!omniPauseFlg) {mediaName = playerName+':'+s_time.prop16+':'+this.id; 
if (this.duration<=15) {omni50PctFlg=false;} else {if (this.duration>=16 && this.duration<=30){} 
if (this.duration>=31 && this.duration<=90) {s_time.Media.trackSeconds=Math.floor(this.duration/5).toString();}
if (this.duration>=91) {s_time.Media.trackSeconds=Math.floor(this.duration/5).toString();}} 
var videoMM=Math.floor(this.duration/60).toString(); // minutes
var videoSS=Math.ceil(this.duration%60).toString();  // seconds 
(videoMM.length==1) ? videoMM='(0'+videoMM : videoMM='('+videoMM;(videoSS.length==1) ? videoSS='0'+videoSS +')' : videoSS=videoSS+')'; 
mediaName=mediaName+' '+videoMM+':'+videoSS;s_time.eVar6=mediaName;s_time.eVar7=playerName+':'+s_time.prop16;  
s_time.Media.open(mediaName,Math.round(this.duration),playerName); // open video 
s_time.Media.trackVars="events,eVar6,eVar7";s_time.Media.trackEvents="event6";s_time.events="event6";  
s_time.Media.play(mediaName,0);s_time.events='';
} else {s_time.Media.play(mediaName,Math.round(this.currentTime));}} // end zero loop 
if (omni50PctFlg && Math.round(this.currentTime) >= Math.round(this.duration/2)) { 
s_time.Media.trackVars="events,eVar6,eVar7";s_time.Media.trackEvents="event7";  
s_time.Media.trackEvents="event7";s_time.events="event7";s_time.Media.track(mediaName);s_time.events='';
omni50PctFlg=false;}}
/*--------------------------------------------------------------------------------------------*/
function onSeeked() {s_time.Media.play(mediaName,Math.round(this.currentTime).toString());}
/*--------------------------------------------------------------------------------------------*/
function onComplete() { /* Omniture 100% milestone */
lastVideoTitle=this.id;omniPauseFlg=false;omni50PctFlg=true;spinFlg=true;
s_time.Media.trackVars="events,eVar6,eVar7";s_time.Media.trackEvents="event8";s_time.Media.trackEvents="event8"; 
s_time.events="event8";s_time.Media.track(mediaName);s_time.Media.stop(mediaName,this.duration); 
s_time.Media.close(mediaName);s_time.events='';}
/*--------------------------------------------------------------------------------------------*/
/* End HTML5 Video block                                                                      */ 
/*--------------------------------------------------------------------------------------------*/
/* 09-23-2008 visit tracking */
s_time.dimo=new Function ("m","y", "var d=new Date(y,m+1,0); return d.getDate();");
s_time.endof=new Function ("x", "var t = new Date(); t.setHours(0); t.setMinutes(0);"
	+"t.setSeconds(0); if(x=='m') d=s_time.dimo(t.getMonth(),t.getFullYear()) - t.getDate() + 1;"
	+"else if(x=='w') d=7-t.getDay(); else d=1; t.setDate(t.getDate()+d); return t;");
s_time.getVisitNumCustom=new Function("tp", ""
+"var s=this,e=new Date(),cval,cvisit,ct=e.getTime(),c='s_vnum_'+tp,c2='sinvisit_'+tp,eo=s_time.endof(tp),"
+"y=eo.getTime();e.setTime(y);cval=s_time.c_r(c);if(cval){var i=cval.indexOf('&vn='),str=cval.substring(i+4,cval.length),k;}"
+"cvisit=s_time.c_r(c2);if(cvisit){if(str){e.setTime(ct+30*60*1000);s_time.c_w(c2,'true',e);return str;}"
+"else return 'unknown visit number';}"
+"else{if(str){str++;k=cval.substring(0,i);e.setTime(k);s_time.c_w(c,k+'&vn='+str,e);e.setTime(ct+30*60*1000);s_time.c_w(c2,'true',e);return str;}"
+"else{s_time.c_w(c,y+'&vn=1',e);e.setTime(ct+30*60*1000);s_time.c_w(c2,'true',e);return 1;}}"
);
/* 08-05-2008 search on submit */
function omniSearch(searchStr) {
if((typeof(searchStr)=='string') && (searchStr!='')) {
var s_time = s_gi(s_account);
s_time.linkTrackVars='events,eVar19';
s_time.linkTrackEvents='event22';
s_time.events='event22';
s_time.eVar19 = searchStr.toLowerCase();
linkName='Search Performed';
s_time.tl(this,'o',linkName);
s_time.linkTrackVars= s_time.linkTrackEvents = 'None';
s_time.eVar19 = s_time.events = '';
}
}
/*------------------------------------------------------------------*/
/* 11-09-2010 user actions */
function omniTrack(desc){
if(typeof(desc)=='undefined')return 0;
var s = s_gi(s_account); 
s_time.linkTrackVars = 'prop20'; 
s_time.linkTrackEvents = 'None'; 
s_time.prop20 = desc;   
s_time.tl(this,'o',desc);
s_time.linkTrackVars = s_time.linkTrackEvents = 'None';
s_time.prop20 = '';
}
/*------------------------------------------------------------------*/
/* MB - 9/19/11 Added generic omni_Tracker function */
function omni_Tracker(omniStr,p1){
var regexp=/View:|UA:/;
if(!regexp.test(omniStr))return 0;
var s=s_gi(s_account);
var omniPgName=s_time.pageName;
var omniSplit=omniStr.indexOf(':');
var omniType=omniStr.substr(0,omniSplit);
var omniDetail=omniStr.substr(omniSplit+1,omniStr.length);
if(omniType=='View'){
if (typeof (p1) != "undefined") {s_time.prop1=p1;}
s_time.pageName=s_time.eVar23=omniDetail.toLowerCase();
s_time.t();}
else if(omniType=='UA'){
s_time.prop20=omniDetail;
s_time.prop24=omniPgName;
s_time.linkTrackEvents='None';
s_time.linkTrackVars='prop20,prop24'; 
s_time.tl(this,'o','omniTracker User Actions:'+omniDetail);
s.linkTrackVars=s.linkTrackEvents='None';
s_time.prop20=s_time.prop24='';}}
/*----------------------------LTV  Block - do not modify------------*/
/* MB - 03/11/08 - Updated LTV to include repeat visit pageviews    */
/*                 Added LTV XID function                           */
/* P R O T O T Y P E                                                */
/*------------------------------------------------------------------*/
var ltv_time=new Date();var ct=ltv_time.getTime();ltv_time.setTime(ct+180*24*60*60*1000); // 180 days expire;
var ccxp=new Date();var cct=ccxp.getTime();ccxp.setTime(cct+30*60*1000); // t + 30 minutes
/*--------------------------- PKW / LTV ----------------------------*/
var cpval1=s_time.getQueryParam('pkw');
var isCamp;if(cpval1){isCamp='LTV:'+cpval1}
var isFtcv=s_time.c_r('s_ftcv');var isVisit=s_time.c_r('s_current');
if((isCamp) && (!isFtcv)){ // pkw and first time
s_time.c_w('s_ftcv',isCamp,ltv_time);s_time.c_w('s_current',isCamp,ccxp);
s_time.events=s_time.apl(s_time.events,'event4',',','1');
s_time.eVar4=isCamp;} // using evar4 for pkw
if(isVisit){s_time.c_w('s_current','cpvisitor',ccxp)}
if((isFtcv) && (!isVisit)){ // repeat - not first time or visit
s_time.events=s_time.apl(s_time.events,'event3',',','1');
s_time.events=s_time.apl(s_time.events,'event5',',','1');} 
/*--------------------------- XID / LTV ----------------------------*/
var cpval1x=s_time.getQueryParam('xid');
var isCampx;if(cpval1x){isCampx='XIDLTV:'+cpval1x}
var isFtcvx=s_time.c_r('s_ftcv_xl');var isVisitx=s_time.c_r('s_current_xl');
if((isCampx) && (!isFtcvx)){ // xid and first time
s_time.c_w('s_ftcv_xl',isCampx,ltv_time);
s_time.c_w('s_current_xl',isCampx,ccxp);
s_time.events=s_time.apl(s_time.events,'event16',',','1')
s_time.eVar5=isCampx;} // using eVar5 for xid
if(isVisit){s_time.c_w('s_current_xl','cpvisitor',ccxp)}
if((isFtcvx) && (!isVisitx)){
s_time.events=s_time.apl(s_time.events,'event15',',','1');
s_time.events=s_time.apl(s_time.events,'event17',',','1');} 
/*-----------------------------------End LTV Block-------------------*/	
function omniActionTracker(desc) {
var ue_Event='event23';
var s = s_gi(s_account);
s_time.linkTrackVars='events';  
s_time.linkTrackEvents=ue_Event;  
s_time.events=ue_Event;   
s_time.tl(this,'o','Link Clicks: '+desc);
s_time.linkTrackVars=s_time.linkTrackEvents='None';
s_time.events = '';  
}
/*---------------------Page View Tracking------------------*/	
function omniPgTracker(desc) {
if ((typeof(desc)!='string') || (typeof(s_account)!='string')) return 0;
var s_time = s_gi(s_account);
s_time.pageName = desc;
omnitureHookFunction();
s_time.t();
}
/*--------------------------------------------------------------------------*/
function omniFlyOutTracker(desc,p2) {
var s_time = s_gi(s_account); 
if (desc=='close'||desc=='next'||desc=='previous') {
s_time.linkTrackVars=s_time.linkTrackEvents='None';
s_time.tl(this,"o","Fly-Out: "+ desc);
return;}
if (desc=='image_click'||desc=='headline_click'||desc=='cta_click') {// clicks
if (typeof(p2)!='string') p2='no headline value specified';			
s_time.linkTrackVars="events,eVar13";
s_time.linkTrackEvents=s_time.events="event34";
s_time.eVar13=p2;
s_time.tl(this,"o","Fly-Out: "+ desc);
s_time.eVar13='';
return;}
if (desc=='impression') {// impressions
if (typeof(p2)!='string') p2='no headline value specified';			
s_time.linkTrackVars="events,eVar13";
s_time.linkTrackEvents=s_time.events="event33";
s_time.eVar13=p2;
s_time.tl(this,"o","Fly-Out: "+ desc);
s_time.eVar13='';
}
}
