

var currentTabName = "";
var currentSkitName = "";
var currentFriendlySkitName = "";
//var currentYearFilter = "All";
var tabFilterSettings = new Array();
var tabSkitSettings = new Array();
var currentSkitListIsMembersOnly = false;
var enteredMembersOnlyArea = false;
var timerID = -1;
var speakerWidth = 58;
var speakerHeight = 139;
var expandIt = true;
var speakerRockingExpandDelay = 400;
var speakerRockingCollapseDelay = speakerRockingExpandDelay/4;
var speakerWidthIncrement = 2;
var speakerHeightIncrement = 1;
var previousRatings = new Array();
var speakerShakeIsOn = true;
var speakersAllowedToShake = false;
var curtainIsUp = false;var pageLoaded = false;
var tabToProcessOnLoad = "";



// www.fuquavision.com uses a frameset to redirect to mbaa.fuqua.duke.edu/fuquavision/
// we need to eliminate the frameset layer
// Even without the frameset, the /fuquavision/index.html just have the same domain
// as child iframes, so redirect if needed
if ( window.top != null  &&  window != window.top ) {
	window.top.location.replace( "http://mbaa.fuqua.duke.edu/fuquavision/" );
} else if ( window.location.host.toLowerCase().indexOf("fuquavision.com") >= 0 ) {
	window.location.replace( "http://mbaa.fuqua.duke.edu/fuquavision/" );
}


function EnteredMembersOnlyArea() {
	return enteredMembersOnlyArea;
}


function GetCurrentSkit() {
	return currentSkitName;
}


function GetCurrentSkitFriendlyName() {
	return currentFriendlySkitName;
}


function GetTabSkit( membersOnly ) {
	return tabSkitSettings[ membersOnly ];
}


function SetTabSkit( membersOnly, skitName, friendlyName ) {
	tabSkitSettings[ membersOnly ] = skitName;
}


function GetTabFilter( membersOnly, filterName ) {
	return ( tabFilterSettings[ filterName  + membersOnly ] );
}


function SetTabFilter( membersOnly, filterName, filterValue ) {
	if ( typeof(filterValue) == "undefined" ) {
		return;
	}

	tabFilterSettings[ filterName + membersOnly ] = filterValue;
}





function SetCurtainIsUp() {
	if ( curtainIsUp ) {
		return;
	}

	curtainIsUp = true;

	document.getElementById("FeaturedSkitLink").href = document.getElementById("FeaturedSkitLink").href + "&nocurtain";
}


function GetFeaturedSkit() {
	return document.getElementById("FeaturedSkitLink").href;
}



function GetMovieDocument() {
	var IFrameObj = document.getElementById("movieFrame"); //    document.frames["descriptionFrame"];

	if ( IFrameObj == null ) {
		return null;
	}

	var IFrameDoc = IFrameObj.document;

	if (IFrameObj.contentDocument) {
	    // For NS6
	    IFrameDoc = IFrameObj.contentDocument; 
	} else if (IFrameObj.contentWindow) {
	    // For IE5.5 and IE6
	    IFrameDoc = IFrameObj.contentWindow.document;
	} else if (IFrameObj.document) {
	    // For IE5
	    IFrameDoc = IFrameObj.document;
        }

	return IFrameDoc;
}




function OnKeydown(evt) {
	var code = 0;

	if (typeof(window.event) != "undefined"  &&  typeof(window.event.keyCode) != "undefined") {
		code = window.event.keyCode;
	} else if (typeof(evt.which) != "undefined") {
		code = evt.which;
	}

	switch (code) {
	case 13: // Enter
	case 32: // space
		var doc = GetMovieDocument();
		if ( doc != null  &&  doc.window != null ) {
//			doc.window.
		}
		return false;
		break;
	}

	return true;
}



function ClickedOnFeature() {
//	document.getElementById("SkitName").style.display="none";

	PortableSetText("LinkHeading", "Loading...");

	return true;
}


