
function BestofSectionTracker(fullpath, section, bgcolor) {
	
    var me;
    if (this.constructor == BestofSectionTracker){
        me = this;
    }else{
        me = arguments[arguments.length-1];
    }
	
	me.displayCount = false;
	me.displayPercent = true;
	me.displayLabel = true;
	me.numberDays = 28; //1-30
	me.clickOffSet = 10;
	// -----------

	me.url = encodeURIComponent( document.location.href );
	me.listeners = [];
	
	
	
	me.addBestofTracking = function(){
		if (!document.getElementsByTagName) return false;
	
		// find divs in document 
		//divs = document.getElementsByTagName('a');
		divs = document.getElementsByTagName('div');
	
		// if link does have a id add one
		for (var i = 0; i < divs.length; i++) {
			if(divs[i].id == 'skin'){
				me.addEvent( divs[i], 'mouseover', me.recordMouseover, false );
			}
		}
	}
	
	me.recordMouseover = function(e) {	
		// records click information using ajax		
		
		source = me.findSourceElement(e);
		
		var tag = source.tagName;		
		var id,target
		//alert(source);
		
		if(tag == 'DIV'){
			id = source.getAttribute('id');	
			//alert( 'div: '+ id);
		}
		
		
		if(id == 'header-best-of-tracker' || id == 'body-contents-bestof-tracker' || id == 'right-main-bestof-tracker' || id == 'mainInner' || id=='skin'){	
			
			// load default bestof section
			
			if( active_best_of_section != section){
				showBestOfSection(fullpath, section, bgcolor);
			}
		}
	
		
	}
	
	me.addEvent = function( elm, evType, fn, useCapture ) {
		// Updated version which captures passed events 
		if (elm.AddEventListener) 
		{ 
			elm.AddEventListener(evType, fn, useCapture); 
			return true; 
		} else if (elm.attachEvent) { 
			var r = elm.attachEvent('on' + evType, fn);
			me.listeners[me.listeners.length] = [ elm, evType, fn ];
			return r; 
		} else {
			var xEventFn = elm['on' + evType];
			if (typeof elm['on' + evType] != 'function') 
			{
				elm['on' + evType] = fn;
			} else {
				elm['on' + evType] = function(e) { xEventFn(e); fn(e); };
			}
		}
	}
	
	me.unload = function(){
		// page unload event which removes circular references
		// that may cause memory leaks in IE 5/6
		if( window.attachEvent ){
			for (var i = 0; i < me.listeners.length; i++) {
				me.listeners[i][0].detachEvent( 'on' + me.listeners[i][1], me.listeners[i][2] );
			}
		}
	}
	
	me.findSourceElement = function(e) {		
		
		//alert(e.target.id)
		
		// finds event source
		if (typeof e == 'undefined')
			var e = window.event;
		
		var source;
		if (typeof e.target != 'undefined') 
		{
			source = e.target;
		} else if (typeof e.srcElement != 'undefined') {
			source = e.srcElement;
		} else {
			return true;
		}

		if (source.nodeType == 3){
			source = source.parentNode;
		}
		
		return source;
	}
	
	
	
	me.loadSkin = function(){
		// load the skin
		me.initSkin();
		document.getElementById('skin').style.background = skinBkgColor + ' url('+ skinPath + ') no-repeat scroll center top ';	
	}
	
	
	me.initSkin = function(){
		// initialize the skin clickable height and width 			
		document.getElementById('skin').style.height = document.documentElement.scrollHeight + 'px';
		document.getElementById('skin').style.width =  document.documentElement.scrollWidth + 'px';		
		document.getElementById('skin').style.cursor = 'pointer';
		document.getElementById('mainInner').style.cursor = 'default';			
	}
	
	//------------------------------------------
	

	me.addEvent( window, 'load', me.addBestofTracking, false );
	me.addEvent( window, 'unload', me.unload, false );

}
/*
function BestofSectionTracker(fullpath, section) {
	
    var me;
    if (this.constructor == BestofSectionTracker){
        me = this;
    }else{
        me = arguments[arguments.length-1];
    }
	
	me.displayCount = false;
	me.displayPercent = true;
	me.displayLabel = true;
	me.numberDays = 28; //1-30
	me.clickOffSet = 10;
	// -----------

	me.url = encodeURIComponent( document.location.href );
	me.listeners = [];
	
	
	
	me.addBestofTracking = function(){
		if (!document.getElementsByTagName) return false;
	
		// find divs in document 
		//divs = document.getElementsByTagName('a');
		divs = document.getElementsByTagName('div');
	
		// if link does have a id add one
		for (var i = 0; i < divs.length; i++) {
			if(divs[i].id == 'skin'){
				me.addEvent( divs[i], 'mouseout', me.recordMouseout, false );
			}
		}
	}
	
	me.recordMouseout = function(e) {	
		// records click information using ajax		
		
		source = me.findSourceElement(e);
		
		var tag = source.tagName;		
		var id,target
		//alert(source);
		
		if(tag == 'DIV'){
			id = source.getAttribute('id');	
			//alert( 'div: '+ id);
		}
		
		
		if(id == 'bestof_section_detail'){	
			
			// load default bestof section
			if( active_best_of_section != section){
				showBestOfSection(fullpath, section);
			}
		}
	
		
	}
	
	
	me.beenMouseout = function( obj ) {
		
		//alert( obj.responseText );
	}
	
	me.addEvent = function( elm, evType, fn, useCapture ) {
		// Updated version which captures passed events 
		if (elm.AddEventListener) 
		{ 
			elm.AddEventListener(evType, fn, useCapture); 
			return true; 
		} else if (elm.attachEvent) { 
			var r = elm.attachEvent('on' + evType, fn);
			me.listeners[me.listeners.length] = [ elm, evType, fn ];
			return r; 
		} else {
			var xEventFn = elm['on' + evType];
			if (typeof elm['on' + evType] != 'function') 
			{
				elm['on' + evType] = fn;
			} else {
				elm['on' + evType] = function(e) { xEventFn(e); fn(e); };
			}
		}
	}
	
	me.unload = function(){
		// page unload event which removes circular references
		// that may cause memory leaks in IE 5/6
		if( window.attachEvent ){
			for (var i = 0; i < me.listeners.length; i++) {
				me.listeners[i][0].detachEvent( 'on' + me.listeners[i][1], me.listeners[i][2] );
			}
		}
	}
	
	me.findSourceElement = function(e) {		
		
		//alert(e.target.id)
		
		// finds event source
		if (typeof e == 'undefined')
			var e = window.event;
		
		var source;
		if (typeof e.target != 'undefined') 
		{
			source = e.target;
		} else if (typeof e.srcElement != 'undefined') {
			source = e.srcElement;
		} else {
			return true;
		}

		if (source.nodeType == 3){
			source = source.parentNode;
		}
		
		return source;
	}
	
	
	
	me.loadSkin = function(){
		// load the skin
		me.initSkin();
		document.getElementById('skin').style.background = skinBkgColor + ' url('+ skinPath + ') no-repeat scroll center top ';	
	}
	
	
	me.initSkin = function(){
		// initialize the skin clickable height and width 			
		document.getElementById('skin').style.height = document.documentElement.scrollHeight + 'px';
		document.getElementById('skin').style.width =  document.documentElement.scrollWidth + 'px';		
		document.getElementById('skin').style.cursor = 'pointer';
		document.getElementById('mainInner').style.cursor = 'default';			
	}
	
	//------------------------------------------
	

	me.addEvent( window, 'load', me.addBestofTracking, false );
	me.addEvent( window, 'unload', me.unload, false );

}*/