$(document).ready(function() {

    setupjQueryBanners();
	setupModel();
	setupOverlay();

});

function setupOverlay() {
	$("#main a[rel]").overlay({

		// some mask tweaks suitable for modal dialogs
		mask: {
			color: '#7ba2bd',
			loadSpeed: 200,
			opacity: 0.9
		},
		top: 100,
		left: 'center',
		closeOnClick: false
	});
	
	//Make pulse first start at click
	$("#main a[rel]").click(function() {
		startPulse();
	});
}
function positionToolTip(object, number)
{
	var tooltipWidth = $('.tooltip').width();
	var tooltipHeight = $(object).siblings('.tooltip.'+number).height();
	
	
	if($(object).siblings('.tooltip.'+number).children('.triangle-isosceles').hasClass('right'))
		$(object).tooltip({position: 'top left', offset: [tooltipHeight/2+12, -10], effect: 'slide', relative: true});
	else if($(object).siblings('.tooltip.'+number).children('.triangle-isosceles').hasClass('left'))
		$(object).tooltip({position: 'top right', offset: [tooltipHeight/2+12, 10], effect: 'slide', relative: true});
	else if($(object).siblings('.tooltip.'+number).children('.triangle-isosceles').hasClass('bottom'))
		$(object).tooltip({position: 'top left', offset: [-10, tooltipWidth/2+5], effect: 'slide', relative: true});
	else if($(object).siblings('.tooltip.'+number).children('.triangle-isosceles').hasClass('top'))
		$(object).tooltip({position: 'bottom left', offset: [20, tooltipWidth/2+45], effect: 'slide', relative: true});
}
function setupModel() {
	$("#main .pulse").mouseover(function(event) {//fix me
		
		//checks which object is "mouseover'ed"..
		var classVal = $(this).attr('class').replace("pulse","").replace(" ","");
		positionToolTip(this, classVal)
		
	});

	//hover effects
	$(".pulse").hover( 

	  //on mouse in
	  function () {
	   	//this stops the pulsate animation
	    $('.pulse').stop(true, true);
		$(".pulse").animate({opacity: '0.4' }, {queue:false, duration:600, easing:'easeOutCubic'});
		$(this).animate({opacity: '1.0' }, {queue:false, duration:600, easing:'easeOutCubic'});
	  }, 
	  //on mouse out
	  function () {
	    $('.pulse').effect("pulsate", { times:500 }, 2000);
	  }
	);
}

function startPulse() {
	$('.pulse').effect("pulsate", { times:500 }, 2000);
}

function setupjQueryBanners() {
  setTimeout(animateFirstBanner, 300);
  
  
  var bannerContainer = $('.banner');
  
  if (bannerContainer[0]) {
    bannerContainer.scrollable({
	  circular: true,
      onBeforeSeek: bannerOnBeforeSeek,
      onSeek: bannerOnSeek
    }).autoscroll(7000);
    
    var api = bannerContainer.data('scrollable');
	api.getConf().keyboard = false;	
    // If there's only a single banner, hide the buttons
    if (api && api.getSize() == 1) {
      api.getNaviButtons().hide();
    }
  }
}

function bannerOnBeforeSeek(event, index) {
	//var currentBanner = $('.items .slide:eq(' + index + ')');
	var currentBanner = $('.items .slide');
	BannerController.resetAnimProps(currentBanner);
}

function bannerOnSeek(event, index) {
	//var currentBanner = $('.items .slide:eq(' + index + ')');
	var currentBanner = $('.items .slide');
	BannerController.animateBanner(currentBanner);
}

function animateFirstBanner() {
	//var firstBanner = $('.slide:eq(0)');
	var firstBanner = $('.slide');

	if (typeof(BannerController) === "object") {
		BannerController.animateBanner(firstBanner, true);
	}
}
