function populateMultimediaArchive(category_only) {
	var avoid_outrider_feature_list,avoid_outrider_list,avoid_player_feature_list,avoid_player_list;
	var callback =
	{
	  success: function(o) {
		  var archive_year='', outrider_list='',feature_option_list='',player_feature_galleries_list='',outrider_feature_galleries_list='',feature_galleries_list='',popular_photo='',player_list='',game_list='',event_list='', archive_list='';
			
		  var clear = false;
		  if(o.responseText != ""){
				eval(o.responseText);
				resetPhotoSetup();
		  }
		 	if(archive_year != ""){
				document.getElementById("archive_second").innerHTML = archive_year;
				setupSplit({button:"archive_year_button", selectbox:"archive_year_select", onclick:setYearValue});
				document.getElementById("archive_third").innerHTML = "";				
			}
		 				
			if (feature_option_list != "" ){
			  	document.getElementById("archive_second").innerHTML = feature_option_list;
				setupSplit({button:"feature_option_button", selectbox:"feature_option_select", onclick:setFeatureOptionValue});
				document.getElementById("archive_third").innerHTML = "";				
			}
								
			if (outrider_feature_galleries_list != "" && !avoid_outrider_feature_list){
				
			  	document.getElementById("archive_third").innerHTML = outrider_feature_galleries_list;
				setupSplit({button:"outrider_feature_galleries_button", selectbox:"outrider_feature_galleries_select", onclick:setOutriderFeatureGalleriesValue});					
			} 
			
			if (outrider_list != "" && !avoid_outrider_list){				
			  	document.getElementById("archive_third").innerHTML = outrider_list;
				setupSplit({button:"outrider_button", selectbox:"outrider_select", onclick:setOutriderValue});
				
			}
			
			if (player_feature_galleries_list != "" && !avoid_player_feature_list){
			  	document.getElementById("archive_third").innerHTML = player_feature_galleries_list;
				setupSplit({button:"player_feature_galleries_button", selectbox:"player_feature_galleries_select", onclick:setPlayerFeatureGalleriesValue});				
			} 
			
			if (player_list != "" && !avoid_player_list){
			  document.getElementById("archive_third").innerHTML = player_list;
				setupSplit({button:"player_button", selectbox:"player_select", onclick:setPlayerValue});
				
			}
			
			if (feature_galleries_list != "" ){
			  	document.getElementById("archive_second").innerHTML = feature_galleries_list;
				setupSplit({button:"feature_galleries_button", selectbox:"feature_galleries_select", onclick:setFeatureGalleriesValue});
				document.getElementById("archive_third").innerHTML = "";
				
			}
			
			if (game_list != ""){
			  	document.getElementById("archive_third").innerHTML = game_list;
				setupSplit({button:"game_button", selectbox:"game_select", onclick:setGameValue});
			}
			if (event_list != ""){
			  	document.getElementById("archive_third").innerHTML = event_list;
				setupSplit({button:"event_button", selectbox:"event_select", onclick:setEventValue});
			}
			
			

			if (archive_list != ""){
				document.getElementById("multimedia_search_results").innerHTML = archive_list;
			}

			if (clear){
				document.getElementById("archive_second").innerHTML = "";
				document.getElementById("archive_third").innerHTML = "";
			}
		
			outrider_feature_galleries_list = '';
			//addReset();
		  },
	  failure: function(o) {alert(o.responseText);},
	  timeout: 5000
	}
	document.getElementById("category_only").value = category_only;
	var formObject = document.getElementById('multimedia_archive');

	YAHOO.util.Connect.setForm(formObject);
	var cObj = YAHOO.util.Connect.asyncRequest('POST', '/common/scripts/photo_control.php', callback);
}

function setCategoryValue() {
	stop_slideshow();
	var item_value = this.menu.activeItem.value;
	var item_label  = stripHTML(this.menu.activeItem.element.innerHTML);
	this.button.set("label", item_label);
	document.getElementById("album_title").innerHTML = item_label;
	var my_form = document.getElementById("multimedia_archive");
	my_form.category.value = item_value;
	populateMultimediaArchive(1);
	return false;
}

