$(function () {
	$('#tabset li a[title]').each(function () {
		var distance = 10;
		var time = 250;
		var hideDelay = 100;

		var hideDelayTimer = null;

		var beingShown = false;
		var shown = false;
		var trigger = $(this);
		$(this).after('<div class="popup"><p>'+this.title+'</p></div>');
		var info = $('.popup', $(this).parent()).css('opacity', 0);
		this.title = "";

		$([trigger.get(0), info.get(0)]).bind('mouseenter', function () {
			if (hideDelayTimer) clearTimeout(hideDelayTimer);
			if (beingShown || shown) {
				// don't trigger the animation again
				return;
			} else {
				// reset position of info box
				beingShown = true;

				info.css({
					top: -100,
					left: '50%',
					'margin-left': -66,
					display: 'block'
				}).animate({
					top: '-=' + distance + 'px',
					opacity: 1
				}, time, 'swing', function() {
					beingShown = false;
					shown = true;
				});
			}

			//return false;
		}).bind('mouseleave', function () {
			if (hideDelayTimer) clearTimeout(hideDelayTimer);
			hideDelayTimer = setTimeout(function () {
				hideDelayTimer = null;
				info.animate({
					top: '-=' + distance + 'px',
					opacity: 0
				}, time, 'swing', function () {
					shown = false;
					info.css('display', 'none');
				});

			}, hideDelay);

			//return false;
		});
	});
});