function ShowThePresidents() {

return;

	if ( document.getElementById("Presidents1").style.display != "inline" ) {
		document.getElementById("Presidents1").style.display="inline";
	}

	if ( document.getElementById("Presidents2").style.display != "inline" ) {
		document.getElementById("Presidents2").style.display="inline";
	}

	if ( document.getElementById("Presidents3").style.display != "inline" ) {
		document.getElementById("Presidents3").style.display="inline";
	}
}


function HideThePresidents() {
	document.getElementById("Presidents1").style.display="none";
	document.getElementById("Presidents2").style.display="none";
	document.getElementById("Presidents3").style.display="none";
}



function RockTheSpeakers() {
return;
	var newWidth = speakerWidth + speakerWidthIncrement;
	var newHeight = speakerHeight + speakerHeightIncrement;
	speakerWidthIncrement = 2 - speakerWidthIncrement;
	speakerHeightIncrement = 1 - speakerHeightIncrement;
	document.getElementById("RightSpeaker").style.width = "" + newWidth + "px";
	document.getElementById("LeftSpeaker").style.width = "" + newWidth + "px";
	document.getElementById("RightSpeaker").style.height = "" + newHeight + "px";
	document.getElementById("LeftSpeaker").style.height = "" + newHeight + "px";

	if ( currentTabName == "Curtain" ) {
		if ( speakerWidthIncrement > 0 ) {
			timerID=window.setTimeout("RockTheSpeakers();", speakerRockingExpandDelay);
		} else {
			timerID=window.setTimeout("RockTheSpeakers();", speakerRockingCollapseDelay);
		}
	}
}



function President3MouseOver(link) {
	if ( document.getElementById("Presidents3").src.indexOf("images/LakeviewLoftsReversedTransparent.gif") < 0 ) {
		document.getElementById("Presidents3").src="images/LakeviewLoftsReversedTransparent.gif";
//		window.status = "Don't touch me -- I am very sensitive!";
	}
}



function President3MouseOut(link) {
	if ( document.getElementById("Presidents3").src.indexOf("images/LakeviewLoftsTransparent.gif") < 0 ) {
		document.getElementById("Presidents3").src="images/LakeviewLoftsTransparent.gif";
	}
}



function SpeakerClicked(speaker) {
	if ( speakerShakeIsOn ) {
		speakerShakeIsOn = false;

		if ( speakersAllowedToShake ) {
			StopRockingTheSpeakers();
			speakersAllowedToShake = true;
		}

		window.status = "Speaker shaking is turned off!";
	} else {
		speakerShakeIsOn = true;

		if ( speakersAllowedToShake ) {
			StartRockingTheSpeakers();
		}

		window.status = "Speaker shaking is turned on!";
	}
}


function ShowBubble() {
//	document.getElementById("Bubble2").style.display="inline";
}



function StopRockingTheSpeakers() {
	speakersAllowedToShake = false;

	if ( document.getElementById("LeftSpeaker").src.indexOf("images/speaker.gif") < 0 ) {
		document.getElementById("LeftSpeaker").src="images/speaker.gif";
	}

	if ( document.getElementById("RightSpeaker").src.indexOf("images/speaker.gif") < 0 ) {
		document.getElementById("RightSpeaker").src="images/speaker.gif";
	}

return;
//	window.clearTimeout(timerID);
	if ( window.browser=="ie" ) {
		document.getElementById("LeftSpeakerMarquee").scrollAmount=0;
		document.getElementById("RightSpeakerMarquee").scrollAmount=0;
		document.getElementById("LeftSpeakerMarquee").width=58;
		document.getElementById("RightSpeakerMarquee").width=58;
	}
}



