// February 21, 2006

var http_loc = "";	// home page requires different behavior
var xx = new Array(); // common container for dock()

// layer structure by association
var xy = new Array('sort','sort0','sort1'); 					// menu sublink container
var xm = new Array('mf1', 'mf2', 'mf3', 'mf4'); 				// maps
var cave_sites = new Array('northern', 'southern', 'small', 'cave_unknown'); 	// cave sites
var ap = new Array('ap1', 'ap2'); 						// menu arrows
var af = new Array('af0','mainc1','mainc2','thumbBox'); 			// things to hide when zoomify pops
var ak = new Array('mainc2','mainc22','mainc23'); 				// things to swap on tab click
var ik = new Array('media','research','technical'); 				// tab IDs
var nl = new Array('tm1','tm2','tm3'); 						// topmost menu items (TDs)
//var nl_c = new Array('tm1','tm3'); 						// topmost menu items (TDs)

var el = "";
var tl = 250;
var el_Height, startTime, dropFactor = 0;
var slideTimer = false;
var image_dir = "/collection/images/25/";
var themeColor = "";

function dock(sel,target,tab) 
{
	var thumbTD = document.getElementById('thumbTD');

	if(target == 'af0' && tab != "public") 
	{
		xx = af.concat(ak);
		thumbTD.className = 'thumbLock2';
		resetSelectionTabs();
		setTabByTheme("media");
	} 
	if(target == 'cave_unknown' && tab != "public") 
	{

	}
	else if (tab == "public") 
	{
		xx = af.concat(ak);
		thumbTD.className = 'thumbLock2';
	} 
	else if (tab == "m") 
	{
		if(http_loc == 'hp') 
		{
			xx = xm;
		} else {
			xx = xm.concat(ak);
			setVisibility('groupRoll','none',0);
		}
			
		// map layer
		setVisibility('subpageContainer','none',0);
		setVisibility('modeToggle','none',0);
		setVisibility('map_header','block',0);
		setVisibility('selectionTable','none',0);
		setVisibility('mapContainer','block',0);
		//subpage.style.display = 'none';
	} 
	else 
	{
		xx = ak;
		setVisibility('subpageContainer','block',0);
		if(isVisible('af0')) 
			setVisibility('af0','none',0);

		if(thumbTD.className != 'thumbLock1') 
			thumbTD.className = 'thumbLock1';

		setVisibility(af,'block',1);
		setTabByTheme(tab);
	}
	switchVisibility(target,xx);
}

function toggle(el,az,tab) 
{
	resetMenuThemes();
	document.getElementById(tab).className = "stl2";
	
	if(az != '') {
			document.images[az].src = image_dir+"item_arrow_down.gif";
			//setItemVisibility(el,xy);
	}

	else if(http_loc == 'hp') {
		setVisibility('mapContainer','none',0);
		setVisibility('selectionTable','none',0);
		setVisibility('map_header','none',0);
		setVisibility('subpageContainer','block',0);
		setVisibility('modeToggle','block',0);

	} //else {
		
	switchVisibility(el,xy);
		
	//}
}

function slideThis(t,h,aq,tab) {
 if(document.getElementById(t).style.display != "block") {
	el = t;
	el_Height = h;
	
	toggle(el,aq,tab);
	
	if(h!=null) {
		dropFactor = ((0-el_Height)/tl/tl);
		startTime = (new Date()).getTime();	
		slideTimer = window.setInterval("slide()", 10);
	}
  } 
  else { 
  	resetMenuItem(t,tab,aq); 
  }
}

function slide() {
	var elapsed = (new Date()).getTime() - startTime;
	
	if (elapsed > tl) {
		stopSlide();
	}
	else {
		var height = Math.round(Math.pow(tl-elapsed, 2) * dropFactor);
			height = el_Height + height;  // grow
			document.getElementById(el).style.height = height + "px";
	}
	
}

function stopSlide () {
	slideTimer = window.clearTimeout(slideTimer);
}

