/**
 * @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 = $("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 = $("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 = $("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 ($('gallerySelector').value!=null){
                currentGalleryID = $('gallerySelector').value;
                var galleries = document.getElementsByClassName('QAEventsGallery');

                var galleryTitle = $("QAEventsGallery_" + currentGalleryID + "_title");
                var galleryContent = $("QAEventsGallery_" + currentGalleryID + "_content");

                if (galleryTitle){
                    $("eventGalleryHeading").innerHTML = galleryTitle.value;
                }
                if (galleryContent && galleryContent.value){
                    $("eventGalleryBody").innerHTML = galleryContent.value;
                }

                if(galleries.length < 2){
                    var gallerySelector = $("gallerySelector");
                    gallerySelector.style.visibility = "hidden";

                    var galSelectionPrompt = $("galSelectionPrompt");
                    galSelectionPrompt.style.visibility = "hidden";

                    var eventGalleryContent = $("eventGalleryContent");
                    eventGalleryContent.style.position = "relative";
                    eventGalleryContent.style.top = "-80px";

                    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";
}