function setYearValue() {
	stop_slideshow();	
	var item_value = this.menu.activeItem.value;
	var item_label  = stripHTML(this.menu.activeItem.element.innerHTML);

	this.button.set("label", item_label, true);
	document.getElementById("album_title").innerHTML = document.getElementById("album_title").innerHTML+" - "+item_label;
	var my_form = document.getElementById("multimedia_archive");

	my_form.year.value = item_value;
	populateMultimediaArchive(0);
	return false;
}

function setFeatureOptionValue() {
	stop_slideshow();
	var item_value = this.menu.activeItem.value;
	var item_label  = stripHTML(this.menu.activeItem.element.innerHTML);

	this.button.set("label", item_label, true);
	document.getElementById("album_title").innerHTML = item_label;
	var my_form = document.getElementById("multimedia_archive");

	my_form.feature_option.value = item_value;
	
	populateMultimediaArchive(0);
	return false;
}

function setOutriderFeatureGalleriesValue() {
	stop_slideshow();
	var item_value = this.menu.activeItem.value;
	var item_label  = stripHTML(this.menu.activeItem.element.innerHTML);

	this.button.set("label", item_label, true);
	document.getElementById("album_title").innerHTML = item_label;
	var my_form = document.getElementById("multimedia_archive");

	my_form.outrider_feature_galleries.value = item_value;	
	populateMultimediaArchive(0);
	return false;
}


function setPlayerFeatureGalleriesValue() {
	stop_slideshow();
	var item_value = this.menu.activeItem.value;
	var item_label  = stripHTML(this.menu.activeItem.element.innerHTML);

	this.button.set("label", item_label, true);
	document.getElementById("album_title").innerHTML = item_label;
	var my_form = document.getElementById("multimedia_archive");

	my_form.player_feature_galleries.value = item_value;	
	populateMultimediaArchive(0);
	return false;
}


function setFeatureGalleriesValue() {
	stop_slideshow();
	var item_value = this.menu.activeItem.value;
	var item_label  = stripHTML(this.menu.activeItem.element.innerHTML);

	this.button.set("label", item_label, true);
	document.getElementById("album_title").innerHTML = item_label;
	var my_form = document.getElementById("multimedia_archive");

	my_form.feature_galleries.value = item_value;
	populateMultimediaArchive(0);
	return false;
}

function setOutriderValue() {
	stop_slideshow();	
	var item_value = this.menu.activeItem.value;
	var item_label  = stripHTML(this.menu.activeItem.element.innerHTML);

	this.button.set("label", item_label, true);
	document.getElementById("album_title").innerHTML = item_label;
	var my_form = document.getElementById("multimedia_archive");

	my_form.outrider.value = item_value;
	outrider_feature_galleries_list = '';
	populateMultimediaArchive(0);
	return false;
}

function setPlayerValue() {
	stop_slideshow();

	var item_value = this.menu.activeItem.value;
	var item_label  = stripHTML(this.menu.activeItem.element.innerHTML);

	this.button.set("label", item_label, true);
	document.getElementById("album_title").innerHTML = item_label;
	var my_form = document.getElementById("multimedia_archive");

	my_form.player.value = item_value;
	player_feature_galleries_list = '';
	populateMultimediaArchive(0);
	return false;
}
function setGameValue() {
	stop_slideshow();

	var item_value = this.menu.activeItem.value;
	var item_label  = stripHTML(this.menu.activeItem.element.innerHTML);

	this.button.set("label", item_label, true);
	document.getElementById("album_title").innerHTML = item_label;
	var my_form = document.getElementById("multimedia_archive");

	my_form.game.value = item_value;
	populateMultimediaArchive(0);
	return false;
}

function setEventValue() {
	stop_slideshow();

	var item_value = this.menu.activeItem.value;
	var item_label  = stripHTML(this.menu.activeItem.element.innerHTML);

	this.button.set("label", item_label, true);
	document.getElementById("album_title").innerHTML = item_label;
	var my_form = document.getElementById("multimedia_archive");

	my_form.event.value = item_value;
	populateMultimediaArchive(0);
	return false;
}