function setThemeLayout(color,type,tabLayer) {
	
	themeColor = color;
	setVisibility('groupRoll','block',0);
	
	//var targetTab = "media";
	var sel = "";
	var mainc = "";
	
	
if (type == 'location') {
	if(tabLayer=='') {
		// media tab is default
		targetTab = "research";
		sel = "sel3";
		mainc = "mainc22";
	}
	else if(tabLayer=="research") {
		targetTab = "research";
		sel = "sel3";
		mainc = "mainc22";
	} else if(tabLayer=="technical") {
		targetTab = "technical";
		sel = "sel4";
		mainc = "mainc23";
		
	} else if(tabLayer=="media") {
		targetTab = "media";
		sel = "sel5";
		mainc = "mainc2";
		
	}
	
	dock(sel,mainc,targetTab);
	
	/*
	if (type == 'location') {
		slideThis('sort',152,'ap2','tdm3');
	} else if (type == 'cave') {
		slideThis('sort0',92,'ap1','tdm2');
	} else {
		document.getElementById('tdm1').className = 'stl2';
	}
	*/
}
	
	var cavequad = document.getElementById('cavequad');
	var cavequad2 = document.getElementById('cavequad2');
	var objectTitle = document.getElementById('objectTitle');
	var objectTitle2 = document.getElementById('objectTitle2');
	//var themeBar = document.getElementById('themeBar');
	
	switch(color) {
		case "green":
			cavequad.className = cavequad2.className = "greenQuad";
			objectTitle.className = objectTitle2.className = "style44";
			//themeBar.className = "greenQuad";
			break;
		case "purple":
			cavequad.className = cavequad2.className = "purpleQuad";
			objectTitle.className = objectTitle2.className = "style46";
			//themeBar.className = "purpleQuad";
			break;
		case "red":
			cavequad.className = cavequad2.className = "redQuad";
			objectTitle.className = objectTitle2.className = "style45";
			//themeBar.className = "redQuad";
			break;
	}
	
	if(http_loc != "vice") {
		//blurNavIE();
	}
}

function setTabByTheme(tab) {
	for(i=0;i<ik.length;i++) {
		document.images[ik[i]].src = (tab == ik[i]) ? image_dir+ik[i]+'_'+themeColor+'_on.gif' : image_dir+ik[i]+'.gif';
    }
}

function setVisibility(e,display,type) {
	// 0 - single element, 1 - array
	if(type == 0) {
		document.getElementById(e).style.display = display;
	} else if(type == 1) {
		for(i=1;i<e.length;i++) {
			document.getElementById(e[i]).style.display = display;
		 }
	}
}

function switchVisibility(el,fest) {
	for(i=0;i<fest.length;i++) {
		document.getElementById(fest[i]).style.display = (el == fest[i]) ? 'block':'none';
	}
}

function resetMenuThemes() {
	document.getElementById('tdm1').className = document.getElementById('tdm2').className = document.getElementById('tdm3').className = 'stl';
	for(i=0;i<ap.length;i++) {
		document.images[ap[i]].src = image_dir+"item_arrow.gif";
	}
}

function resetMenuItem(t,tab,af) {
	document.getElementById(tab).className = 'stl';
	document.getElementById(t).style.display = "none";
	document.images[af].src = image_dir+"item_arrow.gif";
}

function resetSelectionTabs() {
	for(i=0;i<ik.length;i++) {
		document.images[ik[i]].src = image_dir+ik[i]+'.gif';
	}
}

function isVisible(e) {
	var ev = (document.getElementById(e).style.display) ? 'block':'none';
	if(ev == 'block') {
		return true;
	} else {
		return false;
	}
}

function blurNavIE() { 	
	for(i=0;i<nl.length;i++) {
		document.getElementById(nl[i]).blur();
	}
}