function StartRockingTheSpeakers() {
	speakersAllowedToShake = true;

	if ( !speakerShakeIsOn ) {
		return;
	}

	if ( document.getElementById("LeftSpeaker").src.indexOf("images/speaker_shake.gif") < 0 ) {
		document.getElementById("LeftSpeaker").src="images/speaker_shake.gif";
	}

	if ( document.getElementById("RightSpeaker").src.indexOf("images/speaker_shake.gif") < 0 ) {
		document.getElementById("RightSpeaker").src="images/speaker_shake.gif";
	}
return;
	if ( window.browser=="ie" ) {
		document.getElementById("LeftSpeakerMarquee").scrollAmount=1;
		document.getElementById("RightSpeakerMarquee").scrollAmount=1;
		document.getElementById("LeftSpeakerMarquee").width=59;
		document.getElementById("RightSpeakerMarquee").width=59;
	}
//	timerID=window.setTimeout("RockTheSpeakers();", speakerRockingExpandDelay);
}



function ShowTabs() {
	if ( document.getElementById("TabGroupBorder").style.visibility != "visible" ) {
		document.getElementById("TabGroupBorder").style.visibility = "visible";
	}

	if ( document.getElementById("TabGroup").style.visibility != "visible" ) {
		document.getElementById("TabGroup").style.visibility = "visible";
	}
}




function HideTabs() {
	document.getElementById("TabGroupBorder").style.visibility="hidden";
	document.getElementById("TabGroup").style.visibility="hidden";
}





function ActivateRatingSystem() {
	if ( typeof(previousRatings[currentSkitName]) != "undefined" ) {
		return false;
	}

	document.getElementById("RatingInProgressBlock").style.display="none";
	document.getElementById("RatingDoneBlock").style.display="none";

	if (document.forms[0].comment != null) {
		document.forms[0].comment.selectedIndex = 0;
	}

	PortableSetText("RatingSkitName", currentFriendlySkitName);
	document.getElementById("RatingFormBlock").style.display="inline";
}




function SuccessfullyEnteredMembersOnlyArea() {
	enteredMembersOnlyArea = true;

	document.getElementById("MembersOnlySkitListTabLink").href=("/fuquavision/skits/index.htm?membersonly=true");
}




function AdjustSpeakerRocking( tabName ) {

	switch ( tabName ) {
	case "Slideshow":
	case "Preview":
	case "SkitList":
	case "MembersOnlySkitList":
	case "MembersOnlySkitListEntrance":
	case "SkitCredits":
	case "Curtain":
	case "CurtainCredits":
		StopRockingTheSpeakers();
		break;

	case "Skit":
		if ( !document.getElementById("FullScreenMode").checked ) {
			StartRockingTheSpeakers();
		}
		break;
	}

}



function ShowFullScreenModeCheckbox( ) {
	document.getElementById("FeatureBlock").style.display = "none";
	document.getElementById("FullScreenModeBlock").style.display = "inline";
}


function HideFullScreenModeCheckbox( ) {
	document.getElementById("FullScreenModeBlock").style.display = "none";
}



function GetCurrentTabName( ) {
	return currentTabName;
}



function UpdateTitle( tabName ) {
	var titleSuffix = "Home";

	switch ( tabName ) {
	case "Curtain":
	case "CurtainCredits":
		titleSuffix = "Home";
		break;

	case "Preview":
		titleSuffix = "Preview";
		break;

	case "Slideshow":
		titleSuffix = "Slideshow";
		break;

	case "Skit":
	case "SkitCredits":
		return;

	case "SkitList":
		titleSuffix = "Skits";
		break;

	case "MembersOnlySkitList":
	case "MembersOnlySkitListEntrance":
		titleSuffix = "Members-Only Skits";
		break;
	}

	document.title = "Duke MBA :: FuquaVision Club :: " + titleSuffix;
}




