/////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////
// NAVIGATION - menu toggle
var nav_openMenu = null;
function nav_toggleMenu(id) {
	id = (id == null) ? "pages" : id;
	
	if( $(id) ) {
		
		nav_openMenu = (nav_openMenu == null) ? null : nav_openMenu;
		if(nav_openMenu != null && nav_openMenu != id) {
			new Effect.toggle( nav_openMenu, 'blind', {
				delay: 0, 
				duration: .25,
				afterFinish: function() {
					
				}
			});
		}
		
		
		new Effect.toggle( id, 'blind', {
			delay: 0, 
			duration: .25,
			afterFinish: function() {
				
			}
		});
		
		nav_openMenu = id;
		
	}
}


/////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////
// LOAD LAYER - display function, used for showing images and slides at true scale, 
//				via a global top layer with an semi-opaque background
var load_childLoaded = null;
function loadLayer_Show(id) {
	id = (id == null) ? null : id;
	if( id ) {
		loadLayer_Move();
		$('load_layer_data').appendChild( $(id) );
		$(id).style.display = "block";
		$(id).setAttribute('style', 'text-align: center;'); // just appending the element aligns it left...
		new Effect.toggle('load_layer', 'appear', { duration: 0.4 });
		new Effect.toggle('body_fog', 'appear', { duration: 0.4 });
		load_childLoaded = id;
		embed_obj = document.getElementsByClassName('body_qtObject_embed');
		for(i=0; i < embed_obj.length; i++) {
			$( embed_obj[i].id ).style.visibility = 'hidden';
		}
		
	}
}

function loadLayer_Hide() {
	new Effect.toggle('load_layer', 'appear', { duration: 0.4, afterFinish: function() { 
			if(load_childLoaded) { 
				$(load_childLoaded).style.display = "none";
				$('load_layer').appendChild( $(load_childLoaded) );
				load_childLoaded = null;
			}
			$('load_layer_close').style.display = "block";
			$('load_layer_copyright_p').style.textAlign = "center";
			$('load_layer_data').innerHTML = "";
		}
	});
	
	embed_obj = document.getElementsByClassName('body_qtObject_embed');
	for(i=0; i < embed_obj.length; i++) {
		$( embed_obj[i].id ).style.visibility = 'visible';
	}
	
	new Effect.toggle('body_fog', 'appear', { duration: 0.4, afterFinish: function() {  } });
}

// this is used to adjust a couple of elements in the load layer for Slideshows
function loadLayer_ShowSlide() {
	$('load_layer_close').style.display = "none";
	$('load_layer_copyright_p').style.textAlign = "left";
}


function loadLayer_Move() {
	
	var myWidth = 0, myHeight = 0;
	if( typeof( window.innerWidth ) == 'number' ) {
		// Non-IE
		myWidth = window.innerWidth;
		myHeight = window.innerHeight;
	} else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
		// IE 6+ in 'standards compliant mode'
		myWidth = document.documentElement.clientWidth;
		myHeight = document.documentElement.clientHeight;
	} else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
		// IE 4 compatible
		myWidth = document.body.clientWidth;
		myHeight = document.body.clientHeight;
	}
//	window.alert( 'Width = ' + myWidth );
//	window.alert( 'Height = ' + myHeight );
	
	
	var scrOfX = 0, scrOfY = 0;
	if( typeof( window.pageYOffset ) == 'number' ) {
		// Netscape compliant
		scrOfY = window.pageYOffset;
		scrOfX = window.pageXOffset;
	} else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
		// DOM compliant
		scrOfY = document.body.scrollTop;
		scrOfX = document.body.scrollLeft;
	} else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
		// IE6 standards compliant mode
		scrOfY = document.documentElement.scrollTop;
		scrOfX = document.documentElement.scrollLeft;
	}
//	window.alert( 'scrOfX = ' + scrOfX );
//	window.alert( 'scrOfXY = ' + scrOfY );
//	return [ scrOfX, scrOfY ];

	load_layer_move = scrOfY;
	$('load_layer').style.top = load_layer_move+'px';
}

/////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////
// AUDIO TOGGLES
// NOTE - use ID only for <object> and NAME only for <embed> tags to avoid errors with FireFox
var audio_soundRestore = 0;
var audio_user	 = null;
var audio_onOff	 = null;

function thisMovie(movieName) {
	var isIE = navigator.appName.indexOf("Microsoft") != -1;
	return (isIE) ? window[movieName] : document[movieName];
}

function audio_toggleSound(audio_swf, audio_onOff, audio_user) {
	
	var audio_swf	= (audio_swf == null) ? "audioSwf" : audio_swf;
	var audio_onOff = (audio_onOff == null) ? "on" : audio_onOff;
	var audio_user	= (audio_user == null) ? "browser" : audio_user;
	
	if($(audio_swf)) {
		thisMovie(audio_swf).external_audioFunction(audio_user, audio_onOff);
	}
}

function audio_externalJsFunction(audio_onOff, audio_user) {
	document.inForm.audioUser.value	 = audio_user;
	document.inForm.audioOnOff.value = audio_onOff;
}

function audio_Update() {
	if(audio_soundRestore == 0) {
		audio_soundRestore = 1;
		audio_onOff = "off";
		audio_toggleSound();
	}
	else if(audio_soundRestore == 1) {
		audio_toggleSound();
		audio_soundRestore = 0;
		audio_onOff = "on";
	}
}