YAHOO.util.Event.onAvailable("archive_category_select",setupSplit, {button:"archive_category_button", selectbox:"archive_category_select", onclick:setCategoryValue}, true);
YAHOO.util.Event.onContentReady("date_filter", function(){document.getElementById("date_filter").style.display="block";});
YAHOO.util.Event.onContentReady("previousImage", function(){var prevDiv = document.getElementById("previousImage");
									prevDiv.style.visibility = (	prevDiv.href=='javascript:void(0);' ? "hidden" : "visible");
																													});
YAHOO.util.Event.onContentReady("nextImage", function(){var nextDiv = document.getElementById("nextImage");
									nextDiv.style.visibility = (	nextDiv.href=='javascript:void(0);' ? "hidden" : "visible");
																													});

var imageInterval;
var img;
var title;
var changedPhotoId = '';
var timerId;
var firstPic=null;

YAHOO.util.Event.onContentReady("descrip_bar",function(){

	YAHOO.util.Event.addListener("photo_image_box","mouseover", function(){
			YAHOO.util.Dom.setStyle('descrip_bar', 'display','block');
			YAHOO.util.Dom.setStyle('previousImage', 'display','block');
			YAHOO.util.Dom.setStyle('nextImage', 'display','block');
});
	YAHOO.util.Event.addListener("photo_image_box","mouseout", function(){
			YAHOO.util.Dom.setStyle('descrip_bar', 'display', 'none');
			YAHOO.util.Dom.setStyle('previousImage', 'display','none');
			YAHOO.util.Dom.setStyle('nextImage', 'display','none');
});

});

YAHOO.util.Event.onDOMReady(start_slideshow);
YAHOO.util.Event.onContentReady('main',scrollToPhotos);


function scrollToPhotos(){
	//#photo_image_box;
	var attributes = {
        scroll: { to: [0, 258] }
    };

	var anim = new YAHOO.util.Scroll('main', attributes);
	anim.animate();
}


/*function rerouted for efficiency of code*/
function changePhotoOLD(a, id) {
	changePhoto(id);
}

function changePhoto(id) {
	img = galleryImages[id];

	main_img = document.getElementById("main_photo");
	main_img.src = img.src;
	
	document.getElementById('gallery_item_current_number').innerHTML = galleryNumber[id];
	document.getElementById('photographer').innerHTML = (galleryPhotographer[id] != "")? 'photographer: '+galleryPhotographer[id] : document.getElementById("photographer").innerHTML = '';
	document.getElementById('photo_title').innerHTML = galleryTitles[id];
	
	var prevDiv = document.getElementById('previousImage');
	var nextDiv = document.getElementById('nextImage');
	var foundIndex = false;
	var prevIndex = 'javascript:void(0);';
	prevDiv.title = '';
	nextDiv.href = 'javascript:void(0);';
	nextDiv.title = '';

	nextDiv.style.visibility = "hidden";

	if(galleryImages) {
		for( var sIndex in galleryImages ) {
			if(foundIndex==true) {
				nextDiv.href = '?id='+sIndex;
				nextDiv.title = galleryTitles[sIndex];
				nextDiv.style.visibility = "visible";
				break;
			}
			if(id == sIndex) {
				prevDiv.href = (prevIndex=='javascript:void(0);' ? prevIndex : '?id='+prevIndex);
				prevDiv.style.visibility = (prevIndex=='javascript:void(0);' ? "hidden" : "visible");
				if(prevIndex != 'javascript:void(0);'){
					prevDiv.title = galleryTitles[prevIndex];
				}
				foundIndex=true;
			}
			prevIndex = sIndex;
		}
	}

}

function loadPreviousImage() {
	var prevDiv = document.getElementById('previousImage');
	var nextDiv = document.getElementById('nextImage');
	prevDiv.blur();

	if(!prevDiv || !nextDiv || prevDiv.href=="javascript:void(0);" || prevDiv.href==""){
		return false;
	}

	var currentPhotoId = prevDiv.href;

	if ( currentPhotoId.indexOf('=')!=-1 ) {
		splits = currentPhotoId.split('=');
		if(splits.length>1) {
			currentPhotoId = splits[1];
		}
	}

	changePhoto(currentPhotoId);
	return false;
}


