var ROOTURL = '/ciss/';
var TITLEFILTER = " - Center for Intelligence and Security Studies / School of Applied Sciences / University of Mississippi";


$(document).ready(function() {
	// $('input#s').hint();
	
	wfmenu.definemenu("megaanchor1", "megapulldown1");
	wfmenu.definemenu("megaanchor2", "megapulldown2");
	wfmenu.definemenu("megaanchor3", "megapulldown3");
	wfmenu.definemenu("megaanchor4", "megapulldown4");
	wfmenu.render($);

	// Generate Breadcrumbs
	$("div#breadCrumb ul").html(breadcrumbs());
	// Endow breadcrumbs with spirit
	jQuery("#breadCrumb").jBreadCrumb();

});



function breadcrumbs(){
	sURL       = new String;
	bits       = new Object;
	var x      = 0;
	var stop   = 0;
	var output = "<ul><li><a href='"+ROOTURL+"'>Home</a></li>\n";
	sURL       = location.href;
	sURL       = sURL.slice(8,sURL.length);
	chunkStart = sURL.indexOf("/");
	sURL       = sURL.slice(chunkStart+1,sURL.length)
	while(!stop){
		chunkStart = sURL.indexOf("/");
		if (chunkStart != -1){
			bits[x] = sURL.slice(0,chunkStart)
			sURL = sURL.slice(chunkStart+1,sURL.length);
		}else{
			stop = 1;
		}
		x++;
	}
	for(var i in bits){
		if ('ciss' != bits[i]) {
			output += "<li><a href=\"";
			for(y=1;y<x-i;y++){
				output += "../";
			}
			output += bits[i] + "/\">" + str_replace("_", " ", bits[i]) + "</a></li>";
		}
	}
	output += "<li><span class='breadcrumb-landing'>"+str_replace (TITLEFILTER, '', $("title").html())+"</span></li>";
	output += "</ul>";
	return output;
}
function str_replace(search, replace, subject) {
	var result = "";
	var oldi = 0;
	for (i = subject.indexOf (search); i > -1; i = subject.indexOf (search, i)) {
		result += subject.substring (oldi, i);
		result += replace;
		i += search.length;
		oldi = i;
	}
	return result + subject.substring (oldi, subject.length);
}

// HIGHLIGHT blinker: use like: $(selector).highlightFade();
$.fn.highlightFade = function(){
	doBGFade( this,[255,255,000],[255,255,255],'transparent',30,20,4 );
}
function easeInOut(minValue,maxValue,totalSteps,actualStep,powr) {
	var delta = maxValue - minValue;
	var stepp = minValue+(Math.pow(((1 / totalSteps)*actualStep),powr)*delta);
	return Math.ceil(stepp)
}
function doBGFade(elem,startRGB,endRGB,finalColor,steps,intervals,powr) {
	if (elem.bgFadeInt) window.clearInterval(elem.bgFadeInt);
	var actStep = 0;
	elem.bgFadeInt = window.setInterval(
		function() {
			elem.css("backgroundColor", "rgb("+
			easeInOut(startRGB[0],endRGB[0],steps,actStep,powr)+","+
			easeInOut(startRGB[1],endRGB[1],steps,actStep,powr)+","+
			easeInOut(startRGB[2],endRGB[2],steps,actStep,powr)+")"
		);
		actStep++;
		if (actStep > steps) {
			elem.css("backgroundColor", finalColor);
			window.clearInterval(elem.bgFadeInt);
		}
	}
	,intervals)
}
