﻿/* Dynamic Hitbox Code */

var _hbEC=0,_hbE=new Array;function _hbEvent(a,b){b=_hbE[_hbEC++]=new Object();b._N=a;b._C=0;return b;}
var hbx=_hbEvent("pv");hbx.vpc="HBX0100u";hbx.gn="ehg-wizardsofthecoast.hitbox.com";

hbx.pndef ="title";
hbx.ctdef ="full";
hbx.seg = ""; 
hbx.fnl = ""; 
hbx.cmp="";
hbx.cmpn = getQueryVariable("cmp");
hbx.dcmp = getQueryVariable("dcmp");
hbx.dcmpn="";
hbx.dcmpe="";
hbx.dcmpre="";
hbx.hra="";
hbx.hqsr="";
hbx.hqsp="";
hbx.hlt="";
hbx.hla="";
hbx.gp="";
hbx.gpn="";
hbx.hcn="";
hbx.hcv="";
hbx.cp="null";
hbx.cpd="";

/* Page configured values. */

if(typeof hbxPageName != 'undefined')
{
    hbx.pn = hbxPageName;
}

if (typeof hbxMultiLevelContentCategory != 'undefined')
{
    hbx.mlc = hbxMultiLevelContentCategory;
}

if (typeof hbxAccountNumbers != 'undefined')
{
    hbx.acct = hbxAccountNumbers;
}

/* Link Tracking Functions */

function MakeHitboxRequest(control, campaignCode, hbxcc, hbxpn, hbxan, image)
{
    var hitboxImage = 'http://ehg-wizardsofthecoast.hitbox.com/HG?hb=' + hbxan + '&cd=1&hv=6&ce=y&n=/' + hbxpn + '&vcon=/' + hbxcc + '&date=' + new Date().getTime();
    
    setTimeout(function() { 
        image.src = hitboxImage;
    }, 0);
}

function SetupHitboxLinks()
{
    var links = $$('a[rel]');
    
    for(var i = 0; i < links.length; i++)
    {
        var link = links[i];
        var relData = link.rel;
        
        if(relData != null && relData != '')
        {
            var relSplit = relData.split(',');
            var pageName = link.innerHTML.replace(/ /, '+');
            var campaignCode = relData;
            var contentCategory = hbxMultiLevelContentCategory + '/' + campaignCode + '/' + hbxPageName;
            
            if(relSplit.length == 2)
            {
                campaignCode = relSplit[0];
                pageName = relSplit[1].replace(/ /, '+');
                                
                contentCategory = hbxMultiLevelContentCategory + '/' + campaignCode + '/' + hbxPageName;
            }            
            
            link.observe('click', MakeHitboxRequest.bindAsEventListener(this, campaignCode, contentCategory, pageName, hbxAccountNumbers, new Image()));    
        }
    }    
}

Event.observe(window, 'load', SetupHitboxLinks);
