$(document).ready(function() {
	var nav = $("#nav");
	nav.addClass("sf-menu");
	nav.find("li ul").show().wrap("<div></div>");
	$("#nav > li:last").addClass("last");

	// Navigation highlights
	// Using the current path (e.g. /Section/Page)
	var path = location.pathname;

	// Handle links to the current path
	if (path) {
		// $('a[href$="' + path + '"]').parents().filter('li').addClass('active');
	}

	/*
	$('#nav').NavDropDown({
		duration: 300,
		hoverElement: 'li',
		hoverClass: 'hover',
		dropHolder: 'div',
		showEffect: 'slide'
	});
	//*/
	
	$('.sf-menu').superfish({ 
        delay:400               
    });  

	$(".top p", "#content").hide();
	$(".top ul", "#content").hide();

	$(".top h3").qtip({ content: "<div id='call-911'><p>" + $(".top p", "#content").html() + "</p><ul>" + $(".top ul", "#content").html() + "</ul></div>", hide: { fixed: true, delay: 500 }, style: { width: 400, background: '#FFFFFF', border: { width: 10, radius: 10, color: '#806699' }, padding: 15, tip: 'topMiddle' }, position: { adjust: { x: 0, y: 20 }, corner: { target: 'bottomMiddle', tooltip: 'topMiddle'}} });
	var currentTime = new Date();
	if ((currentTime.getHours() >= 19) || (currentTime.getHours() <= 7)) {
		$(".left", "#content").before($(".bottom", "#content"));
	}

	// Accordions
	$("#accordion").accordion({ event: 'click', header: 'h3', autoHeight: false, active: false, collapsible: true });

	equalHeight($("ul.children-2col li"));

	makeSlideShow();

});

;(function($){
	$.fn.superfish = function(op){

		var sf = $.fn.superfish,
			c = sf.c,
			$arrow = $(['<span class="',c.arrowClass,'">&#187;</span>'].join('')),
			over = function(){
				var $$ = $(this), menu = getMenu($$);
				clearTimeout(menu.sfTimer);
				$$.showSuperfishUl().siblings().hideSuperfishUl();
			},
			out = function(){
				var $$ = $(this), menu = getMenu($$), o = sf.op;
				clearTimeout(menu.sfTimer);
				menu.sfTimer=setTimeout(function(){
					o.retainPath=($.inArray($$[0],o.$path)>-1);
					$$.hideSuperfishUl();
					if (o.$path.length && $$.parents(['li.',o.hoverClass].join('')).length<1){over.call(o.$path);}
				},o.delay);	
			},
			getMenu = function($menu){
				var menu = $menu.parents(['ul.',c.menuClass,':first'].join(''))[0];
				sf.op = sf.o[menu.serial];
				return menu;
			},
			addArrow = function($a){ $a.addClass(c.anchorClass).append($arrow.clone()); };
			
		return this.each(function() {
			var s = this.serial = sf.o.length;
			var o = $.extend({},sf.defaults,op);
			o.$path = $('li.'+o.pathClass,this).slice(0,o.pathLevels).each(function(){
				$(this).addClass([o.hoverClass,c.bcClass].join(' '))
					.filter('li:has(div)').removeClass(o.pathClass);
			});
			sf.o[s] = sf.op = o;
			
			$('li:has(ul)',this)[($.fn.hoverIntent && !o.disableHI) ? 'hoverIntent' : 'hover'](over,out).each(function() {
				if (o.autoArrows) addArrow( $('>a:first-child',this) );
			})
			.not('.'+c.bcClass)
				.hideSuperfishUl();
			
			var $a = $('a',this);
			$a.each(function(i){
				var $li = $a.eq(i).parents('li');
				$a.eq(i).focus(function(){over.call($li);}).blur(function(){out.call($li);});
			});
			o.onInit.call(this);
			
		}).each(function() {
			var menuClasses = [c.menuClass];
			if (sf.op.dropShadows  && !($.browser.msie && $.browser.version < 7)) menuClasses.push(c.shadowClass);
			$(this).addClass(menuClasses.join(' '));
		});
	};

	var sf = $.fn.superfish;
	sf.o = [];
	sf.op = {};
	sf.IE7fix = function(){
		var o = sf.op;
		if ($.browser.msie && $.browser.version > 6 && o.dropShadows && o.animation.opacity!=undefined)
			this.toggleClass(sf.c.shadowClass+'-off');
		};
	sf.c = {
		bcClass     : 'sf-breadcrumb',
		menuClass   : 'sf-js-enabled',
		anchorClass : 'sf-with-ul',
		arrowClass  : 'sf-sub-indicator',
		shadowClass : 'sf-shadow'
	};
	sf.defaults = {
		hoverClass	: 'hover',
		pathClass	: 'active',
		pathLevels	: 1,
		delay		: 800,
		animation	: {opacity:'show'},
		speed		: 'normal',
		autoArrows	: true,
		dropShadows : true,
		disableHI	: false,		// true disables hoverIntent detection
		onInit		: function(){}, // callback functions
		onBeforeShow: function(){},
		onShow		: function(){},
		onHide		: function(){}
	};
	$.fn.extend({
		hideSuperfishUl : function(){
			var o = sf.op,
				not = (o.retainPath===true) ? o.$path : '';
			o.retainPath = false;
			var $ul = $(['li.',o.hoverClass].join(''),this).add(this).not(not).removeClass(o.hoverClass)
					.find('>div').hide().css('visibility','hidden');
			o.onHide.call($ul);
			return this;
		},
		showSuperfishUl : function(){
			var o = sf.op,
				sh = sf.c.shadowClass+'-off',
				$ul = this.addClass(o.hoverClass)
					.find('>div:hidden').css('visibility','visible');
			sf.IE7fix.call($ul);
			o.onBeforeShow.call($ul);
			$ul.animate(o.animation,o.speed,function(){ sf.IE7fix.call($ul); o.onShow.call($ul); });
			return this;
		}
	});

})(jQuery);

