jQuery(document).ready(function() {
	
	var checkInterval = 3; // 3 second check
	intervalId = setTimeout("doReadCheck()",checkInterval*1000);
	
	jQuery(window).bind("resize", function() {
  		clearTimeout(intervalId);
		intervalId = setTimeout("doReadCheck()",checkInterval*1000);  		
	});
	jQuery(window).bind("scroll", function() {
  		clearTimeout(intervalId);
		intervalId = setTimeout("doReadCheck()",checkInterval*1000);  		
	});	
		
});

function doReadCheck() {
	jQuery(".blogdiv").each(function() {
		var dh = jQuery(this).height();
		var dy = jQuery(this).offset().top + (dh/2);
		var wh = getViewportHeight(); // jquery height function is broken
		var sh = jQuery(window).scrollTop();
		var oh = dy-sh;
		var fired = 0
		if ((oh>0) && (oh<=wh)) {
			// jQuery(this).css("background-color","orange");
			// capture ID
			 var blogid = jQuery(this).attr("id");
			 
			 // fire event
			 jQuery.post("/plugins/servlet/metricsservlet?blogid="+blogid);
			 
			// change class name
			jQuery(this).removeClass("blogdiv").addClass("blogdivread");
		}
		else
		{
			// jQuery(this).css("background-color","white");
		}
	});
}
function getViewportHeight() { 
	// JQuery's jQuery(window).height() is broken, this is a temp replacement.
	if ((jQuery.browser.mozilla||jQuery.browser.opera) && jQuery(document).width()>self.innerWidth) 
	{
		return self.innerHeight;
	}
	else
	{
		return self.innerHeight||jQuery.boxModel&&document.documentElement.clientHeight||document.body.clientHeight;
	}  
}