function loadNextImage() {
	var prevDiv = document.getElementById('previousImage');
	var nextDiv = document.getElementById('nextImage');
	nextDiv.blur();
	if(!prevDiv || !nextDiv || nextDiv.href=="javascript:void(0);" || nextDiv.href==""){
		return false;
	}

	var currentPhotoId = nextDiv.href;

	if ( currentPhotoId.indexOf('=')!=-1 ) {
		splits = currentPhotoId.split('=');
		if(splits.length>1) {
			currentPhotoId = splits[1];
		}
	}

	changePhoto(currentPhotoId);
	return false;
}

function stop_slideshow(){
	el = document.getElementById("slide_toggle");
	if(el.className == "pause"){
		toggle_slideshow();
	}
}

function start_slideshow(){
	el = document.getElementById("slide_toggle");
	if(el.className == "play"){
		toggle_slideshow();
	}
}

function toggle_slideshow(){
	el = document.getElementById("slide_toggle");
	if(el.className == "play"){
		timerId = setTimeout("play_slideshow()", 3000);
		el.className = "pause";
		el.title = "pause";
	}
	else{
		clearTimeout(timerId);
		el.className = "play";
		el.title = "play";
	}
}

function play_slideshow(){
	var fadeOut = new YAHOO.util.Anim('main_photo', {opacity:{ to:0}}, 0.5);
	var fadeIn = new YAHOO.util.Anim('main_photo', {opacity:{ to:1}}, 0.5);

	if(document.getElementById('nextImage').href != 'javascript:void(0);'){
		fadeOut.animate();
		fadeOut.onComplete.subscribe(function(){
				loadNextImage();
				fadeIn.animate();
				if(document.getElementById("slide_toggle").className == "pause"){
					timerId = setTimeout("play_slideshow()",3000);
				}
			}
		);
	}
	else {
		fadeOut.animate();
		fadeOut.onComplete.subscribe(function(){
				changePhoto(firstPic);
				fadeIn.animate();
				timerId = setTimeout("play_slideshow()",3000);
			}
		);

	}
	return;
}

function interval(){
	if(img.complete){
		clearTimeout(imageInterval);
		resizeImage(img);
	}
	else{
		imageInterval = setTimeout ("interval()", 3000);
	}
}

function resizeImage(i){
	var attributes = {
	   width: { to: i.width },
	   height: { to: i.height } ,
	   opacity: {to:.20}
	};

	var myAnim = new YAHOO.util.Anim('main_photo', attributes, 1, YAHOO.util.Easing.backIn);
	myAnim.onComplete.subscribe(function(){document.getElementById("main_photo").src = i.src;YAHOO.util.Dom.setStyle("main_photo", "opacity", 1).style.opacity=1;});
	myAnim.animate();
}

var current_left = 0;
var move_by = 584;
var offset = 427;

function scollPhotosLeft() {
	var region = YAHOO.util.Dom.getRegion('t1');
	var total_length = region.right - region.left;
	if (YAHOO.util.Dom.getX('t1') < offset) {
		current_left--;
		move = current_left * move_by;
		move = "-"+move;
		document.getElementById("scrollLeftArrow").onclick = "";
		document.getElementById("scrollRightArrow").onclick = "";
		var anim = new YAHOO.util.Anim('t1', { left: { to: move } }, .3);
		anim.onComplete.subscribe(resetArrowButtons);
		anim.animate();
	}
}

function scollPhotosRight() {
	var region = YAHOO.util.Dom.getRegion('t1');
	var total_length = (region.left) - region.right;
	if (total_length < (region.left - offset - move_by)) {
		current_left++;
		move = current_left * move_by;
		move = "-"+move;
		document.getElementById("scrollLeftArrow").onclick = "";
		document.getElementById("scrollRightArrow").onclick = "";
		var anim = new YAHOO.util.Anim('t1', { left: { to: move } }, .3);
		anim.onComplete.subscribe(resetArrowButtons);
		anim.animate();
	}
}