// set up slideshow on main page
function makeSlideShow() {
	var cont = $("div.visuals");
	var aliasPath = "/Home/Slideshow";
	var classNames = "CMS.File";
	var properties = "DocumentName|FileAttachment";
	$.ajax({
		type: "POST",
		url: "/Utilities/DocumentProperties.ashx?nodealiaspath=" + aliasPath + "/%&classnames=" + classNames + "&properties=" + properties,
		contentType: "application/json; charset=utf-8",
		dataType: "json",
		success: function(msg) {
			// remove the existing image
			$("img", cont).remove();
			// add the container div and reassign cont
			$(cont).prepend('<div class="slides"></div>');
			cont = $("div.visuals > div:first");
			var img, doc;
			//alert(msg.length);
			for (var i = 0; i < msg.length; i++) {
				if (msg[i]["FileAttachment"] != null) {
					img = msg[i]["FileAttachment"];
					doc = msg[i]["DocumentName"];
					$(cont).append('<div class="slidecontainer"><img src="/getattachment/' + img + "/" + doc + '" /></div>');
				}
			}
			
			var tabs = '<div class="tabs">';
			for (var i = 0; i < msg.length; i++) {
				tabs += '<a href="">*' + i + '*</a>';
			}
			tabs += '</div>';
			$(cont).after(tabs);
			
			$(".tabs").tabs("div.visuals div.slides div.slidecontainer", {
				effect: 'fade',
				fadeOutSpeed: 800,
				fadeInSpeed: 800,

				// start from the beginning after the last tab 
				rotate: true
			}).slideshow({ autoplay: true, interval: 5000, autopause: false });
			$("div.tabs").hide();
		},
		error: function(XMLHttpRequest, textStatus, errorThrown) {
			// Do nothing for now
			//alert("slides fail");
			alert(textStatus + errorThrown);
		}
	});
}

function equalHeight(group) {
    var tallest = 0;
    group.each(function() {
        var thisHeight = $(this).height();
        if(thisHeight > tallest) {
            tallest = thisHeight;
        }
    });
    group.height(tallest);
}
