/**************************************************************************************************************************/
/**************************************************************************************************************************/
/**************************************************************************************************************************/
/**************************************************************************************************************************/
/*
Copyright 2006-2010 Malek Nasser and iFLYER.tv All rights reserved. Distribution or
reuse of any part of this code without express written consent from
Malek Nasser and iFLYER is strictly forbidden. Violators will be prosecuted to the
maximum extent afforded by law. (looking at you Clubberia, Andrew Winter and Sho Fujino)
*/
/**************************************************************************************************************************/
/**************************************************************************************************************************/
/**************************************************************************************************************************/
/**************************************************************************************************************************/


var HoverCardTime;
var HoverCardHide;
var HoverCardCurrent;
var HoverCardItem;
// add var to make sure dont reload same hovercard
// when adding events remove old one
function addHoverCard(){
	$$(".if-hovercard-info").each( function(item) {
		item.removeEvents();
		item.addEvent("mouseover",function() {	
			HoverCardItem = item; 
			$clear(HoverCardTime); 
			//$clear(HoverCardHide); 
			HoverCardTime = displayHoverCard.delay(2000,false,item);
		});
		
		item.addEvent("mouseout",function() {	
			$clear(HoverCardTime); 
			$clear(HoverCardHide); 
			HoverCardHide = hideHoverCard.delay(500);
		});
		
		
	});
	
	$("if-hovercard").addEvent("mouseenter",function() {	
		$clear(HoverCardHide); 
	});
	
	$("if-hovercard").addEvent("mouseleave",function() {	
		$clear(HoverCardHide); 
		HoverCardHide = hideHoverCard.delay(500);
	});
}

function displayHoverCard(item){
	hoverCardLoading(false);
	$("if-hovercard").setStyle('display','block');
	hoverCardSetPos(item);
	$clear(HoverCardHide);
	
	$href = item.get('href');
	if(!$href && item.get('rel')){
		$href = item.get('rel');
	}else if(!$href && item.getElement('<a>')){
		$href = item.getElement('<a>').get('href');
	}
	
	curData = {
			'data' : $href
		};
	if(HoverCardCurrent != $href){
		HoverCardCurrent = $href;
		new Request.HTML({
			url: '/widgets/general/hovercard.php',  
			update: $('if-hovercard-content'),
			method: 'post', 
			onComplete: function() { hoverCardLoading(true,item);  },
			link: 'cancel',
			data: curData
		}).send();
	}else{
		hoverCardLoading(true,item);
	}
	
}

function hideHoverCard(){
	hoverCardLoading(false);
	$("if-hovercard").setStyle('display','none');
}

function hoverCardSetPos(item){
	$('if-hovercard').position({relativeTo: item,
		position: {x: 'center', y: 'top'},
		edge: {x: 'left', y: 'bottom'},
		offset: {x: -(($(item).getStyle('width').toInt()/2)+30), y:-9}
	});
}

function hoverCardLoading(onOff,item){
	if(onOff){
		$("if-hovercard-loading").setStyle('display','none');
		$("if-hovercard-content").setStyle('display','block');
		hoverCardSetPos(item);
	}else{
		$("if-hovercard-loading").setStyle('display','block');
		$("if-hovercard-content").setStyle('display','none');	
	}
}

function hoverCardMore(){
	$("if-hovercard-more").setStyle('display','block');
	$("if-hovercard-more-link").setStyle('display','none');
	hoverCardSetPos(HoverCardItem);
	return false;
}
