// core.js

$(document).ready( function() {
	setHomeSlide();
	setContentSlide();
	oAHoverSwapImage.init();
	blurLinkClick();
	fixFfffound();
} );

function setHomeSlide() {
	$('#divHomeSlide div.Items').cycle( {
		 timeout: 4000 
		,speed: 500
		,pause: 0
		,fx: 'fade'
		,sync: false
	} );
}

function setContentSlide() {
	$('#divContentSlide div.Items').cycle( {
		 timeout: 0
		,speed: 300
		,pause: 1
		,fx: 'fade'
		,prev: '#divContentSlide a.Prev'
		,next: '#divContentSlide a.Next'
		,pager: '#divContentSlide div.Numbers'
		,sync: false
	} );
	if($('#divContentSlide div.Item').length > 1) {
		$('#divContentSlide a.Next').css('display', 'block');
	}
}

oHoverImage = {
	 sHoverSuffix: '-hvr'
	,getSrc: function(sSrc, bHvr) {
		var sHvrSuf = oHoverImage.sHoverSuffix;
		var re = new RegExp('('+sHvrSuf+')?\.(gif|jpg|png)$');
		sSrc = sSrc.replace(re, bHvr ? sHvrSuf+'.$2' : '.$2');
		return sSrc;
	}
	,preload: function(sSrc) {
		jQuery('<img>').attr('src', oHoverImage.getSrc(sSrc, true));
	}
}

// HoverSwapImage class
oAHoverSwapImage = {
	 init: function() {
		$('.HoverSwapImage').each(
			function() {
				$(this).hover(
					function(eventObj) {
						$(this).find('img').attr('src', oHoverImage.getSrc($(this).find('img').attr('src'), eventObj.type == 'mouseenter'));
					}
				);
				oHoverImage.preload($(this).find('img').attr('src'));
				jQuery('<img>').attr('src', oHoverImage.getSrc($(this).find('img').attr('src'), true));
			}
		);
	}
}

// Blur all clicks
function blurLinkClick() {
	$('body a').click( function() {
		$(this).blur();
	});
}

// This function is called after image tag insted on ready
function hideTitleImagesUntilLoaded() {
	$('h1 img').css('visibility', 'hidden');
	$('h1 img').load( function() {
		$(this).css('visibility', 'visible');
	} );
	setTimeout("$('h1 img').css('visibility', 'visible')", 1000);
}

function fixFfffound() {
	$('a.Ffffound').click( function() {
		$('#divContentSlide').each( function() {
			$(this).css({ height: "auto" });
			$(this).find('div.Items').css({ height: "auto" });
			$(this).find('div.Numbers').hide();
			$(this).find('a.Next').hide();
			$(this).find('div.Item').css({ opacity: "1", display: "block", position: "static" });
			$(this).append('<p>&nbsp</p>');
		});
	});
}

