document.togglePalette = function(paletteName) {
	['services', 'meetThePhysicians', 'patientInformation', 'directions', 'directionsHome', 'aboutUs', 'rabbitHome'].each(function(elName) {
		var el;
		if(elName != paletteName && (el = $(elName+'Palette'))) {
			el.hide().getPrevious().removeClass('mTemp'+elName+'On');
		}
	});
	var palette;
	if(paletteName && (palette = $(paletteName+'Palette'))) {
		palette.show().getPrevious().addClass('mTemp'+paletteName+'On');
	}
}

document.swapBannerImageDisabled = function(newImageSrc) {
	var bannerImage = $('bannerImage'), bannerTransitionImage = $('bannerTransitionImage'), newBannerImage;
	if(bannerImage && bannerTransitionImage) {
		newBannerImage = bannerImage.clone().setStyle('z-index', 1);
		newBannerImage.src = newImageSrc;
		newBannerImage.inject(bannerImage, 'after');
		
		bannerTransitionImage.setStyle('opacity', 0);
		
		bannerTransitionImage.startAni = new Fx.Tween(bannerTransitionImage, {property: 'opacity', duration: 800, onStart: function() {
			bannerTransitionImage.show();
		}, onComplete: function() {
			bannerImage.ani.start(0);
		}});
		bannerImage.ani = new Fx.Tween(bannerImage, {property: 'opacity', duration: 800, onComplete: function() {
			bannerTransitionImage.endAni.start(0);
		}});
		bannerTransitionImage.endAni = new Fx.Tween(bannerTransitionImage, {property: 'opacity', duration: 800, onComplete: function() {
			newBannerImage.id = bannerImage.id;
			bannerImage.destroy();
			newBannerImage.setStyle('z-index', 2);
			bannerTransitionImage.hide();
			bannerTransitionImage.startAni = null;
			bannerTransitionImage.endAni = null;
		}});
		
		bannerTransitionImage.startAni.start(1);
	}
}

document.swapBannerImage = function(newImageSrc) {
	var bannerImage = $('bannerImage'), bannerTransitionImage = $('bannerTransitionImage'), newBannerImage;
	if(bannerImage && bannerTransitionImage) {
		newBannerImage = bannerImage.clone().setStyle('z-index', 1);
		newBannerImage.src = newImageSrc;
		newBannerImage.inject(bannerImage, 'after');
		
		bannerTransitionImage.setStyle('opacity', 0);
		bannerImage.setStyle('opacity', 1);
		
		if(bannerTransitionImage.ani) {
			bannerTransitionImage.ani.cancel();
		} else {
			bannerTransitionImage.ani = new Fx.Tween(bannerTransitionImage, {property: 'opacity', duration: 450, link: 'chain', onStart: function() {
				bannerTransitionImage.show();
			}, onComplete: function() {
				bannerTransitionImage.hide();
			}});
		}
		
		if(bannerImage.ani) {
			bannerImage.ani.cancel();
		}
		
		bannerImage.ani = new Fx.Tween(bannerImage, {property: 'opacity', duration: 700, onComplete: function() {
			newBannerImage.id = bannerImage.id;
			bannerImage.destroy();
			newBannerImage.setStyle('z-index', 2);
		}});
		
		bannerImage.ani.start(0);
		bannerTransitionImage.ani.start(.5).start(0);
	}
}

document.toggleSidebar = function(el) {
	if(el = $(el)) {
		var show = el.hasClass('sidebar');
		
		el.getParent().getElements('.Selsidebar').each(function(curEl) {
			curEl.select('sidebar', false);
			curEl.getNext().hide();
		});
		
		if(show) {
			el.select('sidebar', true);
			el.getNext().show();
		}
	}
}

document.toggleTab = function(tab, allEls) {
	if(tab = $(tab)) {
		allEls.each(function(curTab) {
			var curContainer;
			if((curContainer = $(curTab+'TabContainer')) && (curTab = $(curTab+'Tab'))) {
				if(curTab == tab && tab.hasClass('tab')) {
					curTab.select('tab', true);
					curContainer.show();
				} else if(curTab != tab) {
					curTab.select('tab', false);
					curContainer.hide();
				}
			}
		});
	}
}

document.toggleFullTab = function(tab) {
	var container;
	if((tab = $(tab)) && (container = $(tab.id+'Container'))) {
		if(tab.hasClass('tab')) {
			tab.select('tab', true);
			container.show();
		} else {
			tab.select('tab', false);
			container.hide();
		}
	}
}

document.directionsMapInit = function(id, sLat, sLong, use2) {
	var dir = $('directionsGMap'+id+(use2 ? '_2' : ''));
	if(GBrowserIsCompatible() && dir) {
		var gmap = new GMap2(dir);
		gmap.setMapType(G_NORMAL_MAP);
		//gmap.addControl(new GSmallMapControl());
		//gmap.addControl(new GMapTypeControl());
		gmap.enableScrollWheelZoom();
		gmap.setCenter(new GLatLng(sLat, sLong), 12);
		var marker = new GMarker(new GLatLng(sLat, sLong));
		gmap.addOverlay(marker);
	}
}

document.initAudio = function(audio) {
	var flashFallback = $(audio+'Fallback');
	audio = $(audio);
	
	if(audio && audio.canPlayType && flashFallback) {
		if(!audio.getElements('source').some(function(el) {return audio.canPlayType(el.get('type')) != '';})) {
			audio.src = '';
			flashFallback.replaces(audio);
		}
	}
}

document.hlAnchorScroll = function(aEl) {
	if((aEl = $$('a[name='+aEl+']')) && aEl.length && (aEl = aEl[0])) {
		if(!document.winFx) document.winFx = new Fx.Scroll(window);
		document.winFx.toElement(aEl);
	}
}

document.toggleBannerPlay = function(playButton, forceStop) {
	if(playButton = $(playButton)) {
		if(forceStop || playButton.hasClass('bPause')) {
			$clear(document.bannerTimer);
			playButton.replaceClass('bPause', 'bPlay');
		} else {
			document.bannerTimer = document.bannerFunc();
			playButton.replaceClass('bPlay', 'bPause');
		}
	}
}
