(function($) {
	$.fn.applyTooltip = function(options) {
		var opts = $.extend({}, $.fn.applyTooltip.defaults, options);
		$.fn.qtip.styles.tandusStyle = {
			background: 'transparent',
			classes: {content: opts.className},
			padding: opts.padding,
			color: 'white',
			border: {width: 0},
			tip: false
		}
		$(this).each(function() {
			var tooltipContent;
			if (opts.content == null) {
				tooltipContent = $(this).find('.tooltip').first();
			} else {
				tooltipContent = opts.content;
			}
			if (tooltipContent.length) {
				$(this).qtip({
					content: tooltipContent,
					show: 'mouseover',
					hide: 'mouseout',
					//hide: { fixed: true },
					style: 'tandusStyle',
					position: {
						target: opts.positionTarget,
						tooltip: opts.positionTooltip,
						corner: {
							tooltip: opts.cornerTooltip,
							target: opts.cornerTarget
						},
						adjust: {
							mouse: true,
							x: opts.adjustX,
							y: opts.adjustY
						}
					}
				})
			}
		});
	};
	$.fn.applyTooltip.defaults = {
		className: 'tooltip-black',
		padding: '12px 20px',
		positionTarget: 'mouse',
		positionTooltip: 'leftTop',
		cornerTooltip: 'rightBottom',
		cornerTarget: false,
		adjustX: 0,
		adjustY: 0,
		content: null
	};

	
	$.fn.menuToggle = function() {
		$(this).each(function() {
			var li = $(this);
			var link = li.find('a:first');
			var menu = li.find('.sub-nav');
			li.hoverIntent(
				function() {
					if (menu.is(':hidden')) {
						menu.slideToggle();
						link.addClass('active');
					}
				},
				function() {
					if (menu.is(':visible')) {
						menu.slideToggle();
						link.removeClass('active');
					}
				}
			);
		});
	};
	$.fn.footerMenuToggle = function() {
		var link = $(this).find('a:first');
		var menu = $(this).find('.sub-nav');
		
		var leftPadding = $('.footer-content').css('paddingLeft');
		leftPadding = Number(leftPadding.replace(/px$/, ''));
		var leftMargin = $(link).position().left - $('.footer-content').offset().left - leftPadding;
		
		$(menu).find('.content .content-wrapper > h3').css('padding-left', leftMargin);
		$(menu).find('.content .content-wrapper > ul').css('padding-left', leftMargin);
		
		$(link).click(function(e) {
			e.preventDefault();
			$(menu).slideToggle();
		});
		
		var close = $(this).find('.close');
		
		$(close).click(function(e) {
			e.preventDefault();
			$(menu).slideToggle();
		});
	};
	$.fn.contentToggle = function() {
		$(this).each(function() {
			var toggle = $(this).find('a.toggle');
			var content = $(this).find('.content');
			
			toggle.click(function(e) {
				e.preventDefault();
				if (toggle.hasClass('toggle-expanded')) {
					toggle.removeClass('toggle-expanded');
					content.slideUp();
				} else {
					toggle.addClass('toggle-expanded');
					content.slideDown();
				};
			});
		});
	};
})(jQuery);

$(document).ready(function() {
	
	$('#header-main-nav .main-link > a').click(function(e) {
		e.preventDefault();
	});
	$('#header-main-nav .main-link').each(function() {
		$(this).menuToggle();
	});
	$('#footer .main-nav > li').each(function() {
		$(this).footerMenuToggle();
	});
	
	$('#footer .sub-nav .close').applyTooltip(); //"close" button in footer
	
	$('.expandable-content').contentToggle();
	
	$('#footer div.sub-nav a.disabled').click(function(e){
		e.preventDefault();
	});
	
	//$('select').selectmenu({style:'dropdown',maxHeight: 150});
	$('select.custom-menu').livequery(function() {
		$(this).each(function() {
			$(this).customMenu();
		});
	});
});