function resetArrowButtons() {
	document.getElementById("scrollLeftArrow").onclick = function(){scollPhotosLeft(); return false;};
	document.getElementById("scrollRightArrow").onclick = function(){scollPhotosRight(); return false;};
}

function resetPhotoSetup() {
	current_left = 0;
}

YAHOO.util.Event.onContentReady("date_filter",function(){
	if (!document.getElementById("resetSpan")){
				var resetspan = document.createElement("div");
				resetspan.id="resetSpan";
				if(navigator.userAgent.match("MSIE") == "MSIE" ){
					var marginTop = "3px";
				}
				else{
					var marginTop = "-9px";
				}
				resetspan.style.marginTop=marginTop;
				var location =window.location.toString();
				resetspan.style.float="left";
				resetspan.innerHTML = "&nbsp;&nbsp;<a href=\""+location.substring(0,location.indexOf("?"))+"\">Reset</a>";
				document.getElementById("date_filter").appendChild(resetspan);
			}
});

function removeChildrenNodes(node) {
    if(node.hasChildNodes()) {
        while(node.childNodes.length >= 1 ) {
				if(node.firstChild.hasChildNodes()){
					removeChildrenNodes(node.firstChild);
				}
				node.removeChild(node.firstChild);
        }
    }
}

function createSlider(range, width, conversion){
	var Event = YAHOO.util.Event,
		Dom   = YAHOO.util.Dom,
		lang  = YAHOO.lang,
		slider,
		bg='slider-bg', thumb='slider-thumb'
		// The slider can move 0 pixels up
		var topConstraint = 0;
		
		// The slider can move 200 pixels down
		var bottomConstraint = range;
		
		div_bg = document.createElement('div');
		div_bg.id = 'slider-bg';
		div_left_arrow = document.createElement('div');
		div_left_arrow.id = 'slider-left-arrow';
		div_right_arrow  = document.createElement('div');
		div_right_arrow.id = "slider-right-arrow";
		div_slider = document.createElement('div');
		div_slider.id = "slider-thumb";
		div_bg.appendChild(div_slider);
		img_slider_1 = document.createElement('img');
		img_slider_1.src = "/common/images/interface/multimedia/scrollbar/interface_slider-scrollbar-left-bg.gif";
		img_slider_2 = document.createElement('div');
		img_slider_2.id = 'slider-button';
		img_slider_2.style.width = width+'px';
		img_slider_2_lines = document.createElement('img');
		img_slider_2_lines.src = "/common/images/interface/multimedia/scrollbar/interface_slider-scrollbar-lines.gif";
		img_slider_2.appendChild(img_slider_2_lines);
		
		img_slider_3 = document.createElement('img');
		img_slider_3.src = "/common/images/interface/multimedia/scrollbar/interface_slider-scrollbar-right-bg.gif";
		div_slider.appendChild(img_slider_1);
		div_slider.appendChild(img_slider_2);
		div_slider.appendChild(img_slider_3);
		
		document.getElementById('controls').appendChild(div_left_arrow);
		document.getElementById('controls').appendChild(div_bg);
		document.getElementById('controls').appendChild(div_right_arrow);
		
		div_play = document.createElement('div');
		div_play.id = "slide_toggle";
		Event.addListener('slide_toggle','click',toggle_slideshow);
		div_play.className = "play";
		div_play.title = "play";
		
		div_clear = document.createElement('div');
		
		document.getElementById('controls').appendChild(div_clear);
		
		slider = YAHOO.widget.Slider.getHorizSlider(bg,
											 thumb, topConstraint, bottomConstraint);
		
		slider.subscribe("change", function(offsetFromStart){
				var clipper = document.getElementById("photo_list");
				clipper.style.left = -(conversion*offsetFromStart)+"px";
			}
		);
		
		Event.addListener('slider-left-arrow', 'click', function(e){
				pos = slider.getValue();
				slider.setValue(pos-30);
			}
		
		);
		Event.addListener('slider-right-arrow', 'click', function(e){
				pos = slider.getValue();
				slider.setValue(pos+30);
			}
		);
}