function putFlash(fullsize,p) {
	/****
	   Note:
	   Safari needs '+=' for this to work when called by 
	   a javascript-href. The div is cleared each time
	**************/
	document.getElementById("mainc2").style.display = "block";
	document.getElementById('flash').innerHTML = '';
	document.getElementById('flash').innerHTML += '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" width="520" height="500" align=""><param name=movie value="flash/zoomifyDynamicViewer_xts_00.swf"><param name=FlashVars value="zoomifyImagePath=/dev/model_data/images/'+fullsize+'/perspective'+p+'&amp;zoomifyX=0&amp;zoomifyY=0.1&amp;zoomifyZoom=15&amp;zoomifyMinZoom=5&amp;zoomifyMaxZoom=100&amp;zoomifyToolbar=1&amp;zoomifyShowNav=0"><param name=bgcolor value=#FFFFFF><embed src="flash/zoomifyDynamicViewer_xts_00.swf" width="520" height="500" align="" bgcolor=#FFFFFF flashvars="zoomifyImagePath=/dev/model_data/images/'+fullsize+'/perspective'+p+'&amp;zoomifyX=0&amp;zoomifyY=0&amp;zoomifyZoom=15&amp;zoomifyMinZoom=5&amp;zoomifyMaxZoom=100&amp;zoomifyToolbar=1&amp;zoomifyShowNav=0" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed></object>';

}

function putPhotoSynth(fullsize,p) {
	/****
	   Note:
	   Safari needs '+=' for this to work when called by 
	   a javascript-href. The div is cleared each time
	**************/
	document.getElementById("mainc2").style.display = "block";
	document.getElementById('flash').innerHTML = '';
	document.getElementById('flash').innerHTML += '<iframe frameborder="0" src="http://photosynth.net/embed.aspx?cid='+fullsize+'&delayLoad=true&slideShowPlaying=false" width="520" height="500"></iframe>';
}

function putJScanView(fullsize,p) {
	/****
	   Note:
	   Safari needs '+=' for this to work when called by 
	   a javascript-href. The div is cleared each time
	**************/
	document.getElementById("mainc2").style.display = "block";
	document.getElementById('flash').innerHTML = '';
	document.getElementById('flash').innerHTML += '<embed src="'+fullsize+'" width="520" height="500" autoplay="false">';
}

function putMap(fullsize,p) {
	/****
	   Note:
	   Safari needs '+=' for this to work when called by 
	   a javascript-href. The div is cleared each time
	**************/
	document.getElementById("mainc2").style.display = "block";
	document.getElementById('flash').innerHTML = '';
	document.getElementById('flash').innerHTML += '<iframe width="520" height="500" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="http://maps.google.com/maps?f=q&amp;source=s_q&amp;hl=en&amp;geocode=&amp;q=Freer+Gallery+of+Art+and+Arthur+M.+Sackler+Gallery,+washington+dc&amp;sll=41.881704,-87.653217&amp;sspn=0.092404,0.147114&amp;ie=UTF8&amp;ll=38.899583,-77.023344&amp;spn=0.003019,0.004597&amp;t=h&amp;z=14&amp;iwloc=A&amp;cid=15944543121233192388&amp;output=embed"></iframe><br /><small><a href="http://maps.google.com/maps?f=q&amp;source=embed&amp;hl=en&amp;geocode=&amp;q=Freer+Gallery+of+Art+and+Arthur+M.+Sackler+Gallery,+washington+dc&amp;sll=41.881704,-87.653217&amp;sspn=0.092404,0.147114&amp;ie=UTF8&amp;ll=38.899583,-77.023344&amp;spn=0.003019,0.004597&amp;t=h&amp;z=14&amp;iwloc=A&amp;cid=15944543121233192388" style="color:#0000FF;text-align:left">View Larger Map</a></small>';
}

function putVideo(fullsize,p) {
	/****
	   Note:
	   Safari needs '+=' for this to work when called by 
	   a javascript-href. The div is cleared each time
	**************/
	document.getElementById("mainc2").style.display = "block";
	document.getElementById('flash').innerHTML = '';
	document.getElementById('flash').innerHTML += '<embed src="'+fullsize+'" width="520" height="500" autoplay="false">';
}
