//Guidester Tracker
_gsTrack = {
    _ver:'1.0',
    lang:'en',
    locale:'US',
    type:'Track',
    _id:'',
    _sid:'4387101',
    jsRoot:'',
    tRoot:'http://track.guidester.com/tag/',
    tRoots:'https://track.guidester.com/tag/',
    tags:['a'],
    attributes:['href'],
    sessionID:'',
    _pageID:'',
    _misc:'',
    _pct:'',
    _ul:1500,
    _ii:[],
    _ep:[],
    _debug:0, // for test only
    
    load:function(id){
            var v = this;
            var w = _gsTrack.lib;
            v._pID();
            v._id = id;
            v._pct = document.location.protocol;
            try {
                var s = id.split("-");
                    v.locale = s[0];
                    v._sid = s[1];
                    v.lang = s[2];
            }
            catch(ex){};
            _gsTrack._start();  
    },
    _start:function(b){
           var v = _gsTrack;
           var _ws = "";
           _dt = function(){
                    v._tp();
                    v._ti();
           };
           _st = function(){
                 _dt();
           };
          _st();
    },
    _pID:function(){
        var r, i, j;
        var _d = new Date()
        r = '';
        for(j=0; j<10; j++)
        {
            i = Math.floor(Math.random()*16).toString(16).toUpperCase();   
            r = r + i;
        }  
        this._pageID = r + _d.getTime().toString(16).toUpperCase();
    },
    _iii:function(){
        var v = this;
        var l = v._ii.length;
        v._ii[l] = new Image();
        return v._ii[l];
    },
    _tp:function(){
        var v = _gsTrack;
        var w = _gsTrack.lib;
        var d = document;
        var r = v.tRoot;
        _gP = function(){
            return "_pt.gif?|sid=" + v._sid + "|id=" + v._id + "|pk=" + v._pageID + "|ses=" + v.sessionID + "|dom=" + d.domain + "|title=" + d.title + "|ran=" + Math.floor(Math.random()*123456) + "|path=" + w._gUP("p") + "|ref=" + d.referrer;
        }
        if (v._pct == "https")
            r = v.tRoots;
        var _ps = r+_gP();
        v._iii().src = _ps;
        if (v._debug) alert(_ps);
    },
    _ti:function ()
    {
        var v = _gsTrack;
        var w = _gsTrack.lib;
        var c,a,_e,_d,_s,r,l,rl;
        var ip = "~";
        l = 0;
        _gI = function(pi){
            return "_it.gif?|sid="+v._sid+"|pk="+v._pageID+"|ses="+v.sessionID+"|pp="+pi.substring(1,pi.length-1)+"|ran="+Math.floor(Math.random()*123456);
        };
        function _it(ip){
                var r = v.tRoot;
                if (v._pct == "https")
                    r = v.tRoots;
                var _is = r+_gI(ip);
                if (v._debug) alert(_is);
                v._iii().src = _is;
        };
        try {
            for (it in v.tags)
            {
                c = w._gTN(v.tags[it]);
                a = v.attributes;
                for (var i=0;i<c.length;i++)
                {
                    for (var j=0;j<a.length;j++)
                    {
                        if ((a[j] in c[i]) && (c[i][a[j]].toLowerCase().indexOf("/product/")>-1))
                        {    
                            _s = c[i][a[j]];
                            _s = _s.substring(_s.lastIndexOf("/")+1,_s.lastIndexOf(".htm"));
                            if (_s != "" && ip.indexOf("~"+_s+",") == -1)
                            {
                                    l++;
                                    _s += ","+l;
                                    ip += _s+"~";
                                    v._ep.push(_s);
                            }
                            if (ip.length > v._ul)
                            {
                                _it(ip);
                                ip = "~";
                            }
                            if (c[i].attachEvent) {
                                    c[i].attachEvent("onclick",_gsTrack._tc);
                            } else if (c[i].addEventListener) {
                                    c[i].addEventListener("click",_gsTrack._tc,false);
                            }
                            break;
                        }
                    }
                }
            };
            if (ip.length > 1)
                _it(ip);
        }
        catch (ex) {
            v._te("err_imp",v._sid);
        }
    },
    _tc:function(evt){
        var v = _gsTrack;
        var w = _gsTrack.lib;
        var a = v.attributes;
        var e =w._gEE(evt);
        var _id = "";
        var _i,_p,_e,_d,_t;
        _t = "txt";
        if (e.tagName == "IMG")
        {
            _t = "img";
            if (e.src.toLowerCase().indexOf("infobuy") > -1)
                _t = "info";
        }    
        while ((e.tagName != "A") && e.parentNode)
        {
            e = e.parentNode;
        }
        _gC = function(){
                return "_ci.gif?|sid="+v._sid+"|pk="+v._pageID+"|ses="+v.sessionID+"|pid="+_p+"|pos="+_i+"|gt=opt|pt="+_t+"|misc=|ran=" + Math.floor(Math.random()*123456);
        }
        _ct = function(){
            var s;
            try {
                for (var j=0;j<a.length;j++)
                {    
                    if (a[j] in e)
                    {
                        var _s = e[a[j]];
                            _e = _s.substring(_s.lastIndexOf("/")+1,_s.lastIndexOf(".htm"));
                        for (var i=0;i<v._ep.length;i++)
                        {
                            s = v._ep[i].split(",");
                            if (s[0] == _e)
                            {
                                _p = s[0];
                                _i = s[1];
                                i = v._ep.length;
                            }
                        }
                        var r = v.tRoot;
                        if (v._pct == "https")
                            r = v.tRoots;  
                        var _cs = r+_gC(); 
                        if (v._debug) alert(_cs);
                        v._iii().src = _cs;
                    }
                }
            }
            catch(ex){
                v._te("err_click",v._sid);
            }
        };
        _ct();
    },
    _te:function(t,s){
        var v = this;
        var r = v.tRoot;
        if (v._pct == "https")
            r = v.tRoots;  
        var _es = r+"_ei.gif?|sid="+v._sid+"|pk="+v._pageID+"|ses="+v.sessionID+"|type="+t+"|eids="+s+"|ran=" + Math.floor(Math.random()*123456);; 
        if (v._debug) alert(_es);
        v._iii().src = _es;
    }
};

//git library
_gsTrack.lib = {
    //get by TagName
    _gTN:function(n){
        var d = document;
        return d.getElementsByTagName(n);
    },
    //get URL or Path(p)
    _gUP:function(p){
	        var r = window.location.href;
	        var e = new RegExp("http://|https://", "gi");
	        r = r.replace(e, "");
	        d = r.indexOf("/");
	        if (p == "p")
	            return r.substring(d); 
	        return r;   															
    },
    //get Event Source
    _gEE:function(evt){
	       var e = (evt)?evt:(window.event)?window.event:"";
	       if (!e) return "";
	       var el = (e.target)?e.target:(e.srcElement)?e.srcElement:"";
	       return el;
    }
}

_gsTrack.load("US-4387101-EN");