function GotoTab(tabName) {
	AdjustSpeakerRocking(tabName);

	document.getElementById("PreviewTab").style.backgroundColor = "#000000";
	document.getElementById("SlideshowTab").style.backgroundColor = "#000000";
	document.getElementById("SkitListTab").style.backgroundColor = "#000000";
	document.getElementById("MembersOnlySkitListTab").style.backgroundColor = "#000000";

	currentTabName = tabName;

	UpdateTitle( tabName );

	switch ( tabName ) {
	case "Curtain":
		HideThePresidents();
		HideTabs();
//		document.getElementById("RemoteControl").style.display="none";
		break;

	case "CurtainCredits":
		HideThePresidents();
		ShowTabs();
//		document.getElementById("RemoteControl").style.display="none";
		break;

	case "Preview":
	case "Slideshow":
		ShowThePresidents();
		ShowTabs();
		document.getElementById(tabName+"Tab").style.backgroundColor="#435F82";
		break;

	case "Skit":
	case "SkitCredits":
		if ( tabName != "SkitCredits" ) {
			ShowTabs();
		}

		if ( currentSkitListIsMembersOnly ) {
			document.getElementById("MembersOnlySkitListTab").style.backgroundColor="#435F82";
		} else {
			document.getElementById("SkitListTab").style.backgroundColor="#435F82";
		}
		break;

	case "SkitList":
		currentSkitListIsMembersOnly = false;
		ShowThePresidents();
		ShowTabs();

		document.getElementById("SkitListTab").style.backgroundColor="#435F82";
		break;

	case "MembersOnlySkitList":
	case "MembersOnlySkitListEntrance":
		currentSkitListIsMembersOnly = true;

		if ( tabName == "MembersOnlySkitList"  ||  tabName == "MembersOnlySkitListEntrance" ) {
			ShowThePresidents();
			ShowTabs();
		}

		document.getElementById("MembersOnlySkitListTab").style.backgroundColor="#435F82";
		break;
	}


	switch ( tabName ) {
	case "Curtain":
	case "CurtainCredits":
		break;

	default:
		SetCurtainIsUp();
		break;
	}

	switch ( tabName ) {
	case "MembersOnlySkitList":
		SuccessfullyEnteredMembersOnlyArea();
		break;
	}

	document.getElementById("RatingInProgressBlock").style.display="none";
	document.getElementById("RatingDoneBlock").style.display="none";
	document.getElementById("RatingFormBlock").style.display="none";

	HideFullScreenModeCheckbox();

	switch ( tabName ) {
	case "Curtain":
		window.status="Click the blue curtain to begin";
		document.getElementById("PopcornAnimation").style.display="none";
		break;

	case "CurtainCredits":
		window.status="Opening credits";
		document.getElementById("PopcornAnimation").style.display="none";
		break;

	case "Slideshow":
		window.status="Slideshow";
		document.getElementById("PopcornAnimation").style.display="inline";
		break;

	case "Preview":
		window.status="Preview";
		document.getElementById("PopcornAnimation").style.display="none";
		break;

	case "SkitList":
	case "MembersOnlySkitList":
		ShowFullScreenModeCheckbox();
		window.status="Press Cursor Up & Down or letter keys to select skit.  Press Enter to play.";
		document.getElementById("PopcornAnimation").style.display="none";
		break;

	case "MembersOnlySkitListEntrance":
		ShowFullScreenModeCheckbox();
		window.status="Press Enter to proceed to members-only skits.";
		document.getElementById("PopcornAnimation").style.display="none";
		break;

	case "SkitCredits":
		ShowFullScreenModeCheckbox();
		window.status="";
		document.getElementById("PopcornAnimation").style.display="none";
		break;

	case "Skit":
		window.status="Now Playing: " + currentFriendlySkitName;
		document.getElementById("PopcornAnimation").style.display="none";
		break;
	}
}



function JumpToTab(tabName) {
	switch (tabName) {
		case "Preview":
			GotoTab(tabName);
			document.getElementById("movieFrame").src = document.getElementById("PreviewTabLink").href;
			break;

		case "Slideshow":
			GotoTab(tabName);
			document.getElementById("movieFrame").src = document.getElementById("SlideshowTabLink").href;
			break;

		case "SkitList":
			GotoTab(tabName);
			document.getElementById("movieFrame").src = document.getElementById("SkitListTabLink").href;
			break;

		case "MembersOnlySkitList":
			GotoTab("MembersOnlySkitListEntrance");
			document.getElementById("movieFrame").src = document.getElementById("MembersOnlySkitListTabLink").href;
			break;
	}
}



