/* trackLink("2154:341564:1", "http://www.tbs.com/shows/houseofpayne","flash")
^^^^^^^^^^^ url
^ -- arbirtrary sequence: 0-4
^^^^^ --- franchiseId
^^^^ ---- positionId
*/
function trackLink(position,linkUrl,referralApp) {
var s=s_gi(s_account);
s.usePlugins=false; // must use this or prop12 and eVar13 will get over-ridden by the plugins code.
/* determine if this is an offsite link */
var isOffsiteLink = false;
//linkUrl = linkUrl.trim();
// if starts with http then check to see if external link
if (linkUrl.indexOf('http://') == 0) {
// parse the linkUrl to get domain
var pathArray = linkUrl.split('/');
var domain = pathArray[2];
domain = domain.replace("www","");
// compare domain with s.linkInternalFilters
// if domain does not exist in s.linkInternalFilters then we assume it's offsite link
var internalFilters = s.linkInternalFilters;
if (internalFilters.indexOf(domain) == -1) {
isOffsiteLink = true;
}
} else {
// otherwise assume internal link
isOffsiteLink = false;
}
/* add the position to the URL as IREF */
var hasQpArray = linkUrl.split('?');
var linkUrlWithIref = linkUrl;
if (hasQpArray[1] != '' && hasQpArray[1] != null) {
linkUrlWithIref += "&iref=" + position;
} else {
linkUrlWithIref += "?iref=" + position;
}
/* Omniture tracking code */
if (isOffsiteLink == true) {
/* if offsite link */
// alert ('is OFFSITE LINK' );
s.linkTrackVars='None';
s.linkTrackEvents='None';
s.trackExternalLinks=false; /* suppresses auto-exitLink-tracking */
s.tl(linkUrlWithIref,'e',position + ":" + linkUrl);
if (referralApp == "flash") {
document.location.href = linkUrlWithIref;
} else {
return true;
}
} else {
/* if onsite link */
// alert ('NOT offsiteLink' );
/* redirect to linkUrl */
document.location.href = linkUrlWithIref;
return false;
}
}
/**
* this is to track a generic metric. Modeled it after the CVP video configs, so that it's re-usable.
* Usage:	trackGeneric(metrics={pageName:'/2010/FilmFestival/Events',
channel:'/2010/FilmFestival/'});
Track MircoAction Usage:
trackGeneric(metrics={prop16:'FamilyGuyness:<socialnetworkName>'},'FamilyGuyness:<socialnetworkName>')})
*/
function trackGeneric(metrics, linkName) {
var s=s_gi(s_account);
s.events = '' ;
s.linkTrackVars = '';
s.linkTrackEvents = '';
if (metrics.pageName) {
s.pageName = metrics.pageName;
s.linkTrackVars += 'pageName';
}
if (metrics.channel) {
s.channel = metrics.channel;
s.linkTrackVars += 'channel';
}
if (metrics.server) {
s.server = metrics.server;
s.linkTrackVars += 'server';
}
if (metrics.prop1) {
s.prop1 = metrics.prop1 ;
s.linkTrackVars += 'prop1';
}
if (metrics.prop2) {
s.prop2 = metrics.prop2 ;
s.linkTrackVars += 'prop2';
}
if (metrics.prop3) {
s.prop3 = metrics.prop3 ;
s.linkTrackVars += 'prop3';
}
if (metrics.prop4) {
s.prop4 = metrics.prop4 ;
s.linkTrackVars += 'prop4';
}
if (metrics.prop5) {
s.prop5 = metrics.prop5 ;
s.linkTrackVars += 'prop5';
}
if (metrics.prop6) {
s.prop6 = metrics.prop6 ;
s.linkTrackVars += 'prop6';
}
if (metrics.prop7) {
s.prop7 = metrics.prop7 ;
s.linkTrackVars += 'prop7';
}
if (metrics.prop8) {
s.prop8 = metrics.prop8 ;
s.linkTrackVars += 'prop8';
}
if (metrics.prop9) {
s.prop9 = metrics.prop9 ;
s.linkTrackVars += 'prop9';
}
if (metrics.prop10) {
s.prop10 = metrics.prop10 ;
s.linkTrackVars += 'prop10';
}
if (metrics.prop11) {
s.prop11 = metrics.prop11 ;
s.linkTrackVars += 'prop11';
}
if (metrics.prop12) {
s.prop12 = metrics.prop12 ;
s.linkTrackVars += 'prop12';
}
if (metrics.prop13) {
s.prop13 = metrics.prop13 ;
s.linkTrackVars += 'prop13';
}
if (metrics.prop14) {
s.prop14 = metrics.prop14 ;
s.linkTrackVars += 'prop14';
}
if (metrics.prop15) {
s.prop15 = metrics.prop15 ;
s.linkTrackVars += 'prop15';
}
if (metrics.prop16) {
s.prop16 = metrics.prop16 ;
s.linkTrackVars += 'prop16';
}
if (metrics.prop17) {
s.prop17 = metrics.prop17 ;
s.linkTrackVars += 'prop17';
}
if (metrics.prop18) {
s.prop18 = metrics.prop18 ;
s.linkTrackVars += 'prop18';
}
if (metrics.prop19) {
s.prop19 = metrics.prop19 ;
s.linkTrackVars += 'prop19';
}
if (metrics.prop20) {
s.prop20 = metrics.prop20 ;
s.linkTrackVars += 'prop20';
}
if (metrics.eVar1) {
s.eVar1 = metrics.eVar1 ;
s.linkTrackVars += 'eVar1';
}
if (metrics.eVar2) {
s.eVar2 = metrics.eVar2 ;
s.linkTrackVars += 'eVar2';
}
if (metrics.eVar3) {
s.eVar3 = metrics.eVar3;
s.linkTrackVars += 'eVar3';
}
if (metrics.eVar4) {
s.eVar4 = metrics.eVar4;
s.linkTrackVars += 'eVar4';
}
if (metrics.eVar5) {
s.eVar5 = metrics.eVar5 ;
s.linkTrackVars += 'eVar5';
}
if (metrics.eVar6) {
s.eVar6 = metrics.eVar6 ;
s.linkTrackVars += 'eVar6';
}
if (metrics.eVar7) {
s.eVar7 = metrics.eVar7 ;
s.linkTrackVars += 'eVar7';
}
if (metrics.eVar8) {
s.eVar8 = metrics.eVar8 ;
s.linkTrackVars += 'eVar8';
}
if (metrics.eVar9) {
s.eVar9 = metrics.eVar9 ;
s.linkTrackVars += 'eVar9';
}
if (metrics.eVar10) {
s.eVar10 = metrics.eVar10 ;
s.linkTrackVars += 'eVar10';
}
if (metrics.eVar11) {
s.eVar11 = metrics.eVar11 ;
s.linkTrackVars += 'eVar11';
}
if (metrics.eVar12) {
s.eVar12 = metrics.eVar12 ;
s.linkTrackVars += 'eVar12';
}
if (metrics.eVar13) {
s.eVar13 = metrics.eVar13 ;
s.linkTrackVars += 'eVar13';
}
if (metrics.eVar14) {
s.eVar14 = metrics.eVar14 ;
s.linkTrackVars += 'eVar14';
}
if (metrics.eVar15) {
s.eVar15 = metrics.eVar15 ;
s.linkTrackVars += 'eVar15';
}
if (metrics.eVar16) {
s.eVar16 = metrics.eVar16 ;
s.linkTrackVars += 'eVar16';
}
if (metrics.eVar17) {
s.eVar17 = metrics.eVar17 ;
s.linkTrackVars += 'eVar17';
}
if (metrics.eVar18) {
s.eVar18 = metrics.eVar18 ;
s.linkTrackVars += 'eVar18';
}
if (metrics.eVar19) {
s.eVar19 = metrics.eVar19 ;
s.linkTrackVars += 'eVar19';
}
if (metrics.eVar20) {
s.eVar20 = metrics.eVar20 ;
s.linkTrackVars += 'eVar20';
}
if (metrics.events) {
s.events = metrics.events ;
s.linkTrackVars += 'events';
s.linkTrackEvents = metrics.events;
}
if (linkName) {
s.tl(linkName,'o',linkName);
} else {
//track
s.t();
}
}
/* this is tracking as pageview
* Best used when DHTML is used to change main content of page.
* Example: http://www.tcm.com/festival/
* Usage:	trackBasicPage(metrics = {pageName:'/2010/FilmFestival/Events', channel:'/2010/FilmFestival/'})
* Alt Usage: if the page level tracking already sets "channel", and you want to keep it the same with this metrics, then you can leave it off like this:
*	trackBasicPage(metrics = {pageName:'/2010/FilmFestival/Events'})
*
*/
function trackBasicPage(metrics) {
var s=s_gi(s_account);
s.pageName=metrics.pageName; // pagename
s.eVar1=metrics.pageName; // pagename - mirrored
s.prop1 = metrics.prop1; // franchise
s.eVar8 = metrics.prop1; // franchise - mirrored
if (null != metrics.channel && "" != metrics.channel) {
s.channel=metrics.channel; // section
s.eVar10=s.channel; // section - mirrored
if (null != metrics.server && "" != metrics.server) {
s.server=metrics.channel + ":" + metrics.server;
}
}
s.events = "event1";
s.prop20=window.location.href;
s.linkTrackVars='pageName,channel,eVar1,server,prop1,eVar8,events,prop20';
// s.linkTrackEvents='event1';
// s.events='event1'; // pageView
//track
s.t();
}
