Event.observe(window, 'load', init);
Event.observe(window, 'load', initAdmin);

function init()
{
	var linkList = $$('#gallery li img');
	var links = $A(linkList);
	
	setActiveLink();
	
	if (links) {
		links.each(function(node) {
			Event.observe(node, 'click', blur);
		});
	}
	
	if ($('gallery_display')) {
		initGalleryDisplay();
	}
}

function setActiveLink()
{
	if (-1 !== location.pathname.indexOf('/', 1)) {
		var path = location.pathname.substr(0, location.pathname.indexOf('/', 1));
	} else {
		var path = location.pathname;
	}
	
	switch (path) {
		case '/':
			$('menu_home').style.background = "url('/img/main_nav.gif') 0 -27px no-repeat";
			break;
		case '/gallery':
			$('menu_gallery').style.background = "url('/img/main_nav.gif') -73px -27px no-repeat";
			break;
		case '/shows':
			$('menu_shows').style.background = "url('/img/main_nav.gif') -156px -27px no-repeat";
			break;
		default:
			break;
	}
}

function initAdmin()
{
	subsection = $$('#subsection');
	if ('' != subsection) {
		Form.Element.disable(subsection);
	}
}

function initGalleryDisplay()
{
	var imgList = $$('#gallery_display img');
	var img = $A(imgList);
	
	img.each(function(node) {
		Event.observe(node, 'click', requestImage);
	});
}

function requestImage(event)
{
	Event.stop(event);
	var elem = Event.element(event);

	var ancestors = elem.ancestors();
	var imgSrcParts = ancestors[0].href.split('/');
	gallery.setIndex(gallery.imageList.indexOf(imgSrcParts[imgSrcParts.length - 1]));
	
	disableLinks();
	grayBackground();
	$('image_container').style.display = 'block';
	Event.observe($('image_close'), 'click', returnState);
}

function disableLinks()
{
	var linkList = $$('#header a', '#gallery_images a');
	var links = $A(linkList);
	
	links.each(function(node) {
		var href = node.getAttribute('href');
		node.setAttribute('href_save', href);
		node.removeAttribute('href');
	});

	var imgList = $$('#gallery_display img');
	var img = $A(imgList);
	
	img.each(function(node) {
		Event.stopObserving(node, 'click', requestImage);
	});

}

function restoreLinks()
{
	var linkList = $$('#header a', '#gallery_images a');
	var links = $A(linkList);
	
	links.each(function(node) {
		var origHref = node.getAttribute('href_save');
		if (origHref && origHref != '' && origHref != null) {
			node.removeAttribute('href_save');
			node.setAttribute('href', origHref);
		}
	});
	
	initGalleryDisplay();
}

function returnState()
{
	var main = $('main');
	returnBackground();
	$('image_container').style.display = 'none';
	gallery.reset();
	restoreLinks();
}

function grayBackground()
{
	Element.setOpacity($('gallery_images'), '0.4');
	Element.setOpacity($('header'), '0.4');
	Element.setOpacity($('footer'), '0.4');
	Element.setOpacity($('right_menu'), '0.4');

	// For IE 7
	$$('#gallery_images a img').each(function(elem) {
		Element.setOpacity(elem, '0.4');
	});
}

function returnBackground()
{
	Element.setOpacity($('gallery_images'), 1);
	Element.setOpacity($('header'), 1);
	Element.setOpacity($('footer'), 1);	
	Element.setOpacity($('right_menu'), 1);
	
	// For IE 7
	$$('#gallery_images a img').each(function(elem) {
		Element.setOpacity(elem, 1);
	});
}