function StartTheShow(link, url) {
	switch ( currentTabName ) {
	case "MembersOnlySkitList":
	case "MembersOnlySkitListEntrance":
		GotoTab("MembersOnlySkit");
		break;

	default:
		GotoTab("Skit");
		break;
	}

	if ( document.getElementById("FullScreenMode").checked ) {
		failure = OpenFullScreenWindow(url + "&fullscreenmode");

		if ( !failure ) {
			PortableSetTextOfObject(link, "Viewing in full screen window");
		}

		return false;
	}

	return true;
}




var paused = false;


function AdjustDelayForSpeed( delay ) {
if ( delay > 1000 ) {
}
	return (delay * SpeedFactor());
}


function IsPaused() {
	return paused;
}


function SpeedFactor() {
	var dropdown = document.getElementById("SpeedDropdown");
	var val = dropdown.options[dropdown.selectedIndex].value;

	if (val == "") {
		return 1.0;
	}

	return (1 * val);
}


function NotifyPauseClicked( pauseChecked ) {
	if (paused == pauseChecked) {
		return;
	}

	paused = pauseChecked;

	if ( pauseChecked ) {
		window.top.status="Slideshow paused...";
		// window.clearTimeout(timerID);
	} else {
		window.top.status=""; // Slideshow paused...";
		// ResumeSlideLoaded(slideNumber);
	}
}


function NotifyTabLoaded( tabName ) {
	if ( !pageLoaded ) {
		tabToProcessOnLoad = tabName;
		return;
	}

	window.clearTimeout(timerID);
	if ( tabName == currentTabName ) {
		AdjustSpeakerRocking(tabName);
	} else {
		GotoTab(tabName);
	}
}


function NotifyTabCompleted( tabName ) {
	document.getElementById("TabGroupBorder").style.visibility="visible";
	document.getElementById("TabGroup").style.visibility="visible";
}


function NotifySkitChanged( skitName, skitFriendlyName ) {
	currentSkitName = skitName;
	currentFriendlySkitName = skitFriendlyName;
}



var windowToRun=null;
var description="";
var functionToRun="";
var totalDelay=0;



function ContinueTimer() {
	if ( IsPaused() ) {
		timerID=window.setTimeout("ContinueTimer();", 200);
		return;
	}

	totalDelay -= 1000;

	if (totalDelay <= 0) {
		window.top.status="";
		windowToRun.eval(functionToRun);
	} else {
		if (totalDelay <= 1000) {
			window.top.status="" + (totalDelay/1000) + " second 'til " + description;
		} else {
			window.top.status="" + (totalDelay/1000) + " seconds 'til " + description;
		}
		timerID=window.setTimeout("ContinueTimer();", 1000);
	}
}


function StartTimer(descr, winToRun, fnToRun, delay) {
	delay=AdjustDelayForSpeed(delay);

	description=descr;
	windowToRun=winToRun;
	functionToRun=fnToRun;
	totalDelay=delay;

	if ( IsPaused() ) {
		timerID=window.setTimeout("StartTimer(window.description, window.windowToRun, window.functionToRun, window.totalDelay);", 200);
		return;
	}

	if (delay < 1000) {
		timerID=window.setTimeout(fnToRun, delay);
		return;
	}

	if (delay <= 1000) {
		window.top.status="" + (delay/1000) + " second 'til " + description;
	} else {
		window.top.status="" + (delay/1000) + " seconds 'til " + description;
	}
	timerID=window.setTimeout("ContinueTimer();", 1000);
}



function OnLoad() {
	pageLoaded = true;

	if ( tabToProcessOnLoad != "" ) {
		NotifyTabLoaded( tabToProcessOnLoad );
	}
}





