/**
 * @author Bernie Forbes
 */

document.getElementsByClassName = function(cl) {
var retnode = [];
var myclass = new RegExp('\\b'+cl+'\\b');
var elem = this.getElementsByTagName('*');
for (var i = 0; i < elem.length; i++) {
var classes = elem[i].className;
if (myclass.test(classes)) retnode.push(elem[i]);
}
return retnode;
}; 


 function nextImage(){	
 	trace("next->");
	var totalImages = 0;
	var counter = 1;
	var exists = true;
	var image;
	
	//var currentGalleryID = document.getElementById("display-area").getElementById("gallerySelector").value;
	var currentGalleryID = $("gallerySelector").value;

	while(exists){
		if(document.getElementById("QAEventsGallery_" + currentGalleryID + "_image_" + counter)){
			counter++;
		} else {
			exists = false;
		}
	}
	totalImages = counter;
	
	for(var i=1;i<=totalImages;i++){
		image = document.getElementById("QAEventsGallery_" + currentGalleryID + "_image_" + i);
		if(image.style.zIndex >= 0){
			image.style.zIndex = (totalImages - 2) * -1;
		} else {
			image.style.zIndex++;
		}
	}
}

function previousImage(){
	trace("<-previous");	
	var totalImages = 0;
	var counter = 1;
	var exists = true;
	var image;
	//var currentGalleryID = document.getElementById("display-area").getElementById("gallerySelector").value;
	var currentGalleryID = $("gallerySelector").value;
	
	while(exists){
		if(document.getElementById("QAEventsGallery_" + currentGalleryID + "_image_" + counter)){
			counter++;
		} else {
			exists = false;
		}
	}
	totalImages = counter;
	
	for(var i=1;i<=totalImages;i++){
		image = document.getElementById("QAEventsGallery_" + currentGalleryID + "_image_" + i);
		if(image.style.zIndex <= (totalImages - 2) * -1){
			image.style.zIndex = 0;
		} else {
			image.style.zIndex--;
		}
	}
}

function setupGallery(){
	//trace("setupGallery");	
	var counter = 1;
	var exists = true;
	var image;
	
	//var currentGalleryID = document.getElementById("display-area").getElementById("gallerySelector").value;
	var currentGalleryID = $("gallerySelector").value;

	while(exists){
		
		if(image = document.getElementById("QAEventsGallery_" + currentGalleryID + "_image_" + counter)){
			image.style.zIndex = (counter - 1) * -1;
			counter++;
		} else {
			exists = false;
		}
	}
}

function loadGallery(){
	var currentGalleryID = null;
	if(document.getElementById("display-area") != null){
		
		//if(document.getElementById("display-area").getElementById("gallerySelector").value != null){			
			//currentGalleryID = document.getElementById("display-area").getElementById("gallerySelector").value;
		
		if ($('gallerySelector').value!=null){
			currentGalleryID = $('gallerySelector').value;
			//var galleries = document.getElementById("display-area").getElementsByClassName("QAEventsGallery");
			var galleries = document.getElementsByClassName('QAEventsGallery');

			var galleryTitle = $("QAEventsGallery_" + currentGalleryID + "_title");
			var galleryContent = $("QAEventsGallery_" + currentGalleryID + "_content");
			
			//var pageHeading = $("eventGalleryHeading");
			//var pageBody = $("eventGalleryBody");
			if (galleryTitle){
				$("eventGalleryHeading").innerHTML = galleryTitle.value;
			}			
			if (galleryContent && galleryContent.value){  
				$("eventGalleryBody").innerHTML = galleryContent.value;
				//alert(galleryContent.value);
			}
								
			//trace(galleryTitle.value);
			//trace(galleryContent.value);
			
			if(galleries.length < 2){
				//var gallerySelector = document.getElementById("display-area").getElementById("gallerySelector");
				var gallerySelector = $("gallerySelector");
				gallerySelector.style.visibility = "hidden";
				
				//var galSelectionPrompt = document.getElementById("display-area").getElementById("galSelectionPrompt");
				var galSelectionPrompt = $("galSelectionPrompt");
				galSelectionPrompt.style.visibility = "hidden";
				
				//var eventGalleryContent = document.getElementById("display-area").getElementById("eventGalleryContent");
				var eventGalleryContent = $("eventGalleryContent");
				eventGalleryContent.style.position = "relative";
				eventGalleryContent.style.top = "-80px";
				
				//var text = document.getElementById("display-area").getElementById("eventGalleryBody");
				var text = $("eventGalleryBody");
				var textHeight = text.style.height;
				text.style.height = "330px";
			}
			
			setupGallery();
			for (var i = 0; i < galleries.length; i++) {
				if (galleries[i].id == "QAEventsGallery_" + currentGalleryID){
					document.getElementById("QAEventsGallery_" + currentGalleryID).style.zIndex = 2;
				} else {
					galleries[i].style.zIndex = -1;
				}
			}
		}
	}
	
}

function trace(output){
	document.getElementById("debugArea").value += output + "\n";
}
