

var toppos;
var leftpos;

 function getCurrentCenterPosition(){
	var arrPageSizes = ___getPageSize();
	var arrPageScroll = ___getPageScroll();			
	// Calculate top and left offset for the jquery- div object and show it
	var centery = parseInt(arrPageScroll[1] + (arrPageSizes[3] / 2));
	var centerx = parseInt(arrPageSizes[2]/2 - 200);
	
	$('#notifyPopup_ctl').css({
		top:	centery+'px',
		left:	centerx+'px'
	});
	
	$('#notifyPopup_ctl').prependTo('#container');
	
}

/**
 / THIRD FUNCTION
 * getPageSize() by quirksmode.com
 *
 * @return Array Return an array with page width, height and window width, height
 */
function ___getPageSize() {
	var xScroll, yScroll;
	if (window.innerHeight && window.scrollMaxY) {	
		xScroll = window.innerWidth + window.scrollMaxX;
		yScroll = window.innerHeight + window.scrollMaxY;
	} else if (document.body.scrollHeight > document.body.offsetHeight){ // all but Explorer Mac
		xScroll = document.body.scrollWidth;
		yScroll = document.body.scrollHeight;
	} else { // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari
		xScroll = document.body.offsetWidth;
		yScroll = document.body.offsetHeight;
	}
	var windowWidth, windowHeight;
	if (self.innerHeight) {	// all except Explorer
		if(document.documentElement.clientWidth){
			windowWidth = document.documentElement.clientWidth; 
		} else {
			windowWidth = self.innerWidth;
		}
		windowHeight = self.innerHeight;
	} else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode
		windowWidth = document.documentElement.clientWidth;
		windowHeight = document.documentElement.clientHeight;
	} else if (document.body) { // other Explorers
		windowWidth = document.body.clientWidth;
		windowHeight = document.body.clientHeight;
	}	
	// for small pages with total height less then height of the viewport
	if(yScroll < windowHeight){
		pageHeight = windowHeight;
	} else { 
		pageHeight = yScroll;
	}
	// for small pages with total width less then width of the viewport
	if(xScroll < windowWidth){	
		pageWidth = xScroll;		
	} else {
		pageWidth = windowWidth;
	}
	//alert('pgeWidth: '+ pageWidth + ' pageHeight:'+pageHeight+' windowWidth:'+windowWidth + ' windowHeight:'+windowHeight);
	arrayPageSize = new Array(pageWidth,pageHeight,windowWidth,windowHeight) 
	return arrayPageSize;
}
		
		
/**
 THIRD FUNCTION
 * getPageScroll() by quirksmode.com
 *
 * @return Array Return an array with x,y page scroll values.
 */
function ___getPageScroll() {
	var xScroll, yScroll;
	
	if (self.pageYOffset) {
		yScroll = self.pageYOffset;
		xScroll = self.pageXOffset;				
	} else if (document.documentElement && document.documentElement.scrollTop) {	 // Explorer 6 Strict
		yScroll = document.documentElement.scrollTop;
		xScroll = document.documentElement.scrollLeft;
		
	} else if (document.body) {// all other Explorers
		yScroll = document.body.scrollTop;
		xScroll = document.body.scrollLeft;
		
	}
	arrayPageScroll = new Array(xScroll,yScroll) 
	return arrayPageScroll;
}	  
//use this function to reattach the event onmouseover		
function attachPosterinfoEvent(){

	$("#discussionpostpanel .flyoutlink").mouseover(function(e){
			//console.log("mouseover"	);
			if($("#informationPopup_ctl").css("display")=='none'){				
				if(e.pageX || e.pageY){
		    		posx=e.pageX; posy=e.pageY;
		   		  }else if(e.clientX || e.clientY){    		
		        		posx=e.clientX+document.documentElement.scrollLeft;
		        		posy=e.clientY+document.documentElement.scrollTop;        	
		        }
		        
			  	toppos = posy+20+'px';
				leftpos = posx-140+'px';
				
				//console.log("top pos " + toppos + ", " + leftpos );
				var cssObj = {top: toppos,left: leftpos}
				$("#informationPopup_ctl").css(cssObj);			
			}
	});
}

//use this function to reattach the event onmouseover		
function attachimageZoomEvent(){
	var imagetoppos;
	var imageleftpos;
	$("#topicImage").click(function(e){	
			$(this).parent().parent().addClass("highlight");
			if($("#imageZoomPopup_ctl").css("display")=='none'){
				if(e.pageX || e.pageY){
		    		posx=e.pageX; 
		    		posy=e.pageY;
		   		  }else if(e.clientX || e.clientY){    		
		        		posx=e.clientX+document.documentElement.scrollLeft;
		        		posy=e.clientY+document.documentElement.scrollTop;
		        }		        
		        
			  	toppos = posy+'px';
				leftpos = (posx-125)+'px';
			}			
			var cssObj = {top: toppos,left: leftpos, width:'100%'};
			$("#imageZoomPopup_ctl").css(cssObj);			
		});
		
	//use this function to reattach the event onmouseover		
	$(".itemThumbnail .flyoutlink").click(function(){

 			tempid = $(this).parents('.itemBlock')[0].id;
			//set top left position based on which link was clicked
			if( tempid != "" ){				
				itemid = tempid.substring(1,tempid.length);
				
				qc.pA('TopicView', 'pxyShowItemImage', 'QClickEvent', itemid, '');

				var cssObj = {top: toppos,left: leftpos};
				$("#imageZoomPopup_ctl").css(cssObj);
				
				return false;
			}
		});
		
	$(".itemThumbnail .flyoutlink").mouseover(function(e){	
			$(this).parent().parent().addClass("highlight");
			if($("#imageZoomPopup_ctl").css("display")=='none'){
				if(e.pageX || e.pageY){
		    		posx=e.pageX; 
		    		posy=e.pageY;
		   		  }else if(e.clientX || e.clientY){    		
		        		posx=e.clientX+document.documentElement.scrollLeft;
		        		posy=e.clientY+document.documentElement.scrollTop;
		        }		        
		        
			  	toppos = posy+'px';
				leftpos = (posx-20)+'px';
			}
			//alert("toppos: "+toppos+","+"leftpost: "+leftpos);
			//$("#imageZoomPopup_ctl").appendTo("#container");			
		});
	$(".itemThumbnail .flyoutlink").mouseout(function(){$(this).parent().parent().removeClass("highlight");});
}

//attach the event on the body to close the flyoutwindow
function attachCloseFlyoutEvent(){	
	$('body').click(function(){		
		$("#informationPopup_ctl").hide();
		$("#imageZoomPopup_ctl").hide();
		$('body').unbind('click');
	});
	
	//cancel the click event on the flyout window
	$("#informationPopup_ctl").click(function(event){
	  event.stopPropagation();
	});
	
	//cancel the click event on the flyout window
	$("#imageZoomPopup_ctl").click(function(event){
	  event.stopPropagation();
	});
	
	
}

 $(document).ready(function() { 	 	  
       
 		attachimageZoomEvent();
		
		attachPosterinfoEvent();
 });