function trimAll(sString) 
{
	while (sString.substring(0,1) == ' ')
	{
		sString = sString.substring(1, sString.length);
	}

	while (sString.substring(sString.length-1, sString.length) == ' ')
	{
		sString = sString.substring(0,sString.length-1);
	}
	return sString;
}


function Reverse(inp) { 
  var outp = "";

  for (i = 0; i <= inp.length; i++) { 
    outp = inp.charAt (i) + outp ;
  } 

  return outp; 
} 


function BuildIt() {
   var code1 = 46;
   var code2 = 64;
   var person = "yespmed" + String.fromCharCode(code1) + "mij";
   var topmost = "ude";
   var school = "ekud.auquf";

   var result = topmost;
   result += String.fromCharCode(code1);
   result += school;
   result += String.fromCharCode(code2);
   result += person;

   result = Reverse(result);

   return result;
}


function Validate() {
	if ( document.getElementById("comment").selectedIndex <= 0 ) {
		window.alert("Please select a rating before voting.");
		document.forms[0].comment.focus();
		return false;
	}

//	document.getElementById("RatingFormBlock").style.display="none";
//	document.getElementById("RatingInProgressBlock").style.display="inline";
//	document.getElementById("RatingDoneBlock").style.display="none";

	previousRatings[currentSkitName] = "voted";

	document.forms[0].subject.value = "Rating for: " + currentFriendlySkitName;

	if (document.forms[0].comment != null  &&
	    document.forms[0].comment.selectedIndex >= 0 ) {
		document.forms[0].subject.value += ":" + document.forms[0].comment.options[document.forms[0].comment.selectedIndex].value;
	}

	document.forms[0].toaddress.value = BuildIt();
	document.forms[0].fromaddress.value = BuildIt();

//	VoteWasReceived(); // not possible for frame to notify us, so do it now 

	document.getElementById("RatingFormBlock").style.display="none";
	document.getElementById("RatingInProgressBlock").style.display="none";
	document.getElementById("RatingDoneBlock").style.display="inline";

	return true;
}




var iframePath = "curtain2.htm";

function CheckForSkitRedirect() {
	var search = window.location.search;

	if ( search != ""  &&  search.length > 1) {
		var skit = search.substring(1);

		if ( skit.indexOf("index") == 0  ||  skit.indexOf("internal/index") == 0 ) {
			iframePath = "/fuquavision/skits/index.htm";

			if ( skit.toLowerCase().indexOf("internal/") >= 0 ) {
				iframePath += "?membersonly=true";
			}
		} else {
			iframePath = "/fuquavision/skits/skit_title.htm?name=" + skit.replace(/\.htm/i, "");

			if ( skit.toLowerCase().indexOf("internal/") >= 0 ) {
				iframePath += "&membersonly=true";
			}
		}
	}
}



function FeaturedSkit( ) {
	if ( skitFilenamesList.length != skitNamesList.length ) {
		alert( "skitFilenamesList and skitNamesList arrays have inconsistent sizes.  Please fix." );
		return;
	}

	var link = document.getElementById("FeaturedSkitLink");
	var skitNumber = Math.floor( Math.random() * skitNamesList.length );
	var name = skitNamesList[ skitNumber ];
	var url = "/fuquavision/skits/skit_title.htm?name=" + skitFilenamesList[ skitNumber ].replace(/\.htm/i, "");

	link.href = url;

	PortableSetText("SkitName", name);
}




function PageEnd() {
	document.getElementById("PopcornAnimation").style.display="none";

	if ( iframePath != "curtain2.htm" ) {
		document.getElementById("FeatureBlock").style.display = "none";
	}

	FeaturedSkit( );

	return;
}



function Initialize( ) {
	SetTabFilter( false, "SkitFilterType", skitsInitialFilter );
	SetTabFilter( false, "MembersOnly", "Off" );

	SetTabFilter( true, "SkitFilterType", membersOnlySkitsInitialFilter );
	SetTabFilter( true, "MembersOnly", "Only" );

	CheckForSkitRedirect();
}


Initialize(  );
